Add support for creating passwd files in a /etc subdir Set PW_SUBIR to pwdb to get passwd files in /etc/pwdb
Signed-off-by: Joakim Tjernlund <joakim.tjernl...@infinera.com> --- .../base-passwd/base-passwd_3.5.29.bb | 24 ++++++++++++------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb b/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb index ef7792ae49..e453be0763 100644 --- a/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb +++ b/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb @@ -20,6 +20,9 @@ SRC_URI = "https://launchpad.net/debian/+archive/primary/+files/${BPN}_${PV}.tar SRC_URI[md5sum] = "6beccac48083fe8ae5048acd062e5421" SRC_URI[sha256sum] = "f0b66388b2c8e49c15692439d2bee63bcdd4bbbf7a782c7f64accc55986b6a36" +#Set PW_SUBDIR to pwdb to get passwd files in /etc/pwdb +PW_SUBDIR ?= "" + # the package is taken from launchpad; that source is static and goes stale # so we check the latest upstream from a directory that does get updated UPSTREAM_CHECK_URI = "${DEBIAN_MIRROR}/main/b/base-passwd/" @@ -50,10 +53,11 @@ basepasswd_sysroot_postinst() { #!/bin/sh # Install passwd.master and group.master to sysconfdir -install -d -m 755 ${STAGING_DIR_TARGET}${sysconfdir} +install -d -m 755 ${STAGING_DIR_TARGET}${sysconfdir}/${PW_SUBDIR} for i in passwd group; do install -p -m 644 ${STAGING_DIR_TARGET}${datadir}/base-passwd/\$i.master \ - ${STAGING_DIR_TARGET}${sysconfdir}/\$i + ${STAGING_DIR_TARGET}${sysconfdir}/${PW_SUBDIR}/\$i + [ -n "${PW_SUBDIR}" ] && ln -fs ${PW_SUBDIR}/\$i ${STAGING_DIR_TARGET}${sysconfdir}/\$i done # Run any useradd postinsts @@ -89,15 +93,19 @@ python populate_packages:prepend() { f.close() preinst = """#!/bin/sh -mkdir -p $D${sysconfdir} -if [ ! -e $D${sysconfdir}/passwd ]; then -\tcat << 'EOF' > $D${sysconfdir}/passwd +mkdir -p $D${sysconfdir}/${PW_SUBDIR} +if [ ! -e $D${sysconfdir}/${PW_SUBDIR}/passwd ]; then +\tcat << 'EOF' > $D${sysconfdir}/${PW_SUBDIR}/passwd """ + passwd + """EOF fi -if [ ! -e $D${sysconfdir}/group ]; then -\tcat << 'EOF' > $D${sysconfdir}/group +if [ ! -e $D${sysconfdir}/${PW_SUBDIR}/group ]; then +\tcat << 'EOF' > $D${sysconfdir}/${PW_SUBDIR}/group """ + group + """EOF fi +if [ -n "${PW_SUBDIR}" ]; then +ln -fs ${PW_SUBDIR}/passwd $D${sysconfdir}/passwd +ln -fs ${PW_SUBDIR}/group $D${sysconfdir}/group +fi """ d.setVar(d.expand('pkg_preinst:${PN}'), preinst) } @@ -114,5 +122,5 @@ pkg_postinst:${PN}-update () { if [ -n "$D" ]; then exit 0 fi -${sbindir}/update-passwd +${sbindir}/update-passwd -P /etc/${PW_SUBDIR}/passwd -S /etc/${PW_SUBDIR}/shadow -G /etc/${PW_SUBDIR}/group } -- 2.41.0
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#190517): https://lists.openembedded.org/g/openembedded-core/message/190517 Mute This Topic: https://lists.openembedded.org/mt/102591946/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-