Like most things in life, it's time to move on from maintaining
Fedora-specific scripts. Although I like using Fedora when given a
random machine, my setup is much easier to reproduce on Arch Linux.
For most users, they may not even need a desktop operating system like
Fedora in the first place since mobile devices are typically more
secure, easier to carry around, and can do most if not everything that a
desktop can, especially in the year 2022.
Although writing my own install scripts was a valuable learning
experience, Arch Linux now has an official archinstall utility, which
should be easier to use than having to edit a bash script.
Although learning about package management for rpm-based distributions
was a fun experience, it's not realistic to maintain long-term. In this
case, it may be easier to simply install packages on a case-by-case
basis, making use of Ansible for anything else.
Instead of setting up a development environment directly on Fedora,
which comes at the cost of having to maintain both the Fedora-specific
implementation and the Arch implementation, it should be easier to
simply use Vagrant instead.
This change has 3 main benefits:
1. We no longer have to worry about switching between the fn keys and
F1-F12 keys, and can benefit from both keybinds at the same time.
2. Keys that don't return anything under xev (such as the chat icon and
telephone icons) can now be customized.
3. We no longer have to worry about accidentally pressing the networking
key that disables the internet connection.
Note that instead of having to remember to switch between fn and non-fn
keys, especially when working with both at the same time, we can simply
map commands that would use those fn keys with super instead.
In this way, we no longer have to worry about the same keystroke performing
a different command. The current commit serves as an easy way to remember
what the existing fn keys were if needed.
This fixes an issue where kitty wasn't able to show the ui of fcitx
under wayland. By forcing x11 specifically, kitty now has reasonably
good support for fcitx under wayland.
This slightly increases the font weight of text without affecting the
font awesome icons, which is important since changing the font weight
of everything caused the firefox icon to become malformed.
This makes our setup more consistent across the two environments, useful
when switching between them. Note that sway is not a replacement for
bspwm due to how it handles fcitx input with kitty and how it has
built-in vsync.
Since selections are more likely to be temporary than full screen
screenshots, copying their contents to clipboard by default is useful,
although in the future it may be more practical to create an image and
copy to clipboard at the same time, similar to other screenshotting
tools like ShareX.
This makes it easy to switch layouts in kitty and usually get what we
want rather quickly, without having to worry about the current layout
being used.
At some point I disabled this setting, possibly because of a bug or
other issue at the time, most likely related to my use of w3m or a
similar image preview script.
Now that I take advantage of all of kitty's features in 2022, especially
since it has proper fcitx support, there shouldn't be a reason to not
enable dynamic background opacity, as it seems to work flawlessly.
I wrote a script that generated wal completions 4 years ago. Although
the patch was never merged, pywal is a great tool and I can still use
the completions personally, so I might as well add them here.
Now polybar will show on all monitors by default, and we don't have to
update the script every time those monitors change, useful when changing
between computers that use HDMI and computers that use display port, for
example.
Now we no longer have to worry about kitty having an inconsistent color
scheme when changing the color scheme of the rest of the environment,
which means that we can fully use kitty's window management and change
themes with pywal at the same time.
Since I usually have a browser and terminal emulator open most of the
time, I have placed them back as desktop 1 and 2 by default. I'm used to
the file browser being in 3, and 4 serves as media, which is important
for language immersion in particular.
The other 6 icons are numbers for individuals that know how to read
other languages.
This enables us to automatically change kitty colors when changing pywal
color schemes, which means that kitty window management, such as its tab
feature, will honor the new colors of pywal automatically, without
having to restart kitty.
Now that pipewire is more mainstream, we don't have to worry about using
alsa or pulseaudio here which, from what I remember, took more effort
to set up.
There was actually an issue where waybar was using larger padding than
usual, which was fixed by setting the gsettings in our sway config. I
liked the padding changes introduced by the other theme, however, so
this change makes it permanent.