summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--NEWS4
-rw-r--r--src/opkg.sh7
2 files changed, 9 insertions, 2 deletions
diff --git a/NEWS b/NEWS
index 81c1b9f..9346655 100644
--- a/NEWS
+++ b/NEWS
@@ -28,6 +28,10 @@ Error handling and bug fixes:
* An incompatibility with GNU Bash, Z shell, KornShell, MirBSD Korn
Shell, and possibly others (except Almquist shell derivatives DASH
and BusyBox ash) present since prokit version 2.0.0 has been fixed.
+ * Installation commands no longer assume that the "cut" utility is
+ usable within the root being installed. ProteanOS's busybox
+ 1.32.0-1 manages "cut" and almost all other utility links using
+ update-alternatives, so they aren't usable until after installation.
ProteanOS Development Kit version 2.0.1
---------------------------------------
diff --git a/src/opkg.sh b/src/opkg.sh
index d801309..39b91ef 100644
--- a/src/opkg.sh
+++ b/src/opkg.sh
@@ -23,12 +23,15 @@ opkg_install_all()
local root="${1}"
shift 1
local es=
+ local pkgs=
session_begin "${root}" . true
es=0
- session_exec /bin/sh -c \
- 'opkg install $(opkg list-installed | cut -d " " -f 1)' || \
+ if ! pkgs="$(session_exec opkg list-installed | cut -d " " -f 1)"; then
es=${?}
+ session_end
+ fi
+ session_exec opkg install ${pkgs} || es=${?}
session_end
return ${es}