7 ms·
It will be very interesting to see how this all plays out in the long run, though the short term is utterly depressing. My hunch is Lennart will be vindicated,
by fidotron 12y ago
It will be very interesting to see how this all plays out in the long run, though the short term is utterly depressing. My hunch is Lennart will be vindicated, on the basis that systemd as it exists right now is not right, but it can be evolved into something much better, and while that may not have occurred to other projects here the stakes are enormous. There is a definite strand to the resistance that any change to something so fundamental must be resisted.
The bigger side argument about the Unix philosophy is also intriguing. Rob Pike claimed it was dead and Perl delivered the eulogy, which I can half agree with. The problem is shell scripting is archaic nonsense, but our script languages can't do what you can do in shell scripts well enough. The idea of a Unix where you get rid of bash/csh/whatever and just run a lua/python/ruby prompt and have your apps implemented largely in that same language (with shell commands being replaced by functions) may make some people squirm, but would make a lot of sense for reducing the overall learning curve.
- api 12y agoI agree. So far I've seen it as a classic conservatives vs. liberals debate. The conservatives have no interest at all in changing the Unix paradigm under Linux. It works perfectly well, thank you. The liberals see it as archaic and unsuited to a wide variety of new use cases including rapid-deployment VMs, containers, mobile and laptop computers, and the desktop in general. I side with the liberals here, but with a few caveats. I'm not a huge fan of systemd, though I agree that it'll probably get fixed and so far it seems better than the hairy old SysV-init mess. The debate is doing more harm than even a slightly broken systemd would do-- Linux is already far too fragmented to no benefit. I'm all for freedom but I don't like pointless forks that add nothing.
- nova 12y ago“The whole modern world has divided itself into Conservatives and Progressives. The business of Progressives is to go on making mistakes. The business of Conservatives is to prevent mistakes from being corrected. Even when the revolutionist might himself repent of his revolution, the traditionalist is already defending it as part of his tradition. Thus we have two great types -- the advanced person who rushes us into ruin, and the retrospective person who admires the ruins. He admires them especially by moonlight, not to say moonshine. Each new blunder of the progressive or prig becomes instantly a legend of immemorial antiquity for the snob. This is called the balance, or mutual check, in our Constitution.” ― G.K. Chesterton
- digi_owl 12y agoHow about a third way? If you want to go on making mistakes, do so over there, and only bring it back here when you can prove that it will not blow up in our faces.
- e7620 12y agoNot really, I use a dozen init systems, each for a different situation, and I'm interested in keeping it that way. The problem is that systemd is that is being forcefully pushed to all distros. For instance, by merging udev with systemd. Maybe those forks don't add nothing for you, but for me they're beneficial, because I think Darwinian evolution also applies to software.
- api 12y ago> I use a dozen init systems, each for a different situation, and I'm interested in keeping it that way. You might like that, but it makes life hell for developers who write and package any kind of daemon/service.
- e7620 12y agoAbsolutely not, only if they depend on systemd. If they follow UNIX conventions, they don't need to edit a single file. Writing a daemon init script was a solved problem decades ago, and that script will serve for every init system.
- api 12y agoNope. Some systemd distros do not support daemon init scripts done the old way.
- digi_owl 12y agoI keep seeing this, and i keep wondering why said developers are doing any packaging at all. A binary and clear instructions on how it is launched from a command line should suffice for any competent admin. He should then be able to fit it into the boot scheme of whatever system he is maintaining.
- imanaccount247 12y ago>The conservatives have no interest at all in changing the Unix paradigm under Linux The unix paradigm doesn't exist under linux. It was dead before linux got started (the kernel, in the early 90s).
- uselessdguy 12y agoShell scripting isn't "archaic nonsense" at all, it's just that the warts from how most shells implement their command language (ksh/bash/POSIX sh) are holding us back. If you go look at Plan 9 rc shell scripts, you'll see how much cleaner they are. In addition, the s6 people have done some interesting things with execline (which looks kind of like Tcl), which works as a chain loader instead of holding the shell resident, has a simple parser and is performant: http://skarnet.org/software/execline/ http://skarnet.org/software/execline/ The more I realize all the untapped potential lying around, the more I realize how so many Linux users are living in their monoculture. Unfortunately there is no one there to amplify all the good efforts and hidden gems scattered all over the place, so you have people just reading Phoronix and LWN articles and standing in their bubble. Meanwhile, all the non-Linux Unices and the "toy project" builders are doing great things, but everyone thinks they're irrelevant and dying.
- killnine 12y agoI wish I could up-vote this more than once. +1 for the bash comments +1 for the toy projects Anyone remember how Linux got started?
- zokier 12y ago> The more I realize all the untapped potential lying around, the more I realize how so many Linux users are living in their monoculture. Unfortunately there is no one there to amplify all the good efforts and hidden gems scattered all over the place, so you have people just reading Phoronix and LWN articles and standing in their bubble. Meanwhile, all the non-Linux Unices and the "toy project" builders are doing great things, but everyone thinks they're irrelevant and dying. This is one of the main reasons I approve of systemd. It is something completely new fighting against the old entrenched cruft. End result might be good, might be bad, but at least it is activity instead of sedateness. For all bad things that could be said about Poettering, at least he has ideas and the confidence to execute on them.
- jimktrains2 12y ago> This is one of the main reasons I approve of systemd. It is something completely new fighting against the old entrenched cruft. Most people aren't anti-systemd because it's new, but because it doesn't conform to their philosophy of how their computer should run. There could be newer init systems that conform to their ideals, but systemd is not one of them.
- justincormack 12y agoYes, I have a side project to experiment with scripting the OS with Lua [1] - it has enough functionality to bring up a system (networking, mounts, namespaces etc) without any other code. [1] https://github.com/justincormack/ljsyscall https://github.com/justincormack/ljsyscall
- fst01 12y agoAnd using "Scriptable operating systems with Lua[1]" there is no userspace needed? [1] http://dl.acm.org/authorize?N80603 http://dl.acm.org/authorize?N80603 [2] http://2014.splashcon.org/track/dls14-papers#Proceedings http://2014.splashcon.org/track/dls14-papers#Proceedings
- justincormack 12y agoWell, you could use it for that in theory yes, though no one has tried yet as far as I know...
- e7620 12y ago> The idea of a Unix where you get rid of bash/csh/whatever and just run a lua/python/ruby prompt and have your apps implemented largely in that same language systemd doesn't help with that AT ALL. Other init systems do support this notion much better.
- bnolsen 12y agoIf anything the whole systemd mess has put more attention on the init system and dependencies. There's plenty of drama and its a modern vi/emacs kde/gnome fight that people are passionate about. I think what burns a lot of us anti systemd people is the apparently lack of sound engineering principles and overengineering. It's just a damn init system! Other init systems (runit, etc) had already mostly solved many of the problems systemd claims to solve with dramatically less code leaving things like logging, scheduled jobs, etc to tools that absolutely didn't need replacing.
- digi_owl 12y agoOr allow for replacement A to be mixed with existing system B, rather than have the whole edifice torn down and rebuilt.