News for hackers. Stuff that matters.
Re:Systemd 250 Released by 42jd on Friday December 24, 2021 @01:52AM (#29671047)
As someone who has learned Linux/Unix just the past few months using a systemd based distro, I find it a breeze to use. Great documentation, FOSS, and really easy to pick up. I just don’t understand why there is so much dislike thrown around when that energy can be focused elsewhere on truly bad behavior/software. And from my understanding, there are distros out there that don’t use systemd for those who dislike it that much. It’s really perplexing to me as someone newer to the community.
Re:Systemd 250 Released by mst on Friday December 24, 2021 @02:08AM (#29671130)
I'm an old school unixhead who's nonetheless made his peace with systemd because, honestly, it makes lots of things work way better than most previously available solutions did.

Thing is, it also forcibly changed a bunch of things by introducing defaults that were not at all what people expected. They might have been better overall, but it still caused some nasty surprises.

Let me try and explain a bit more concretely -

An easy example (not a hypothetical one, btw): if you have a physical server with multiple hard drives and one of them doesn't start, old school unix would boot everything it -could- boot anyway. SystemD changed that behaviour to "if a filesystem doesn't come up, and you don't set an option to tell systemd it's ok if that doesn't happen, don't finish booting".

Now, imagine you're somebody who has a physical server somewhere that has a big cache disk that you use a cheap drive for because if it fails, well, you've lost some cache space. Now imagine your server used to run a pre-systemd setup, and when you upgraded it to a systemd using version of the same distro you left all your settings as-is because everything seemed to be working fine. Now ... imagine that drive dies during a reboot ... and so the server doesn't finish booting, and so you can't even ssh in to it to figure out what's going on, and the only way to figure it out is to get physically in front of the console.

If that server is four hours' drive away, you might not be very impressed.

I still, overall, think systemd is pretty nice. But while some of the people annoyed with it are annoyed with it on a purely aesthetic/principle sort of basis, there are definitely some decisions the authors made that caused -very- surprising results for people who had been running servers for years already, and some of the dislike being thrown around is very much understandable.

Re:Systemd 250 Released by 42jd on Friday December 24, 2021 @02:16AM (#29671183)
That's a fantastic explanation, thanks! Yep, I can definitely understand the dislike of software coming with defaults that break commonly understood precedent.
Re:Systemd 250 Released by fragmede on Monday December 27, 2021 @04:14AM (#29700865)
ILOM/iDRAC/etc largely solved that sort of thing, but there was always a chance that grub config became corrupted eg when upgrading kernels, leaving you with a 4-hour drive. Pid 1 is critical, and it's ridiculous that it took until systemd for it to stop being something that was just hacked together instead of a well-supported (if surprising at time) software package. It was a real "cobbler's son has no shoes" moment when I first realized back in the RHEL 4 days that the /etc/init.d/ scripts I was looking at were the actual implementation and not some abstraction.
Re:Systemd 250 Released by thefz on Friday December 24, 2021 @11:41AM (#29675029)
> SystemD changed that behaviour to "if a filesystem doesn't come up, and you don't set an option to tell systemd it's ok if that doesn't happen, don't finish booting".

I still have to find a way to let it digest sshfs filesystems that may hang at boot without stopping the whole boot process.

Re:Systemd 250 Released by captainmuon on Friday December 24, 2021 @03:31AM (#29671588)
Systemd by itself is alright, the problem for me is the larger movement from "Linux is about choice" to tightly integrated, opinionated tools. Examples:

- Gnome started to depend on systemd features. Now non-systemd systems become second class citizens.

- You used to be able to freely swap out window managers, taskbars, and so on, because everything was working with common standards. In the modern world, everything is integrated in your wayland compositor, and if you want to change the way window decorations look, you will also have to change everything else. Systemd is similar, it wants to take over so many responsibilities (task scheduling, DNS, session management), and if you want to swap out one part it is going to be difficult.

- Pulseaudio, NetworkManager, Polkit: Written in the same spirit, in part from the same people. Work great if everything works as expected, if they break it is a nightmare to figure out why. But code depends on them, so they become de facto standard on desktop linux.

Re:Systemd 250 Released by 1_player on Friday December 24, 2021 @04:03AM (#29671797)
Linux has never been about choice. There was choice because no two people could agree on a set of protocols and standards. And slowly we're converging on a small set of decent (not perfect!) ideas volunteers can focus their efforts on. I honestly hope the choice meme dies because it is so toxic.

My Linux workstation and servers are not something I want to tinker with, I want solidity and stability and a fragmented user space ecosystem is not the solution.

Re:Systemd 250 Released by captainmuon on Friday December 24, 2021 @05:48AM (#29672495)
"linux" (as in: Unixoid distributions for desktop systems) has always been about choice. Debian's update-alternatives, the whole FreeDesktop project, ICCCM standards. The theming community, gnome-look.org, kde-look.org, and so on.

If I want the stabilty and flexibility of Linux (the kernel) and the GNU command line tools, and the flexibility to choose a UX paradigm that I prefer and visuals that I like, I go to desktop Linux. In that sense, choice is the USP of linux (linux as in: desktop distribution). If I loose the flexibilty, I go back to Windows or Mac. Opinionated ("not fragmented") systems like Gnome only work if you're fully on board with their choices. If not, then there is really no benefit for me over just sticking with windows.

Now, on a server the situation is of course different, and stability is paramount. I like for example that services are declarative and not imperative in systemd. But on a desktop, I don't really care.

Re:Systemd 250 Released by 1_player on Friday December 24, 2021 @10:22AM (#29674292)
> "linux" (as in: Unixoid distributions for desktop systems) has always been about choice.

Again, no. You call it choice, I call it chaos, it was anarchy, and that's the default state for any loosely-coupled systems. There is no manifesto, no underlying philosophy that decided that yes, Linux is about choice. Don't conflate lack of organisation with choice.

Linux has always been about creating a libre UNIX-like kernel for x86 processors. And converging toward the same set of libre techonologies isn't against the Linux spirit.

I still don't understand why people keep harping on about choice. I've used Linux full time since 2001, and the anarchy has just made a libre desktop an utopia because everyone wants every software to support every single option, with no understanding that the number of bugs scales exponentially with the number of choices.

Re:Systemd 250 Released by badsectoracula on Monday December 27, 2021 @08:08PM (#29709093)
> I still don't understand why people keep harping on about choice.

Because they don't want the choices other people made for them.

Re:Systemd 250 Released by kaba0 on Friday December 24, 2021 @08:35AM (#29673434)
Fragmentation is not a skippable problem though. And especially when you depend on lower level services, choice without a standard interface will create an exponential explosion of should-be-supported APIs, which is terrible for an already thin community.
Re:Systemd 250 Released by _2paq on Tuesday December 28, 2021 @06:47AM (#29712807)
> Linux has never been about choice. There was choice because no two people could agree on a set of protocols and standards. And slowly we're converging on a small set of decent (not perfect!) ideas volunteers can focus their efforts on. I honestly hope the choice meme dies because it is so toxic.

So everyone who uses or develops alternative init systems like runit and openrc and alternative DEs like KDE and package managers like apk and pacman should just stop and work on and use systemd, GNOME, and flatpak instead because that is the One True Way of using Linux on desktop?

Quite a power trip attitude I'd say. I can't imagine why I would use Linux if choices I don't agree with were shoved down my throat.

Re:Systemd 250 Released by kaba0 on Friday December 24, 2021 @08:32AM (#29673412)
Wayland doesn’t mandate anything, it’s a goddamn protocol to put a rectangular window’s content to the screen. It is also freely extendable and has a very sane feature discovery in-built so basically any additional functionality can be created through a simple API (and many such exist already)
Re:Systemd 250 Released by mrlonglong on Friday December 24, 2021 @07:27PM (#29679128)
But can you run a remote application from another machine on your own machine? This is my biggest obstacle with Wayland. Xorg did it perfectly.
Re:Systemd 250 Released by kaba0 on Saturday December 25, 2021 @03:01AM (#29681386)
Yes you can with proper compression and usual streaming. X is no longer network transparent anyways (everyone uses proper GPU-acceleration with a litany of bitmaps so it’s not as easy as serialize drawing commands)
Re:Systemd 250 Released by mrlonglong on Sunday December 26, 2021 @03:48AM (#29690791)
So if I SSH into my remote machine, with the appropriate forwarding agents and wayland in place I can run evolution?

Ok I will give that a go.

That reminds me when will Wayland be able to support disparate displays say one big display on 4k with 30 bit colour and two others on QHD and 24 bit colour?

Re:Systemd 250 Released by voidfunc on Friday December 24, 2021 @02:03AM (#29671101)
Disclaimer: I _still_ like systemd.

My only real big pet peeve with Systemd is the documentation is somewhat lacking..., like it's all there in the manual, but its laid out poorly and makes it hard to understand. The interaction between unit files and dependencies is also quite convoluted when you start digging into how things are ordered. There's a ton of unit file options that enable weird conditional behavior. The moment you need to start comprehending the difference between Wants vs. Requires and not hooking into running when multi-user.target is reached (the most common situation) you are in for a world of trial-by-error testing.

Systemd is great for starting simple background services on simple desktop and server environments. It becomes a real pain in the ass once you get beyond that.

Re:Systemd 250 Released by sofixa on Friday December 24, 2021 @03:15AM (#29671489)
> The moment you need to start comprehending the difference between Wants vs. Requires and not hooking into running when multi-user.target is reached (the most common situation) you are in for a world of trial-by-error testing.

And the worst is that the tooling to test is very limited ( non-existent). I had a problem with conflicting/circular ndependencies ( my service had to be launched before networking but after dbus, which is just impossible because dbus needs networking itself), which worked 9 times out of 10. It was nearly impossible to debug, i had to use the graph tool that shows you visually how much time each service took to start, and completely by chance i noticed that dbus started after networking, which led me to look into it.

Re:Systemd 250 Released by lmm on Friday December 24, 2021 @02:28AM (#29671244)
If forcibly "updating" my system so that it doesn't boot doesn't count as "truly bad behavior/software", I don't know what does. The difference between systemd and outright ransomware is only a matter of degree (frankly I'd prefer paying a bit of cash to having to learn a new set of config files and admin commands because someone decided they didn't like the old ones).

(I don't particularly blame him for the specific non-booting bug, but I do blame him for the arrogance. Everyone makes mistakes, but most people learn from them and develop a bit of humility. Pottering continues to break people's computers every couple of years)