3 ms·
UNIX, TCP/IP, C libraries, web browsers and HTML… all are interoperable technologies. If your site works in browser X, you can switch to browser Y and it still
by gorgoiler 5y ago
UNIX, TCP/IP, C libraries, web browsers and HTML… all are interoperable technologies. If your site works in browser X, you can switch to browser Y and it still works. If your code compiles for x86 Linux, it’ll run on arm Linux too.
SystemD is not an interoperable technology. It insists on wrapping itself around what was already there, in the guise of making it better while also making it impossible to use something else.
Abstract example: imagine systemd-plated manages access to crockery in your kitchen, providing neat features like being able to quickly pick out plates by colour (the old system never did that!). However, if you take a plate for yourself instead of asking systemd for it then systemd will take the plate out of your hands, put it back in the stack, and say “error: plate not requested via systemd”. Now imagine everything in your kitchen has to go through systemd. Now imagine that systemd is one of the biggest and most rapidly changing machines in your kitchen that breaks a lot. You’d be pretty annoyed if you ever did anything weird enough to encounter these bugs. If you only ever want a blue plate, you’re fine.
Real example: Any day now we’ll be unable to use plain LXC on Linux because systemd (1) assumes you only manage containers via systemd and (2) clobbers any changes you make outside systemd, using the lxc-* tools.