Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 461478 - sys-boot/plymouth-0.8.8 should install systemd units in /usr. Not in /
Summary: sys-boot/plymouth-0.8.8 should install systemd units in /usr. Not in /
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: All Linux
: Normal QA (vote)
Assignee: Enrico Tagliavini
URL:
Whiteboard:
Keywords:
Depends on: 576042
Blocks: 575768
  Show dependency tree
 
Reported: 2013-03-12 07:15 UTC by Egor Y. Egorov
Modified: 2016-03-01 14:43 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
0001-Fix-461478.patch (0001-Fix-461478.patch,966 bytes, patch)
2013-03-12 08:58 UTC, Egor Y. Egorov
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Egor Y. Egorov 2013-03-12 07:15:29 UTC
sys-boot/plymout-0.8.8 should install systemd units in /usr. Not in /
In my case:

eegorov@egorov-ey ~ $ emerge -pv plymouth

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R   ~] sys-boot/plymouth-0.8.8  USE="libkms pango systemd -debug -gdm -gtk -openrc -static-libs" VIDEO_CARDS="intel radeon -nouveau" 0 kB

Total: 1 package (1 reinstall), Size of downloads: 0 kB
eegorov@egorov-ey ~ $ qlist plymouth | grep systemd
/lib/systemd/system/halt.target.wants/plymouth-halt.service
/lib/systemd/system/poweroff.target.wants/plymouth-poweroff.service
/lib/systemd/system/kexec.target.wants/plymouth-kexec.service
/lib/systemd/system/reboot.target.wants/plymouth-reboot.service
/lib/systemd/system/multi-user.target.wants/plymouth-quit-wait.service
/lib/systemd/system/multi-user.target.wants/plymouth-quit.service
/lib/systemd/system/sysinit.target.wants/plymouth-read-write.service
/lib/systemd/system/sysinit.target.wants/plymouth-start.service
/lib/systemd/system/initrd-switch-root.target.wants/plymouth-switch-root.service
/lib/systemd/system/systemd-ask-password-plymouth.service
/lib/systemd/system/systemd-ask-password-plymouth.path
/lib/systemd/system/plymouth-halt.service
/lib/systemd/system/plymouth-poweroff.service
/lib/systemd/system/plymouth-kexec.service
/lib/systemd/system/plymouth-reboot.service
/lib/systemd/system/plymouth-quit-wait.service
/lib/systemd/system/plymouth-quit.service
/lib/systemd/system/plymouth-read-write.service
/lib/systemd/system/plymouth-start.service
/lib/systemd/system/plymouth-switch-root.service


Reproducible: Always
Comment 1 Egor Y. Egorov 2013-03-12 08:58:01 UTC
Created attachment 341780 [details, diff]
0001-Fix-461478.patch
Comment 2 Enrico Tagliavini 2013-03-13 20:04:28 UTC
Why? What;s wrong with /?
Comment 3 Markos Chandras (RETIRED) gentoo-dev 2013-03-13 20:11:53 UTC
CC'ing systemd. I am not sure where the systemd files should go either
Comment 4 Enrico Tagliavini 2013-03-13 20:19:20 UTC
I think the problem is even a little more deep then just systemd unit files. The build system doesn't handle a separate prefix for unit files and binary files. I can see a reason: if you have your binaries in / you want also the unit file associated to be accessible in the case /usr is a separate partition.

That said, we can indeed move it /usr, but not only systemd unit files, but the whole plymouth package.

We can say we don't support systemd stuff in /, which is the case right now since systemd is in /usr. I would like to hear systemd team too about this.
Comment 5 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2013-03-14 09:18:48 UTC
(In reply to comment #4)
> I think the problem is even a little more deep then just systemd unit files.
> The build system doesn't handle a separate prefix for unit files and binary
> files. I can see a reason: if you have your binaries in / you want also the
> unit file associated to be accessible in the case /usr is a separate
> partition.

Nope. If you have systemd on rootfs, unit files land there too. If you don't have systemd there, there's no point in having unit files there.

> We can say we don't support systemd stuff in /, which is the case right now
> since systemd is in /usr. I would like to hear systemd team too about this.

Yep, we don't.
Comment 6 Enrico Tagliavini 2013-03-14 09:33:17 UTC
Fine for me. So moving everything to /usr then? Anybody ok with this?
Comment 7 Egor Y. Egorov 2013-03-14 10:26:29 UTC
(In reply to comment #6)
> Fine for me. So moving everything to /usr then? Anybody ok with this?

We'll have to patch dracut ... With my fixe been easier. But let's try.
Comment 8 Enrico Tagliavini 2013-03-14 10:32:00 UTC
(In reply to comment #7)
> (In reply to comment #6)
> > Fine for me. So moving everything to /usr then? Anybody ok with this?
> 
> We'll have to patch dracut ... With my fixe been easier. But let's try.

This is a blocker for me :). I'll also have a look at dracut code.
Comment 9 Egor Y. Egorov 2013-03-14 10:39:58 UTC
However, let's try. I'll try to prepare a patch for dracut. If need be, of course.
Comment 10 Enrico Tagliavini 2013-03-14 12:07:37 UTC
dracut definetely needs a patch since it searches for plymouth{,d} in /{,s}bin

Look I call for keep it simple here. If the upstream dracut accept a patch and let it to be configured at compile time for searching plymouth in /usr, that's fine (I didn't checked if this is already possible). Otherwise I'm against doing a custom gentoo patch just to move plymouth to /usr.

Systemd catches the unit files in /lib, so no technical problem on this side. If we really dislike this, I can move those unit files to /usr but I don't see the point doing that to be honest. It is incoherent with systemd paths or plymouth paths, one or the other.

So what am I missing? :)
Comment 11 Egor Y. Egorov 2013-03-14 12:55:50 UTC
@mgorny 
What you think about this? In my system only plymouth install systemd-units into /lib. I do not like this.
Comment 12 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2013-03-14 16:24:56 UTC
(In reply to comment #11)
> @mgorny 
> What you think about this? In my system only plymouth install systemd-units
> into /lib. I do not like this.

Well, it's a QA issue definitely. Not a killer one but still.
Comment 13 Mike Gilbert gentoo-dev 2016-02-26 22:29:55 UTC
Just got a bugzilla notification on this, and I want to amend previous statements here:

systemd system units should be installed in the directory specified in the systemd.pc pkg-config file.

This is made accessible in an ebuild by calling systemd_get_systemunitdir from systemd.eclass.

Please do not hard-code the path in ebuilds or build system patches.
Comment 14 Enrico Tagliavini 2016-02-26 22:49:54 UTC
just pointing out plymouth 0.9.2 ebuild uses systemd_with_unitdir() which in turn uses systemd_get_systemunitdir() (the former got deprecated now and only  the second one should be used).
Comment 15 Mike Gilbert gentoo-dev 2016-02-26 23:56:17 UTC
Perfect. So why is this bug still open then?
Comment 16 Ian Delaney (RETIRED) gentoo-dev 2016-02-27 06:45:18 UTC
then close it
Comment 17 Egor Y. Egorov 2016-02-29 11:19:23 UTC
In tree both version 0.8.8-r4 and 0.8.8-r5 still install files in /lib, not in /usr/lib. Patch like in first comment is not applied. Why this bug is closed?
Comment 18 Mike Gilbert gentoo-dev 2016-02-29 15:06:28 UTC
(In reply to Egor Y. Egorov from comment #17)

It was closed because the issue has been resolved in newer version of plymouth.

Stabilizing a newer version may be requested vhttps://bugs.gentoo.org/show_bug.cgi?id=461478#ia a new bug report.
Comment 19 Egor Y. Egorov 2016-03-01 03:51:39 UTC
0.8.8-r5 is not stable and not fixed. >=0.9 has some another issues (like #517572)...
Comment 20 Mike Gilbert gentoo-dev 2016-03-01 14:43:07 UTC
(In reply to Egor Y. Egorov from comment #19)
> 0.8.8-r5 is not stable and not fixed. >=0.9 has some another issues (like
> #517572)...

Regardless, this particular bug is resolved in >=0.9.