5 ms·
Makes no sense to me at all, what systemd does brings the Linux ecosystem closer to what FreeBSD offers, a standardization of base components, which is what Fre
by gribbly 10y ago
Makes no sense to me at all, what systemd does brings the Linux ecosystem closer to what FreeBSD offers, a standardization of base components, which is what FreeBSD (and of course the other BSD's) are doing, but on a whole OS level.
So if you dislike the tight coupling of components in systemd, why on earth would you go to FreeBSD which is a whole OS developed with tight coupling ?
So I think this is nonsense, as I see it, it's just FreeBSD advocates trying to play off the systemd controversy in Linux land.
- nisa 10y agoSorry, this is wrong in many aspects. FreeBSD/*BSD traditionally maintains userland and kernel together. The userland is also BSD licenced so using GNU is not possible so there is need to maintain these tools. But mostly it's taken from a shared upstream with some specific patches. There are seldom new components that introduce huge changes. There is also mostly a single community that decides on changes. This has led to splits in the past but usually things are consensual. systemd as a project was/is mostly driven by Red Hat and kind of praised itself into distributions due to eating udev and that would have required a fork (Gentoo did that with eudev). Debian almost self destructed in the discussions and it's mostly unrelated with the kernel. They tried to push kdbus but this was denied. So there was some split between distribution developers (systemd made a lot of stuff easier and was the new upstream for must-have-components) and users (never change a running system) about that. This has caused lot's of nasty fallout on the internet - mostly from the users that were opposed. But both sides kind of heated the debates. > So if you dislike the tight coupling of components in systemd, why on earth would you go to FreeBSD which is a whole OS developed with tight coupling ? Source lying in the same git repository is not tight coupling. Depending on dbus,journald,logind kind of is, but systemd is not really tightly coupled it's more like there are components that can be used and software has to adapt to use it (GNOME, kwin migrated to logind on Linux), tmux and screen likely will adapt to the user sessions. So you kind of have to use it on Linux, to not be an outsider and run unmodified upstream tools. I guess tight coupling is that you have to use the whole systemd package and can't just pick e.g. logind or the udev parts on your system. These won't work without everything else. So it's far more coupled than FreeBSD at the moment. FreeBSD maintains only the typical POSIX/UNIX userland. No one tells you what to do and most userland is pluggable - e.g. they have a patched OpenSSH and Sendmail as default - this can be disabled with 2 lines and you can install OpenSSH and Postfix and everything will work fine. You can also exchange syslog or ditch cron and run runit and runwhen instead. Everything will still work after that. You need to know what are you doing through but that's kind of the mindset of using BSD. It's almost impossible to rip out e.g. journald or dbus of a systemd distribution. It's not necessarily bad it's just a different idea. > So I think this is nonsense, as I see it, it's just FreeBSD advocates trying to play off the systemd controversy in Linux land. Actually I've never saw this from FreeBSD devs - there might be some fanbois, like everywhere but usually it's a more professional and calmer community. FreeBSD is and was always quite popular on HN there are a few core members here as well. FreeBSD has a lot of merits that Linux lacks or does slightly different. Clang, DTrace, ZFS, Jails, ByHyve... so it's an interesting topic to talk about. I guess most FreeBSD users don't need to badmouth Linux and even FreeBSD is looking into getting a new init based on launchd or some alternative - not sure what the current status is - because dependency resolution and reaction to events becomes important. Unit files are also a good idea that will spread. There is also SVC from Solaris that inspired systemd (amongst others) so there is nothing spectacular unique or new that systemd offers in regards to init. Most criticism against systemd also has nothing to do with the init aspect but with policy choices and defaults from the maintainers e.g. arbitrary new limits or changing default behavior or rewriting old tools in a manner that is disliked by some. Recently Ubuntu decided to include the systemd-resolved resolver and that caused some fallout due to certain assumptions from the devs. So systemd kind of changes the whole Linux ecosystem - IMHO in an honest attempt to improve it - and this usually causes some breakage even if it's for the better and if you just want to run your Unix and don't need the features you not really enjoy the ride. E.g. because the most events your server gets is a new IPv6 prefix once every 2 years you don't just need all the new bells and whistles. A lot of experienced devs and sysadmins also voiced conceptional and design complaints but I'm not able to judge that really. Some of it looks very reasonable. TL;DR systemd is not just init - it changes Linux and causes fallout - FreeBSD was always popular and it's getting attractive for servers due to these changes.
- gribbly 10y ago>But mostly it's taken from a shared upstream with some specific patches. Is it, that's not the impression I've gotten of the BSD's development, where is this shared upstream located ? >Source lying in the same git repository is not tight coupling. No, but the components are written to take advantage of eachother and make use of the features of the underlying system, this is true for both systemd which makes direct use of Linux specific features, and the FreeBSD components which makes use of FreeBSD specific features like Jail. >No one tells you what to do and most userland is pluggable The FreeBSD devs only support the components they ship with, they offer no workarounds for anyone wanting to run something else, if you do you are on your own. I fail to see how this is in any way different when it comes to systemd dependency. >arbitrary new limits or changing default behavior or rewriting old tools in a manner that is disliked by some. This will always be the case no matter what, whenever you change old patterns some people will not want to change, not anything wrong with that, it's just a fact of life. >A lot of experienced devs and sysadmins also voiced conceptional and design complaints but I'm not able to judge that really. Some of it looks very reasonable. I'm not overly fond of systemd, I think it's a step in the right direction, but I hardly think it's the 'ultimate solution', I fully expect it to be superceded by something better in the future, but of course that solution, whatever it is, will also suffer the same controversy as systemd has suffered now, it's just the nature of the game. >TL;DR systemd is not just init - it changes Linux and causes fallout - FreeBSD was always popular and it's getting attractive for servers due to these changes. Again, I don't agree with this conclusion, I don't think systemd is driving Linux users towards FreeBSD, to Gentoo perhaps or any other Linux distro which provides the flexibility and support of components which systemd and FreeBSD does not.
- nisa 10y ago> Is it, that's not the impression I've gotten of the BSD's development, where is this shared upstream located ? Not everything but there is OpenZFS, similiar for DTrace, e.g. DNS is unbound that is included, same for OpenSSL and stuff like that. Sure there are specific Unix tools that have their own implementation. The *BSDs also share code between them, so you have some OpenBSD and NetBSD code in FreeBSD and vice versa. > No, but the components are written to take advantage of eachother and make use of the features of the underlying system, this is true for both systemd which makes direct use of Linux specific features, and the FreeBSD components which makes use of FreeBSD specific features like Jail. Well there is a flag for jail processes in ps and a jail utility but that's about it. Everything else is pretty much BSD and POSIX, small and clean. Or what exactly do you mean? > The FreeBSD devs only support the components they ship with, they offer no workarounds for anyone wanting to run something else, if you do you are on your own. I fail to see how this is in any way different when it comes to systemd dependency. Not really. Most examples I gave are documented in the handbook and it's not really about supported but it's so simple that it comes down to deactivating something in rc.conf and activating something else. Most scripts are thoroughly documented and not much magic is happening. Like using Postfix instead of Sendmail. Some stuff is not officially supported like compiling base with LibreSSL that's worked on but you usually don't came across huge hurdles or complexity - and if so you can mostly figure it out. > This will always be the case no matter what, whenever you change old patterns some people will not want to change, not anything wrong with that, it's just a fact of life. I guess there is a fundamental difference in attitude. Change for the sake of change is frowned upon, there needs to be good reasoning and benefit in changing something. Killing background processes after leaving the session by default or trying to prevent fork-bombs for all with some arbitrary task limit is something that is a behavoir change and would likely appear in bold in RELNOTES if ever adopted. > I'm not overly fond of systemd, I think it's a step in the right direction, but I hardly think it's the 'ultimate solution', I fully expect it to be superceded by something better in the future, but of course that solution, whatever it is, will also suffer the same controversy as systemd has suffered now, it's just the nature of the game. Some poeple looking for concepts that age well and don't need to be rewritten all the time, because this software stuff is complex. Here is snarky comment on that idea of throwing all away and rewriting it in Linux: https://www.jwz.org/doc/cadt.html https://www.jwz.org/doc/cadt.html for the results of that look here: https://www.jwz.org/blog/2015/04/i-told-you-so-again/ https://www.jwz.org/blog/2015/04/i-told-you-so-again/ So it's opinionated and some people have a different opinion. > Again, I don't agree with this conclusion, I don't think systemd is driving Linux users towards FreeBSD, to Gentoo perhaps You're not an sysadmin or are you? There seems to some some odd split between sysadmins and other users of Linux. Deploying FreeBSD is much easier and less work as handling Gentoo. You can basically survive with regular freebsd-update and pkg update if don't do anything fancy. > or any other Linux distro which provides the flexibility and support of components which systemd and FreeBSD does not. Sure there are lots of alternatives - alpine, void linux. I don't mind systemd - I think it's not exactly elegant but it solves real problems for a lot of people. I just think it's difficult to compare FreeBSD to systemd as you did.