Borders aren't that useful when you already know which window is being
focused. In the event that you need to know which window has focus, you
can either look at waybar or use a toggle that dims inactive windows.
"activeworkspace" can be useful if you aren't interested in the special
workspace, but since it ignores special workspaces, it causes this
script to behave unexpectedly.
swww has some advantages like webp support (something that was rejected
for swaybg due to the feature not existing in a library they were
using). Additionally, it's convenient to only have to worry about one
swww instance instead of multiple swaybg instances.
"Desktop" was a really generic package name that didn't describe the
contents of what it contained. Since we already have a catch-all
directory (extras), I separated "desktop" into what it actually was:
settings for urxvt/termite and settings for xmodmap.
Some other programs may also use xrdb. The only reason the term files
are not in the bspwm directory instead is because it may be useful to
use urxvt or termite in non-bspwm environments.
The desktop directory is used for desktop-related things that may be
useful outside of bspwm (such as caps lock functioning as ctrl +
escape). Whether or not this is needed is questionable, but it is an
option for now.
It may be better to further split these directories and avoid the
generic word "desktop" altogether.