#!/bin/sh read USERNAME cmd='echo $$ >> /tmp/qubes-session-waiter; [ ! -f /tmp/qubes-session-env ] && exec sleep inf' if [ "$(id -un)" = "$USERNAME" ]; then sh -c "$cmd" 2>/dev/null else su -c "$cmd" - "$USERNAME" 2> /dev/null fi # the above line is _expected_ to be terminated by a signal, don't treat this as a failure exit 0