OTHER License
This is my i3 configuration. It does not exactly feature the same keybindings as the default configuration. I don't recommend using it as-is by you can pick anything you need in it.
More details in this blog post.
Here some of the things you may be interested in:
I use a Python script bin/wallpaper
to build the wallpaper
to be displayed. There is a random selection and it works with
multihead setup. It seems that classic tools are now able to change
the wallpaper per screen and therefore, the script may seem a bit
useless but I keep it.
I am using xss-lock
with xsecurelock
as a screensaver. It
relies on standard X screensaver handling (and therefore is easy
for application to disable) and also supports systemd inhibitors.
Nothing fancy but I reuse the wallpaper built above for both the
dimmer (xss-dimmer
) and the screen saver (xsecurelock-saver
).
There is an i3-companion
(in bin/
) which I use to implement
whatever does not match what I want in i3. I prefer to not have
many Python binaries running.
There is a Quake console included.
Many stuff is handled by systemd. The session is still expected to
be handled by Xsession but we invoke a custom xsession.target
which binds to graphical-session.target
. i3 will then invoke
i3-session.target
for stuff needing i3 to run.
Also, I am using my custom terminal (vbeterm
). You can also find the
sources on GitHub.
Required Debian packages to make everything work can be found in my Puppet configuration. Packages are basically pulled from Debian unstable but some of them are pulled from Nix. Check my home-manager configuration.
However, I am recompiling some stuff to get more recent versions:
polybar
(check vbe/master
branch)xsecurelock
(check vbe/master
branch)The binaries are put in ~/.local/bin
.
What's missing for me to migrate to Wayland:
append_layout
, but it shouldxsecurelock
(I want to use my own screen saver), maybepolybar
, maybe Waybar?Everything else should be adaptable:
Also see this post from Anarcat.