commit dffbfc3d8833671fe7962d630754ed389fe24fdb
parent 763acb67212d0430f7c76bef8bd05960269c8798
Author: Jan Pobrislo <ccx@te2000.cz>
Date: Mon, 8 Dec 2025 07:21:07 +0000
Make sandbox rootfs work with /usr directory
Diffstat:
7 files changed, 20 insertions(+), 17 deletions(-)
diff --git a/templates/pkg/sandbox_rootfs b/templates/pkg/sandbox_rootfs
@@ -13,15 +13,16 @@
{%- endblock package_deps -%}
{% block build -%}
{# mkdir -p root/dev root/proc -#}
-mkdir -p root/bin root/mnt/oldroot
-ln -v -s bin root/sbin
-ln -v -s . root/usr
+mkdir -p root/bin root/usr root/sbin root/mnt/oldroot
+ln -v -s ../bin root/usr/
build_env_static
gcc ${CFLAGS} -o "root/bin/argv0exec" "argv0exec.c" $LDFLAGS -lskarnet
ln -v -s argv0exec root/bin/sh
ln -v -s argv0exec root/bin/env
+ln -v -s ../bin/argv0exec root/sbin/sh
+ln -v -s ../bin/argv0exec root/sbin/env
{% endblock build %}
{% block install -%}
mkdir -p "$dest/pthbs/sandbox"
diff --git a/variants/ccx-x86_64/pthbs-sandbox-rootns b/variants/ccx-x86_64/pthbs-sandbox-rootns
@@ -4,7 +4,7 @@
#+nawk.e751b8be76a2fb59a2fe374e1f55c7da47b14ef1154eb8614d12107e6d68e88d
#+execline.97dcd338d1cd526ffe28a8cbb05849056cb77d98f2ba70113cf1197c070caf98
#+lnstools.e19f5f7ba4bae384a8acd87690ae30ecca4b7fc563e9794d82c2ffb805797d7d
-#+sandbox_rootfs.c0bb1b67393bb1c9ad4d66cd210409db15205c02b56626c3872365c0f37d88ad
+#+sandbox_rootfs.5e12d8489f17d499f05d0c234e1b951786b7583d0328757138e618ed8770bc56
#@sha256:b85634a91129f85a5aad5cae51d4084dd7ce62544b5585f0899058576c16451f:abspaths.awk
#@sha256:0dfa0b3e1ac4c263a0ce11be4d53979a2e10be3b404094f9aada3c041c0184b3:sandbox-rootns.in
diff --git a/variants/ccx-x86_64/sandbox_rootfs b/variants/ccx-x86_64/sandbox_rootfs
@@ -22,15 +22,16 @@ dest=${pthbs_destdir%/}${prefix}
cd '.'
-mkdir -p root/bin root/mnt/oldroot
-ln -v -s bin root/sbin
-ln -v -s . root/usr
+mkdir -p root/bin root/usr root/sbin root/mnt/oldroot
+ln -v -s ../bin root/usr/
build_env_static
gcc ${CFLAGS} -o "root/bin/argv0exec" "argv0exec.c" $LDFLAGS -lskarnet
ln -v -s argv0exec root/bin/sh
ln -v -s argv0exec root/bin/env
+ln -v -s ../bin/argv0exec root/sbin/sh
+ln -v -s ../bin/argv0exec root/sbin/env
mkdir -p "$dest/pthbs/sandbox"
tar -cvf "$dest/pthbs/sandbox/root.tar" -C root .
diff --git a/variants/ccx-x86_64/sandbox_rootns.environment b/variants/ccx-x86_64/sandbox_rootns.environment
@@ -2,5 +2,5 @@
#+lnstools.e19f5f7ba4bae384a8acd87690ae30ecca4b7fc563e9794d82c2ffb805797d7d
#+busybox.d2459d82c53bbacce6fbdbf272b9caf844835248a72c6c2cdf8525229786b23f
#+execline.97dcd338d1cd526ffe28a8cbb05849056cb77d98f2ba70113cf1197c070caf98
-#+sandbox_rootfs.c0bb1b67393bb1c9ad4d66cd210409db15205c02b56626c3872365c0f37d88ad
-#+pthbs-sandbox-rootns.fb33fb6eec20480746dab38fbd1841360497b2ba67f1aef5ffa0d5c1acae0a8d-
\ No newline at end of file
+#+sandbox_rootfs.5e12d8489f17d499f05d0c234e1b951786b7583d0328757138e618ed8770bc56
+#+pthbs-sandbox-rootns.589fe10df00288e52ee36fbbc1eb2408009708ff4ee20f863909a979fc65df78+
\ No newline at end of file
diff --git a/variants/root-x86_64/pthbs-sandbox-rootns b/variants/root-x86_64/pthbs-sandbox-rootns
@@ -4,7 +4,7 @@
#+nawk.f693cc9a360afa00381350243fad82275ec5781c1916597df5ee0072912dea37
#+execline.0eb0935639ed55b8948221824f1af13a1df21af537b12b7405e3bcf9441be47a
#+lnstools.4cd9dc1e63902226eb24b30e6285408ea3a8fa37c5fefd0251f013c6686109ea
-#+sandbox_rootfs.da56a3e9eb268605ab40d9a659cef6ae8381c4e1bb32fff6e71db1057cf0544a
+#+sandbox_rootfs.382198fee3635139e88c54e1ce7f7d86827deffed58c97346a35575e18abfe6a
#@sha256:b85634a91129f85a5aad5cae51d4084dd7ce62544b5585f0899058576c16451f:abspaths.awk
#@sha256:0dfa0b3e1ac4c263a0ce11be4d53979a2e10be3b404094f9aada3c041c0184b3:sandbox-rootns.in
diff --git a/variants/root-x86_64/sandbox_rootfs b/variants/root-x86_64/sandbox_rootfs
@@ -22,15 +22,16 @@ dest=${pthbs_destdir%/}${prefix}
cd '.'
-mkdir -p root/bin root/mnt/oldroot
-ln -v -s bin root/sbin
-ln -v -s . root/usr
+mkdir -p root/bin root/usr root/sbin root/mnt/oldroot
+ln -v -s ../bin root/usr/
build_env_static
gcc ${CFLAGS} -o "root/bin/argv0exec" "argv0exec.c" $LDFLAGS -lskarnet
ln -v -s argv0exec root/bin/sh
ln -v -s argv0exec root/bin/env
+ln -v -s ../bin/argv0exec root/sbin/sh
+ln -v -s ../bin/argv0exec root/sbin/env
mkdir -p "$dest/pthbs/sandbox"
tar -cvf "$dest/pthbs/sandbox/root.tar" -C root .
diff --git a/variants/root-x86_64/sandbox_rootns.environment b/variants/root-x86_64/sandbox_rootns.environment
@@ -2,5 +2,5 @@
#+lnstools.4cd9dc1e63902226eb24b30e6285408ea3a8fa37c5fefd0251f013c6686109ea
#+busybox.3dcaebb29d41a6922a969e285bb6fb556acdb34572e22917fb71c0420c060a4f
#+execline.0eb0935639ed55b8948221824f1af13a1df21af537b12b7405e3bcf9441be47a
-#+sandbox_rootfs.da56a3e9eb268605ab40d9a659cef6ae8381c4e1bb32fff6e71db1057cf0544a
-#+pthbs-sandbox-rootns.11d8cfce6335508dfc44849710a0a88ffbbd21e8094270d94703551b82e61316-
\ No newline at end of file
+#+sandbox_rootfs.382198fee3635139e88c54e1ce7f7d86827deffed58c97346a35575e18abfe6a
+#+pthbs-sandbox-rootns.e03b4dc470d3a28e1d635bfc09e902ba06c364817a992244cefd9450ea8229eb+
\ No newline at end of file