I’ve stopped trying to manually manage colorschemes and am just using pywal and wpgtk for everything. I’m no longer using my own custom tmux status bar, zsh prompt, Emacs mode line, etc. either. It’s simpler to just use someone else’s customizable prompt/bar/whatever. I’m more interested in functionality and my panel/visual setup has barely changed in years. Pywal is great in that it allows for variety in themes without effort. It does not work well for all wallpaper though (e.g. wallpaper that is mostly shades of a single color).
After having tried pretty much every wallpaper setter, I’ve settled with using setroot. It has the equivalent of feh’s --bg-fill
option (fits an image to either the height or width in order to completely cover the screen without stretching) which xsetroot
, hsetroot
, and imlibsetroot
all don’t have (or at least didn’t when I started using setroot; you could write a wrapper for imlibsetroot if you wanted to). It’s also not a full image viewer unlike feh.
In comparison to imlibsetroot, setroot has better multiple monitor support and a more convenient --store
option that stores both the image location and settings used (to be restored with --restore
). Setroot allows setting different wallpaper on different monitors at the same time using --on <number>
. This allows the use of a single command to set all wallpaper even for monitors that aren’t currently plugged in. I often connect to a tv and just want the monitor to be black. Since setroot’s default action without any --on
options is to use the picture for the first (0th) monitor and set the other monitor(s) black, I just have setroot --restore
called when adding a new monitor to achieve this.
The only thing imlibsetroot has over setroot is its specific x,y options for centering at a specific position (-p x,y
), stretching to exact dimensions (-s x,y
), and tiling with a specific width and height (-t w,h
). I’ve never found these to be particularly useful though. Setroot also has an actual manpage and some cool options such as contrast, flip, sharpen, blur, brightness, and greyscale. These options could be replicated by using imagemagick/graphicsmagick, but setroot makes it quite easy and quick to find out how altering these values will change a wallpaper’s look.
I switched from lemonar-xft to polybar. It has a few annoyances but it allowed me to replicate my lemonbar setup more simply/concisely without losing scriptability. It makes it simple to reuse configuration for different panels (e.g. for different window managers). It also actually has system tray support.
My current favorite monospaced font is Delugia. It is like CaskaydiaCove, the nerd fonts version of Cascadia Code, but better (e.g. it has italics). Previously I primarily used Office Code Pro D, Fira Mono, and various versions of Inconsolata.
In addition to Cascadia, in my panel I am using siji for some icons, Ricty for Japanese characters, Font Awesome for some icons, symbola, and unifont.
Since the death of compton, I’ve been using picom. I didn’t bother trying any of the forks. Now that it has rounded corners and Kawase blur, I don’t have any issues with it. I initially hated rounded corners but now like them to have my corners slightly rounded.
I’m using dunst for notifications. It has a nice configuration file, is scriptable, and looks good. It is a bit annoying to get working with pywal (see my dunstrun script), but it does what I need.
Here’s what an empty desktop looks like:
This is what dunst notifications look like:
Here’s a dropdown terminal showing my tmux status bar (outsourced to nord-tmux), zsh prompt (outsourced to powerlevel10k with instant prompt and transient prompt; layout based on the Pure theme) and neofetch:
I’m theming firefox with pywalfox, and my custom tridactyl theme uses pywal colors:
Here’s Emacs with doom-modeline and ewal for the theme:
Here’s ranger:
Here’s dirvish:
Fish:
I have more screenshots here.
Here I’m using mpd-notifcation for song state change notifications:
Here is a smaller video version of higher quality.
This gif shows panel changes and truncation from left to right (I’m no longer using truncation, now I’m just using numbers for volume and brightness). After focusing a window, the xtitle
output is displayed in the middle. Unplugging the laptop charger changes the battery icon. Brightness level information is truncated by default and displayed for a couple of seconds after brightness changes. The volume bar is truncated when the audio is muted or at full volume. The signal strength indicator is only displayed when there is a connection.
Here is a smaller video version of higher quality.
Termite and pentadactyl colors:
My old homepage (modified from gokoururi’s homepage):
Old tmux status bar:
Older: