Wait for user session as X session owner

... instead of requested user. This makes sure that session startup
script will be able to send a signal here to notify about session
startup.

This is especially needed when the first service started in the VM is
called as root (like qubes.InstallUpdatesGUI).

Fixes 
This commit is contained in:
Marek Marczykowski-Górecki 2018-02-14 02:19:15 +01:00
parent 4a27d9e3fd
commit 96aa933024
No known key found for this signature in database
GPG Key ID: 063938BA42CFA724

View File

@ -1,5 +1,11 @@
#!/bin/sh
read -r USERNAME
# old API - get the user from caller
#read -r IGNORE_USERNAME
# use default user provided in QubesDB, or hardcoded 'user' - this must be the
# same as the X session owner
USERNAME=$(qubesdb-read /default-user || echo 'user')
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