Add ability to install Snaps with classic confinement

This commit is contained in:
Ilya Kogan 2018-04-09 14:18:40 -04:00
parent c9977d957e
commit 754869c0cb
4 changed files with 17 additions and 0 deletions

View file

@ -133,6 +133,7 @@ You can specify:
You can specify:
* ``wanted`` snapd packages, which will be installed using snap.
* ``classic`` snapd packages, chich will be installed using snap with classic confinement.
* ``unwanted`` snapd packages, which will be uninstalled using snap.
* ``required system packages`` on which any of the ``wanted`` snapd packages
depend for their correct installation.

View file

@ -27,6 +27,7 @@ packages:
symlink: False
service: ['snapd',]
wanted: []
classic: []
unwanted: []
required:
states: []

View file

@ -9,6 +9,7 @@
{% set unwanted_packages = packages.pkgs.unwanted + packages.snaps.collides %}
{% set wanted_snaps = packages.snaps.wanted %}
{% set classic_snaps = packages.snaps.classic %}
{% set unwanted_snaps = packages.snaps.unwanted %}
{%- if packages.snaps.package %}
@ -68,6 +69,18 @@ packages-snapd-{{ snap }}-wanted:
- pkg: unwanted_pkgs
{% endfor %}
### SNAPS to install in classic mode
{% for snap in classic_snaps %}
packages-snapd-{{ snap }}-classic:
cmd.run:
- name: snap install --classic {{ snap }}
- unless: snap list {{ snap }}
- output_loglevel: quiet
- require:
- pkg: pkg_req_pkgs
- pkg: unwanted_pkgs
{% endfor %}
### SNAPS to uninstall
{% for snap in unwanted_snaps %}
packages-snapd-{{ snap }}-unwanted:

View file

@ -41,6 +41,8 @@ packages:
snaps:
wanted:
- hello-world
classic:
- classic-hello
unwanted:
- goodbye-world