-
-
Notifications
You must be signed in to change notification settings - Fork 52
Description
The problem you're addressing (if any)
When preloading disposables on boot, they can be paused before the user unlocks their GUI session via the display manager / lock screen, but qubes that have this behavior, won't be able to open applications after the GUI session has started.
Test case:
- Reboot QubesOS
- Unlock LUKS
- Do not unlock via the lock screen, instead use the Linux terminal with
Alt-F2: - On the Linux terminal, choose a qube to do the following, such as
personal:qvm-start personalqvm-run -p --no-gui personal -- systemctl --user --wait is-system-runningqvm-pause personal
- Still on the linux terminal, choose another qube to be in the control group and start it, such as
work:qvm-start work
- Switch back to the main display and login via the lock screen
- Try to run a GUI application in the qube:
qvm-run personal xterm(it will hang)
The difference I noticed is compared to qubes that are not paused when GUI session starts is that qubes-gui-agent on the domU does not connect to the socket once it is unpaused.
Restarting qubes-gui-agent on the domU has no effect.
To debug:
qvm-run -p --no-gui personal -- journalctl -xeu qubes-gui-agent
qvm-run -p --no-gui work -- journalctl -xeu qubes-gui-agentWill notice that personal does not connect to the socket while work does.
Would help solve:
The solution you'd like
Make qubes-guid retry the connection once a qube is unpaused.
The value to a user and who that user might be
Users of preloaded disposables would have their preloads as soon as possible instead of having to wait for a login via GUI, which may not be available on headless machines.
Completion criteria checklist
No response
List of found side effects
- notification proxy starts before GUI session in dom0 and fails - attempted solution: Wait for GUI session on the server side qubes-notification-proxy#13
- sys-gui doesn't work without dynamic resolution change, solution: Fix (partially) setting resolution on sys-gui qubes-gui-agent-linux#253
- input proxy doesn't retry (policy prompts) after user logs in: Delay connecting with gui-daemon until after starting Xorg qubes-gui-agent-linux#251 (comment)
Metadata
Metadata
Assignees
Labels
Type
Projects
Status