Include instructions for snaps

Include instructions for installing snapd and qubes-snapd-helper from issue #2766 (https://github.com/QubesOS/qubes-issues/issues/2766) based on the instructions from @ioleo that worked for me.
This commit is contained in:
Matthew Roy 2019-11-14 10:37:13 -05:00 committed by GitHub
parent 5218c888ef
commit 43c54ed864
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -198,6 +198,70 @@ Example policy file in R4.0 (with Whonix installed, but not set as default Updat
@anyvm @anyvm deny
```
# Installing Snap Packages
Snap packages do not use the normal update channels for Debian and Fedora (dnf and apt) and are often installed as the user rather than as root. To support these in an AppVM you need to take the following steps:
1. In the **TemplateVM** you must install snapd and qubes-snapd-helper:
Open a terminal in TemplateVM and run:
```shell_session
[user@fedora-30-snap-demo ~]$ sudo dnf install snapd qubes-snapd-helper
Last metadata expiration check: 0:55:39 ago on Thu Nov 14 09:26:47 2019.
Dependencies resolved.
========================================================================================================
Package Arch Version Repository Size
========================================================================================================
Installing:
snapd x86_64 2.42.1-1.fc30 updates 17 M
qubes-snapd-helper noarch 1.0.1-1.fc30 qubes-vm-r4.0-current 10 k
Installing dependencies:
[...]
Transaction Summary
========================================================================================================
Install 20 Packages
Total download size: 37 M
Installed size: 121 M
Is this ok [y/N]: y
Downloading Packages:
[..]
Failed to resolve booleanif statement at /var/lib/selinux/targeted/tmp/modules/200/snappy/cil:1174
/usr/sbin/semodule: Failed!
[...]
Last metadata expiration check: 0:57:08 ago on Thu Nov 14 09:26:47 2019.
Notifying dom0 about installed applications
Installed:
snapd-2.42.1-1.fc30.x86_64 qubes-snapd-helper-1.0.1-1.fc30.noarch
[...]
Complete!
```
You may see a message "Failed to resolve booleanif statement at /var/lib/selinux/targeted/tmp/modules/200/snappy/cil:1174
/usr/sbin/semodule: Failed!". This is expected and you cna safely continue.
Shutdown the TemplateVM:
```shell_session
[user@fedora-30-snap-demo ~]$ sudo shutdown -h now
```
2. Now open the **AppVM** in which you would like to install the Snap application and run a terminal:
```shell_session
[user@snap-demo-AppVM ~]$ snap install <package>
```
when the install is complete shutdown the AppVM:
```shell_session
[user@snap-demo-AppVM ~]$ sudo shutdown -h now
```
3. Refresh the Applications list for the AppVM.
In the Qubes Menu for the **AppVM*** launch the Qube Settings.
Then go to the Applicaitons tab and click "Refresh Applications"
The refresh will take a few minutes, but after it's complete the Snap app will appear in the AppVM's list of availble applications. At this point the snap will be persistant within the AppVM and will receive updates when the AppVM is running.
[domUs]: /doc/glossary/#domu
[TemplateVMs]: /doc/templates/
[StandaloneVM]: /doc/standalone-and-hvm/