Salt disposable multimedia qube

This commit is contained in:
unman 2021-02-02 05:13:08 +00:00
parent 6aa035dc0c
commit 9c6f5ccbdc
No known key found for this signature in database
GPG Key ID: FDD1B8244731B36C
9 changed files with 175 additions and 0 deletions

9
multimedia/clone.sls Normal file
View File

@ -0,0 +1,9 @@
include:
- template-debian-10-minimal
qvm-clone-id:
qvm.clone:
- require:
- sls: template-debian-10-minimal
- name: template-multimedia
- source: debian-10-minimal

4
multimedia/clone.top Normal file
View File

@ -0,0 +1,4 @@
base:
dom0:
- match: nodegroup
- multimedia.clone

53
multimedia/create.sls Normal file
View File

@ -0,0 +1,53 @@
include:
- multimedia.clone
qvm-present-id:
qvm.present:
- name: multimedia-dvm
- template: template-multimedia
- label: purple
qvm-prefs-id:
qvm.prefs:
- name: multimedia-dvm
- netvm: none
- memory: 300
- maxmem: 800
- vcpus: 2
- template_for_dispvms: True
- include_in_backups: false
qvm-features-id:
qvm.features:
- name: multimedia-dvm
- disable:
- service.cups
- service.cups-browsed
- service.tinyproxy
multimedia:
qvm.present:
- name: multimedia
- template: multimedia-dvm
- class: DispVM
- netvm: none
- label: purple
multimedia-prefs:
qvm.prefs:
- name: multimedia
- autostart: false
- include_in_backups: false
multimedia-features:
qvm.features:
- name: multimedia
- appemenus-dispvm: True
- disable:
- service.cups
update_policy_file:
file.prepend:
- name: /etc/qubes-rpc/policy/qubes.OpenInVM
- text: media $dispvm allow,target=multimedia

4
multimedia/create.top Normal file
View File

@ -0,0 +1,4 @@
base:
dom0:
- match: nodegroup
- multimedia.create

43
multimedia/install.sls Normal file
View File

@ -0,0 +1,43 @@
# vim: set syntax=yaml ts=2 sw=2 sts=2 et :
#
#
/etc/apt/sources.list:
file.replace:
- pattern: 'https:'
- repl: 'http://HTTPS/'
- flags: [ 'IGNORECASE', 'MULTILINE' ]
/etc/apt/sources.list.d/qubes-r4.list:
file.replace:
- pattern: 'https:'
- repl: 'http://HTTPS/'
- flags: [ 'IGNORECASE', 'MULTILINE' ]
allow-testing:
file.uncomment:
- name: /etc/apt/sources.list.d/qubes-r4.list
- regex: ^deb\s.*qubes-os.org.*-testing
- backup: false
vlc.packages:
pkg.installed:
- pkgs:
- vlc
- pulseaudio-qubes
/usr/lib/x86_64-linux-gnu/libdvdcss.so.2.2.0:
file.managed:
- source:
- salt://multimedia/libdvdcss.so.2.2.0
- user: root
- group: root
ln -s /usr/lib/x86_64-linux-gnu/libdvdcss.so.2.2.0 /usr/lib/x86_64-linux-gnu/libdvdcss.so:
cmd.run
ln -s /usr/lib/x86_64-linux-gnu/libdvdcss.so.2.2.0 /usr/lib/x86_64-linux-gnu/libdvdcss.so.2:
cmd.run
apt-get clean:
cmd.run

View File

@ -0,0 +1,25 @@
# vim: set syntax=yaml ts=2 sw=2 sts=2 et :
#
#
allow-testing:
file.uncomment:
- name: /etc/apt/sources.list.d/qubes-r4.list
- regex: ^deb\s.*qubes-os.org.*-testing
- backup: false
/home/user/Downloads/vlc-key:
file.managed:
- source:
- salt://multimedia/vlc-key
- user: user
- group: user
/usr/bin/apt-key add /home/user/Downloads/vlc-key:
cmd.run:
- runas: root
vlc.packages:
pkg.installed:
- pkgs:
- vlc
- pulseaudio-qubes

5
multimedia/install.top Normal file
View File

@ -0,0 +1,5 @@
# vim: set syntax=yaml ts=2 sw=2 sts=2 et :
base:
template-multimedia:
- multimedia.install

Binary file not shown.

32
multimedia/vlc-key Normal file
View File

@ -0,0 +1,32 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
xsBNBFIcm2kBCADL5XxrZ27r2z3qqV6r3FUfg90UvM58wvxryAaoXr+y+W0Joh/m
7+Vtxv0DBekTrACuGy7Vg1NzsFHNzEuAbPctpbZgffNSwxgrToFERenEbF14f7Ff
xDkF3vLgyll5frNozE2csAaj19lTQLBTNZbhkEys0V844zQSDN9/UYp5BWWXRFt8
xHtocGayloFPdVOcWA+B8gO6hBWyZa7QaMKVvzEiHyqzmxVINJ1k1P3PFqMuHGOF
JsPY4ARRZzQ+JYfrtgoqtAh9LYMQAfKmn7F3nlQyUuocEsKuhS0kIDtvLxTdjkef
ZYcmQXWxPSxUan6lqP3LGrkMdEmLrzwnFkujABEBAAHNMFZpZGVvTEFOIEFQVCBT
aWduaW5nIEtleSA8dmlkZW9sYW5AdmlkZW9sYW4ub3JnPsLAeAQTAQIAIgUCUhyb
aQIbAwYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AACgkQa8peTbhCiNk7HQgAyy/H
Oyzk0UdrFv0bZgqZLxJcdB7ctcruYNkO0eZE09+sPjzBuX52sx6GuXElG/NUw/Qo
GUB5kDDKLyeddpyQghU7UhsIZoNdSb2UfVCqSosJ1G7dacRlVh5LFNF1ptYjXGza
NIp0zme8YtoQKVCO48YYIf+j94Q5AukTEd1vdPAUAm7e4Q6uYcvpyz1TIoZgnnO/
/fcoWPQrRHnxfsIB0GrqVkHncjt/U1qsxQh7hAJnKjwgnveUe7Q2ey54QId9BQWZ
HOxeIXpbhFGwBmHxBGAnDWmg557YlsUI4ejiKy6DBsO8h91NL44cbN8H61Z+T3UH
NWXycr/4PClWZEitkcJGBBARAgAGBQJSHJxcAAoJEGFgnhjAr/EP+DAAmwfLrnFE
ktmlOv8YssNOBlCh8cEvAJ9qPJoCbY4tWZtaC6aa4R2owLsSosJGBBARAgAGBQJS
HJxpAAoJEHGAcTvljRrcaywAn3Gf8fHXVdgpCrycr584Iie1+mEyAKCR8V9kt5DW
F6VGUXbhV9INKSKCKc7ATQRSHJtpAQgAw4TQFpFs9PthvzTj/fpa6rioz2gYIGxG
TQHuC8LsOCEKuy4AFa8XF2d89NM7ApF/ixU3QDKd7I6YydkW/yp3rTCbnI+xS649
yxDd2RDIqVPsqjWuO8jEs8sQ/wOWMnDdCU95Zwv0BU491u63UbRzamv5+kw7QGQq
Pe4VAnsiVxwnV1GOa9Ft0FmaD/m7KhFWAGkTF3pV432gH93V8srPZD+CWZgld97E
45TXXjzWK03NnUyIK+rx+LHJf4I8IFFP0F77FJDIFRJ6BiYbXoKNDVk/nvy1jWg5
98dFi7jzw1t83EnAVgTvBR+bQqBpB69EtY2WUykABMnjMj9t0Y6eFwARAQABwsBf
BBgBAgAJBQJSHJtpAhsMAAoJEGvKXk24QojZNMIH/3YE92QZ22YYdl6TchMDswsB
FXvsS2/W0xhvKvG5YuyCKoUKYCornK74YrsRURAhYAOvOfrcWeq+wtmUmXrhNvZ2
Qz370hS2EW6Db7FnMdu188LrVZS0AmC1ztu8/DlwRcRF4e05CVgwUMngG2RiAuZN
1ZYQiHJwU2444/Vm+ny/YD55I+RUmKFW69iAvWnJrz5QzohoeZefr48c3FU1glKY
E3OtJK/T+/nOVzt+Kzjw8mmrtkZqck/ZVpA51ikcTRSpyLw5ioLpzLFbB/Ew+Dx3
CzFOZhG9UxBV08BOw9a30090OhxPDoKBu210T3tBW9XWmFPohT2fsg5OXZHvp/Q=
=H4/P
-----END PGP PUBLIC KEY BLOCK-----