]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commitdiff
shadow: use ALTERNATIVE to manage 'nologin' ChenQi/nologin-alternatives
authorChen Qi <Qi.Chen@windriver.com>
Fri, 21 Nov 2014 06:33:38 +0000 (14:33 +0800)
committerChen Qi <Qi.Chen@windriver.com>
Fri, 21 Nov 2014 07:04:18 +0000 (15:04 +0800)
Both util-linux and shadow provide 'nologin', so use the ALTERNATIVE
mechanism in OE to manage it.

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
meta/recipes-extended/shadow/shadow.inc

index 14c7281f53083ffb095fcd5b5e93cd3553a2d360..81924e27b70d798245528a74d966b8409ebac8ea 100644 (file)
@@ -146,18 +146,23 @@ do_install_append() {
        # Handle link properly after rename, otherwise missing files would
        # lead rpm failed dependencies.
        ln -sf newgrp.${BPN} ${D}${bindir}/sg
+
+       # mv nologin to nologin.${BPN}
+       mv ${D}${base_sbindir}/nologin ${D}${base_sbindir}/nologin.${BPN}
 }
 
 inherit update-alternatives
 
 ALTERNATIVE_PRIORITY = "200"
 
-ALTERNATIVE_${PN} = "passwd chfn newgrp chsh groups chpasswd login vipw vigr su"
+ALTERNATIVE_${PN} = "passwd chfn newgrp chsh groups chpasswd login vipw vigr su nologin"
 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_LINK_NAME[su] = "${base_bindir}/su"
+ALTERNATIVE_LINK_NAME[nologin] = "${sbindir}/nologin"
+ALTERNATIVE_TARGET[nologin] = "${base_sbindir}/nologin.${BPN}"
 
 ALTERNATIVE_${PN}-doc = "passwd.5 getspnam.3"
 ALTERNATIVE_LINK_NAME[passwd.5] = "${mandir}/man5/passwd.5"