From: Stephano Cetola Date: Thu, 14 Jul 2016 18:12:40 +0000 (-0700) Subject: systemd: allow add users to groups in rootfs postprocess X-Git-Tag: uninative-1.3~235 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=f0a77bee3d092cf79b7e584b943a623eddd6e13d;p=openembedded-core.git systemd: allow add users to groups in rootfs postprocess Currently the functionality checks for the "u" and "g" flags to create users and groups, but not the "m" flag to add users to groups. This change first checks to be sure that the users and groups are created, creates them if necessary, then adds the user to the group. Signed-off-by: Stephano Cetola Signed-off-by: Ross Burton Signed-off-by: Richard Purdie --- diff --git a/meta/classes/rootfs-postcommands.bbclass b/meta/classes/rootfs-postcommands.bbclass index db8b551533..b38b6a50c5 100644 --- a/meta/classes/rootfs-postcommands.bbclass +++ b/meta/classes/rootfs-postcommands.bbclass @@ -45,6 +45,15 @@ systemd_create_users () { [ "$id" != "-" ] && groupadd_params="$groupadd_params --gid $id" groupadd_params="$groupadd_params --system $name" eval groupadd --root ${IMAGE_ROOTFS} $groupadd_params || true + elif [ "$type" = "m" ]; then + group=$id + if [ ! `grep -q "^${group}:" ${IMAGE_ROOTFS}${sysconfdir}/group` ]; then + eval groupadd --root ${IMAGE_ROOTFS} --system $group + fi + if [ ! `grep -q "^${name}:" ${IMAGE_ROOTFS}${sysconfdir}/passwd` ]; then + eval useradd --root ${IMAGE_ROOTFS} --shell /sbin/nologin --system $name + fi + eval usermod --root ${IMAGE_ROOTFS} -a -G $group $name fi done done