summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--meta-unit-core/recipes-users/useradd/add-user-svc.bb13
-rw-r--r--meta-unit-core/recipes-users/useradd/add-user-unitexe.bb7
-rw-r--r--meta-virtualization-extra/classes/set-xdg-env.bbclass7
3 files changed, 22 insertions, 5 deletions
diff --git a/meta-unit-core/recipes-users/useradd/add-user-svc.bb b/meta-unit-core/recipes-users/useradd/add-user-svc.bb
index 3e2a8ca..ee534c5 100644
--- a/meta-unit-core/recipes-users/useradd/add-user-svc.bb
+++ b/meta-unit-core/recipes-users/useradd/add-user-svc.bb
@@ -22,7 +22,20 @@ USERADD_PARAM:${PN} = "-u ${USER_TO_ADD_UID} -d /home/${USER_TO_ADD_NAME} -s ${b
INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
+do_install() {
+ # Note: Use of .profile here assumes busybox shell.
+ install -D -m 0644 /dev/null ${D}/home/${USER_TO_ADD_NAME}/.profile
+
+ # User is not part of sudo group and therefore doesn't
+ # have sbin in path, add it for access to common commands.
+ cat > ${D}/home/${USER_TO_ADD_NAME}/.profile << 'EOF'
+export PATH="${sbindir}:/sbin:$PATH"
+EOF
+}
+
# Prior to useradd being performed on the sysroot a couple things must happen:
# 1. Need the systemd recipe to create the systemd-journal group
# 2. Need busybox shell present
do_prepare_recipe_sysroot[depends] += "systemd:do_populate_sysroot busybox:do_populate_sysroot"
+
+FILES:${PN}:append = " /home/${USER_TO_ADD_NAME}/.profile"
diff --git a/meta-unit-core/recipes-users/useradd/add-user-unitexe.bb b/meta-unit-core/recipes-users/useradd/add-user-unitexe.bb
index faa1d2a..527af74 100644
--- a/meta-unit-core/recipes-users/useradd/add-user-unitexe.bb
+++ b/meta-unit-core/recipes-users/useradd/add-user-unitexe.bb
@@ -24,7 +24,14 @@ USERADD_PARAM:${PN} = "-u ${USER_TO_ADD_UID} -d /home/${USER_TO_ADD_NAME} -s ${b
INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
+do_install() {
+ # Note: Use of .profile here assumes busybox shell.
+ install -D -m 0644 /dev/null ${D}/home/${USER_TO_ADD_NAME}/.profile
+}
+
# Prior to useradd being performed on the sysroot a couple things must happen:
# 1. Need the systemd recipe to create the systemd-journal group
# 2. Need busybox shell present
do_prepare_recipe_sysroot[depends] += "systemd:do_populate_sysroot busybox:do_populate_sysroot"
+
+FILES:${PN}:append = " /home/${USER_TO_ADD_NAME}/.profile"
diff --git a/meta-virtualization-extra/classes/set-xdg-env.bbclass b/meta-virtualization-extra/classes/set-xdg-env.bbclass
index 4835e93..667f89a 100644
--- a/meta-virtualization-extra/classes/set-xdg-env.bbclass
+++ b/meta-virtualization-extra/classes/set-xdg-env.bbclass
@@ -1,14 +1,11 @@
do_install:append() {
- # Note: Use of .profile here assumes busybox shell.
+ # Assumes that .profile is already installed.
# Podman uses these (if defined) for overriding
# default configuration file locations. This is
# explained here:
# https://github.com/containers/podman/blob/main/docs/tutorials/rootless_tutorial.md#user-configuration-files
- install -D -m 0644 /dev/null ${D}/home/${USER_TO_ADD_NAME}/.profile
- cat > ${D}/home/${USER_TO_ADD_NAME}/.profile << 'EOF'
+ cat >> ${D}/home/${USER_TO_ADD_NAME}/.profile << 'EOF'
export XDG_RUNTIME_DIR=/run/user/$(id -u)
export XDG_CONFIG_HOME=$HOME/.config
EOF
}
-
-FILES:${PN}:append = " /home/${USER_TO_ADD_NAME}/.profile"