mirror of
https://github.com/ben-grande/qusal.git
synced 2024-10-01 02:35:49 -04:00
feat: add Element formula
This commit is contained in:
parent
efcf8c7723
commit
26a35b838f
@ -69,6 +69,10 @@ Files: salt/docker/files/repo/*
|
||||
Copyright: 2017 Docker Inc. <docker@docker.com>
|
||||
License: CC0-1.0
|
||||
|
||||
Files: salt/element/files/repo/*
|
||||
Copyright: 2019 Element <packages@riot.im>
|
||||
License: CC0-1.0
|
||||
|
||||
Files: salt/kicksecure-minimal/files/repo/*
|
||||
Copyright: 2014 Patrick Schleizer <adrelanos@kicksecure.com>
|
||||
License: CC0-1.0
|
||||
|
@ -54,6 +54,7 @@ matter in some circumstances, in those cases, it is noted in this page.
|
||||
- Instant messaging and E-Mail:
|
||||
- [mail](../salt/mail/README.md)
|
||||
- [signal](../salt/signal/README.md)
|
||||
- [element](../salt/element/README.md)
|
||||
|
||||
- Electronic cash:
|
||||
- [sys-bitcoin](../salt/sys-bitcoin/README.md)
|
||||
@ -70,6 +71,7 @@ matter in some circumstances, in those cases, it is noted in this page.
|
||||
- Multimedia:
|
||||
- [reader](../salt/reader/README.md)
|
||||
- [media](../salt/media/README.md)
|
||||
- [sys-print](../salt/sys-print/README.md)
|
||||
|
||||
- File sharing:
|
||||
- [sys-ssh](../salt/sys-ssh/README.md)
|
||||
|
37
salt/element/README.md
Normal file
37
salt/element/README.md
Normal file
@ -0,0 +1,37 @@
|
||||
# element
|
||||
|
||||
Element Matrix client installation in Qubes OS.
|
||||
|
||||
## Table of Contents
|
||||
|
||||
* [Description](#description)
|
||||
* [Installation](#installation)
|
||||
* [Usage](#usage)
|
||||
|
||||
## Description
|
||||
|
||||
Install Element and use it on the "element" app qube to connect to your
|
||||
Matrix account.
|
||||
|
||||
## Installation
|
||||
|
||||
- Top:
|
||||
```sh
|
||||
sudo qubesctl top.enable element
|
||||
sudo qubesctl --targets=tpl-element state.apply
|
||||
sudo qubesctl top.disable element
|
||||
sudo qubesctl state.apply element.appmenus
|
||||
```
|
||||
|
||||
- State:
|
||||
<!-- pkg:begin:post-install -->
|
||||
```sh
|
||||
sudo qubesctl state.apply element.create
|
||||
sudo qubesctl --skip-dom0 --targets=tpl-element state.apply element.install
|
||||
sudo qubesctl state.apply element.appmenus
|
||||
```
|
||||
<!-- pkg:end:post-install -->
|
||||
|
||||
## Usage
|
||||
|
||||
You can connect to your Matrix account via the Element client.
|
8
salt/element/appmenus.sls
Normal file
8
salt/element/appmenus.sls
Normal file
@ -0,0 +1,8 @@
|
||||
{#
|
||||
SPDX-FileCopyrightText: 2023 Benjamin Grande M. S. <ben.grande.b@gmail.com>
|
||||
|
||||
SPDX-License-Identifier: AGPL-3.0-or-later
|
||||
#}
|
||||
|
||||
{% from 'utils/macros/sync-appmenus.sls' import sync_appmenus -%}
|
||||
{{ sync_appmenus('tpl-' ~ sls_path) }}
|
10
salt/element/appmenus.top
Normal file
10
salt/element/appmenus.top
Normal file
@ -0,0 +1,10 @@
|
||||
{#
|
||||
SPDX-FileCopyrightText: 2023 - 2024 Benjamin Grande M. S. <ben.grande.b@gmail.com>
|
||||
|
||||
SPDX-License-Identifier: AGPL-3.0-or-later
|
||||
#}
|
||||
|
||||
base:
|
||||
'dom0':
|
||||
- match: nodegroup
|
||||
- element.appmenus
|
8
salt/element/clone.sls
Normal file
8
salt/element/clone.sls
Normal file
@ -0,0 +1,8 @@
|
||||
{#
|
||||
SPDX-FileCopyrightText: 2023 Benjamin Grande M. S. <ben.grande.b@gmail.com>
|
||||
|
||||
SPDX-License-Identifier: AGPL-3.0-or-later
|
||||
#}
|
||||
|
||||
{% from 'utils/macros/clone-template.sls' import clone_template -%}
|
||||
{{ clone_template('debian-minimal', sls_path) }}
|
10
salt/element/clone.top
Normal file
10
salt/element/clone.top
Normal file
@ -0,0 +1,10 @@
|
||||
{#
|
||||
SPDX-FileCopyrightText: 2023 - 2024 Benjamin Grande M. S. <ben.grande.b@gmail.com>
|
||||
|
||||
SPDX-License-Identifier: AGPL-3.0-or-later
|
||||
#}
|
||||
|
||||
base:
|
||||
'dom0':
|
||||
- match: nodegroup
|
||||
- element.clone
|
77
salt/element/create.sls
Normal file
77
salt/element/create.sls
Normal file
@ -0,0 +1,77 @@
|
||||
{#
|
||||
SPDX-FileCopyrightText: 2023 - 2024 Benjamin Grande M. S. <ben.grande.b@gmail.com>
|
||||
|
||||
SPDX-License-Identifier: AGPL-3.0-or-later
|
||||
#}
|
||||
|
||||
{%- from "qvm/template.jinja" import load -%}
|
||||
|
||||
include:
|
||||
- .clone
|
||||
|
||||
{% load_yaml as defaults -%}
|
||||
name: tpl-{{ slsdotpath }}
|
||||
force: True
|
||||
require:
|
||||
- sls: {{ slsdotpath }}.clone
|
||||
prefs:
|
||||
- audiovm: ""
|
||||
features:
|
||||
- set:
|
||||
- default-menu-items: "element-desktop.desktop qubes-run-terminal.desktop qubes-start.desktop"
|
||||
- menu-items: "element-desktop.desktop qubes-run-terminal.desktop qubes-start.desktop"
|
||||
{%- endload %}
|
||||
{{ load(defaults) }}
|
||||
|
||||
{% load_yaml as defaults -%}
|
||||
name: {{ slsdotpath }}
|
||||
force: True
|
||||
require:
|
||||
- sls: {{ slsdotpath }}.clone
|
||||
present:
|
||||
- template: tpl-{{ slsdotpath }}
|
||||
- label: yellow
|
||||
prefs:
|
||||
- template: tpl-{{ slsdotpath }}
|
||||
- label: yellow
|
||||
- audiovm: "*default*"
|
||||
- vcpus: 1
|
||||
- memory: 300
|
||||
- maxmem: 800
|
||||
- autostart: False
|
||||
features:
|
||||
- disable:
|
||||
- service.cups
|
||||
- service.cups-browsed
|
||||
- set:
|
||||
- menu-items: "element-desktop.desktop qubes-run-terminal.desktop qubes-start.desktop"
|
||||
{%- endload %}
|
||||
{{ load(defaults) }}
|
||||
|
||||
{% load_yaml as defaults -%}
|
||||
name: dvm-{{ slsdotpath }}
|
||||
force: True
|
||||
require:
|
||||
- sls: {{ slsdotpath }}.clone
|
||||
present:
|
||||
- template: tpl-{{ slsdotpath }}
|
||||
- label: yellow
|
||||
prefs:
|
||||
- template: tpl-{{ slsdotpath }}
|
||||
- label: yellow
|
||||
- audiovm: "*default*"
|
||||
- memory: 300
|
||||
- maxmem: 800
|
||||
- vcpus: 1
|
||||
- template_for_dispvms: True
|
||||
- include_in_backups: False
|
||||
features:
|
||||
- enable:
|
||||
- appmenus-dispvm
|
||||
- disable:
|
||||
- service.cups
|
||||
- service.cups-browsed
|
||||
- set:
|
||||
- menu-items: "element-desktop.desktop qubes-run-terminal.desktop qubes-start.desktop"
|
||||
{%- endload %}
|
||||
{{ load(defaults) }}
|
10
salt/element/create.top
Normal file
10
salt/element/create.top
Normal file
@ -0,0 +1,10 @@
|
||||
{#
|
||||
SPDX-FileCopyrightText: 2023 - 2024 Benjamin Grande M. S. <ben.grande.b@gmail.com>
|
||||
|
||||
SPDX-License-Identifier: AGPL-3.0-or-later
|
||||
#}
|
||||
|
||||
base:
|
||||
'dom0':
|
||||
- match: nodegroup
|
||||
- element.create
|
58
salt/element/files/repo/element.asc
Normal file
58
salt/element/files/repo/element.asc
Normal file
@ -0,0 +1,58 @@
|
||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
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
|
||||
=iXCs
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
2
salt/element/files/repo/element.list
Normal file
2
salt/element/files/repo/element.list
Normal file
@ -0,0 +1,2 @@
|
||||
deb [signed-by=/usr/share/keyrings/element.asc] https://packages.element.io/debian/ default main
|
||||
# vim:ft=debsources
|
6
salt/element/files/repo/element.sources
Normal file
6
salt/element/files/repo/element.sources
Normal file
@ -0,0 +1,6 @@
|
||||
Types: deb
|
||||
URIs: https://packages.element.io/debian/
|
||||
Suites: default
|
||||
Components: main
|
||||
Signed-by: /usr/share/keyrings/element.asc
|
||||
# vim:ft=debsources
|
12
salt/element/init.top
Normal file
12
salt/element/init.top
Normal file
@ -0,0 +1,12 @@
|
||||
{#
|
||||
SPDX-FileCopyrightText: 2023 - 2024 Benjamin Grande M. S. <ben.grande.b@gmail.com>
|
||||
|
||||
SPDX-License-Identifier: AGPL-3.0-or-later
|
||||
#}
|
||||
|
||||
base:
|
||||
'dom0':
|
||||
- match: nodegroup
|
||||
- element.create
|
||||
'tpl-element':
|
||||
- element.install
|
12
salt/element/install-repo.sls
Normal file
12
salt/element/install-repo.sls
Normal file
@ -0,0 +1,12 @@
|
||||
{#
|
||||
SPDX-FileCopyrightText: 2023 Benjamin Grande M. S. <ben.grande.b@gmail.com>
|
||||
|
||||
SPDX-License-Identifier: AGPL-3.0-or-later
|
||||
#}
|
||||
|
||||
{% if grains['nodename'] != 'dom0' -%}
|
||||
|
||||
{% from 'utils/macros/install-repo.sls' import install_repo -%}
|
||||
{{ install_repo(sls_path, 'element') }}
|
||||
|
||||
{% endif -%}
|
9
salt/element/install-repo.top
Normal file
9
salt/element/install-repo.top
Normal file
@ -0,0 +1,9 @@
|
||||
{#
|
||||
SPDX-FileCopyrightText: 2023 - 2024 Benjamin Grande M. S. <ben.grande.b@gmail.com>
|
||||
|
||||
SPDX-License-Identifier: AGPL-3.0-or-later
|
||||
#}
|
||||
|
||||
base:
|
||||
'tpl-element':
|
||||
- element.install-repo
|
27
salt/element/install.sls
Normal file
27
salt/element/install.sls
Normal file
@ -0,0 +1,27 @@
|
||||
{#
|
||||
SPDX-FileCopyrightText: 2023 - 2024 Benjamin Grande M. S. <ben.grande.b@gmail.com>
|
||||
|
||||
SPDX-License-Identifier: AGPL-3.0-or-later
|
||||
#}
|
||||
|
||||
{% if grains['nodename'] != 'dom0' -%}
|
||||
|
||||
include:
|
||||
- .install-repo
|
||||
- utils.tools.common.update
|
||||
- sys-audio.install-client
|
||||
|
||||
"{{ slsdotpath }}-installed":
|
||||
pkg.installed:
|
||||
- require:
|
||||
- sls: {{ slsdotpath }}.install-repo
|
||||
- sls: utils.tools.common.update
|
||||
- install_recommends: False
|
||||
- skip_suggestions: True
|
||||
- pkgs:
|
||||
- qubes-core-agent-networking
|
||||
- ca-certificates
|
||||
- element-desktop
|
||||
- dunst
|
||||
|
||||
{% endif -%}
|
9
salt/element/install.top
Normal file
9
salt/element/install.top
Normal file
@ -0,0 +1,9 @@
|
||||
{#
|
||||
SPDX-FileCopyrightText: 2023 - 2024 Benjamin Grande M. S. <ben.grande.b@gmail.com>
|
||||
|
||||
SPDX-License-Identifier: AGPL-3.0-or-later
|
||||
#}
|
||||
|
||||
base:
|
||||
'tpl-element':
|
||||
- element.install
|
Loading…
Reference in New Issue
Block a user