diff --git a/package/base-files/files/lib/functions.sh b/package/base-files/files/lib/functions.sh index dde1ac4f47..33b22d2842 100755 --- a/package/base-files/files/lib/functions.sh +++ b/package/base-files/files/lib/functions.sh @@ -173,11 +173,9 @@ default_prerm() { done } -default_postinst() { - local root="${IPKG_INSTROOT}" - local pkgname="$(basename ${1%.*})" +add_group_and_user() { + local pkgname="$1" local rusers="$(sed -ne 's/^Require-User: *//p' $root/usr/lib/opkg/info/${pkgname}.control 2>/dev/null)" - local ret=0 if [ -n "$rusers" ]; then local tuple oIFS="$IFS" @@ -208,6 +206,14 @@ default_postinst() { unset uid gid uname gname done fi +} + +default_postinst() { + local root="${IPKG_INSTROOT}" + local pkgname="$(basename ${1%.*})" + local ret=0 + + add_group_and_user "${pkgname}" if [ -f "$root/usr/lib/opkg/info/${pkgname}.postinst-pkg" ]; then ( . "$root/usr/lib/opkg/info/${pkgname}.postinst-pkg" )