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

TemplateVMs restored from 3.2 don't start applications #3514

Closed
hyperfekt opened this Issue Feb 1, 2018 · 4 comments

Comments

Projects
None yet
4 participants
@hyperfekt

hyperfekt commented Feb 1, 2018

Qubes OS version:

R4.0rc4

Affected TemplateVMs:


Steps to reproduce the behavior:

  1. backup a TemplateVM (tested with Fedora 26, Fedora 26 upgraded from 23, Debian 8) from Qubes R3.2
  2. restore that TemplateVM to Qubes R4.0rc4
  3. scan TemplateVM for applications (works flawlessly)
  4. a) start an application in the TemplateVM, or b) start an application in an AppVM based on the TemplateVM

Expected behavior:

The VM is started and the application's window opens.
The qrexec log for the VM is empty.

Actual behavior:

The VM starts, but the application is not started. Using the console with sudo xl console [VM name] reveals the VM has started properly, but the application has not. Starting applications from there works as if started from dom0.
The qrexec log for the VM contains eintr.

General notes:

The TemplateVMs work fine under Qubes R3.2.
No change has been made after restoring them.
I'm happy to provide further details that will probably be needed to pin this down, if instructions are given.


Related issues:

@ecdsa521

This comment has been minimized.

Show comment
Hide comment
@ecdsa521

ecdsa521 Feb 1, 2018

The new launchers are using qubes.StartApp RPC which doesn't exist in old templates. You can manually start eg. qvm-run vmname gnome-terminal and upgrade the template or copy over said RPC from bundled 4.0 template.

But tbh I ran into all sorts of problems doing that, and it was much less painful to just port my changes to 4.0 template.

ecdsa521 commented Feb 1, 2018

The new launchers are using qubes.StartApp RPC which doesn't exist in old templates. You can manually start eg. qvm-run vmname gnome-terminal and upgrade the template or copy over said RPC from bundled 4.0 template.

But tbh I ran into all sorts of problems doing that, and it was much less painful to just port my changes to 4.0 template.

@hyperfekt

This comment has been minimized.

Show comment
Hide comment
@hyperfekt

hyperfekt Feb 1, 2018

I see! Thanks for the hint, this is somewhat nonobvious and the instructions for upgrading say to just backup and restore - the fact that that's not sufficient for TemplateVMs should probably be included in the same place (possibly in addition to instructions how to upgrade templates to R4.0).

hyperfekt commented Feb 1, 2018

I see! Thanks for the hint, this is somewhat nonobvious and the instructions for upgrading say to just backup and restore - the fact that that's not sufficient for TemplateVMs should probably be included in the same place (possibly in addition to instructions how to upgrade templates to R4.0).

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Feb 1, 2018

Member

See also here: https://www.qubes-os.org/doc/upgrade-to-r4.0/

There is also support for old templates (lacking qubes.StartApp service), but it may not be enabled by default. Check with qvm-features command on your template/standalone qube - it should be listed as appmenus-legacy. If it's there but applications do not start, regenerate menu entries with qvm-sync-appmenus --regenerate-only VMNAME (where VMNAME is a template or standalone qube).

Anyway, it is better to use new templates, because some more new features of 4.0 may not work with the old one. Upgrading templates 3.2->4.0 should also be possible, but we haven't tested it thoroughly...

Member

marmarek commented Feb 1, 2018

See also here: https://www.qubes-os.org/doc/upgrade-to-r4.0/

There is also support for old templates (lacking qubes.StartApp service), but it may not be enabled by default. Check with qvm-features command on your template/standalone qube - it should be listed as appmenus-legacy. If it's there but applications do not start, regenerate menu entries with qvm-sync-appmenus --regenerate-only VMNAME (where VMNAME is a template or standalone qube).

Anyway, it is better to use new templates, because some more new features of 4.0 may not work with the old one. Upgrading templates 3.2->4.0 should also be possible, but we haven't tested it thoroughly...

@hyperfekt

This comment has been minimized.

Show comment
Hide comment
@hyperfekt

hyperfekt Feb 1, 2018

Ah, thank you! Default support is indeed off.
A link to this document is missing from the R4 release notes (where heavily shortened upgrade instructions are provided). It should probably also more explicitly say that templates are to be recreated, since it also says to upgrade them and simply links to the Fedora upgrade guides, which might lead users to believe they should be functional on R4 without further changes.

hyperfekt commented Feb 1, 2018

Ah, thank you! Default support is indeed off.
A link to this document is missing from the R4 release notes (where heavily shortened upgrade instructions are provided). It should probably also more explicitly say that templates are to be recreated, since it also says to upgrade them and simply links to the Fedora upgrade guides, which might lead users to believe they should be functional on R4 without further changes.

@andrewdavidwong andrewdavidwong added this to the Documentation/website milestone Feb 2, 2018

@andrewdavidwong andrewdavidwong self-assigned this Feb 2, 2018

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