
(Sorry this post is so long; I didn't have time to make it shorter.) Rick Moen via luv-talk wrote:
3. User wants full-citizenship distro support for an init system other than systemd. (I personally think this is a little silly, as I think the work required to fix any holes is trivial, but views differ.)
Speaking as someone who had to jump through many hoops to support Upstart when it was first rolled out in Ubuntu 8.04 and Ubuntu 10.04, and systemd on Debian 8, and who also watched on the sidelines when pere rolled out insserv/starpar parallel booting by default in Debian 7, I strongly believe it's *not* trivial. Maybe it's only enough work for one full-time person, but it's more than I could easily cope with alongside my other regular responsibilities. (Oh, I also tested cinit/minit back in the day, but I gave up on those before production rollout, because NO WAY was I going to write job descriptions for every system component.) PS: Debian 9 systemd support isn't the complete shitshow that Debian 8 was. In particular, you don't have to write your own rpcbind and nfs-utils units anymore, because Neil Brown (upstream) fixed that in 1.3.x. Also a lot of the horror was due to having as many as FOUR different ways to do a job (e.g. initializing the mixer levels in alsa-utils), much of which was to handle transition from pre-systemd world. That's transition-specific and ought to get better in Debian 9+. PPS: systemd really wants to be in charge of the initrd, too. Problems with e.g. LUKS are blamed on Debian's (extremely old and horrible) initrd. There is a lot of room for improvement there. Fedora initrd is systemd; archlinux's is opt-in systemd. #systemd on irc.freenode.net still gets a lot of arch users with problems decrypting LUKS iff using systemd in the initrd. >shrug<
4. User is interested in some of the improvements Devuan is working to introduce into to the Debian-compatible world, such as vdev and others.
Personally, I think Debian's Policy Manual is its killer feature. If I was prepared to give up on that, and was building my own distro, it'd be built on top of musl and busybox (inc. busybox mdev). NB: mdev doesn't do the whole blkid thing, but linux-utils mount uses libblkid internally, so *ALLEGEDLY* you can do "mount LABEL=porn" even though no symlink /dev/disk/by-name/porn exists. I haven't verified this myself. I've been through the source for udev and eudev, and the reason there's no ABNF for the udev syntax is that not even the source code reliably parses it. There's no discrete parse stage at all. It's utterly flipping cry-into-your-beer horrible. I'm not familiar with vdev, it appears to be this: https://git.devuan.org/unsystemd/vdev https://github.com/jcnelson/vdev the latter explicitly says This system is mothballed. It's usable if you know what you're doing [...] Expect to get your hands dirty. I do not have time to work on it in the foreseeable future, nor do I have time to answer support requests. They're the same codebase, the devuan one is just missing the last 11 months / 25 commits. PS: OpenWRT also have their own in-house replacements for systemd, logind, and udev. They're not really set up (yet?) for use by anyone else, but they're certainly interesting for study. http://wiki.openwrt.org/doc/techref/procd (& other pages)