--- - name: Basic Setup hosts: ch-equinox-ws roles: - role: apt-repo/base - role: core/base - role: core/sshd/base - role: core/zsh - role: core/cpu-microcode - role: network/wakeonlan - name: Payload Setup hosts: ch-equinox-ws roles: - role: apt-repo/backports - role: apt-repo/spreadspace - role: apt-repo/ansible - role: apt-repo/tor-project - role: apt-repo/kubernetes - role: apt-repo/riot - role: apt-repo/brave - role: apt-repo/freecad - role: apt-repo/kicad6 - role: ws/base - role: core/admin-users post_tasks: - name: disable caps-lock lineinfile: path: /etc/default/keyboard regexp: '#?\s*XKBOPTIONS=' line: 'XKBOPTIONS="caps:none"' - name: mount fileserver volumes mount: src: "{{ network_zones.lan.prefix | ansible.utils.ipaddr(network_zones.lan.offsets['ch-prometheus']) | ansible.utils.ipaddr('address') }}:/" path: /srv/files fstype: nfs4 opts: nodev,x-systemd.automount,nofail state: mounted - name: create pulse daemon config directory file: path: /etc/pulse/daemon.conf.d state: directory - name: force pulseaudio sample rates to 48kHz (workadournd for Motu M4) copy: content: | resample-method = speex-float-10 avoid-resampling = false default-sample-format = float32le default-sample-rate = 48000 alternate-sample-rate = 48000 dest: /etc/pulse/daemon.conf.d/motu-m4.conf - name: disable USB Powermanagement for Motu M4 copy: content: | ## workaround for spurious audio issues with Motu M4 ATTRS{idVendor}=="07fd", ATTRS{idProduct}=="0008", ATTR{power/control}="on", ATTR{power/persist}="0" dest: /etc/udev/rules.d/90-motu-m4-power.rules - name: mask virtualbox web service unit systemd: name: vboxweb.service masked: true state: stopped - name: add flathub to systemd-wide flatpak remotes community.general.flatpak_remote: name: flathub flatpakrepo_url: https://flathub.org/repo/flathub.flatpakrepo state: present - name: install gotify-desktop become: yes become_method: su become_user: "equinox" block: - name: get list of installed cargo crates check_mode: no command: "cargo install --list" changed_when: false register: installed_cargo_crates - name: build loop: - name: gotify-desktop version: 1.2.0 url: https://github.com/desbma/gotify-desktop.git loop_control: label: "{{ item.name }} ({{ item.version }})" when: (item.name+' v'+ item.version) not in installed_cargo_crates.stdout command: "cargo install --git '{{ item.url }}' --tag '{{ item.version }}'"