summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xabuild.in24
1 files changed, 21 insertions, 3 deletions
diff --git a/abuild.in b/abuild.in
index faa569e..8862a56 100755
--- a/abuild.in
+++ b/abuild.in
@@ -26,7 +26,7 @@ BUILD_BASE="build-base"
SUDO=${SUDO:-"sudo"}
-default_cmds="sanitycheck builddeps clean fetch unpack rootpkg apkcache"
+default_cmds="sanitycheck builddeps clean fetch unpack mkusers rootpkg apkcache"
# read config
ABUILD_CONF=${ABUILD_CONF:-"$sysconfdir/abuild.conf"}
@@ -264,7 +264,24 @@ cleanoldpkg() {
done
return 0
}
-
+
+mkusers() {
+ local i
+ for i in $pkgusers; do
+ if ! getent passwd $i >/dev/null; then
+ msg "Creating user $i"
+ $SUDO adduser -D -H $i || return 1
+ fi
+ done
+ for i in $pkggroups; do
+ if ! getent group $i >/dev/null; then
+ msg "Creating group $i"
+ $SUDO addgroup $i || return 1
+ fi
+ done
+}
+
+
runpart() {
local part=$1
[ -n "$DEBUG" ] && msg "$part"
@@ -488,7 +505,8 @@ create_apks() {
apkcache() {
if ! apk_up2date || [ -n "$force" ]; then
- sanitycheck && builddeps && clean && fetch && unpack && rootpkg || return 1
+ sanitycheck && builddeps && clean && fetch && unpack \
+ && mkusers && rootpkg || return 1
fi
local apk