26
votes
Share your linux desktop/setup
I've put quite a bit of work into my i3 set up recently and I'm curious if the people here are interested in that kind of thing.
I'd be interested in looking through configs to get ideas, and sharing screenshots and such.
Here is what my desktop looks like right now. Let me know what you think.
Sure. Here is mine: sway (wayland)
I am a fan of bspwm, but there is no equivalent on wayland yet (river is still in alpha stages). So i´ve been using sway with the autotiling python script.
Since i changed everything (going from Xorg/bspwm to Wayland/sway) i decided to change the music player. I´ve been using cmus for years and now i´m using mpd+ncmpcpp.
Don´t know if i like it really. I´m not a playlist kind of guy and mpd seems to center around playlists. I prefer to play full albums or shuffle the entire collection. In cmus i spent all the time in the library view, never ever made any playlists.
The upside is that i can control the player with my smartphone.
I´m still hunting for a simple dotfile manager to put things on gitlab.
I came across yadm earlier this week. I haven't tried actually using it yet, but I really like the concept behind it as a simple wrapper around git.
I just set up yadm on my laptop and used it to carry changes over to my desktop. It worked really well.
Oh that is the one i used in the past! Totally forgot. Thanks.
for dotfile management, I like to use GNU stow
To shuffle and play your library with mpd, you can do
mpc clear; mpc ls | mpc add; mpc shuffle
.Not sure about albums but e.g.
mpc clear; mpc search album 'dark side of the moon' | mpc add
seems to do the right thing.Maybe not that useful for you but just in case, I have a script I could share that can load dynamic playlists defined by file paths, file globs, mpc commands, and songs randomly chosen from other playlists. For example to start playing my entire library on shuffle, I'll run
mps all
with an "all" playlist defined as:or as another example,
mps wakeup
will load a playlist that I use as an alarm clock. Each song in the playlist is chosen randomly from another sub-playlist.Edit in case it's not clear: the dynamic playlists I showed above are a feature of the script I wrote, not mpd.
Just made something quickly here.
Thanks for the tips.
Now i see that the advantage of mpd is that you can manipulate with scripts. It is right up my alley.
I've found great success using git and the single-byte .gitignore (
*
). Files must be forcefully staged withgit stage -f
, but once they are, Git keeps track of them without needing to change the .gitignore.I'm not a big fan of playlists either. Have you tried
moc
? It's dead simple, kind of unmaintained, but I keep coming back to it.I used moc a lot in the past. I prefer cmus because of the simple database.
I organize my music neatly in folders always in the same pattern "artist/year - album/track number - track title" so moc works well too, but i don't think it plays opus format.
I archive music in flac on my external hdd, but on the main ssd of my laptop i use opus. It is really good.
My library in flac is 130Gb, in opus it is only 13Gb.
Awesome. What bar are you using?
It's waybar.
I'm curious about ncmpcpp. I have been playing with cmus a little bit and really like the idea of having my music in the terminal. I put cmus in a tmux session and set up a mode in i3 so I can control it, I'm sure there is an easier way to do that.
That way it just plays in the background without using any space in my workspace.
Have you used cmus, do you think that you could compare it to ncmpcpp?
I'm back to cmus actually.
Mpd+ncmpcpp is cool, but i think it is too overkill for my needs.
Looking through my i3 config, here's some things I've done.
I have my workstations named with Font Awesome icons so that they look like this in the toolbar thingy (also pictured are the i3blocks widgets I use): https://i.imgur.com/5PiyR2j.png
I have Flameshot bound to PrtScr so that I can easily take screenshots, mark them up with things like the arrow you see in the status bar screenshot above, and upload them to imgur.
My background is set randomly from a folder when i3 starts up using
fbsetbg
.I use i3's modes as a simple keybind-driven menu system. For example, I have $mod+g bound to a games menu. I seem to recall adding a few items to the default $mod+q menu as well, that looks like this: https://i.imgur.com/oTECUla.png
I have $mod+m bound to a music menu that lets me select a source of music, shutting down the current music source if necessary, and is driven by some custom scripts in ~/bin called
music
,mps
,pandora
, andradio
. Those scripts are also bound to my media keys so that the previous, play/pause, and next buttons always do the right thing.I bound $mod+x to a macro menu driven by another pile of custom scripts for capturing/replaying/looping/etc. keystrokes using xmacroplay.
A feature of i3's I use all the time is its scratchpad, which is an invisible anonymous workspace that you can send floating windows to and from. I always keep a floating shell window in it that I can flip to with $mod+period to run a quick command regardless of the workstation I'm on. And in addition to $mod+Return launching a new terminal, I have $mod+Mod1+Return set to launch a floating terminal.
I have copyq bound to $mod+c, although I don't use that keybind much. Mostly I use copyq to keep the ctrl+c clipboard synced to the middle click clipboard. I've been meaning to look into a way to keep them synced in the reverse direction, if anyone knows a good way to do that I'd love to hear it.
Let me know if you want to see configs/scripts/etc. for any of the above.
Dang, those menus look amazing and useful. I think I'm gonna try doing something similar with rofi. I used to use i3, but I never heard about its scratchpad. It's making me think about switching back over.
Great setup!
Damn this is cool as hell. Threads like this always make me want to get really into customizing my machine, but I always end up half-assing it. I love these scripts though!
Lol. I'm the same way.
I always take a second and look things up and then implement them later. I usually make small changes one by one.
Similar to me...though i often get interrupted by other stuff in life...and then when i can get back to customization work, its half-assed, i can't remember what my next step was going to be, etc. Plus, i'm often needing to jump between so many different machines for work, etc. This set up is really nice!
Hard same. I'd love to be able to use my home computer at work. But a lot of my time is making sure I can use something at work (Windows) and at home (Linux) and ... bleh
Glad to hear that i'm not alone! :-)
Oh yeah. I've written a dumb batch script to try and install the stuff I want from upstream sources, since I don't have Admin either. I decided against mingw/etc because i like a hard life :p
So after seeing what @crdpa was doing with wofi, I started messing around with rofi and added a
(C)hoose
option to my music menu that lets me select either a dynamic playlist, a Pandora station, or a radio station, depending on which player is currently active.I also set up a unicode menu for selecting emojis, emoticons, and other various characters using rofimoji. Still very much a work in progress but here's a search in the
(M)ath
menu: https://i.imgur.com/unByTkO.pngAlso:
I got this working with autocutsel now.
Right now, I'm running GNOME 40 on Arch Linux after abandoning XFCE when they switched to client-side decorations. The Activities overview, touchpad gestures, and slew of extensions are killer features. There was no difference in power consumption, which surprised me a little bit (GNOME is a JavaScript behemoth). All I miss from XFCE is the file manager.
This setup is remarkably unremarkable.
Oh, a highlight of this setup is KDE Connect / GSConnect, which lets me easily move files back and forth between my phone and computer, send texts, and share notifications. Not enough people know about it, and it works nearly flawlessly. Very similar to some of Apple's integration features.
Couldn't you still use Thunar on GNOME?
Yeah, you're right. Looks like it has way fewer dependencies than I thought.
Thanks, I'll go get it set up.
Most of GNOME Shell is handled by Mutter which is C. The UI is JS (Shell Toolkit) and there's still some stuff there but I wouldn't call it a behemoth though. Although with extensions that obviously increases the percentage of JS.
This seems fun! Here's my current setup bspwm(Xorg). I'm fairly happy with it, but I'm planning on starting over once I'm free of school, since everything has become a mess.
Like DMBuce, I'm using Flameshot, since being able to easily take screenshots and annotate on them is really handy, especially when I was working on my OSCP.
The most fun parts, I think, are the music display and the background. I normally listen to Spotify (I used to just have mp3 files, but Spotify is just so convenient) , and the Linux player supports playerctl, so I have a little script that reads the currently playing song and displays it using skroll on Polybar. I don't change background images, since I like having the background fit the colors, and I haven't played with pywal yet to update colors automatically, but I do have a script that uses Image Magick to replace the quote on my desktop every ten minutes with something from the fortune command.
I'd share a link to a dotfiles repo, and I used to track my dotfiles using Stow, but over time, and as I've switched software, my git repository has become really out of date, but if y'all are interested in anything, I can share any of my configs.
Looking forward to seeing y'all's setups!
~Archwizard
The gaps between the windows are really nice in how they expose the underlying (awesome) desktop wallpaper! Kudos!
This is easily the most boring one in the thread -- https://i.imgur.com/dzMl6N3.png
This shitty Toshiba Chromebook 2 runs GalliumOS (Xubuntu) w/ i3, zsh, surf, etc. Not very exciting. This is my 'on the town' laptop. Its got a ~10hr battery, which is really handy. Its a 13" screen @ 1080p and is actually really nice to look at. The keyboard and trackpad are also excellent.
Boy, your setup looks great! I really like the simple background and the small bar.
Is that surf showing the tildes website? How does it perform as a browser for you?
Thanks! Surf is pretty good, actually. I don't use it on my main system, but for this little laptop, it works well for sites like HN, Tildes, etc. It isn't bad with Reddit, but I still use Chromium for the mod tools.
Here are all of the wallpapers. With MacOS I have them rotate every hour as a way to roughly track time. :)
I might use those wallpapers for my own desktop, if you wouldn't object! I like the colourful variety.
Do it up! It’s all Dracula.
Looks good to me.
Hell yeah I love that stuff. I run arch with i3 as well, and I spent some time about a year ago trying to customize it but didn't get super far. I've been meaning to take a weekend and switch wm and really get things set up as I like but haven't found the time yet. I'd be interested in seeing what you have. I'd offer to share my dot files and such but they as unimpressive as they are disorganized.
I use Pop!_OS default with the built-in tiling manager. Aesthetically pleasing, and very helpful for getting stuff done.
The screenshots I shared are from Pop_OS too.
Its really a great OS. I just really wanted a real twm again.
How does your twm compare to the Pop!_OS default implementation?
I haven't tried the pop_os implementation in 8 to 10 months, but I understand there has been a lot of changes since then.
I switched because I couldn't use $mod+1 (as an example) to switch to workspace one at the time. I had to use $mod+ctrl+up/down which I really didn't like. On my current setup I have an icon script that adds icons for the programs running in each workspace to the bar. Compared to the pop os version, (other than an ugly addon) there wasn't a way to see which workspace I was in.
So at the time it was really lacking, and I'm sure they've improved since then. Although, after taking the time to configure everything the exact way I like I'll be sticking with twms.
Joining late too, I use Fedora Silverblue 34.
Audio is handled by Pipewire, Display protocol is Wayland, Shell is zsh. I don't use any GNOME extensions nor modified the GTK Stylesheet. I use Flatpaks for most if not all my applications.
I think that's pretty much everything I'd really note about it.
Here's a screenshot for it, the fox is Xenia, she was one of the choices proposed for a Linux mascot and I like her quite a bit. The wallpaper was made by my friend.
Do you have the option for anything else? I thought Silverblue was intended to be only flatpaks anyway.
You do! You can use toolbox or rpm-ostree to install things in a container or on the base system.
The order in which you should install things should basically always be :
Flatpak > Toolbox > rpm-ostree
Flatpak should work if it's a graphical application. If it doesn't or it's needed for development, toolbox is preferred because you can get rid of it easily and reproduce it. If that's not possible because it's a system-level thing like say, zsh, adb, lm_sensors or things like that, you use rpm-ostree. It may require a reboot but nowadays you can
rpm-ostree ex apply-live
to avoid that.Does ostree create system states like nix does, or am I missing something? That looks pretty cool, and I may put silverblue on a test laptop for fun.
It has "deployements" which I think are similar to what you're asking.
This is my current system :
That looks about like I was expecting, but I don't have the vocabulary for it.
How have you found pipewire? I installed the other day and have had a constant barrage of stuttering audio.
My experience has been pretty good. There was a early bug about a month or two ago where it needed a hack for gnome but that's been fixed a while ago.
Hmmm, maybe I should look into it further.
Which version/distribution? I'm using Bullseye, and it's version, 3.19, worked totally fine for me. I rolled back because of what seemed to be a polkit/udev issue with a specific piece of hardware, but it was nice before that.
3.26 on Arch. I didn't bother looking into it to be honest, I just went back to pulseaudio.
I love customising my dwm desktop though I have got to a point where it is no longer needing changing. All I change now is the wallpaper.
Do you mind sharing what you have made so far?
There is very little to look at visually. I don't use a bar and everything is rather basic looking. My Suckless configs are here. My main, everyday use dwm configs are extended from this original config. I have a completely custom version of dwm that uses polybar that I built myself after many days of manually patching dwm, that config can be found in the dwm-polybar folder in my repo linked above.
Everything else I have "borrowed" and configured to suit myself.
Here are some screenshots:
normal desktop, a few terminals with some obligatory unixporn offerings, Qutebrowser and Thunar and finally the desktop with the bars I normally have hidden.
I love the simplicity.
I'm new to this so I kind of went over the top with colors. Lol
I might graduate to dwm some day.
It took me a few years to get on to dwm.
Initially, I didn't like having to compile every time I made a change and I took forever to understand how the tags (workspaces) work. Now, I wouldn't go back to anything else unless I absolutely had to.
Yeah, I am probably going to jump from wm to wm until I find something that really works for me.
I've been considering bspwm.
Nice, I never really clicked with bspwm. I just stuck with i3 until I got the hang of dwm.
Late to the party but here is my setup. Boring arch with kde.
The first goal was a setup usable either with mouse only (when lazying in bed) and with keyboard only (for doing work).
The bar allows access with a mouse to all applications and kde also has customizable keybinds for everything.
The second goal was to save space on this small 1366x768 screen.
Kde allows to hide the application top bar when applications are maximized so on the right I have controls for the windows (minimize, close etc). This saves space while maintaining usability.
https://i.ibb.co/6WQBkKF/Screenshot-20210501-212604.png
Yeah, I don’t have time to share right now, but I’ll definitely look over others!
Here's my setup. As you can see, I'm using Sway on Arch Linux (original, I know.) Here are my dotfiles. The thing I'm most proud of is the
grabweather
script. I wanted to have a small script that updates my Waybar with the weather and temperature, but I couldn't find one, so I made my own.I just recently switched to manjaro i3. I just copied my configs over from pop_os and it's been really nice.
I had so much trouble getting things to work on pop_os but so far I've been really impressed with manjaro.
I wasn't going to just rig a screenshot, but was doing some work on my Planck's layout (adding a couple numpad layers) and saw an opportunity to show everything essentially at once
vertical 2x1080 warning
I've had more or less this same sort of setup for a few years, with XFCE and i3 in separate sessions because sometimes I just want a "traditional" interface for some tasks. It's just Arc Dark + Nord theming because it looks reasonably good. I mostly use Spotify these days, and wrote a simple i3blocks+playerctl script to display its output. It's on Debian Bullseye.
Could we just edit this into a "share your linux desktop/setup" thread (or however you want to word it)? I can change the title for you, but you'll have to update the post's text.
It's already starting to move in that direction, and in general there's no need to make "Is anyone interested in X?" posts, you can just post X and see if people participate.
Yeah that's fine. I'll change the post's text whenever that happens and I'll add my screenshots and such.
Done. And IMO, the topic text probably doesn't even need changing, since it still fits even with the new title, but feel free to anyways if you wish. :)