About systemd

69 replies [Last post]
pengnuin
Offline
Joined: 08/17/2017

Hello everyone,

excuse the potentially stupid question: I've been reading about systemd lately and was wondering what exactly is the main issue that some people seem to have with it. My understanding so far is that it violates the Unix principle of doing one thing and doing it right and the amount of features potentially causing issues in the future/already causing issues. Is that correct? I'd like to know the stance and of some reasons for and against using it compared to, e.g., OpenRC.

- PenGNUin

SuperTramp83

I am a translator!

Offline
Joined: 10/31/2014

I, a userro of gnu/systemd or gnu + systemd as I've recently taken to calling it will try to illustrate it with a picture ->

lulz72378.jpeg
pengnuin
Offline
Joined: 08/17/2017

I whole-heartedly agree with your sentiment because memes.

- PenGNUin

Heather

I am a member!

Offline
Joined: 03/06/2013

Yup. Memes rule. Now we have systemd porn too:

"Savaged by Systemd [Privacy Badger has replaced this FacebookLike button.]
an Erotic Unix Encounter
Authored by Michael Warren Lucas

Not your normal Friday night in the computer room.

Not a normal night anywhere.

Terry is the archetypal old-school Unix admin, nurturing servers with care and precision while avoiding the latest trendy garbage. KDE and Gnome on a server? Nope, if you need a GUI use FVWM.

The latest trend Terry refuses? One adopted almost everywhere? Systemd, the replacement init.

So Systemd comes for Terry.

Wearing skin-tight leather pants.

No, not a normal night in the computer room at all…

Publication Date:
Sep 07 2017
ISBN/EAN13:
1976149886 / 9781976149887
Page Count:
52
Binding Type:
US Trade Paper
Trim Size:
5" x 8"
Language:
English
Color:
Black and White
Related Categories:
Fiction / Romance / Erotica"

https://www.createspace.com/7547092

nosystemd-bates.jpg systemd.jpg savaged-by-systemd-final-art.jpg
Time4Tea
Offline
Joined: 07/16/2017

My biggest problem with systemd is that they skipped systems A, B and C ..

>:(

Heather

I am a member!

Offline
Joined: 03/06/2013

I sometimes think the "d" must stand for "drama".

IrishUSA
Online
Joined: 12/03/2016

My view is, if it's pure enough for rms (since he accepts Trisquel and other systemd-using OS's), it's pure enough for anybody.

As far as anything other than freedom is concerned, if systemd is inappropriately ambitious, there should be practical consequences for that supposed philosophical wrongdoing. So where are the horror stories? Why aren't distros fleeing from it? In fact it not only seems to work perfectly well, but outperform legacy software such as with boot times, and distros are flocking to it. I don't agree that market share always equals quality, obviously, otherwise I'd advocate Windows, but in a context of freedom where marketing budgets, path dependence / lock-in, etc are NOT an issue, migration and swapping out this or that piece of software is possible, "market share" actually DOES point to quality.

And why is it inappropriately ambitious anyway? Why entrust our OS init operations and other important processes to various tiny ancient wholly separate pieces of software with different legacies, each of which has to be maintained by a separate team that must always remain engaged and willing to continue support?

And is it really a UNIX philosophy that software must do only one thing? If so, why are the BSDs fully integrated systems designed to be end-to-end packages from the outset? If it were the UNIX philosophy to do one thing at a time, the BSDs and "Linux" would trade places, with the BSDs being teetering piles of individual separately designed and written programs that all must work somehow, while "Linux" OS's, being less direct descendants of the original UNIX, would be one integrated program that does it all.

pengnuin
Offline
Joined: 08/17/2017

That line of reasoning seems perfectly reasonable to me. I wasn't concerned about freedom with systemd - it is Free Software and as such perfectly acceptable in my books. In regards to swapping it out being viable, this is what I've seen in a few distros, some of which seem to be marketing more or less exclusively the lack of systemd as a feature in and of itself. The only argument I've heard agains the freedom to either include it or not include it in any specific distro was that it was supposedly a dependency for many a package. That would restrict it in that regard, however I don't know if that's true and a widespread issue or simply refers to an isolated incident.

Totally agree with your point about the philosophical implications, however - it would be ridiculous to argue that because of the violation of an arbitrary principle one should not use a certain piece of software, as long as there are no real negative implications tied to it. GNU/Linux should definitely not be tied to such a thing, even though adhering to the principle has produced good programs in the past. Correlation does not imply causation.
Thanks for your extensive answer.

- PenGNUin

Heather

I am a member!

Offline
Joined: 03/06/2013

PenGNUin, I bumbled across this for you while I was looking for memes:

https://www.reddit.com/r/linux/comments/5n069y/why_do_people_not_like_systemd/

I particularly liked the third post down, which listed technical, political, and personal reasons why init systems have become such a controversial hot button topic that is best not mentioned in polite conversation.

Can we please talk about our hemorrhoids now?

Oh yea; I can just stop clicking on the thread. :P

Magic Banana

I am a member!

Offline
Joined: 07/24/2010

Read below that third post: many of jij_je_walkman_terug's arguments against systemd are refuted.

davidnotcoulthard
Offline
Joined: 02/28/2014

"there should be practical consequences for that supposed philosophical wrongdoing. So where are the horror stories? Why aren't distros fleeing from it? In fact it not only seems to work perfectly well, but outperform legacy software such as with boot times, and distros are flocking to it"

Which is what everyone does to nonfree software in our OS. They don't flee, they embrace it. It seems to not only work perfectly well, but outperform free software in many things.

I'm not a staunch anti-systemd guy at all (despite my being on Slackware), but I don't see how that's a very good argument personally.

onpon4
Offline
Joined: 05/30/2012

I think the point is that the criticisms of systemd are all technically minded. For example, yeah, you could say that you think having an "X" to close the window on the top-right instead of the top-left is morally wrong because it "goes against the philosophy" of some OS you're used to, but it doesn't hold water because there isn't any legitimate basis for an ethical concern there. Likewise, I can't think of anything people complain about in systemd that there is any legitimate ethical basis to be upset about. For example:

* Going against "Unix philosophy": just a design preference, or does that mean that any OS that isn't a Unix system is unethical somehow?

* The way logs, scripts, etc are done: so you don't like it done that way. What, is C++ unethical because I don't like it?

* The way the developer develops it: so you don't trust him. Or maybe you just don't like him personally. Ergo, you have to like everyone who develops a program you use? On what basis? Certainly not any ethical one I can think of. Last I checked it wasn't unethical to be unpopular.

This is an issue of pragmatism and personal preference, not ethics. So I think it does logically follow that people will flock over to the better option. The only exception would be if you think copyleft is unethical (like the BSD developers do), in which case the only problem you face is that systemd is a popular copylefted collection of software.

davidnotcoulthard
Offline
Joined: 02/28/2014

"Likewise, I can't think of anything people complain about in systemd that there is any legitimate ethical basis to be upset about." Me neither, in many ways, I can understand that a lot of people don't like systemd but yeah, it's free, and I'm not quite of the knowledge to decide it's otherwise not the better way to go anyway, so I'm not arguing there at all.

But OTOH simply saying that people will flock to the "better" thing thereby correctly determining whether a philosophical issue is there (something you totally didn't, but IrishUSA IMO did) would put into question why Trisquel, etc bother existing.

Heather

I am a member!

Offline
Joined: 03/06/2013

Systemd is, above all, one of those extremely controversial subjects
like politics and infant feeding methods, that people are going to have
strong opinions about. It's best not to bring it up unless you are
genuinely interested in a quick survey of people's opinions, as th OP
has here, or maybe once in awhile as a tongue-in-cheek analogy for
politics, infant feeding methods, etc.

Trisquel 8 will have systemd. That is a fact and we have all known it
for some time. It took two years for Devuan Jessie to be ready enough
for the "average Joe". Removing systemd is beyond the scope of the
Trisquel project, which is downstream to Ubuntu Xenial Xeres which is
downstream to Debian Jessie.

Trisquel 7 uses upstart and is systemd-free to the best of my knowledge.
It is still supported with security updates, isn't particularly buggy
any more, and fits like a comfortable old shoe. There's no sense in
harshing that mellow instead of enjoying this great distro and this
amazing community while it lasts.

If you are looking for systemd-free alternatives, there are Devuan, Free
Slack (64 bit only), Guix, Void, Funtoo, Alpine, Manjaro and probably
many others I am unaware of.

davidnotcoulthard
Offline
Joined: 02/28/2014

"Removing systemd is beyond the scope of the Trisquel project" Not what I'm asking at all though. I am on Slackware, and I guess I do enjoy the lack of Systemd, but the reason for me being here is unrelated to Systemd :)

If things happen that make me want to move to e.g. post-Upstart Trisquel, I will, and Systemd as far as things are now with it and myself won't (at least for objective reasons) stop me.

Oh that, and Parabola can also be run without Systemd AFAIK (Arch can, which in turn is why Manjaro can as well).

Heather

I am a member!

Offline
Joined: 03/06/2013

On 09/13/2017 09:15 AM, you wrote:
>
> Oh that, and Parabola can also be run without Systemd AFAIK (Arch can,
> which in turn is why Manjaro can as well).

Yes, and I also forgot Hyperbola but hopefully I have not forgotten that
I don't know everything there is to know about everything and that if
things do happen that make me want to adopt systemd in the future, my
mentors and homies will still welcome me back and be willing to take
five or ten minutes out of their busy lives to answer my questions.

davidnotcoulthard
Offline
Joined: 02/28/2014

Yeah I just thought that of the few, some of which somewhat obscure distros you remember has non-Systemd inits it would be strange that one of the even fewer fully-free ones that does do that would be forgotten (now that I've come to think of it I don't recall Dragora using systemd either)

And I'm on Slackware because of totally non-Systemd-related reasons - otherwise I'd stay with Triquel 7 anyway (and if that reaches EOL and I *really* hated systemd that much but really wanted to stay I can always just link APT to the old archive part of the repo anyway like I could do now with something like Brigantia if I were desperate to stay full-GTK+2 (I'm not) :p).

Basically as far as we know someone might do a FreeCentOS and I might move there not caring about Systemd. And anyway if Slackware ever F's up I might return to dailying Trisquel anyway systemd or no systemd since the reason I stopped dailying Trisquel to begin with was neither because it couldn't work (it still can), nor Systemd :)

just a tad strange that your post seems needlessly defensive and to assume that I'm some "systemd refugee". May be confirmaton bias on my part to be fair, though.

Heather

I am a member!

Offline
Joined: 03/06/2013

Nah, it may just be that I'm defensive. ;)

Enjoy Slackware. I absolutely loved my time there but I'm at a different stage of life now and enjoying my 32 bit machines way too much to retire ALL of them as museum pieces.

I'm not going to engage in any debate about systemd here. It's nice to see that some of the more passionate systemd users also appear to be quite well-informed and approachable, though, so I am glad I opened the thread to read.

I wish I'd stayed with Trisquel 6 longer instead of running off after the newest shiny thing. Brigantia EOL'd way too soon for me. I loved virtualizing it but didn't take the plunge until the day (if not the hour) that Toutatis was released.

IrishUSA
Online
Joined: 12/03/2016

AFAIK, Manjaro is not free enough to qualify for FSF endorsement. And according to DistroWatch, it's not systemd-free either. I'm not sure whether to trust that claim, however, since DistroWatch also claims that Linux Mint is systemd-free, which makes no sense since Ubuntu already uses systemd and Mint is an Ubuntu derivative.

http://distrowatch.com/search.php?ostype=All&category=All&origin=All&basedon=All&notbasedon=None&desktop=All&architecture=All&package=All&rolling=All&isosize=All&netinstall...

If you're going to set aside FSF-level strict freedom criteria in search of a systemd-free distro, PCLinuxOS is probably the most popular. Texstar has firmly stated it won't use systemd.

Heather

I am a member!

Offline
Joined: 03/06/2013

Thank you. I know that some of us are using Debian or Devuan with just the main repository. I didn't have much luck with my own DIY free-as-I-can-make-it Ubuntu 16.04, but I have read other posters talk about how they do it here.

Manjaro is "E-Z Arch" to the best of my knowledge. I virtualized it once but didn't really spend much time with it.

davidnotcoulthard
Offline
Joined: 02/28/2014

IIRC here's my attempt at a DIY-fully-free Manjaro. Would've been a few years back though so might not be 100% accurate:
1) Manjaro

2) I wanted linux-libre. I guess I could from time to time activate Parabola's repos to take the kernel from there, then disable the repos again before running pacman -Syu

3) I wanted to remove the non-free kernel from Manjaro...wait, I can't. So make the linux-libre package provide it? No, I'm not building anything without yaourt's help :)

So...yeah. It seemed better to just go Parabola instead at that point. Or Trisquel (did both for different hardware).

"DIY free-as-I-can-make-it Ubuntu 16.04"

When 14.04 was out for months already but trisquel 7 was still beta or something I debootstrapped a Trisquel 7 installation into existance and it acted like a normal, stable Ubuntu release. Maybe it's the case here (or maybe you're already running Trisquel 8 and I just missed the post saying so)?

Heather

I am a member!

Offline
Joined: 03/06/2013

That's about what I did with Ubuntu 16.04 but there were more subtle problems. I couldn't have gotten Icecat on at all if I hadn't created my profile on a different computer and done a lot of stuff Ubuntu's target users shouldn't have to do.

My needs are modest. I'm still on Trisquel 7 most of the time unless I specifically need newer software for a particular task or just get that itch for distro promiscuity. Flidas looked nice when I virtualized it, though, and I got to play with a persistent USB stick of Uruk (downstream from Flidas) that wound up going to the daughter with no previous Gnu/Linux experience.

I think I've outgrown needing "bleeding edge" for the work I actually do as long as I can play sometimes.

SuperTramp83

I am a translator!

Offline
Joined: 10/31/2014

> So where are the horror stories?

Have one -> https://github.com/systemd/systemd/issues/5644

Pottering, da man. He knows everything there is to know in the entire universe. You can see it clearly. He also acts like a hysterical grandma overdosed on MDMA, but then again that's because he knows everything.

Magic Banana

I am a member!

Offline
Joined: 07/24/2010

Lennart Poettering only wrote this message in the thread:

I am not sure I'd consider this much of a problem. Yeah, it's a UNIX pitfall, but "rm -rf /foo/.*" will work the exact same way, no?
https://github.com/systemd/systemd/issues/5644#issuecomment-290345033

Is that "hysterical"? If there must be "hysterical grandmas" in that thread, they are the haters finding outrageous that Lennart Poettering ask a question on the behavior of 'rm -rf /foo/.*' (notice the "no?" at the end of his message):

For some people it's advisable to never miss a chance to stay silent. (...) Way to highlight how little consideration is being given to issues reported by systemd users. Bodes well for the whole project!..
https://github.com/systemd/systemd/issues/5644#issuecomment-294384461

shocking to hear. no, and you REALLY should know that as many others do or AT LEAST test it before pretend such nonsense - frankly
https://github.com/systemd/systemd/issues/5644#issuecomment-294414802

Moreover, Lennart Poeterring is actually right since he was talking about UNIX, not GNU/Linux.

Finally, the problem in question was solved the day after it was reported: https://github.com/systemd/systemd/commit/ab883125704b9310dcdfcf7451a27e85609da76c

But the solution was improved the day after because Lennart Poeterring proposed a better fix: https://github.com/systemd/systemd/pull/5653#issuecomment-290346072

In the end, if there is a "horror story" here, it must have to do with Lennart Poettering constantly suffering from haters who do not lose an occasion to attack/insult him because he does *not* know everything or for no reason at all...

ADFENO
Offline
Joined: 12/31/2012

I agree with you on this. People seem to be "too picky" nowadays.

Besides, these people might be used to using GNU `rm', GNU is Not
Unix. ;)

lcerf [at] dcc [dot] ufmg [dot] br writes:

> Lennart Poettering only wrote this message in the thread:
>
> I am not sure I'd consider this much of a problem. Yeah, it's a UNIX
> pitfall, but "rm -rf /foo/.*" will work the exact same way, no?
> https://github.com/systemd/systemd/issues/5644#issuecomment-290345033
>
> Is that "hysterical"? If there must be "hysterical grandmas" in that
> thread, they are the haters finding outrageous that Lennart Poettering
> ask a question on the behavior of 'rm -rf /foo/.*' (notice the "no?"
> at the end of his message):
>
> For some people it's advisable to never miss a chance to stay
> silent. (...) Way to highlight how little consideration is being given
> to issues reported by systemd users. Bodes well for the whole
> project!..
> https://github.com/systemd/systemd/issues/5644#issuecomment-294384461
>
> shocking to hear. no, and you REALLY should know that as many others
> do or AT LEAST test it before pretend such nonsense - frankly
> https://github.com/systemd/systemd/issues/5644#issuecomment-294414802
>
> Moreover, Lennart Poeterring is actually right since he was talking
> about UNIX, not GNU/Linux.
>
> Finally, the problem in question was solved the day after it was
> reported:
> https://github.com/systemd/systemd/commit/ab883125704b9310dcdfcf7451a27e85609da76c
>
> But the solution was improved the day after because Lennart Poeterring
> proposed a better fix:
> https://github.com/systemd/systemd/pull/5653#issuecomment-290346072
>
> In the end, if there is a "horror story" here, it must have to do with
> Lennart Poettering constantly suffering from haters who do not lose an
> occasion to attack/insult him because he does *not* know everything or
> for no reason at all...
>

--
- https://libreplanet.org/wiki/User:Adfeno
- Palestrante e consultor sobre /software/ livre (não confundir com
gratis).
- "WhatsApp"? Ele não é livre. Por favor, use o GNU Ring ou o Tox.
- Contato: https://libreplanet.org/wiki/User:Adfeno#vCard
- Arquivos comuns aceitos (apenas sem DRM): Corel Draw, Microsoft
Office, MP3, MP4, WMA, WMV.
- Arquivos comuns aceitos e enviados: CSV, GNU Dia, GNU Emacs Org, GNU
GIMP, Inkscape SVG, JPG, LibreOffice (padrão ODF), OGG, OPUS, PDF
(apenas sem DRM), PNG, TXT, WEBM.

jbar
Offline
Joined: 01/22/2011

According to hyperbola gnu/linux there are some issues with systemd
https://www.hyperbola.info/news/end-of-systemd-support/

I am just a regular user and I don't have a founded opinion about it.

Time4Tea
Offline
Joined: 07/16/2017

I don't really have a strong view on systemd myself. Tbh, I probably don't understand enough of what it does and how it differs from the alternatives to be able to judge its merits.

From what I've read, the thing that concerns me the most is the potential 'lock-in' if it becomes a ubiquitous dependency for so many packages that we don't have any choice but to use it.

However, if it does its job well and it's libre, then I don't really see a major problem with it. Perhaps the reason so many distros are flocking to it is that it's just superior to the alternatives? Perhaps we're looking at a software case of 'survival of the fittest'? Otherwise, why else is everyone flocking to it?

In terms of 'lock-in', that doesn't seem to be so different to (for example) the standard C library or the linux kernel itself. We don't really have any viable alternatives to those, do we? But, they do their jobs well, so we don't care.

Seems like it probably isn't something that's worth my time or inconvenience to fight against, tbh. *Shrug*

CalmStorm

I am a member!

Offline
Joined: 12/31/2014

The lock-in and the complex code is my problem with it. Because that makes bugs way too hard to remove.

The lock-in though REALLY PISSES ME OFF!

seriously, why should every package even ones that don't require it be dependent on systemd...

that feels like embedding malware into the system...

Who would have thought something libre could cause something so awful to happen...

We need some independent debian based operating systems, free by default or libre completely to exist to fix these blasted issues.

Time4Tea
Offline
Joined: 07/16/2017

I agree that packages shouldn't have unnecessary dependencies - that doesn't seem to be in the spirit of free software. But, why would package developers include a dependency on systemd, if it's not required? Just because they're fanboys of it?

Seems to me that this software that's 'bootstrapping the user space' should be pretty much transparent to the higher-level packages.

onpon4
Offline
Joined: 05/30/2012

A part of systemd, which is very small, has to be included so a program can determine whether or not systemd is actually available. That's all. It's needed for a program to optionally depend on systemd rather than forcefully depend on systemd or having to build separate versions with and without.

Time4Tea
Offline
Joined: 07/16/2017

> A part of systemd, which is very small, has to be included so a program can determine whether or not systemd is actually available.

So, you have to have systemd, before you can determine whether or not you have systemd? That sounds somewhat circular to me .. (good trick they pulled there! ;-) )

onpon4
Offline
Joined: 05/30/2012

It's pretty obvious and simple why it is the case. In most languages I'm aware of, you can't easily (if at all) conditionally include libraries. You have to include the library and depend on that. So systemd offers a way to check how much of systemd is actually installed in a part of its API. Very useful. And what's the cost? Not very big. You have to download a tiny part of systemd because you're running programs that optionally depend on it.

Why does this need to be explained, anyway? We're talking technical details of how a non-specific program functions. I think these kinds of technical issues should be left to those who are doing the technical work.

Time4Tea
Offline
Joined: 07/16/2017

Well, my previous post was a bit 'tongue-in-cheek' ;-)

I have to admit that I'm not exactly the world's most experienced programmer, but according to this Wikipedia article, 'many programming languages support conditional compilation', which I assume would allow them to conditionally include libraries, depending on what sort of system they are being compiled on/for.

I mean, package configure scripts already test automatically for a whole bunch of potential dependencies, without needing a special extra package to do that. Why should systemd be any different?

Tbh, if I can't check whether something is installed on my system or not just by using basic Unix tools, something doesn't seem quite right there ...

onpon4
Offline
Joined: 05/30/2012

> but according to this Wikipedia article, 'many programming languages support conditional compilation', which I assume would allow them to conditionally include libraries, depending on what sort of system they are being compiled on/for.

Please do not make assumptions about how things work.

Compilation is building binaries. So if a program relied on compiler flags for optional dependency on systemd, two versions of the binary would have to be built. Apt (and other package managers that aren't e.g. Gentoo and Guix) do not compile, they only install existing binaries. You would have to have a foo package, and then a foo-nosystemd package. In practice, distro maintainers wouldn't bother maintaining two separate versions of the same program just so that it occupies a little less space on people's hard drives. It's just like how Project: Starfighter supports being compiled without SDL_Mixer, but why on Earth would Debian offer a non-SDL_Mixer version of Project: Starfighter? So they don't.

See, if you understand these technical issues, you see that systemd is optional with certain programs only because systemd makes it easy to do so. If systemd did not provide a facility to detect if systemd is there at run-time, then programmers would not bother to check at all and would just make systemd a hard dependency.

Time4Tea
Offline
Joined: 07/16/2017

Yes, I understand that, but you don't seem to be addressing my point. I'm not talking about package/distro maintainers, I'm talking about the process of compiling software in general. E.g. if I was to download a source package and compile/install it myself on my machine.

Is not the whole purpose of the 'configure' script in practically every source package to check and see what software/libraries are installed on a user's machine and then send the appropriate flags to the compiler to tell it what libraries to include, when it builds the binary?

So, my point is that we already have a tool that can probe to see what is installed on a users' machine, prior to compiling software, which is what has been used for every package, prior to systemd. So, why should systemd need some fancy widget? What's so special about systemd?

Perhaps this is an example of what people are complaining about with systemd trying to over-complicate things or replace things that aren't broken?

onpon4
Offline
Joined: 05/30/2012

> I'm not talking about package/distro maintainers, I'm talking about the process of compiling software in general.

No, when you're referring to what Debian package require in order to be installed, you're talking about packages. Compiling is not even involved in that process.

> Is not the whole purpose of the 'configure' script in practically every source package to check and see what software/libraries are installed on a user's machine and then send the appropriate flags to the compiler to tell it what libraries to include, when it builds the binary?

No, that's not the whole purpose of Autoconf's "configure" scripts. These scripts probe the system to see exactly how the software can be compiled, and also give the user the option to change how it is compiled. But package managers don't compile, so they don't use that. The binary is built on a generic system with specific settings, before ever reaching any user's computer. Therefore, this has nothing to do with the optional dependency of packages on systemd.

> we already have a tool that can probe to see what is installed on a users' machine

No, we don't. All Autoconf checks with its configure script is for the presence or absence of libraries, and this is 100% insubstantial to the point that one binary can only be configured to use or not use a library. If you have compiled Project: Starfighter with sound support using SDL_Mixer, SDL_Mixer is not optional anymore. To make it unnecessary, you need to recompile so that the binary doesn't link with SDL_Mixer.h, and package managers don't do this (with the exception of those such as Gentoo and Guix which do).

Let me put this as plainly as possible: at run-time, in C and C++, it is not possible to link to new libraries, or unlink from old libraries. In order to do that, you need to recompile, and not every user's system has a compiler and all needed library headers installed on it. In fact, most don't. So if systemd was turned on and off by compiler flags, within a package manager such as Debian, the entirety of systemd would be required by any package that uses any component of it, regardless of whether or not that program is capable of running without it, because the only alternative (maintaining multiple versions with different compiler flags turned on and off) is unfeasible.

This is really basic stuff. If you're going to argue these points, I would appreciate it if you actually understood the basics of software development.

Time4Tea
Offline
Joined: 07/16/2017

> No, when you're referring to what Debian package require in order to be installed, you're talking about packages. Compiling is not even involved in that process.

When did I mention Debian packages? I have only ever been talking here about compilation of software from source. I repeat, I am *not* talking about maintenance or installation of pre-compiled binary packages of any kind. If you think that, then clearly we have been talking about two different things.

The rest of what you've said, I already know and is frankly irrelevant, because you continue with your incorrect assumption that I am talking about binary packages, which I have now clarified several times that I am not.

Answer me this one point then: are you claiming that the configure script that is contained in most source packages, which is run before compiling the source code into binary (i.e. before running 'make'), does not check for which packages/libraries are installed and then pass instructions to the compiler, to tell it which libraries to link to?

I repeat my earlier statement: I should not have to download ANY part of systemd in order to check if systemd is installed on my machine, prior to compiling the source code for a package that may optionally depend on it.

Magic Banana

I am a member!

Offline
Joined: 07/24/2010

When did I mention Debian packages? I have only ever been talking here about compilation of software from source.

In the post that started your dialog with onpon4, you only talk about packages:

I agree that packages shouldn't have unnecessary dependencies - that doesn't seem to be in the spirit of free software. But, why would package developers include a dependency on systemd, if it's not required? Just because they're fanboys of it?

Seems to me that this software that's 'bootstrapping the user space' should be pretty much transparent to the higher-level packages.
https://trisquel.info/forum/about-systemd#comment-120750

Time4Tea
Offline
Joined: 07/16/2017

Well, I didn't say 'Debian package' or 'binary package'. If I download the git repository of source code for an application and compile/install it myself, couldn't that also be considered a 'package' of software? If not, then perhaps I used the term 'package' in an unusual way, which may have caused the confusion.

In that case, how would you refer to a piece of software that is downloaded and compiled from source, if not as a 'package'?

Magic Banana

I am a member!

Offline
Joined: 07/24/2010

I didn't say 'Debian package' or 'binary package'.

Well, your post replies to https://trisquel.info/forum/about-systemd#comment-120734 where CalmStorm talks about "Debian-based operating systems":

seriously, why should every package even ones that don't require it be dependent on systemd. (...) We need some independent debian based operating systems, free by default or libre completely to exist to fix these blasted issues.

In that case, how would you refer to a piece of software that is downloaded and compiled from source, if not as a 'package'?

Well, it is "the source code". "A tarball of the source code", if you want to insist that it is all in one archive.

Time4Tea
Offline
Joined: 07/16/2017

So, to come back to my original (possibly misunderstood) question, which I will try to clarify:

When compiling a piece of software from source, can the configure script tell whether or not I have systemd installed on my machine, without me having to install a separate widget to tell me that (as with any other library dependency)?

Magic Banana

I am a member!

Offline
Joined: 07/24/2010

Autoconf is usually used to automatically create the "configure" Shell script. It is extremely generic. So, yes, it can detect what parts of systemd are installed. https://github.com/mcgrof/funk-systemd even gives several examples (three different types of installation).

Time4Tea
Offline
Joined: 07/16/2017

I've read back through the comments here, and it seems like we have actually been talking about two completely different things. That might be where the confusion is arising ;)

Magic Banana

I am a member!

Offline
Joined: 07/24/2010

What program depends on systemd (probably only part of it, by the way) without using any functionality that systemd provides?! I want a name.

Time4Tea
Offline
Joined: 07/16/2017

It was Calmstorm that suggested above that there were unnecessary dependencies:

> seriously, why should every package even ones that don't require it be dependent on systemd...

I then said, *if* that is the case, then it is bad and shouldn't be happening (at least, that was what I meant). I have no idea what specific packages he was referring to. I wasn't trying to criticize systemd, more the general practice of including unnecessary dependencies.

Magic Banana

I am a member!

Offline
Joined: 07/24/2010

The question is for CalmStorm then. Well, it actually is rhetorical: packages that do not use any functionality that systemd provides do not depend on it.

And, of course, we are far from having "every package dependent on systemd". Of the 20k or so packages in Debian Jessie, a few depend on systemd, more depend on libsystemd0. In fact, 67 directly depend on "libsystemd0" according to 'apt-cache showpkg libsystemd0':
weston, transmission-daemon, tor, tgt, systemd-dbg, systemd, libsystemd-dev, syslog-ng-core, stunnel4, sssd-krb5-common, sssd-common, spice-vdagent, sddm, sane-utils, rsyslog, remctl-server, realmd, python3-systemd, pulseaudio, libpulse0, libprocps4, php5-fpm, packagekit, openvpn, onak, nsca-ng-server, network-manager, libmutter0f, monopd, mate-system-monitor, mate-session-manager, mate-screensaver, mate-accountsdialog, light-locker, libvirt0, libvirt-daemon-system, libvirt-daemon, libguestfs0, guestfsd, lbcd, kde-config-systemd, iodine, inn, gvfs-daemons, gnome-system-monitor, gnome-shell, gnome-session-bin, gnome-screensaver, gnome-logs, gnome-disk-utility, libgdm1, gdm3, fcgiwrap, erlang-base-hipe, erlang-base, dnscrypt-proxy, cups-daemon, clamav-daemon, cinnamon-settings-daemon, cinnamon-session, cinnamon-screensaver, cgminer, beanstalkd, apt-cacher-ng, acpi-fakekey, libaccountsservice0, mpd

A developer of Devuan actually ended up listing only thirteen packages for a "standard desktop install" (of Debian) that depend on any systemd package: https://git.devuan.org/devuan/devuan-project/issues/6#note_78

CalmStorm

I am a member!

Offline
Joined: 12/31/2014

Well, I don't know why when I tried even in devuan mind you removing libsystemd0 threatened to remove literally everything. same for debian...

and yes, libsystemd0 is even worse than systemd itself in a sense...

It is possible things have changed since I used debian last, and heard about their plans, but last time I tried and even on devuan in a previous encounter, libsystemd0 was threatening to cause everything to go out with it if I removed it.
and I mean removing any systemd packages caused hell for me on debian so...

I don't care about unix philosophy much, I just care about stability, security for my laptop and also it being lightweight and most importantly freedom to choose what I want and don't want.

By the way here is what happens when I put in my command on devuan ceres.

AttachmentSize
Devuan Glitches.odt 15.05 KB
Magic Banana

I am a member!

Offline
Joined: 07/24/2010

Well, I don't know why when I tried even in devuan mind you removing libsystemd0 threatened to remove literally everything.

Not "literally", no.

Now the reason there are more than 67 packages that would be removed is because, as I wrote, I listed the packages "that *directly* depend on 'libsystemd0'". Other packages can depend on them and so on. On Trisquel 7, 295 packages directly depend on "erlang-base" alone.

As for security, security experts audit systemd. They find almost nothing: https://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=systemd

They are either already fixed or about local exploits (who cares?) like the now famous (but still invalid!) 0day user or do not depend on changes in systemd (but on solving bugs in AppArmor). The only exception is the most recent CVE: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-9445

CalmStorm

I am a member!

Offline
Joined: 12/31/2014

Well, have you ever installed debian 8 or later?
because, most core packages require systemd.
in fact there is a push to make everything in debian require systemd from now on.
Dunno why...
Arch by the way also requires systemd.
Fedora is a given.
Ubuntu wasn't intending to, but when debian did... well you get the idea.

example: https://packages.debian.org/jessie/systemd

util linux and udev both depend on systemd for whatever reason. kind of stupid if you ask me. also mount,

If you think leaving debian or ubuntu though changes this, your wrong for the most part. It is becoming this monolithic thing that is being forced down people's throats.
I started using gnu/linux to avoid this kind of lock in crap. sheesh...
But in general I suggest you try installing debian 8, 9 or ubuntu 16.04 and remove systemd for a different init. I doubt it will go very well. Maybe for openrc it will work well, but not much else... and that is a big maybe

onpon4
Offline
Joined: 05/30/2012

> Ubuntu wasn't intending to, but when debian did... well you get the idea.

Canonical voluntarily chose to abandon Upstart (its own new init project) when Debian chose systemd over it. They were never forced to use systemd; they just decide (correctly, in my opinion) that the effort of developing and maintaining yet another init system was pointless when everyone had collectively decided that systemd is better.

> example: https://packages.debian.org/jessie/systemd

You do realize that those are dependencies of systemd right? As in, packages that you must install in order to install systemd?

I'd just like to repeat my suggestion a little more firmly: if you are not doing the technical work, please don't try to police how those who are doing the technical work do so. They know what they're doing, and this isn't an ethics concern. Even if it were the case that every package in the world in every OS ever made depended on systemd, from an ethical standpoint that wouldn't matter, because systemd is libre. If you don't like the way systemd is, then you have the freedom to change it. That's the whole point of libre software. There is no such thing as "lock-in" when it comes to libre software.

Magic Banana

I am a member!

Offline
Joined: 07/24/2010

Canonical voluntarily chose to abandon Upstart (its own new init project) when Debian chose systemd over it. They were never forced to use systemd; they just decide (correctly, in my opinion) that the effort of developing and maintaining yet another init system was pointless when everyone had collectively decided that systemd is better.

Exactly. In the same way, no programmer was ever forced to make her program depend on systemd. Those who did chose it. Because the functionalities that systemd provides improved their programs. Shockingly, it is a criterion programmers take into account!