Been 10 minutes doing the command in dom0 qubesctl --all state.highstate
and nothing is happening, still not finished, is this normal ?
So took like 2 hour to finish itself, everything seems ok :
Just in case someone need the output for whatever reason here it is :
[user@dom0 ~]$ sudo qubesctl top.enable qvm.sys-gui pillar=True
local:
----------
qvm.sys-gui.top:
----------
status:
enabled
[user@dom0 ~]$ sudo qubesctl --all state.highstate
local:
----------
ID: qubes-template-fedora-33-xfce
Function: pkg.installed
Result: True
Comment: 1 targeted package was installed/updated.
Started: 01:17:48.186769
Duration: 5405881.683 ms
Changes:
----------
qubes-template-fedora-33-xfce:
----------
new:
4.0.6-202102140100
old:
----------
ID: dummy-psu-sender
Function: pkg.installed
Result: True
Comment: The following packages were installed/updated: dummy-psu-sender
Started: 02:47:54.154003
Duration: 114349.202 ms
Changes:
----------
dummy-psu-sender:
----------
new:
1.0.0-1.fc32
old:
----------
ID: dummy-backlight-dom0
Function: pkg.installed
Result: True
Comment: 1 targeted package was installed/updated.
Started: 02:49:48.570264
Duration: 113780.304 ms
Changes:
----------
dummy-backlight-dom0:
----------
new:
1.0.0-1
old:
----------
ID: /usr/share/xsessions/sys-gui.desktop
Function: file.managed
Result: True
Comment: File /usr/share/xsessions/sys-gui.desktop updated
Started: 02:51:42.361381
Duration: 12.799 ms
Changes:
----------
diff:
New file
----------
ID: sys-gui
Function: qvm.vm
Result: True
Comment: ====== ['present'] ======
/usr/bin/qvm-create sys-gui --class=AppVM --template=fedora-33-xfce --label=black
====== ['prefs'] ======
====== ['service'] ======
====== ['features'] ======
Started: 02:51:42.382822
Duration: 8453.782 ms
Changes:
----------
qvm.features:
----------
qvm.features:
----------
gui-allow-fullscreen:
----------
new:
1
old:
None
qvm.prefs:
----------
qvm.create:
----------
audiovm:
----------
new:
None
old:
*default*
autostart:
----------
new:
True
old:
*default*
guivm:
----------
new:
dom0
old:
*default*
netvm:
----------
new:
None
old:
*default*
qvm.service:
----------
qvm.service:
----------
dummy-backlight:
----------
new:
Enabled
old:
Missing
dummy-psu:
----------
new:
Enabled
old:
Missing
guivm-gui-agent:
----------
new:
Enabled
old:
Missing
----------
ID: sys-gui-rpc
Function: file.managed
Name: /etc/qubes/policy.d/50-gui-sys-gui.policy
Result: True
Comment: File /etc/qubes/policy.d/50-gui-sys-gui.policy updated
Started: 02:51:50.837375
Duration: 7.745 ms
Changes:
----------
diff:
New file
----------
ID: sys-gui-admin-local-rwx
Function: file.append
Name: /etc/qubes/policy.d/include/admin-local-rwx
Result: True
Comment: Appended 2 lines
Started: 02:51:50.845328
Duration: 13.722 ms
Changes:
----------
diff:
---
+++
@@ -8,3 +8,5 @@
## Add your entries here, make sure to append "target=dom0" to all allow/ask actions
+sys-gui @tag:guivm-sys-gui allow target=dom0
+sys-gui sys-gui allow target=dom0
----------
ID: sys-gui-admin-global-rwx
Function: file.append
Name: /etc/qubes/policy.d/include/admin-global-rwx
Result: True
Comment: Appended 3 lines
Started: 02:51:50.859263
Duration: 4.591 ms
Changes:
----------
diff:
---
+++
@@ -8,3 +8,6 @@
## Add your entries here, make sure to append "target=dom0" to all allow/ask actions
+sys-gui @adminvm allow target=dom0
+sys-gui @tag:guivm-sys-gui allow target=dom0
+sys-gui sys-gui allow target=dom0
----------
ID: topd-always-passes
Function: test.succeed_without_changes
Name: foo
Result: True
Comment: Success!
Started: 02:51:50.865545
Duration: 0.901 ms
Changes:
Summary for local
------------
Succeeded: 9 (changed=8)
Failed: 0
------------
Total states run: 9
Total run time: 5642.505 s
debian-10: SKIP (nothing to do)
debian-10-X: SKIP (nothing to do)
fedora-33: SKIP (nothing to do)
whonix-gw-15: SKIP (nothing to do)
whonix-ws-15: SKIP (nothing to do)
fedora-33-xfce: OK
debian-10-c: SKIP (nothing to do)
debian-10-X: SKIP (nothing to do)
debian-10-X: SKIP (nothing to do)
debian-10-X: SKIP (nothing to do)
debian-10-X: SKIP (nothing to do)
debian-10-X: SKIP (nothing to do)
default-mgmt-dvm: SKIP (nothing to do)
X: SKIP (nothing to do)
debian-10-X: SKIP (nothing to do)
debian-10-X: SKIP (nothing to do)
debian-10-X: SKIP (nothing to do)
debian-X: SKIP (nothing to do)
fedora-33-X: SKIP (nothing to do)
sys-net: SKIP (nothing to do)
sys-net-X: SKIP (nothing to do)
sys-usb: SKIP (nothing to do)
sys-whonix: SKIP (nothing to do)
vault: SKIP (nothing to do)
whonix-ws-15-X: SKIP (nothing to do)
whonix-ws-15-dvm: SKIP (nothing to do)
whonix-ws-15-X: SKIP (nothing to do)
whonix-ws-15-X: SKIP (nothing to do)
sys-gui: OK
The X in the name are to keep the name of my qubes private
Also, its needed to update fedora-33-xfce, its a pretty big update, it took like 20 minutes to do it.
Time to restart now
I restarted it but …
So now, I can login to Qubes OS with Xfce like the one before installing sys-gui, or using the new sys-gui xfce. So in the normal/old XFCE everything is working as usual and normally, but when I login to the sys-gui environment I just have as describe here and here only only dom0 and sys-gui with zero other of my Qubes. Do I need to do something else after that ?
As explaned here I would need to do the following command :
qubes-prefs default_guivm sys-gui
But nobody in the forum mentionned about it so I don’t know what to expect and what can I do to revert it
if I’m doing the qubes-prefs default_guivm sys-gui command, I can revert it with right ?
qubes-prefs default_guivm dom0
So I don’t know if it’s because I restarted once again or because I apply the following command qubes-prefs default_guivm sys-gui but in the Qube manager I could now see all of my Qubes but still can’t see it in the app menu.
But even if it was working, I would not use sys-gui because of the following problem :
-
I can’t change screen/display mode, like I can’t change primary,secondary screen, turn off one and turn on only the other …
-
There is weird graphical glitch like that appear when something is moving, like for exemple opening a window of moving it on the screen, or just opening the app menu, and you can see that it’s there is performance issue and that like I said, weird graphical glitched appear that make it not usable
So I just did qubes-prefs default_guivm dom0 and restart and I’m back to normal
Next step is maybe to try with sys-gui-gpu instead of sys-gui
Note : The computer I use for the test of sys-gui is a thinkpad T480s
I don’t really know what the purpose of this command :
so what I did is go back to the sys-gui mode with :
qubes-prefs default_guivm sys-gui
Ans also use this new command in dom0
qvm-run -p --no-gui --service sys-gui qubes.GuiVMSession
Restart the computer and loging in sys-gui/GuiVM mode
So like last time I tried, I don’t have any of my Qubes VM in the AppVM and I have performance issue with visual glitch.
If I can provide any logs that you need, don’t hesitate to tell me
Since I enable sys-gui, wihout using it, still staying with the old dom0 xfce, the suspend mode doest work anymore ifnany way.
So when I click in the dom0 xfce, on top right. and then suspend, it will just go out of xfce so like I said without acutally work, but also when I’m loggin back in Qubes OS (always in dom0 xfce) all of my Qubes windows will be reset and all of them are into one workspace
Suggest having a thorough read-through of this post to understand what sys-gui is for and where it currently stands:
In the Other Issues section it mentions removing GUI from dom0 means it also needs to [unfortunately] pull and/or open other things away that are closely tied to GUI expectations (audio, backlight, brightness, handle suspend differently, …):
Power management has numerous vital graphical tools that need some kind of access to underlying hardware. From a battery level widget to laptop power management settings, those innocuous GUI tools would like to have a surprisingly broad access to the system itself. Even suspend and shutdown need special handling. In Qubes 4.0, we could just turn off dom0 and know the rest of the system would follow, but it is no longer so simple with a non-privileged GUI domain in the picture.
A sys-gui suspend…suspends the VM. Could not wake it up (even with xl trigger
commands). But this is an example of what the post meant.
To get sys-gui to rebuild the appmenus, open the Application Settings and do a refresh.
I also noticed the visual glitch when dragging windows or initial paint, but only when the lightdm session is sys-gui. I did not notice it when the session is xfce4 and running sys-gui with qubes.GuiVmSession. This is on a T460s.
I noticed a similar experience on my T430 with R4.1 (without using sys-gui). I found X was using the modesetting driver instead of the intel Xorg driver. Once I forced the intel driver, these glitches went away.
This led me to see my T460s was also using modesetting. Forcing intel, the glitches in sys-gui went away.
The suspend didn’t work, but after one restart,and since then, it’s working again
How to you force the intel driver ? Not sure how to do it
So I enable sys-gui in Qubes OS 4.1
Now I’m trying sys-gui-gpu
But I have this error :
[root@dom0 user]# qubesctl --all state.highstate
[ERROR ] Command 'systemd-run' failed with return code: 1
[ERROR ] stdout: Running scope as unit: run-re3eb2419b05649ab82fd156c4e33e0ec.scope
Using sys-whonix as UpdateVM to download updates for Dom0; this may take some time...
Running '/usr/lib/qubes/qubes-download-dom0-updates.sh --doit --nogui '--exclude=qubes-template-whonix-gw-15,qubes-template-debian-10,qubes-template-fedora-33-xfce,qubes-template-fedora-33,qubes-template-whonix-ws-15' '-y' '--best' '--allowerasing' '--clean' '--action=install' 'dummy-psu-dom0'' on sys-whonix
sys-whonix: command failed with code: 1
[ERROR ] retcode: 1
[ERROR ] Error occurred installing package(s). Additional info follows:
errors:
- Running scope as unit: run-re3eb2419b05649ab82fd156c4e33e0ec.scope
Using sys-whonix as UpdateVM to download updates for Dom0; this may take some time...
Running '/usr/lib/qubes/qubes-download-dom0-updates.sh --doit --nogui '--exclude=qubes-template-whonix-gw-15,qubes-template-debian-10,qubes-template-fedora-33-xfce,qubes-template-fedora-33,qubes-template-whonix-ws-15' '-y' '--best' '--allowerasing' '--clean' '--action=install' 'dummy-psu-dom0'' on sys-whonix
sys-whonix: command failed with code: 1
local:
----------
ID: sys-gui-gpu-template
Function: pkg.installed
Name: qubes-template-fedora-33-xfce
Result: True
Comment: All specified packages are already installed
Started: 02:31:47.754332
Duration: 1258.074 ms
Changes:
----------
ID: dummy-psu-dom0
Function: pkg.installed
Result: False
Comment: Error occurred installing package(s). Additional info follows:
errors:
- Running scope as unit: run-re3eb2419b05649ab82fd156c4e33e0ec.scope
Using sys-whonix as UpdateVM to download updates for Dom0; this may take some time...
Running '/usr/lib/qubes/qubes-download-dom0-updates.sh --doit --nogui '--exclude=qubes-template-whonix-gw-15,qubes-template-debian-10,qubes-template-fedora-33-xfce,qubes-template-fedora-33,qubes-template-whonix-ws-15' '-y' '--best' '--allowerasing' '--clean' '--action=install' 'dummy-psu-dom0'' on sys-whonix
sys-whonix: command failed with code: 1
Started: 02:31:49.013171
Duration: 59322.265 ms
Changes:
----------
ID: /etc/qubes/input-proxy-target
Function: file.managed
Result: True
Comment: File /etc/qubes/input-proxy-target is in the correct state
Started: 02:32:48.359442
Duration: 97.352 ms
Changes:
----------
ID: sys-usb-previous-rpc
Function: file.line
Name: /etc/qubes-rpc/policy/qubes.InputMouse
Result: True
Comment: Changes were made
Started: 02:32:48.459574
Duration: 6.446 ms
Changes:
----------
diff:
---
+++
@@ -1,3 +1,2 @@
-sys-usb dom0 allow,user=root,target=sys-gui-gpu
sys-net dom0 allow,user=root
$anyvm $anyvm deny
----------
ID: sys-usb-input-proxy
Function: file.prepend
Name: /etc/qubes-rpc/policy/qubes.InputMouse
Result: True
Comment: Prepended 1 lines
Started: 02:32:48.468388
Duration: 14.283 ms
Changes:
----------
diff:
---
+++
@@ -1,2 +1,3 @@
+sys-usb dom0 allow,user=root,target=sys-gui-gpu
sys-net dom0 allow,user=root
$anyvm $anyvm deny
----------
ID: sys-gui-gpu
Function: qvm.exists
Result: True
Comment: /usr/bin/qvm-check sys-gui-gpu None
Started: 02:32:48.492865
Duration: 632.673 ms
Changes:
----------
ID: sys-gui-gpu-rpc
Function: file.managed
Name: /etc/qubes/policy.d/50-gui-sys-gui-gpu.policy
Result: True
Comment: File /etc/qubes/policy.d/50-gui-sys-gui-gpu.policy is in the correct state
Started: 02:32:49.127575
Duration: 8.434 ms
Changes:
----------
ID: sys-gui-gpu-admin-local-rwx
Function: file.append
Name: /etc/qubes/policy.d/include/admin-local-rwx
Result: True
Comment: File /etc/qubes/policy.d/include/admin-local-rwx is in correct state
Started: 02:32:49.136392
Duration: 7.432 ms
Changes:
----------
ID: sys-gui-gpu-admin-global-rwx
Function: file.append
Name: /etc/qubes/policy.d/include/admin-global-rwx
Result: True
Comment: File /etc/qubes/policy.d/include/admin-global-rwx is in correct state
Started: 02:32:49.144423
Duration: 7.167 ms
Changes:
----------
ID: qubes-template-fedora-33-xfce
Function: pkg.installed
Result: True
Comment: All specified packages are already installed
Started: 02:32:49.152001
Duration: 58.945 ms
Changes:
----------
ID: dummy-psu-sender
Function: pkg.installed
Result: True
Comment: All specified packages are already installed
Started: 02:32:49.211542
Duration: 46.145 ms
Changes:
----------
ID: dummy-backlight-dom0
Function: pkg.installed
Result: True
Comment: All specified packages are already installed
Started: 02:32:49.257988
Duration: 44.738 ms
Changes:
----------
ID: /usr/share/xsessions/sys-gui.desktop
Function: file.managed
Result: True
Comment: File /usr/share/xsessions/sys-gui.desktop is in the correct state
Started: 02:32:49.302977
Duration: 2.762 ms
Changes:
----------
ID: sys-gui
Function: qvm.exists
Result: True
Comment: /usr/bin/qvm-check sys-gui None
Started: 02:32:49.305926
Duration: 481.758 ms
Changes:
----------
ID: sys-gui-rpc
Function: file.managed
Name: /etc/qubes/policy.d/50-gui-sys-gui.policy
Result: True
Comment: File /etc/qubes/policy.d/50-gui-sys-gui.policy is in the correct state
Started: 02:32:49.788863
Duration: 6.882 ms
Changes:
----------
ID: sys-gui-admin-local-rwx
Function: file.append
Name: /etc/qubes/policy.d/include/admin-local-rwx
Result: True
Comment: File /etc/qubes/policy.d/include/admin-local-rwx is in correct state
Started: 02:32:49.795988
Duration: 5.217 ms
Changes:
----------
ID: sys-gui-admin-global-rwx
Function: file.append
Name: /etc/qubes/policy.d/include/admin-global-rwx
Result: True
Comment: File /etc/qubes/policy.d/include/admin-global-rwx is in correct state
Started: 02:32:49.801464
Duration: 4.046 ms
Changes:
----------
ID: topd-always-passes
Function: test.succeed_without_changes
Name: foo
Result: True
Comment: Success!
Started: 02:32:49.817749
Duration: 1.399 ms
Changes:
Summary for local
-------------
Succeeded: 17 (changed=2)
Failed: 1
-------------
Total states run: 18
Total run time: 62.006 s
I’ve found that dummy-psu-dom0 is changed to dummy-psu-sender, you should find and replace dummy-psu-dom0 to dummy-psu-sender in state files.
Thank for the info
But I can’t find the file /usr/lib/qubes/qubes-download-dom0-updates.sh in dom0 and change it as you said, don’t know where is it.
I believe this file generally runs in sys-firewall. Not in dom0. But I might be wrong.
Not from there, you should look into sys-gui-gpu state files.
Open all file that start from sys-gui-gpu then find and replace dummy-psu-dom0 to dummy-psu-sender.
Your formula states location are in /srv/formulas/base/virtual-machines-formula/qvm/
Are you sure that the location is correct?
In the folder “formulas” there is ‘base’ and ‘test’, no ‘dom0’.
I can find the state files in
/srv/formulas/base/virtual-machines-formula/qvm
I did find one line where I could replace dummy-psu-dom0 with dummy-psu-sender.
Now I got this error instead of the first one mentioned above:
Detected conflicting IDs, SLS IDs need to be globally unique. The conflicting ID is 'dummy-psu-sender' and is found in SLS 'base:qvm.sys-gui' and SLS 'base:qvm.sys-gui-gpu'
Furthermore the state files seem to be overwritten or empty, so you have to use backups because it looks like you can’t just revert to dummy-psu-dom0.
Maybe this ‘base’ folder is the wrong location. I don’t know.
Has anyone tried this and succeeded? Or any correction/ addition to make?
Edit: After logging off and on again the file is not gone/unreadable. Don’t know what happened there the first time.
it was /srv/formulas/base/virtual-machines-formula/qvm/
(sorry i was trying to remember the path)
This is happen when you try to run qubesctl --all state.highstate command and you have ‘enabled’ top file of sys-gui, to resolve the issue you should remove first.
Thanks! I disabled the sys-gui and now the above mentioned error is gone and there is no error message regarding the state files (10 succeeded, failed 0) but I get an exit code 20 nonetheless. The mgmt-sys-gui-gpu.log is like this:
2021-06-30 17:00:50,263 output: sys-gui-gpu:
2021-06-30 17:00:50,265 output: ----------
2021-06-30 17:00:50,266 output: _error:
2021-06-30 17:00:50,266 output: Failed to return clean data
2021-06-30 17:00:50,266 output: retcode:
2021-06-30 17:00:50,266 output: 126
2021-06-30 17:00:50,266 output: stderr:
2021-06-30 17:00:50,267 output: Request refused
2021-06-30 17:00:50,267 output: stdout:
2021-06-30 17:00:50,267 exit code: 20
When sys-gui-gpu is starting there is this error:
No such file or directory 'usr/bin/qubes-input-trigger --all --dom0'