Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Qubes Global Settings crash when updating default netVM #3567

Closed
micahflee opened this issue Feb 10, 2018 · 20 comments · Fixed by QubesOS/qubes-manager#302
Closed

Qubes Global Settings crash when updating default netVM #3567

micahflee opened this issue Feb 10, 2018 · 20 comments · Fixed by QubesOS/qubes-manager#302

Comments

@micahflee
Copy link

Qubes OS version:

R4.0

Steps to reproduce the behavior:

Open the Qubes Global Settings program, change the default netVM to something else, and click OK.

Expected behavior:

It should save and update the default netVM.

Actual behavior:

Crash, and the default netVM doesn't get updated.

screenshot_2018-02-10_14-58-17

@donob4n
Copy link

donob4n commented Feb 11, 2018

It seems that your 'sys-vpn-mullvad' netVM is set to default netVM so changing the default netVM is causing a loop. Try setting it to sys-net or sys-firewall before editing default netVM.

@micahflee
Copy link
Author

When I open Qubes Global Settings the UI says my default netVM is sys-firewall. I can change it to sys-net and save, and that works fine. When I open it again, the UI says it's sys-net. But if I then change it to sys-vpn-mullvad, I get the same crash. But I can successfully change it back to sys-firewall -- so apparently it's just changing it to my custom proxyVM that's causes it.

After trying (and failing) to set it to sys-vpn-mullvad, when I open fedora-26 dispVM its netVM is sys-firewall, so apparently it's not actually set.

What are the terminal commands for adjusting the global settings?

@donob4n
Copy link

donob4n commented Feb 12, 2018

@micahflee I meant to change sys-vpn-mullvad to sys-net or sys-firewall before changing the default netVM, have you tried?

@micahflee
Copy link
Author

I'm not sure what you mean. In Qubes Global Settings I can change the default netVM to either sys-net or sys-firewall, and saving works fine. If I try changing it to sys-vpn-mullvad, I get that crash (no matter what it was before). And sys-vpn-mullvad's netVM is sys-firewall.

@micahflee
Copy link
Author

I've also reproduced this problem on two separate computers with different hardware running Qubes 4.0.

@marmarek
Copy link
Member

Make sure sys-vpn-mullvad's netvm is set to "sys-firewall", not "default (sys-firewall)".

@micahflee
Copy link
Author

Excellent, that fixed it.

Maybe this step could be automatic, because it's not immediately intuitive that there's a difference between "default (sys-firewall)" and "sys-firewall".

@marmarek
Copy link
Member

Maybe some tooltip/help text there? @marmarta @andrewdavidwong

@micahflee
Copy link
Author

Or maybe Qubes Global Settings can catch this error and display some sort of instructions if a user hits it.

@andrewdavidwong
Copy link
Member

Maybe some tooltip/help text there?

Sounds like a great candidate for #2211.

Perhaps something like:

"default (<vm-name>) denotes the NetVM currently set as the system-wide default. If you change the system-wide default to a different NetVM, then any VM currently set to use default (<vm-name>) will use the new NetVM. If you want a VM to keep using the currently displayed <vm-name> even if the system-wide default changes, select <vm-name> (without the word default in front of it) directly from the list."

This could be clearer, but it's a start.

@donob4n
Copy link

donob4n commented Feb 13, 2018

What do you think about changing the behavior of 'default netVM'? I think that it would be better to use it only for 'default netVM' selection when doing new domains.

Currently, apart of problems like this, it has too wide side effects. It's pretty easy to change the NetVM of a domain (or more) that you didn't want to.

marmarta added a commit to marmarta/qubes-manager that referenced this issue Feb 13, 2018
Added a tooltip to clarify what default/not default
means when selecting networking.
Proposed tooltip:
"default ([name])" denotes system-wide default - if the default is changed in Global Settings, the networking qube will change.
If you want to keep using a given networking qube regardless of system settings, select "[name]".

references QubesOS/qubes-issues#2211
references QubesOS/qubes-issues#3567
marmarta added a commit to marmarta/qubes-manager that referenced this issue Feb 13, 2018
Added a tooltip to clarify what default/not default
means when selecting networking.
Proposed tooltip:
"default ([name])" denotes system-wide default - if the default is changed in Global Settings, the networking qube will change.
If you want to keep using a given networking qube regardless of system settings, select "[name]".

references QubesOS/qubes-issues#2211
references QubesOS/qubes-issues#3567
@marmarta
Copy link
Member

I don't think this change is a good idea - in practice, this would mean eliminating 'default' as a setting for VM's netVM, because otherwise it would produce inconsistent results ('default' for one VM would mean something different than for another VM). And the possibility of changing netVM for a bunch of VMs like that is - I think - pretty useful. What can be done (and I'll do it in a moment) is making clearer in the Qube Manager (and, hopefully qvm-ls) that a VM has the 'default' netVM set.

marmarta added a commit to marmarta/qubes-manager that referenced this issue Jul 15, 2018
When a VM has netvm set to 'default', now Qube Manager will display
'(default)' in front of the netvm's name.

references QubesOS/qubes-issues#3567
marmarta added a commit to marmarta/qubes-manager that referenced this issue Jul 16, 2018
When a VM has netvm set to 'default', now Qube Manager will display
'(default)' in front of the netvm's name.

references QubesOS/qubes-issues#3567
marmarta added a commit to marmarta/qubes-manager that referenced this issue Sep 9, 2021
If user's trying to set as default NetVM a VM that has a 'default'
as netVM, the messege will elaborate a bit on what went wrong.

fixes QubesOS/qubes-issues#3567
marmarta added a commit to marmarta/qubes-manager that referenced this issue Sep 10, 2021
If user's trying to set as default NetVM a VM that has a 'default'
as netVM, the messege will elaborate a bit on what went wrong.

fixes QubesOS/qubes-issues#3567
@qubesos-bot
Copy link

Automated announcement from builder-github

The package qubes-manager_4.1.20-1 has been pushed to the r4.1 testing repository for the Debian template.
To test this update, first enable the testing repository in /etc/apt/sources.list.d/qubes-*.list by uncommenting the line containing buster-testing (or appropriate equivalent for your template version), then use the standard update command:

sudo apt-get update && sudo apt-get dist-upgrade

Changes included in this update

@qubesos-bot
Copy link

Automated announcement from builder-github

The package manager has been pushed to the r4.1 testing repository for the CentOS centos-stream8 template.
To test this update, please install it with the following command:

sudo yum update --enablerepo=qubes-vm-r4.1-current-testing

Changes included in this update

@qubesos-bot
Copy link

Automated announcement from builder-github

The component manager (including package qubes-manager-4.1.20-1.fc32) has been pushed to the r4.1 testing repository for dom0.
To test this update, please install it with the following command:

sudo qubes-dom0-update --enablerepo=qubes-dom0-current-testing

Changes included in this update

@qubesos-bot
Copy link

Automated announcement from builder-github

The component manager (including package qubes-manager-4.1.20-1.fc32) has been pushed to the r4.1 testing repository for the Fedora template.
To test this update, please install it with the following command:

sudo dnf update --enablerepo=qubes-vm-r4.1-current-testing

Changes included in this update

@qubesos-bot
Copy link

Automated announcement from builder-github

The package manager has been pushed to the r4.1 stable repository for the CentOS centos-stream8 template.
To install this update, please use the standard update command:

sudo yum update

Changes included in this update

@qubesos-bot
Copy link

Automated announcement from builder-github

The package qubes-manager_4.1.22-1+deb10u1 has been pushed to the r4.1 stable repository for the Debian template.
To install this update, please use the standard update command:

sudo apt-get update && sudo apt-get dist-upgrade

Changes included in this update

@qubesos-bot
Copy link

Automated announcement from builder-github

The component manager (including package qubes-manager-4.1.22-1.fc32) has been pushed to the r4.1 stable repository for the Fedora template.
To install this update, please use the standard update command:

sudo dnf update

Changes included in this update

@qubesos-bot
Copy link

Automated announcement from builder-github

The component manager (including package qubes-manager-4.1.22-1.fc32) has been pushed to the r4.1 stable repository for dom0.
To install this update, please use the standard update command:

sudo qubes-dom0-update

Or update dom0 via Qubes Manager.

Changes included in this update

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment