RobertMe schreef op zondag 31 mei 2026 @ 13:33:
[...]
Die doen geen dienst als DHCP server, evenals dat ze geen router advertisements zullen sturen, evenals geen DHCP-PD ondersteuning. Zaken die systemd-networkd out-of-the-box kan. En DHCP server is wellicht een niche (want daarvan heb je er maar één nodig en vaak zul je een dedicated router hebben), maar IPv6 RAs stuur ik bv ook van op mijn servertje, om extra routes te publiceren vanaf de boos daarop het subnet gerouteerd wordt.
Dus systemd heeft nu ook zelfs dhcp server overgenomen?

Daar is dhcpcd, dnsmasq, coredhcp-server en meer voor. Voor IPv6 zie ik dat dhcpcd er ondersteuning voor heeft, radvd is er, wide-dhcpv6-server, en vast nog wel meer. Dit wiel is al meerdere keren uitgevonden en nu doet systemd het nog eens dunnetjes over.
Daarnaast, als ik even zo snel kijk, doet ifup al helemaal geen Wireguard? Dan moet je met pre-up aan de slag en gewoon ip link add ... type wireguard doen, en vervolgens pre-up wg setconf .... Terwijl het in systemd-networkd (en NetworkManager) gewoon native ondersteund wordt.
Die doen het niet echt native, maar hebben de WG tools ingebouwd zodat ze geen afhankelijkheid hebben van het aparte package. Met ook weer de nadelen ervan als er een issue blijkt te zijn: volledige set moet bijgewerkt worden ipv alleen het WG gedeelte.
En NetworkManager is gevoelsmatig meer voor "dynamische" verbindingen. Dus de categorie een laptop waarbij je nog wel eens verbindt met een ander wifi netwerk en zo. Waarbij je de configuratie dan at-runtime aanpast met nmcli of via een UI die het via DBus naar een daemon stuurt. Niet iets wat ik handig vind voor statische configuraties zoals op een server of router. Ook omdat je dan liever config files hebt die je eenvoudig kunt backuppen, bijhouden in git, evt uitrollen via Ansible of wat dan ook, ....
NetworkManager heeft gewoon z'n config in /etc/NetworkManager/system-connections staan als bestanden. Dus je hele verhaal gaat voor NM dus al niet op. Toen ik m'n RHEL 7 certificering haalde, werd er ook met NetworkManager het netwerk ingesteld ipv handmatig zut in /etc/sysconf/network-scripts frotten. Er was maar 1 unieke situatie waarbij dat nodig was en dat heb je echt zomaar als eis. Een situatie die alleen bij servers is en zelfs daar is dat ene puntje enorm niche.
[...]
Dat heeft dan weer totaal niks met systemd-timers te maken. Dat is gewoon hoe het systemd file format werkt. En geldt dus voor elke optie die meerdere keren ingesteld kan zijn. Bv ook een ExecPreStart kun je meerdere keren hebben. En ook die "reset" je met een lege ExecPreStart=. Dat is dus geen pijnpunt van systemd-timers maar een pijnpunt van het systemd file format.
Daarom zeg ik ook 'onlogisch'. Zoals je zelf ook aangeeft, het is met meer opties in het file format dat zo werkt. Het resultaat van een 'systemctl edit' maakt namelijk ook een override.conf aan voor de unit. Een override, geen addendum. Dat maakt het onlogisch en voor wie er niet dieper in kijkt, heel onverwacht in het resultaat/gedrag.
[...]
Nja ok, sure. Net zoals die andere dingen waarbij ik het aanhaalde hoeft het natuurlijk geen onderdeel van systemd te zijn.
En hetzelfde geldt natuurlijk voor gummiboot dat in systemd is opgegaan incl een rename naar systemd-boot. Ook dat had prima als eigen project kunnen blijven bestaan.
Maar uiteraard anderzijds de vraag: hoe "populair" zouden udev, gummiboot, ... zijn als standalone projecten? Wellicht waren en bleven beiden dan een one-man show zonder tractie onder gebruikers of cobtributors, en waren ze een stille dood gestorven. Nu ze onder systemd leven zullen er veel meer ogen naar kijken. Maar het monolitische ontwikkelmodel met 1 release van alles is zeker wel een pijnpunt ja. Losse projecten onder 1 paraplu met een los release schema / ... was een betere middenweg.
Als iets populair genoeg is, zou dat ook extra maintainers moeten aantrekken. Nu is het net alsof een groot bedrijf een startup overneemt en er helemaal niks meer overblijft van de startup zelf of de gedachtegoed. Udev bestond al lang voor systemd. Wat heeft systemd nou echt toegevoegd aan udev wat functioneel ontbrak en broodnodig was, wat ze niet al zelf konden doen?
[...]
Die kende ik niet. En natuurlijk heeft poweroff zelf ook al een optie om te plannen. Maar op een systemd gebaseerd systeem zijn poweroff, halt, reboot etc ook al polyfills / wrappers om systemd. Zou dus zomaar kunnen dat die ook een timer er voor aanmaakt onderwater.
En wat systemd-run potentieel over at heeft is dat je de volledige systemd functionaliteit tot je beschikking hebt. Je kunt ook met simpele opties het commando laten uitvoeren als een andere user, zonder netwerktoegang, met eigen temp dirs/mounts voor bepaalde locaties.... Bij wijze van alles dat je in een service unit file kunt zetten kun je ook als command line flags bij systemd-run opgeven.
Waar ik juist tegen systemd ben in de functie, is dat niks dynamisch is na een wijziging. Vroeger kon je zo je NAS of nieuwe schijf/partitie toevoegen aan fstab en gelijk mounten. Nu gaat het lopen janken dat je niet eerst even een daemon-reload hebt gedaan. Afhankelijk van de distro wordt dat toch nog even netjes voor je gedaan en werkt het, maar dat neemt het gejank niet weg.
Ook als je een service maakt of aanpast. Vroeger met de init scripts was het direct bekend en kon je door. Nu? Nee, niks van wat je hebt gedaan is bekend, herlaad systemd maar want het is te dom om een inotify te doen op bestanden die je hebt gewijzigd of toegevoegd. En om nou te zeggen "het is als bescherming tegen fouten", nee, dat is het ook niet. Maak je een fuckup dan is dat net zo van toepassing na een daemon-reload als zonder die noodzaak. Bij fstab krijg je al een error als de mount opties niet kloppen. Je unit start niet als daar ook iets ontbreekt. En syntax fouten waardoor heel systemd op z'n bek zou gaan en je systeem potentieel meeneemt is gewoon broddelwerk van de ontwikkelaar(s) en missen ze fatsoenlijke foutafhandeling.
Begrijp mij niet verkeerd, er is zeker meerwaarde aan systemd. Maar het is verre van het Ei van Columbus waar velen zo lyrisch over zijn. Doe 1 ding en doe het goed. Dat is niet systemd, die alles wil doen maar zelf niet eens uitmuntend is in z'n core.