Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 487674 - sys-boot/plymouth-0.8.8-r4 stable request
Summary: sys-boot/plymouth-0.8.8-r4 stable request
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Keywording and Stabilization (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Enrico Tagliavini
URL:
Whiteboard:
Keywords: STABLEREQ
Depends on: 487756 487800
Blocks: 485234
  Show dependency tree
 
Reported: 2013-10-11 18:05 UTC by Pacho Ramos
Modified: 2014-02-02 15:56 UTC (History)
1 user (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Pacho Ramos gentoo-dev 2013-10-11 18:05:15 UTC
Would be needed by genkernel-next, but I am not sure if plymouth is ready to be stabilized, if not, we can USE mask it
Comment 1 Enrico Tagliavini 2013-10-11 18:28:18 UTC
I have nothing against stabilizing this. Be aware there is -r2 pending, see bug #485034 . I'm waiting someone to bump it. The only change is to sync with the current location of udevadm in gentoo, and since it has been moved to /usr also plymouth is going to be moved.

I use playmouth daily with dracut, cannot say how it works with genkernel-next.
Comment 2 Pacho Ramos gentoo-dev 2013-10-11 19:01:53 UTC
+*plymouth-0.8.8-r2 (11 Oct 2013)
+
+  11 Oct 2013; Pacho Ramos <pacho@gentoo.org> +plymouth-0.8.8-r2.ebuild:
+  Move things to /usr (#485034 by Kirill Elagin and fix by Enrico Tagliavini),
+  this also causes to rhgb-compat-link to be dropped due it pointing to old
+  location, use readme.gentoo.eclass, move to eapi5, move the openrc vs systemd
+  blocker behind 'systemd' USE flag to prevent people enabling it globally from
+  getting systemd blocked.
+

Are you ok with this version? (I needed a bit more changes as noted in ChangeLog)
Comment 3 Michael Lange 2013-10-12 17:48:35 UTC
genkernel from genkernel-next-29 can not find /sbin/plymouthd from plymouth-0.8.8-r2, because it is installed under /usr/sbin/plymouthd

*   >> Installing plymouth [ using the spinner theme and plugin: "two-step" ]...
* ERROR: Binary /sbin/plymouthd could not be found

downgraded plymouth to version 0.8.8-r1 and genkernel works again
Comment 4 Fabio Erculiani (RETIRED) gentoo-dev 2013-10-13 11:13:31 UTC
Why are you moving things around without worrying about backward compatiblity?
This is very very wrong! :/
Comment 5 Pacho Ramos gentoo-dev 2013-10-13 12:07:19 UTC
I didn't predict genkernel-next was hardcoding the full path -> that (hardcoding paths) is also wrong :|
Comment 6 Pacho Ramos gentoo-dev 2013-10-13 12:27:59 UTC
+*plymouth-0.8.8-r3 (13 Oct 2013)
+
+  13 Oct 2013; Pacho Ramos <pacho@gentoo.org> +plymouth-0.8.8-r3.ebuild,
+  -plymouth-0.8.3-r5.ebuild, -plymouth-0.8.4.ebuild, -plymouth-0.8.8-r2.ebuild,
+  -plymouth-0.8.8.ebuild:
+  Install compat symlinks as some rdeps need them, drop old
+

Looks like gdm also hardcodes it (just reported), dracut uses type for getting right path, but their unit file rely on old path
Comment 7 Enrico Tagliavini 2013-10-16 08:59:21 UTC
Sorry for the delay, but I got few days off and I was without my pc.

Looking at your change on -r3 I remembered that sys-boot/plymouth-openrc-plugin is unmaintained. Both the ebuild and the code.

If you want to stabilize plymouth I recommend to just drop support for sys-boot/plymouth-openrc-plugin.

About systemd USE..... I think it can be removed. It is not an hardcore runtime deps, plymouth just provides unit files for systemd and those should be installed unconditionally.

Any objection or though on this?
Comment 8 Pacho Ramos gentoo-dev 2013-10-16 19:15:26 UTC
(In reply to Enrico Tagliavini from comment #7)> 
> If you want to stabilize plymouth I recommend to just drop support for
> sys-boot/plymouth-openrc-plugin.

How will it affect openrc users? Thanks :)
Comment 9 Enrico Tagliavini 2013-10-16 19:26:55 UTC
(In reply to Pacho Ramos from comment #8)
> (In reply to Enrico Tagliavini from comment #7)> 
> > If you want to stabilize plymouth I recommend to just drop support for
> > sys-boot/plymouth-openrc-plugin.
> 
> How will it affect openrc users? Thanks :)

I guess it will simply stop working. It is unmaintained from a long time, but if someone steps up to maintain it, that's ok. I'm not that guy, sorry.

But to be clear: no plugin is needed to use plymouth. You can simply call the client to tell the deamon what to do. So the most simple setup can be with 2 service files, one starting at very beginning of the boot process (ideally even before the real init is called if an initramfs is used) and one just before Xorg.
Comment 10 Pacho Ramos gentoo-dev 2013-10-16 20:02:04 UTC
+*plymouth-0.8.8-r4 (16 Oct 2013)
+
+  16 Oct 2013; Pacho Ramos <pacho@gentoo.org> +plymouth-0.8.8-r4.ebuild:
+  systemd USE flag is not needed (#487674#c9 by Enrico Tagliavini)
+
Comment 11 Enrico Tagliavini 2013-10-17 09:59:43 UTC
(In reply to Pacho Ramos from comment #10)
> +*plymouth-0.8.8-r4 (16 Oct 2013)
> +
> +  16 Oct 2013; Pacho Ramos <pacho@gentoo.org> +plymouth-0.8.8-r4.ebuild:
> +  systemd USE flag is not needed (#487674#c9 by Enrico Tagliavini)
> +

Looks very nice to me, thank you for that.

Few mors (like swite words about the openrc plugin: I had a quick look at the source code and what it does is starting plymouth early, update the statuching to runlevel blabla yadda and similar), and then stop it when shutting down.

The plugin itself should be good and working until OpenRC / plymouth API changes, but quite a lot of stuff is missing elsewhere, like integration with plymouth helpers for user interaction (e.g. when asking crypt passwords). This is because that stuff should go in the init script files, and not in the plugin AFAIK.

If the initramfs support this (like with dracut with crypt stuff) it can be a workaround, but still not an optimal solution, since this force user interaction to be done during initramfs before calling openrc.

Dunno what the plans for openrc are, but the best thing is probably to do something similar to what systemd does: it provides an helper for generic password ask agent and it can work both with plain tty and plymouth. Init script creation is easy that way, you just call a command to have a password back, regardless if you are using plymouth or not.

Until OpenRC plymouth support is fully in place I'm not sure if this can be a blocker for genkernel users. I cannot think other scenario requiring user interaction if not crypt, so it should work for "common" setups (for a definition of common where crypt is not common), but I'll recommend to put an ewarn about that in genkernel-next if compiled with USE=plymouth
Comment 12 Pacho Ramos gentoo-dev 2013-10-20 07:41:35 UTC
amd64 stable
Comment 13 Johannes Huber (RETIRED) gentoo-dev 2013-12-01 16:04:59 UTC
x86 stable
Comment 14 Agostino Sarubbo gentoo-dev 2013-12-24 16:57:41 UTC
ppc64 stable
Comment 15 bingquick 2014-01-04 03:08:19 UTC
This script /usr/libexec/plymouth/plymouth-populate-initrd installs plymouthd and plymouth into the /sbin & /bin path of initrd file system. It will cause problem for initrd generated by the latest dracut(034-r4) in a system using systemd, as the gentoo plymouth unit files are expecting they uder /usr. Can I propose doing the same trick to these files as it's been done for udevadm?

----
diff --git a/sys-boot/plymouth/plymouth-0.8.8-r4.ebuild b/sys-boot/plymouth/plymouth-0.8.8-r4.ebuild
index c6f91e1..7731f48 100644
--- a/sys-boot/plymouth/plymouth-0.8.8-r4.ebuild
+++ b/sys-boot/plymouth/plymouth-0.8.8-r4.ebuild
@@ -47,6 +47,11 @@ src_prepare() {
 		'ask-password sed failed'
 	sed -i 's:/bin/udevadm:/usr/bin/udevadm:g' \
 		systemd-units/plymouth-start.service.in || die 'udevadm sed failed'
+	sed -i 's:/sbin/plymouthd:/usr/sbin/plymouthd:g' \
+		scripts/plymouth-populate-initrd.in || die 'plymouthd sed failed'
+	sed -i 's:/bin/plymouth:/usr/bin/plymouth:g' \
+		scripts/plymouth-populate-initrd.in || die 'plymouth sed failed'
+
 	autotools-utils_src_prepare
 }
Comment 16 Pacho Ramos gentoo-dev 2014-01-04 09:26:44 UTC
Please open a new bug report for that issue
Comment 17 Émeric Maschino 2014-01-14 01:22:43 UTC
Hi,

Though plymouth emerged successfully on ia64 (had to emerge again libdrm[libkms] and genkernel-next[plymouth] nevertheless), I'm seeking for installation steps before declaring ia64 stable or not. Indeed, informations in /usr/share/doc/plymouth-0.8.8-r4/README.gentoo.bz2 seem pretty outdated (link to http://dev.gentoo.org/~aidecoe/doc/en/plymouth.xml that was last updated in October 24, 2011) and focus on OpenRC/dracut/grub systems. I'm running systemd/genkernel-next/elilo. I remember having successfully played with rhgb and elilo in the Fedora ia64 early days.

     Émeric
Comment 18 Pacho Ramos gentoo-dev 2014-01-14 21:29:56 UTC
That is not arch specific but deserves a new bug report, could you add a new one for that doc issue? Thanks!

+  14 Jan 2014; Pacho Ramos <pacho@gentoo.org> plymouth-0.8.8-r4.ebuild:
+  ia64 stable, bug #487674 (thanks to Emeric Maschino for testing)
+
Comment 19 Agostino Sarubbo gentoo-dev 2014-02-02 15:56:06 UTC
arm stable
Comment 20 Agostino Sarubbo gentoo-dev 2014-02-02 15:56:15 UTC
alpha stable
Comment 21 Agostino Sarubbo gentoo-dev 2014-02-02 15:56:25 UTC
ppc stable
Comment 22 Agostino Sarubbo gentoo-dev 2014-02-02 15:56:35 UTC
sparc stable. Closing.