My name is Antoine Jacoutot. After five hours on a hellish train ride, I have
come to Starnberg with only one goal: to fix rc.d. But to do that, I can't be
the OpenBSD developer I once was. To honor systemd's memory, I must be someone else. I must be something else.
So yeah... at d2k17 I worked on rc.d(8). It's disturbing yet amazing that after 7 years I still enjoy a lot working on that shell based framework. While hackathons are great for many things, what I like the most about them is that
they empower people to start and/or finalize tricky projects. The small rc.d bit
that I committed there was the actual result of two previous hackathons. It all
started in Cambridge UK, went to Brisbane Oz and ended up in Starnberg DE. While the diff is small, it is the result of a few ping pong brain games between
fellow developers and myself. It did two things:
- introduce a background timer so that a fucked up or misconfigured daemon
cannot hang the boot process; and we can now display a timeout marker when such a process reaches $daemon_timeout
- a daemon that is not able to background itself (thank you systemd for
encouraging that stupid trend by the way) and must use shell job control will
now return a proper error code if it fails
Nothing shabby but well, "shell sucks!"
"Oh but I love shell <3 <3 <3 #DrinkTheKorn-Aid"
"Oh well, shell is hard, let's go shopping..."
Thank $DEITY I can now concentrate on syspatch(8) \o/
Good thing it's not shell again. Err.. wait... and people wonder why we consume
so many beers during hackathons!
Anyway, I had a small todo list for to enhance that new hipster tool. Output is
now much better when running from cron(8); because we all know how well `unattended-upgrades' work ;-) And because I'm into fashion computing, I made it more tolerant against small /tmp partitions so that my AWS instances could actually benefit from binary patching.
Then of course because I love pain at least as much as I love shell, I crawled
into my lovely ports tree and did some terrible things like:
- updating stuff (including a major update of cyrus-imapd to version 3.0.1)
- fixing stuff (like fixing the output of Hashicorp "vault version")
- cleaning and reviewing stuff (hello mate-desktop.org!)
- laundering stuff (define HMAC_Update to NSS_HMAC_Update in Mozilla NSS to prevent a clashing symbol with libcrypto)
- massaging rc.d(8) scripts after my rampage on rc.subr(8)
As usual I had a lot of fun. Thanks to the OpenBSD gang, the OpenBSD Foundation, genua gmbh and the girl who yelled at mpi@ after he watered her at the lake.