summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2020-05-11 16:32:24 +0200
committerLudovic Courtès <ludo@gnu.org>2020-05-14 17:21:27 +0200
commitfde2aec3f498d5ec6db2121d72068e2b203e86cd (patch)
treed0d3c9b723c3e694ca107cff9315075e8267ebf4 /tests
parent80963744a242257921917df5a901dc343d3a93db (diff)
downloadpatches-fde2aec3f498d5ec6db2121d72068e2b203e86cd.tar
patches-fde2aec3f498d5ec6db2121d72068e2b203e86cd.tar.gz
pack: Wrapper honors 'GUIX_EXECUTION_ENGINE' environment variable.
* gnu/packages/aux-files/run-in-namespace.c (struct engine): New type. (exec_default): New function. (engines): New variable. (execution_engine): New function. (main): Use it instead of calling 'exec_in_user_namespace' and 'exec_with_proot' directly. * tests/guix-pack-relocatable.sh: Add test with 'GUIX_EXECUTION_ENGINE'. * doc/guix.texi (Invoking guix pack): Document 'GUIX_EXECUTION_ENGINE'.
Diffstat (limited to 'tests')
-rw-r--r--tests/guix-pack-relocatable.sh17
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/guix-pack-relocatable.sh b/tests/guix-pack-relocatable.sh
index a3fd45623c..cb56815fed 100644
--- a/tests/guix-pack-relocatable.sh
+++ b/tests/guix-pack-relocatable.sh
@@ -84,6 +84,23 @@ fi
grep 'GNU sed' "$test_directory/output"
chmod -Rf +w "$test_directory"; rm -rf "$test_directory"/*
+case "`uname -m`" in
+ x86_64|i?86)
+ # Try '-RR' and PRoot.
+ tarball="`guix pack -RR -S /Bin=bin sed`"
+ tar tvf "$tarball" | grep /bin/proot
+ (cd "$test_directory"; tar xvf "$tarball")
+ GUIX_EXECUTION_ENGINE="proot"
+ export GUIX_EXECUTION_ENGINE
+ "$test_directory/Bin/sed" --version > "$test_directory/output"
+ grep 'GNU sed' "$test_directory/output"
+ chmod -Rf +w "$test_directory"; rm -rf "$test_directory"/*
+ ;;
+ *)
+ echo "skipping PRoot test" >&2
+ ;;
+esac
+
# Ensure '-R' works with outputs other than "out".
tarball="`guix pack -R -S /share=share groff:doc`"
(cd "$test_directory"; tar xvf "$tarball")