From: Jörg Thalheim Date: Wed, 4 Mar 2020 09:35:06 +0000 (+0000) Subject: treewide: more portable bash shebangs X-Git-Tag: v245~4 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=ff12a7954c1993dd1f38d49052e79bb245d75dc4;p=thirdparty%2Fsystemd.git treewide: more portable bash shebangs As in 2a5fcfae024ffc370bb780572279f45a1da3f946 and in 3e67e5c9928f8b1e1c5a63def88d53ed1fed12eb using /usr/bin/env allows bash to be looked up in PATH rather than being hard-coded. As with the previous changes the same arguments apply - distributions have scripts to rewrite shebangs on installation and they know what locations to rely on. - For tests/compilation we should rather rely on the user to have setup there PATH correctly. In particular this makes testing from git easier on NixOS where do not provide /bin/bash to improve compose-ability. --- diff --git a/configure b/configure index a9db8a1cff5..5247074b6dd 100755 --- a/configure +++ b/configure @@ -1,4 +1,5 @@ -#!/bin/bash -e +#!/usr/bin/env bash +set -e cflags=CFLAGS="$CFLAGS" cxxflags=CXXFLAGS="$CXXFLAGS" diff --git a/src/basic/linux/update.sh b/src/basic/linux/update.sh index b2320701938..d272ffd2968 100755 --- a/src/basic/linux/update.sh +++ b/src/basic/linux/update.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -eu diff --git a/src/kernel-install/00-entry-directory.install b/src/kernel-install/00-entry-directory.install index 2aa8c583196..21c09fa6917 100644 --- a/src/kernel-install/00-entry-directory.install +++ b/src/kernel-install/00-entry-directory.install @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash # -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*- # ex: ts=8 sw=4 sts=4 et filetype=sh diff --git a/src/kernel-install/50-depmod.install b/src/kernel-install/50-depmod.install index 268b6ce0a52..3850eacef5c 100644 --- a/src/kernel-install/50-depmod.install +++ b/src/kernel-install/50-depmod.install @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash # -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*- # ex: ts=8 sw=4 sts=4 et filetype=sh diff --git a/src/kernel-install/90-loaderentry.install b/src/kernel-install/90-loaderentry.install index 133378da6b9..6c0e27ba3a6 100644 --- a/src/kernel-install/90-loaderentry.install +++ b/src/kernel-install/90-loaderentry.install @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash # -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*- # ex: ts=8 sw=4 sts=4 et filetype=sh diff --git a/src/kernel-install/kernel-install b/src/kernel-install/kernel-install index e7f2beb5707..4812464da9a 100644 --- a/src/kernel-install/kernel-install +++ b/src/kernel-install/kernel-install @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash # -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*- # ex: ts=8 sw=4 sts=4 et filetype=sh # SPDX-License-Identifier: LGPL-2.1+ diff --git a/test/TEST-01-BASIC/test.sh b/test/TEST-01-BASIC/test.sh index 007ee7a91f6..0eaa8f991ad 100755 --- a/test/TEST-01-BASIC/test.sh +++ b/test/TEST-01-BASIC/test.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -e TEST_DESCRIPTION="Basic systemd setup" RUN_IN_UNPRIVILEGED_CONTAINER=${RUN_IN_UNPRIVILEGED_CONTAINER:-yes} diff --git a/test/TEST-02-CRYPTSETUP/test.sh b/test/TEST-02-CRYPTSETUP/test.sh index a7563f44620..a859b345d08 100755 --- a/test/TEST-02-CRYPTSETUP/test.sh +++ b/test/TEST-02-CRYPTSETUP/test.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -e TEST_DESCRIPTION="cryptsetup systemd setup" TEST_NO_NSPAWN=1 diff --git a/test/TEST-03-JOBS/test-jobs.sh b/test/TEST-03-JOBS/test-jobs.sh index fca6cccb4fb..85efeeb741c 100755 --- a/test/TEST-03-JOBS/test-jobs.sh +++ b/test/TEST-03-JOBS/test-jobs.sh @@ -1,4 +1,5 @@ -#!/bin/bash -ex +#!/usr/bin/env bash +set -ex # Test merging of a --job-mode=ignore-dependencies job into a previously # installed job. diff --git a/test/TEST-03-JOBS/test.sh b/test/TEST-03-JOBS/test.sh index 50b7bce3ed9..5299464b81d 100755 --- a/test/TEST-03-JOBS/test.sh +++ b/test/TEST-03-JOBS/test.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -e TEST_DESCRIPTION="Job-related tests" TEST_NO_QEMU=1 diff --git a/test/TEST-04-JOURNAL/test-journal.sh b/test/TEST-04-JOURNAL/test-journal.sh index de27eb00645..1431dad862b 100755 --- a/test/TEST-04-JOURNAL/test-journal.sh +++ b/test/TEST-04-JOURNAL/test-journal.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -x set -e set -o pipefail diff --git a/test/TEST-04-JOURNAL/test.sh b/test/TEST-04-JOURNAL/test.sh index a18d21533ed..af96dfd7191 100755 --- a/test/TEST-04-JOURNAL/test.sh +++ b/test/TEST-04-JOURNAL/test.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -e TEST_DESCRIPTION="Journal-related tests" diff --git a/test/TEST-05-RLIMITS/test-rlimits.sh b/test/TEST-05-RLIMITS/test-rlimits.sh index b4d79c9655c..86b57601fea 100755 --- a/test/TEST-05-RLIMITS/test-rlimits.sh +++ b/test/TEST-05-RLIMITS/test-rlimits.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -x set -e set -o pipefail diff --git a/test/TEST-05-RLIMITS/test.sh b/test/TEST-05-RLIMITS/test.sh index 87fb89e781c..bda37ef212c 100755 --- a/test/TEST-05-RLIMITS/test.sh +++ b/test/TEST-05-RLIMITS/test.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -e TEST_DESCRIPTION="Resource limits-related tests" diff --git a/test/TEST-06-SELINUX/test-selinux-checks.sh b/test/TEST-06-SELINUX/test-selinux-checks.sh index dae48cd4b2f..9e722e362e3 100755 --- a/test/TEST-06-SELINUX/test-selinux-checks.sh +++ b/test/TEST-06-SELINUX/test-selinux-checks.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -x set -e set -o pipefail diff --git a/test/TEST-06-SELINUX/test.sh b/test/TEST-06-SELINUX/test.sh index 646dfe024a3..46dc1cd805e 100755 --- a/test/TEST-06-SELINUX/test.sh +++ b/test/TEST-06-SELINUX/test.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -e TEST_DESCRIPTION="SELinux tests" TEST_NO_NSPAWN=1 diff --git a/test/TEST-07-ISSUE-1981/test-segfault.sh b/test/TEST-07-ISSUE-1981/test-segfault.sh index 82339c23cda..fbb2d1d30a1 100755 --- a/test/TEST-07-ISSUE-1981/test-segfault.sh +++ b/test/TEST-07-ISSUE-1981/test-segfault.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -x set -e diff --git a/test/TEST-07-ISSUE-1981/test.sh b/test/TEST-07-ISSUE-1981/test.sh index e72c11fd1bc..7927294a8ab 100755 --- a/test/TEST-07-ISSUE-1981/test.sh +++ b/test/TEST-07-ISSUE-1981/test.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -e TEST_DESCRIPTION="https://github.com/systemd/systemd/issues/1981" TEST_NO_QEMU=1 diff --git a/test/TEST-08-ISSUE-2730/test.sh b/test/TEST-08-ISSUE-2730/test.sh index dd879131435..2fedef7b58a 100755 --- a/test/TEST-08-ISSUE-2730/test.sh +++ b/test/TEST-08-ISSUE-2730/test.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -e TEST_DESCRIPTION="https://github.com/systemd/systemd/issues/2730" TEST_NO_NSPAWN=1 diff --git a/test/TEST-09-ISSUE-2691/test.sh b/test/TEST-09-ISSUE-2691/test.sh index 955538c8507..efe75d140b6 100755 --- a/test/TEST-09-ISSUE-2691/test.sh +++ b/test/TEST-09-ISSUE-2691/test.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -e TEST_DESCRIPTION="https://github.com/systemd/systemd/issues/2691" TEST_NO_NSPAWN=1 diff --git a/test/TEST-10-ISSUE-2467/test.sh b/test/TEST-10-ISSUE-2467/test.sh index 7bb25696300..1761ad1e430 100755 --- a/test/TEST-10-ISSUE-2467/test.sh +++ b/test/TEST-10-ISSUE-2467/test.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -e TEST_DESCRIPTION="https://github.com/systemd/systemd/issues/2467" diff --git a/test/TEST-11-ISSUE-3166/test.sh b/test/TEST-11-ISSUE-3166/test.sh index 81c12a2783c..e444414a90f 100755 --- a/test/TEST-11-ISSUE-3166/test.sh +++ b/test/TEST-11-ISSUE-3166/test.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -e TEST_DESCRIPTION="https://github.com/systemd/systemd/issues/3166" TEST_NO_NSPAWN=1 @@ -41,7 +41,8 @@ EOF cat >$initdir/test-fail-on-restart.sh <<'EOF' -#!/bin/bash -x +#!/usr/bin/env bash +set -x systemctl start fail-on-restart.service active_state=$(systemctl show --property ActiveState fail-on-restart.service) diff --git a/test/TEST-12-ISSUE-3171/test.sh b/test/TEST-12-ISSUE-3171/test.sh index d9a0e1a3ddc..e30c36ed860 100755 --- a/test/TEST-12-ISSUE-3171/test.sh +++ b/test/TEST-12-ISSUE-3171/test.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -e TEST_DESCRIPTION="https://github.com/systemd/systemd/issues/3171" TEST_NO_QEMU=1 @@ -29,7 +29,7 @@ Type=oneshot EOF cat >$initdir/test-socket-group.sh <<'EOF' -#!/bin/bash +#!/usr/bin/env bash set -x set -e set -o pipefail diff --git a/test/TEST-13-NSPAWN-SMOKE/create-busybox-container b/test/TEST-13-NSPAWN-SMOKE/create-busybox-container index 868dfd852a4..08fb5d4aa6d 100755 --- a/test/TEST-13-NSPAWN-SMOKE/create-busybox-container +++ b/test/TEST-13-NSPAWN-SMOKE/create-busybox-container @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -e set -u diff --git a/test/TEST-13-NSPAWN-SMOKE/test.sh b/test/TEST-13-NSPAWN-SMOKE/test.sh index de504df6321..974b239d80a 100755 --- a/test/TEST-13-NSPAWN-SMOKE/test.sh +++ b/test/TEST-13-NSPAWN-SMOKE/test.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -e TEST_DESCRIPTION="systemd-nspawn smoke test" TEST_NO_NSPAWN=1 @@ -33,7 +33,7 @@ Type=oneshot EOF cat >$initdir/test-nspawn.sh <<'EOF' -#!/bin/bash +#!/usr/bin/env bash set -x set -e set -u diff --git a/test/TEST-14-MACHINE-ID/test.sh b/test/TEST-14-MACHINE-ID/test.sh index 72d7eacbf6f..74cabf86aaa 100755 --- a/test/TEST-14-MACHINE-ID/test.sh +++ b/test/TEST-14-MACHINE-ID/test.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -e TEST_DESCRIPTION="/etc/machine-id testing" TEST_NO_NSPAWN=1 @@ -29,7 +29,7 @@ Type=oneshot EOF cat >$initdir/test-machine-id-setup.sh <<'EOF' -#!/bin/bash +#!/usr/bin/env bash set -e set -x diff --git a/test/TEST-15-DROPIN/test.sh b/test/TEST-15-DROPIN/test.sh index a1d0c618d95..63bbd350517 100755 --- a/test/TEST-15-DROPIN/test.sh +++ b/test/TEST-15-DROPIN/test.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -e TEST_DESCRIPTION="Dropin tests" TEST_NO_QEMU=1 diff --git a/test/TEST-16-EXTEND-TIMEOUT/assess.sh b/test/TEST-16-EXTEND-TIMEOUT/assess.sh index e7f643f9ad1..6f98810b306 100755 --- a/test/TEST-16-EXTEND-TIMEOUT/assess.sh +++ b/test/TEST-16-EXTEND-TIMEOUT/assess.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -v -x rm -f /test.log diff --git a/test/TEST-16-EXTEND-TIMEOUT/extend_timeout_test_service.sh b/test/TEST-16-EXTEND-TIMEOUT/extend_timeout_test_service.sh index 1fd2768fd2b..40bf046dcde 100755 --- a/test/TEST-16-EXTEND-TIMEOUT/extend_timeout_test_service.sh +++ b/test/TEST-16-EXTEND-TIMEOUT/extend_timeout_test_service.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -x set -e set -o pipefail diff --git a/test/TEST-16-EXTEND-TIMEOUT/test.sh b/test/TEST-16-EXTEND-TIMEOUT/test.sh index c5f8af6ec61..43d9f1278b3 100755 --- a/test/TEST-16-EXTEND-TIMEOUT/test.sh +++ b/test/TEST-16-EXTEND-TIMEOUT/test.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -e TEST_DESCRIPTION="EXTEND_TIMEOUT_USEC=usec start/runtime/stop tests" SKIP_INITRD=yes diff --git a/test/TEST-17-UDEV-WANTS/test.sh b/test/TEST-17-UDEV-WANTS/test.sh index 1cdbbd2d8a0..e196003e808 100755 --- a/test/TEST-17-UDEV-WANTS/test.sh +++ b/test/TEST-17-UDEV-WANTS/test.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -e TEST_DESCRIPTION="UDEV SYSTEMD_WANTS property" TEST_NO_NSPAWN=1 diff --git a/test/TEST-17-UDEV-WANTS/testsuite.sh b/test/TEST-17-UDEV-WANTS/testsuite.sh index ceac3697b5f..989c190ce34 100755 --- a/test/TEST-17-UDEV-WANTS/testsuite.sh +++ b/test/TEST-17-UDEV-WANTS/testsuite.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -ex set -o pipefail diff --git a/test/TEST-18-FAILUREACTION/test.sh b/test/TEST-18-FAILUREACTION/test.sh index e9f6ee7afe5..b6231e6f5ae 100755 --- a/test/TEST-18-FAILUREACTION/test.sh +++ b/test/TEST-18-FAILUREACTION/test.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -e TEST_DESCRIPTION="FailureAction= operation" diff --git a/test/TEST-18-FAILUREACTION/testsuite.sh b/test/TEST-18-FAILUREACTION/testsuite.sh index 6ab2638d8ce..e471cda51b5 100755 --- a/test/TEST-18-FAILUREACTION/testsuite.sh +++ b/test/TEST-18-FAILUREACTION/testsuite.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -ex set -o pipefail diff --git a/test/TEST-19-DELEGATE/test.sh b/test/TEST-19-DELEGATE/test.sh index 706f0e9fbb4..2fbfef30628 100755 --- a/test/TEST-19-DELEGATE/test.sh +++ b/test/TEST-19-DELEGATE/test.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -e TEST_DESCRIPTION="test cgroup delegation in the unified hierarchy" TEST_NO_NSPAWN=1 diff --git a/test/TEST-19-DELEGATE/testsuite.sh b/test/TEST-19-DELEGATE/testsuite.sh index a2cb2b875fe..57831c267f6 100755 --- a/test/TEST-19-DELEGATE/testsuite.sh +++ b/test/TEST-19-DELEGATE/testsuite.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -ex set -o pipefail diff --git a/test/TEST-20-MAINPIDGAMES/test.sh b/test/TEST-20-MAINPIDGAMES/test.sh index 05fa847a656..4cf1b79f9a0 100755 --- a/test/TEST-20-MAINPIDGAMES/test.sh +++ b/test/TEST-20-MAINPIDGAMES/test.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -e TEST_DESCRIPTION="test changing main PID" diff --git a/test/TEST-20-MAINPIDGAMES/testsuite.sh b/test/TEST-20-MAINPIDGAMES/testsuite.sh index 904ac0e3b86..f8940260702 100755 --- a/test/TEST-20-MAINPIDGAMES/testsuite.sh +++ b/test/TEST-20-MAINPIDGAMES/testsuite.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -ex set -o pipefail @@ -55,7 +55,7 @@ systemd-notify --uid=1000 MAINPID=$$ test `systemctl show -p MainPID --value testsuite.service` -eq $$ cat >/tmp/mainpid.sh </tmp/mainpid2.sh </dev/shm/mainpid3.sh < /tmp/forking1.sh < /tmp/forking2.sh < /tmp/notify1.sh </dev/null | grep '^/' -m1) [ "$JOURNALCTL" ] || JOURNALCTL=$(which -a $BUILD_DIR/journalctl journalctl 2>/dev/null | grep '^/' -m1) -BASICTOOLS="test sh bash setsid loadkeys setfont login sulogin gzip sleep echo head tail cat mount umount cryptsetup date dmsetup modprobe sed cmp tee rm true false chmod chown ln xargs" +BASICTOOLS="test env sh bash setsid loadkeys setfont login sulogin gzip sleep echo head tail cat mount umount cryptsetup date dmsetup modprobe sed cmp tee rm true false chmod chown ln xargs" DEBUGTOOLS="df free ls stty ps ln ip route dmesg dhclient mkdir cp ping dhclient strace less grep id tty touch du sort hostname find vi mv" STATEDIR="${BUILD_DIR:-.}/test/$(basename $(dirname $(realpath $0)))" @@ -376,7 +376,7 @@ create_valgrind_wrapper() { local _valgrind_wrapper=$initdir/$ROOTLIBDIR/systemd-under-valgrind ddebug "Create $_valgrind_wrapper" cat >$_valgrind_wrapper <$_asan_wrapper <$_strace_wrapper <$initdir/etc/rc.d/rc.local </dev/null || exit 77 diff --git a/tools/coverity.sh b/tools/coverity.sh index 8edce065cae..5d3b7e29180 100755 --- a/tools/coverity.sh +++ b/tools/coverity.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash # The official unmodified version of the script can be found at # https://scan.coverity.com/scripts/travisci_build_coverity_scan.sh diff --git a/tools/meson-vcs-tag.sh b/tools/meson-vcs-tag.sh index 5dc95fa8c15..1c3814d4830 100755 --- a/tools/meson-vcs-tag.sh +++ b/tools/meson-vcs-tag.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -eu set -o pipefail diff --git a/tools/oss-fuzz.sh b/tools/oss-fuzz.sh index 5e48a7e0c69..79846f87879 100755 --- a/tools/oss-fuzz.sh +++ b/tools/oss-fuzz.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash # SPDX-License-Identifier: LGPL-2.1+ set -ex