this post was submitted on 16 Dec 2024
70 points (88.9% liked)
Linux
48622 readers
1394 users here now
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I personally would like a systemd gui. There have been several attempts in the past, but none is maintained.
On openSUSE, I've apparently got at least this thing for looking at SystemD services:
Allows viewing the services for the different boot targets, as well as the service files. You can also start/stop services or change their start mode (on boot vs manual).
Well, and there's a JournalD viewer with filtering:
Not the most developed GUIs, but...
SystemD is far too much of a poorly thought through mess to have anything like a sane GUI configuration, it doesn't even have a sane textfile based configuration. We're going to have to wait fir SystemD to crumble under it's own weight and be replaced with multiple, simple, cleanly designed components before we have any hope of a sane config again. Sort of like we used to have before a certain someone/some company (depending on how conspiratorial you're feeling) decided to come along and muck it all up.
/rant
Thank you for coming to my Ted ~~Talk~~ Rant. You may gather I dislike SystemD quite a lot.
For anyone else reading along: This person is talking out of their ass.
I also find that calling systemd "SystemD" is a tell that someone is unfamiliar with or has a conspiratorial relationship to it. It's named "systemd", all lowercase (but I'm likely to capitalize it on sentence starts like a normal word). Using an ungrammatical uppercase D at the end of the word, that isn't even something the creators claim is correct, is … a choice.
(And it's a choice that reminds me of e.g. how rabid anti-cyclists in Norwegian can't even spell "cyclist" correctly, but instead consistently use "bicycleist".)
Ok, fair point on the capital D, I must have read it like that years ago and it stuck. I shall have to make an effort to unlearn it.
As to the rest, systemd has been a constant thorn in my side ever since L. Pottering published "Rethinking PID 1" back in 2010 or so. I found, and still find, that most of the assertions and actions in that document either don't really hold, or just aren't really relevant. Basically it's trying to solve a problem that really wasn't an issue in the real world, and does so in such a massively overbearing way that everything actually becomes more laborious than it otherwise would be. From my perspective it's an unnecessarily complex and poorly architected attempt to answer a need that was better served in different ways. That it's become a near mono-culture is deeply concerning.
I've also run into all sorts of awkward edge cases and misfeatures over the years, from the automounter that occasionally didn't to race conditions that only manifest at the worst moments, none of which would have occured had the basic tenet of "do one thing and do it well" been followed. The extreme verbosity of the configuration, and unnecessarily large number of places it can be spread just serve to make it even more unpleasant to deal with compared to the simplicity of init scripts, crontabs and the like.
The sad thing is, there's undoubtedly some good ideas buried in it, but they could all have been implemented much more lightly and in a way that worked with the rest of the ecosystem rather than fighting it. Things like starting daemons in what is essentially a repeatable sandbox, or being able to isolate logging per service. They could, and had both been implemented already, but systemd has a real "not invented here" problem, so everything was built again, with all the attendant bugs, and design issues that inevitably brings.
Ultimately clients pay good money for me to look after their systems, systemd or not, so I probably shouldn't grumble, but I miss the days when Linux was a clean and elegant system, without this multi-tentacled thing sitting on top of it.
Its far too convoluted. A systemd gui for... DNS? Boot services? User Services? tmp file management? Everything?
Everything! And a virt-manager like tool for nspawn! And for the faux-cron jobs! Make it as byzantine as systemd itself
That's the point. That systemd is convoluted, so a gui could help. And yes, for everything. :)
My point is there is no way to sanely create a GUI for something has it's tendrils in... Everything. In fact, there's no sane way to do any sort of UI for such a beast.
Maybe the system should be made less convoluted.
I mean, do we really need a half dozen network management services, all broken in their own way and none that do everything you need?
All of those are entirely separate components; I have no idea what you're attempting to imply here.
Those are all things systemd manages.... as well as logs, udev, etc etc.
What kind of gui too could you even imagine would sanely present all of that?
As mentioned, those are entirely separate and even independent components.
Systemd (as in: pid1) only "manages" them insofar as that it controls their running processes just like any other service on your system.
systemd-boot doesn't interact with systemd at all; it's not even a Linux program.
The reason these components have "systemd" in their name is that these components are maintained by the same people as part of the greater systemd project. They have no further relation to systemd pid1 (the service manager).
Whoever told you otherwise milead you and likely had an agenda or was transitively mislead by someone who does. Please don't spread disinformation further.
Without going into the weeds and all, given they all are in the same project, regardless...
You said "a gui for managing systemd", so which part? Boot, udev, and journal? All three are required and not optional for systemd the OS infrastructure layer suite (or whatever it's called these days), so minimally, assume that?
If so, what kind of sane gui could manage those three very disparate things?
If you talk about "a GUI for systemd", you obviously mean its most central and defining component which is the service manager. I'm going to assume you're arguing in bad faith from here on out because I consider that to be glaringly obvious.
systemd-boot still has no connection to systemd the service manager. It doesn't even run at the same time. Anything concerning it is part of the static system configuration, not runtime state.
udevd doesn't interact with it in any significant user-relevant way either and it too is mostly static system configuration state.
journald would be an obvious thing that you would want integrated into a systemd GUI but even that could theoretically be optional. Though it'd still be useful without, it would diminish the usefulness of the systemd GUI significantly IMHO.
It's also not disparate at all as it provides information on the same set of services that systemd manages and i.e. systemctl has journald integration too. You use the exact same identifiers.