summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVincent Legoll <vincent.legoll@gmail.com>2020-05-17 19:17:11 +0200
committerGuix Patches Tester <>2020-05-24 21:33:41 +0100
commita2ad606c1f4c275cd04dbb470d007500113d8b66 (patch)
tree0e8d643f621d1e26bb9a3bfadb9c1c0ea3322dc8
parent483041b424825013ec989d153b062494bc0a49bc (diff)
downloadpatches-a2ad606c1f4c275cd04dbb470d007500113d8b66.tar
patches-a2ad606c1f4c275cd04dbb470d007500113d8b66.tar.gz
guix-install.sh: Make tar usage compatible with busybox.
The --warning option is not suported by busybox tar, but it does not emit missing timestamps warnings anyways. * etc/guix-install.sh (sys_create_store): Add --warning tar option only when supported.
-rwxr-xr-xetc/guix-install.sh11
1 files changed, 7 insertions, 4 deletions
diff --git a/etc/guix-install.sh b/etc/guix-install.sh
index 8d3075609e..3c85f7cff7 100755
--- a/etc/guix-install.sh
+++ b/etc/guix-install.sh
@@ -268,10 +268,13 @@ sys_create_store()
_debug "--- [ $FUNCNAME ] ---"
- cd "$tmp_path"
- tar --warning=no-timestamp \
- --extract \
- --file "$pkg" &&
+ # Do not use the --warning option with busybox tar
+ TAROPTS=("-C" "${tmp_path}")
+ if tar c --warning=no-timestamp -f /dev/null /dev/null >&/dev/null; then
+ TAROPTS+=("--warning=no-timestamp")
+ fi
+
+ tar x -f "${pkg}" "${TAROPTS[@]}" &&
_msg "${PAS}unpacked archive"
if [[ -e "/var/guix" || -e "/gnu" ]]; then