FS#28550 - [systemd-sysvcompat] Systemd needs sulogin from sysvinit

Attached to Project: Arch Linux
Opened by Ran Benita (bluetech) - Monday, 20 February 2012, 17:23 GMT
Last edited by Dave Reisner (falconindy) - Friday, 31 August 2012, 09:54 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Dave Reisner (falconindy)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 9
Private No

Details

(Package version: systemd-sysvcompat 2-1)

I want to install systemd-sysvcompat (it's nice to have). It rightfully conflicts with sysvinit. However, the built-in service /lib/systemd/system/emergency.service contains this line:
ExecStart=-/sbin/sulogin
Which is a part of sysvinit. So with systemd-sysvcompat you will get stuck when you don't really want to get struck :)

I was hit by that back in the day and even told upstream about it, but they only added a note to the README (see runtime requirements section). In fedora/etc they have sysvinit-tools for this purpose.

Anyway, thought you should know.
This task depends upon

Closed by  Dave Reisner (falconindy)
Friday, 31 August 2012, 09:54 GMT
Reason for closing:  Fixed
Comment by Dave Reisner (falconindy) - Monday, 12 March 2012, 22:09 GMT
I did this the hard^Wfun way and merged sulogin into util-linux. We (tomegun and myself) will be doing some shuffling in the "near" future so that we build util-loonix with --enable-login-utils, possibly making this available (and deleting the conflicting binaries from shadow). It may, however, wait until 2.22 which is currently roadmapped to be released in June-ish.
Comment by alex (kabolt) - Saturday, 17 March 2012, 11:45 GMT
there's a much safer way:
rename the files which you replace by a link.
This has the advantage that you have sysvinit as backup (for example a cryptsetup update could break systemd mounting an encrypted disk).
   PKGBUILD (1.2 KiB)
Comment by Dave Reisner (falconindy) - Sunday, 25 March 2012, 02:36 GMT
I don't see how it gets any "safer" than providing the binary in a package that's applicable to everyone. I've no interest in introducing a second sysvinit package with only packaging changes.

I'm also inclined to believe that systemd's cryptsetup implementation would be just as broken as the binary included with cryptsetup if such a change occurred upstream... Wait for util-linux 2.22 and this solves itself.
Comment by Ran Benita (bluetech) - Saturday, 07 April 2012, 19:36 GMT
Hi Dave, excellent work! Certainly did it the right way.
And since you had fun doing it :) and have your way with upstream, I thought I'd hijack this bug and mention that the pidof command is also part of sysvinit, and seems to be used freely at least in some install scriptlets:
$ cd /var/abs
$ grep -Rl pidof | wc -l
154

And also in /etc/rc.d scripts. Maybe you can figure out how to port it as well?
Whatever it may be, thanks again.
Comment by Dave Reisner (falconindy) - Friday, 01 June 2012, 18:17 GMT
I don't see the relevance of pidof's existance in /etc/rc.d scripts for this particular package. That said, I do agree that pidof needs to be moved to either procps-ng or, failing that, util-linux.
Comment by Andrea Scarpino (BaSh) - Monday, 25 June 2012, 21:01 GMT
Up.

Dave I'd like to use pidof in my systemd system. Thanks! :)

Loading...