The surrounding "set +e"/"set -e" was an earlier attempt to fix this,
but I mixed -e up with -u. But as Cole points out, it's nicer to use
parameter expansion here anyway.
Thanks-to: Cole Helbling
-set +e +set +u if [ -n "$XDG_RUNTIME_DIR" ]
Rather than using `set`, I, personally, would change this line to be:
if [ -n "${XDG_RUNTIME_DIR:-}" ]
(as well as the matching check for $WAYLAND_DISPLAY).
Though this is just a matter of opinion, I think it is cleaner than using `set`s (but only really because I have no idea what all the `set`s do, without context).
then set -- -s "$XDG_RUNTIME_DIR" "$@" @@ -63,7 +63,7 @@ then then set -- --wayland-sock "$XDG_RUNTIME_DIR/$WAYLAND_DISPLAY" "$@" fi fi -set -e +set -u
pkgs/os-specific/linux/spectrum/spectrum-vm/spectrum-vm.in | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/pkgs/os-specific/linux/spectrum/spectrum-vm/spectrum-vm.in b/pkgs/os-specific/linux/spectrum/spectrum-vm/spectrum-vm.in index 4fa0287a805..a72c3896141 100755 --- a/pkgs/os-specific/linux/spectrum/spectrum-vm/spectrum-vm.in +++ b/pkgs/os-specific/linux/spectrum/spectrum-vm/spectrum-vm.in @@ -55,15 +55,13 @@ do esac done -set +e -if [ -n "$XDG_RUNTIME_DIR" ] +if [ -n "${XDG_RUNTIME_DIR-}" ] then set -- -s "$XDG_RUNTIME_DIR" "$@" - if [ -n "$WAYLAND_DISPLAY" ] + if [ -n "${WAYLAND_DISPLAY-}" ] then set -- --wayland-sock "$XDG_RUNTIME_DIR/$WAYLAND_DISPLAY" "$@" fi fi -set -e exec "$crosvm" run \ -p init=/sbin/init \ -- 2.30.0