diff --git a/lmn-laptop.yml b/lmn-laptop.yml index 2883089..6db8add 100644 --- a/lmn-laptop.yml +++ b/lmn-laptop.yml @@ -48,6 +48,7 @@ #- lmn_sssd #- lmn_mount - lmn_kde - #- lmn_qgm + - lmn_qgm + - lmn_qglaptop #- lmn_printer #- kerberize diff --git a/qgm-laptop.yml b/qgm-laptop.yml index 1583bc9..6db8add 100644 --- a/qgm-laptop.yml +++ b/qgm-laptop.yml @@ -4,22 +4,6 @@ hosts: all remote_user: ansible become: yes - pre_tasks: - - pause: - prompt: "Enter global-admin active directory password, leave empty to skip domain join" - minutes: 5 - echo: false - register: adpw - no_log: true - when: "ansible_cmdline.adpw is not defined" - - name: preseed apparmor - debconf: - name: apparmor - question: apparmor/homedirs - value: >- - /srv/samba/schools/default-school/teachers/ - /srv/samba/schools/default-school/students/*/ - vtype: string vars: domain: "{{ ansible_domain }}" @@ -65,5 +49,6 @@ #- lmn_mount - lmn_kde - lmn_qgm + - lmn_qglaptop #- lmn_printer #- kerberize diff --git a/roles/lmn_qglaptop/files/52-arduino.rules b/roles/lmn_qglaptop/files/52-arduino.rules new file mode 100644 index 0000000..7c49415 --- /dev/null +++ b/roles/lmn_qglaptop/files/52-arduino.rules @@ -0,0 +1,3 @@ +SUBSYSTEMS=="usb",KERNEL=="ttyACM*",ATTRS{idVendor}=="16c0",ATTRS{idProduct}=="0483",GROUP="dialout",MODE="0666" +SUBSYSTEMS=="usb",KERNEL=="ttyACM*",ATTRS{idVendor}=="2341",ATTRS{idProduct}=="0043",GROUP="dialout",MODE="0666" +SUBSYSTEMS=="usb",KERNEL=="ttyUSB*",ATTRS{idVendor}=="1a86",ATTRS{idProduct}=="7523",GROUP="dialout",MODE="0666" diff --git a/roles/lmn_qglaptop/files/firefox_policies.json b/roles/lmn_qglaptop/files/firefox_policies.json new file mode 100644 index 0000000..0c13eb9 --- /dev/null +++ b/roles/lmn_qglaptop/files/firefox_policies.json @@ -0,0 +1,70 @@ +{ + "policies": { + "Proxy": { + "Mode": "system" + }, + "OverrideFirstRunPage": "https://www.qg-moessingen.de", + "Homepage": { + "URL": "https://www.debian.org", + "Locked": false, + "StartPage": "previous-session" + }, + "DisplayBookmarksToolbar": true, + "ManagedBookmarks": [ + { + "toplevel_name": "QG Mössingen" + }, + { + "url": "https://server.qgm.lan", + "name": "Passwort ändern" + }, + { + "url": "https://wolke.qg-moessingen.de", + "name": "QG-Wolke" + }, + { + "url": "https://moodle.qg-moessingen.de", + "name": "QG-Moodle" + }, + { + "name": "Debian", + "children": [ + { + "url": "https://www.debian.org", + "name": "Debian Homepage" + }, + { + "url": "https://wiki.debian.org", + "name": "Debian Wiki" + }, + { + "name": "Debian LAN/Live", + "children": [ + { + "url": "https://salsa.debian.org/andi/debian-lan-ansible", + "name": "Debian LAN Ansible" + }, + { + "url": "https://wiki.debian.org/DebianLive", + "name": "Debian Live" + } + ] + } + ] + } + ], + "SearchEngines": { + "Add": [ + { + "Name": "Startpage", + "URLTemplate": "https://www.startpage.com/sp/search?query={searchTerms}", + "Method": "GET", + "IconURL": "https://www.startpage.com/sp/cdn/favicons/favicon--default.ico", + "Alias": "sp", + "Description": "Startpage Search Engine" + } + ], + "Default": "Startpage" + } + } +} diff --git a/roles/lmn_qglaptop/files/qgm-breeze-sddm.tgz b/roles/lmn_qglaptop/files/qgm-breeze-sddm.tgz new file mode 100644 index 0000000..a12dc6e Binary files /dev/null and b/roles/lmn_qglaptop/files/qgm-breeze-sddm.tgz differ diff --git a/roles/lmn_qglaptop/files/qgm-login.sh b/roles/lmn_qglaptop/files/qgm-login.sh new file mode 100644 index 0000000..dd239c5 --- /dev/null +++ b/roles/lmn_qglaptop/files/qgm-login.sh @@ -0,0 +1,2 @@ +[[ "${UID}" -lt 10000 ]] && return +kwriteconfig5 --file "$HOME/.config/plasma-org.kde.plasma.desktop-appletsrc" --group 'Containments' --group '1' --group 'Wallpaper' --group 'org.kde.image' --group 'General' --key 'Image' "/usr/local/share/qgm/qgm_background_wallpaper.jpg" || return diff --git a/roles/lmn_qglaptop/files/qgm_background.jpg b/roles/lmn_qglaptop/files/qgm_background.jpg new file mode 100644 index 0000000..f2e18f5 Binary files /dev/null and b/roles/lmn_qglaptop/files/qgm_background.jpg differ diff --git a/roles/lmn_qglaptop/files/qgm_background_wallpaper.jpg b/roles/lmn_qglaptop/files/qgm_background_wallpaper.jpg new file mode 100644 index 0000000..9cc2a2e Binary files /dev/null and b/roles/lmn_qglaptop/files/qgm_background_wallpaper.jpg differ diff --git a/roles/lmn_qglaptop/tasks/main.yml b/roles/lmn_qglaptop/tasks/main.yml new file mode 100644 index 0000000..8516971 --- /dev/null +++ b/roles/lmn_qglaptop/tasks/main.yml @@ -0,0 +1,77 @@ +--- +######### +# Login Benutzer +- name: Erzeuge login Benutzer laptop + user: + name: laptop + password: '$6$mIpgV5pylqiYinr5$n9GQvQvY2SqY9bIZr1UPxFWaCHhLDyfy7/QaFNUFscFK.Pd.DcOmne.WUelGvKbRLEYInEiMYzxMK.hIIVAVc1' + groups: + - sudo + - dialout + state: present + shell: /bin/bash + system: no + createhome: yes + home: /home/laptop + +- name: Remove qgm-login.sh + ansible.builtin.file: + path: /etc/profile.d/qgm-login.sh + state: absent + +######### +# Anpassungen an KDE +# - Doppelklick zum öffnen von Dateien +# - Style auf breeze fetstackern +# - Kein Benutzerwechsel +# - Kein Lockscreen +# - Keine neue Session + +- name: Set mandatory KDE settings for laptops + ansible.builtin.copy: + dest: /etc/xdg/kdeglobals + content: | + [KDE][$i] + SingleClick=false + widgetStyle=breeze + + [KDE Action Restrictions][$i] + action/switch_user=false + action/start_new_session=false + +######### +# Screen Locking ermöglichen +- name: Enable screen locking + ansible.builtin.file: + path: /etc/xdg/kscreenlockerrc + state: absent + +######### +# plasma-discover installieren +- name: Install plasma-discover + ansible.builtin.apt: + name: plasma-discover + state: latest + +- name: Remove suspend config + file: + path: /etc/systemd/sleep.conf.d/nosuspend.conf + state: absent + +- name: Allow suspend + blockinfile: + path: /etc/systemd/sleep.conf.d/nosuspend.conf + create: true + block: | + [Sleep] + AllowSuspend=yes + AllowHibernation=no + AllowSuspendThenHibernate=no + AllowHybridSleep=no + +- name: Remove ansible User + ansible.builtin.user: + name: ansible + state: absent + remove: yes +