A few qvm-service, qvm-features gotchas

After applying “Disable checking for updates for all existing qubes” in Qubes Global Config, poking around on a template:

[user@dom0 ~]$ qvm-features debian-12-xfce | grep 'qubes-update-check'
supported-service.qubes-update-check        1
service.qubes-update-check
[user@dom0 ~]$ qvm-service debian-12-xfce | grep 'qubes-update-check'
qubes-update-check  off

Turning the service back on to see the effect on tool output, and then turning it back off again:

[user@dom0 ~]$ qvm-service debian-12-xfce qubes-update-check on
[user@dom0 ~]$ qvm-features debian-12-xfce | grep 'qubes-update-check'
supported-service.qubes-update-check        1
service.qubes-update-check                  1
[user@dom0 ~]$ qvm-service debian-12-xfce | grep qubes-update-check
qubes-update-check  on

# Turning it back off again (correctly):
[user@dom0 ~]$ qvm-service debian-12-xfce qubes-update-check off
[user@dom0 ~]$ qvm-features debian-12-xfce | grep 'qubes-update-check'
supported-service.qubes-update-check        1
service.qubes-update-check
[user@dom0 ~]$ qvm-service debian-12-xfce | grep qubes-update-check
qubes-update-check  off
# (Everything is fine.)

Turning it off again, the wrong way (part 1):

[user@dom0 ~]$ qvm-features debian-12-xfce | grep 'qubes-update-check'
supported-service.qubes-update-check        1
service.qubes-update-check                  1
[user@dom0 ~]$ qvm-service debian-12-xfce | grep qubes-update-check
qubes-update-check  on

# Mistake:
[user@dom0 ~]$ qvm-service --unset debian-12-xfce qubes-update-check
# Result:
[user@dom0 ~]$ qvm-features debian-12-xfce | grep 'qubes-update-check'
supported-service.qubes-update-check        1
[user@dom0 ~]$ qvm-service debian-12-xfce | grep qubes-update-check
# (No output)

By --unset’ing the service we revert it to its default, i.e. still enabled.

Turning it off the wrong way, part 2:

[user@dom0 ~]$ qvm-features debian-12-xfce | grep 'qubes-update-check'
supported-service.qubes-update-check        1
service.qubes-update-check                  1
[user@dom0 ~]$ qvm-service debian-12-xfce | grep qubes-update-check
qubes-update-check  on

# Mistake:
[user@dom0 ~]$ qvm-features --unset debian-12-xfce service.qubes-update-check
[user@dom0 ~]$ qvm-features debian-12-xfce | grep 'qubes-update-check'
supported-service.qubes-update-check        1
[user@dom0 ~]$ qvm-service debian-12-xfce | grep qubes-update-check
# (No output)

Same as part 1, the service was reverted to its default, enabled.

Turning it off the wrong way, part 3:

[user@dom0 ~]$ qvm-features debian-12-xfce | grep 'qubes-update-check'
supported-service.qubes-update-check        1
service.qubes-update-check                  1
[user@dom0 ~]$ qvm-service debian-12-xfce | grep qubes-update-check
qubes-update-check  on

# Mistake:
[user@dom0 ~]$ qvm-features debian-12-xfce service.qubes-update-check 0
[user@dom0 ~]$ qvm-features debian-12-xfce | grep 'qubes-update-check'
supported-service.qubes-update-check        1
service.qubes-update-check                  0
[user@dom0 ~]$ qvm-service debian-12-xfce | grep qubes-update-check
qubes-update-check  on

Value ‘0’ does not disable service.qubes-update-check.

Correct ways to disable the service:

  • qvm-service debian-12-xfce qubes-update-check off
  • qvm-service --disable debian-12-xfce qubes-update-check
  • qvm-features debian-12-xfce service.qubes-update-check ''

Incorrect ways to disable the service:

  • qvm-service --unset debian-12-xfce qubes-update-check
  • qvm-features --unset debian-12-xfce service.qubes-update-check
  • qvm-features debian-12-xfce service.qubes-update-check 0
2 Likes