]> code.ossystems Code Review - openembedded-core.git/commitdiff
shadow: split files needed for PAM use into separate package
authorMatt Madison <matt@madison.systems>
Sat, 4 Apr 2015 18:04:58 +0000 (11:04 -0700)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 9 Apr 2015 18:48:04 +0000 (19:48 +0100)
The rootfs creator automatically removes shadow for read-only
root filesystems, which breaks use of PAM plugins for login and
other process identity management utilities.  Package those programs
and config files separately, so they don't get removed.

Signed-off-by: Matt Madison <matt@madison.systems>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-extended/shadow/shadow.inc

index a05ead35b7c0e737843af7c8587aa9f59aaf630b..7c63d88c7087cc11759926f751e3916cc06b5fd7 100644 (file)
@@ -150,15 +150,30 @@ do_install_append() {
        ln -sf newgrp.${BPN} ${D}${bindir}/sg
 }
 
+PACKAGES =+ "${PN}-base"
+FILES_${PN}-base = "\
+    ${base_bindir}/login.shadow \
+    ${base_bindir}/su.shadow \
+    ${bindir}/sg \
+    ${bindir}/newgrp.shadow \
+    ${bindir}/groups.shadow \
+    ${sysconfdir}/pam.d/login \
+    ${sysconfdir}/pam.d/su \
+    ${sysconfdir}/login.defs \
+"
+RDEPENDS_${PN} += "${PN}-base"
+
 inherit update-alternatives
 
 ALTERNATIVE_PRIORITY = "200"
 
-ALTERNATIVE_${PN} = "passwd chfn newgrp chsh groups chpasswd login vipw vigr su"
+ALTERNATIVE_${PN} = "passwd chfn chsh chpasswd vipw vigr"
 ALTERNATIVE_LINK_NAME[chpasswd] = "${sbindir}/chpasswd"
-ALTERNATIVE_LINK_NAME[login] = "${base_bindir}/login"
 ALTERNATIVE_LINK_NAME[vipw] = "${base_sbindir}/vipw"
 ALTERNATIVE_LINK_NAME[vigr] = "${base_sbindir}/vigr"
+
+ALTERNATIVE_${PN}-base = "newgrp groups login su"
+ALTERNATIVE_LINK_NAME[login] = "${base_bindir}/login"
 ALTERNATIVE_LINK_NAME[su] = "${base_bindir}/su"
 
 ALTERNATIVE_${PN}-doc = "passwd.5 getspnam.3"