diff --git a/reboot.yml b/reboot.yml index 745e36e..a9b1124 100644 --- a/reboot.yml +++ b/reboot.yml @@ -1,6 +1,5 @@ --- - name: Reboot machines - gather_facts: false become: yes hosts: all diff --git a/roles/lmn_qgm/files/81-wol.rules b/roles/lmn_qgm/files/81-wol.rules new file mode 100644 index 0000000..dea07fd --- /dev/null +++ b/roles/lmn_qgm/files/81-wol.rules @@ -0,0 +1,2 @@ +# enable wol +ACTION=="add", SUBSYSTEM=="net", NAME=="*", RUN+="/usr/sbin/ethtool -s $name wol g" diff --git a/roles/lmn_qgm/files/qgm-soundfix.desktop b/roles/lmn_qgm/files/qgm-soundfix.desktop new file mode 100644 index 0000000..b72d7d0 --- /dev/null +++ b/roles/lmn_qgm/files/qgm-soundfix.desktop @@ -0,0 +1,15 @@ +#!/usr/bin/env xdg-open + +[Desktop Entry] +Version=1.0 +Type=Application +Terminal=false +Exec=qgm-soundfix.sh +Name[de_DE]=QG - Ton zum Beamer +Name=QG - Ton zum Beamer +Icon=/usr/share/icons/breeze-dark/emblems/symbolic/emblem-music-symbolic.svg +Hidden=false +Comment= +Path= +StartupNotify=false + diff --git a/roles/lmn_qgm/files/qgm-soundfix.sh b/roles/lmn_qgm/files/qgm-soundfix.sh new file mode 100755 index 0000000..01ab3fc --- /dev/null +++ b/roles/lmn_qgm/files/qgm-soundfix.sh @@ -0,0 +1,6 @@ +#!/bin/bash + +CARD=$(pactl list cards short | head -n 1 | awk '{print $2}') +pactl set-card-profile $CARD output:hdmi-stereo+input:analog-stereo +HDMISINK=$(pactl list sinks short | grep hdmi | awk '{print $2}') +pactl set-default-sink $HDMISINK diff --git a/roles/lmn_qgm/tasks/main.yml b/roles/lmn_qgm/tasks/main.yml index 569a324..9e146ca 100644 --- a/roles/lmn_qgm/tasks/main.yml +++ b/roles/lmn_qgm/tasks/main.yml @@ -53,6 +53,7 @@ - libnotify-bin ## needed for pwroff script - neovim - net-tools + - ethtool - netcat-openbsd - nmap - tmux @@ -249,4 +250,39 @@ ansible.builtin.file: path: /etc/firefox-esr/policies/firefox_policies.json state: absent + +########## +# Enable WOL +# +- name: Enable WOL + ansible.builtin.command: ethtool -s {{ ansible_default_ipv4.interface }} wol g + +- name: Copy 81-wol.rules to target + copy: + src: 81-wol.rules + dest: /etc/udev/rules.d/81-wol.rules + mode: '0644' + owner: root + group: root + +########## +# Laptop Skripte +# +- name: Copy qgm-soudfix.sh + copy: + src: qgm-soundfix.sh + dest: /usr/local/bin/qgm-soundfix.sh + mode: '0755' + owner: root + group: root + +- name: Copy qgm-soudfix.desktop + copy: + src: qgm-soundfix.desktop + dest: /usr/share/applications/qgm-soundfix.desktop + mode: '0644' + owner: root + group: root + + diff --git a/roles/lmn_qgsddm/files/qgm_background.jpg b/roles/lmn_qgsddm/files/qgm_background.jpg index ca0f737..a99fa4c 100644 Binary files a/roles/lmn_qgsddm/files/qgm_background.jpg and b/roles/lmn_qgsddm/files/qgm_background.jpg differ diff --git a/roles/lmn_qgsddm/files/qgm_background_wallpaper.jpg b/roles/lmn_qgsddm/files/qgm_background_wallpaper.jpg index 83df31a..f6f9488 100644 Binary files a/roles/lmn_qgsddm/files/qgm_background_wallpaper.jpg and b/roles/lmn_qgsddm/files/qgm_background_wallpaper.jpg differ diff --git a/roles/qgm_vpdisplay/tasks/main.yml b/roles/qgm_vpdisplay/tasks/main.yml new file mode 100644 index 0000000..ce591ac --- /dev/null +++ b/roles/qgm_vpdisplay/tasks/main.yml @@ -0,0 +1,70 @@ + vars_files: + - settings.vault + + vars: + packages: + - vim + - firefox-esr + - i3 + - xorg + - git + - unclutter + + tasks: + - name: "Install needed Packages" + apt: + pkg: + "{{ packages }}" + + - name: "change line in systemd config for autologin" + lineinfile: + path: "/etc/systemd/system/getty.target.wants/getty@tty1.service" + regexp: "ExecStart=-/sbin/agetty" + line: "ExecStart=-/sbin/agetty --noclear --autologin vp %I $TERM" + + - name: "Copy .profile for startx" + copy: + src: "files/dot.profile" + dest: "/home/vp/.profile" + owner: vp + group: vp + mode: 0755 + + - name: "Create i3 config dir" + file: + path: "/home/vp/.config/i3" + state: directory + owner: vp + group: vp + mode: '0755' + + - name: "Copy i3 config" + copy: + src: "files/i3.config" + dest: "/home/vp/.config/i3/config" + owner: vp + group: vp + mode: 0644 + + - name: "Get vplan display repo" + git: + repo: "https://gitea.schule.social/QG-VP-Dev/VP-Screens-Management.git" + dest: /home/vp/vp + + - name: "Configuration Template for Vplan" + template: + src: "templates/settings.js.j2" + dest: "/home/vp/vp/settings.js" + owner: vp + group: vp + mode: 0644 + + - name: "Change to teacher version if applicable" + when: "'lehrer' in group_names" + lineinfile: + path: "/home/vp/vp/settings.js" + regexp: "^const plantype" + line: "const plantype = \"lehrer\";" + + - name: "Reboot" + ansible.builtin.reboot: diff --git a/roles/qgm_vpdisplay/vars/main.yml b/roles/qgm_vpdisplay/vars/main.yml new file mode 100644 index 0000000..7a61307 --- /dev/null +++ b/roles/qgm_vpdisplay/vars/main.yml @@ -0,0 +1,7 @@ +packages: + - vim + - firefox-esr + - i3 + - xorg + - git + - unclutter diff --git a/shutdown.yml b/shutdown.yml new file mode 100644 index 0000000..888ac38 --- /dev/null +++ b/shutdown.yml @@ -0,0 +1,8 @@ +--- +- name: Shutdwon machines + hosts: all + become: yes + + tasks: + - name: Unconditionally shut down the machine with all defaults + community.general.shutdown: diff --git a/wakeonlan.yml b/wakeonlan.yml deleted file mode 100644 index 5b0dd12..0000000 --- a/wakeonlan.yml +++ /dev/null @@ -1,11 +0,0 @@ ---- -- name: Wake machines via WOL - gather_facts: false - hosts: all - - tasks: - - - name: Wake machine - community.general.wakeonlan: - mac: "{{ mac }}" - delegate_to: localhost diff --git a/wol.yml b/wol.yml new file mode 100644 index 0000000..8d15c5b --- /dev/null +++ b/wol.yml @@ -0,0 +1,9 @@ +--- +- name: Wake machines via WOL + gather_facts: false + hosts: all + + tasks: + - name: Send magic Wake-On-Lan packet to turn on individual systems + command: wakeonlan {{ mac }} + delegate_to: localhost