Blog: ekkie-de
continuous-integration/drone/push Build is passing Details

This commit is contained in:
ekkie 2023-04-29 21:17:59 +02:00
parent ebd33ef89d
commit 023904d201
1 changed files with 49 additions and 0 deletions

49
content/blog/ekkie-de.md Normal file
View File

@ -0,0 +1,49 @@
---
title: DIY Desktop Environment
draft: false
publishdate: 2023-04-29T19:51:15+02:00
---
I have a pretty severe case of DE-Hopper-itis, and I blame my
younger self discovering i3 for that. Ever since then, I again and
again get fed up with having to configure everything myself in WMs
like i3 (or even dwm a few years back), I switch to a DE like xfce
or gnome so things "just work", I miss the workflow of a tiling
window manager, repeat.
I've tried to fix that by stuffing all of my configs into a
dotfiles repo, but that wasn't enough. I wanted to automatically
install dependencies and configs. So, this time, I've decided to
write my own Arch PKGBUILD package. I have no plans to upload it to
the AUR or port it to any other package managers, as it's a very
simple package and I don't expect anyone else to use it.
It's available [on my gitea][ekkie-de] (not tildegit, as I felt
that it has nothing to do with the tildeverse). It includes an
xsessions .desktop file, a few config files, and, most importantly,
a startup script (think, like, startxfce4).
[ekkie-de]: https://git.ekkie.cyou/ekkie/ekkie-de
# Startup script
This is probably the most important part. You need a good startup
script in order for window managers like i3 to interface nicely
with Display Managers. The very first thing ekkie-de's startup
script does is setup gnome-keyring. Not because it's the best
keyring, but because it's... the best SSH-Agent, at least for X11.
Unlike OpenSSH's ssh-agent, gnome-keyring automatically adds all
SSH-Keys it can find that also have a public key in ~/.ssh.
However, it doesn't decrypt them, which means you don't need to
type in all of your SSH-Key passphrases at login. When you then try
to SSH to some server, the gnome-keyring will present all public
keys it knows, and will only ask you to decrypt a fitting SSH-Key
if it hasn't already been decrypted this session.
Apart from that, the startup script will choose which config file
to use for a few of ekkie-de's apps: If
`$XDG_CONFIG_HOME/ekkie-db/configfile` exist, that one will be
used. If it doesn't, `/etc/ekkie-db/configfile` will be used as
fallback. That allows me to ship default configs that I like, while
still allowing further per-user configuration.