Skip to content

Commit 397ffc9

Browse files
committed
Wait for session only if necessary
The 'gui' feature is not passed via QubesDB to the qube, if it was, only one service would be necessary. For: QubesOS/qubes-issues#1512
1 parent 4fb6c15 commit 397ffc9

File tree

5 files changed

+15
-7
lines changed

5 files changed

+15
-7
lines changed

debian/qubes-core-agent.install

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ etc/qubes-rpc/qubes.VMRootShell
3737
etc/qubes-rpc/qubes.VMExec
3838
etc/qubes-rpc/qubes.VMExecGUI
3939
etc/qubes-rpc/qubes.WaitForSession
40+
etc/qubes-rpc/qubes.WaitForRunningSystem
4041
etc/qubes-rpc/qubes.GetDate
4142
etc/qubes-suspend-module-blacklist
4243
etc/qubes/autostart/*

qubes-rpc/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,7 @@ install:
7777
qubes.SuspendPreAll \
7878
qubes.SuspendPostAll \
7979
qubes.WaitForSession \
80+
qubes.WaitForRunningSystem \
8081
qubes.DetachPciDevice \
8182
qubes.Backup qubes.Restore \
8283
qubes.RegisterBackupLocation \
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
#!/bin/sh
2+
set -eu
3+
systemctl --wait --quiet is-system-running
4+
exit 0

qubes-rpc/qubes.WaitForSession

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
#!/bin/sh
2-
3-
USERNAME="$(qubesdb-read /default-user || echo 'user')"
4-
5-
while ! [ -e "/var/run/qubes/qrexec-server.$USERNAME.sock" ]
6-
do
7-
sleep 0.1
8-
done
2+
set -eu
3+
4+
if qubesdb-read -q /qubes-gui-domain-xid >/dev/null; then
5+
user="$(qubesdb-read /default-user || echo 'user')"
6+
while ! [ -e "/var/run/qubes/qrexec-server.$user.sock" ]; do
7+
sleep 0.1
8+
done
9+
fi
910

1011
systemctl --user --wait --quiet is-system-running
1112

rpm_spec/core-agent.spec.in

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -917,6 +917,7 @@ rm -f %{name}-%{version}
917917
%config(noreplace) /etc/qubes-rpc/qubes.SuspendPost
918918
%config(noreplace) /etc/qubes-rpc/qubes.SuspendPostAll
919919
%config(noreplace) /etc/qubes-rpc/qubes.WaitForSession
920+
%config(noreplace) /etc/qubes-rpc/qubes.WaitForRunningSystem
920921
%config(noreplace) /etc/qubes-rpc/qubes.DetachPciDevice
921922
%config(noreplace) /etc/qubes-rpc/qubes.Backup
922923
%config(noreplace) /etc/qubes-rpc/qubes.Restore

0 commit comments

Comments
 (0)