summaryrefslogtreecommitdiff
path: root/roles/streaming/browser-kiosk/tasks
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2023-01-06 04:43:47 +0100
committerChristian Pointner <equinox@spreadspace.org>2023-01-06 04:43:47 +0100
commit2cbaef37fc66b5cabbf6ed8b0beb016a92d66914 (patch)
tree727f096a4e33e2e75dd0709f42c764f3710b60c5 /roles/streaming/browser-kiosk/tasks
parentcm4-test: add boot-config for interceptor board (diff)
add now browser kiosk role
Diffstat (limited to 'roles/streaming/browser-kiosk/tasks')
-rw-r--r--roles/streaming/browser-kiosk/tasks/main.yml105
1 files changed, 105 insertions, 0 deletions
diff --git a/roles/streaming/browser-kiosk/tasks/main.yml b/roles/streaming/browser-kiosk/tasks/main.yml
new file mode 100644
index 00000000..fbaf11f6
--- /dev/null
+++ b/roles/streaming/browser-kiosk/tasks/main.yml
@@ -0,0 +1,105 @@
+---
+- name: install packages
+ apt:
+ name:
+ - xserver-xorg
+ - xserver-xorg-video-all
+ - x11-xserver-utils
+ - xinit
+ - unclutter
+ - xterm
+ - ratpoison
+ - chromium
+ state: present
+
+- name: create kiosk user
+ user:
+ name: kiosk
+ home: /var/lib/kiosk
+ create_home: no
+ shell: /bin/sh
+ system: yes
+ groups:
+ - video
+ - render
+ state: present
+
+- name: create empty user dir for kiosk
+ file:
+ path: /var/lib/kiosk
+ state: directory
+ owner: kiosk
+ group: kiosk
+
+- name: install .xinitrc
+ copy:
+ content: |
+ xset dpms force on
+ xset dpms 0 0 0
+ xset s off
+ xsetroot -solid '#000000'
+
+ {% if browser_kiosk_xinit_commands_extra is defined %}
+ {{ browser_kiosk_xinit_commands_extra }}
+
+ {% endif %}
+ unclutter &
+ ratpoison &
+ /var/lib/kiosk/run
+ dest: /var/lib/kiosk/.xinitrc
+ owner: kiosk
+ group: kiosk
+
+- name: install .profile
+ copy:
+ content: |
+ if [ -z "$DISPLAY" ]; then
+ case $(tty) in
+ /dev/tty1)
+ startx
+ exit 0
+ ;;
+ esac
+ fi
+ dest: /var/lib/kiosk/.profile
+ owner: kiosk
+ group: kiosk
+
+- name: install .ratpoisonrc
+ copy:
+ content: |
+ set border 0
+ dest: /var/lib/kiosk/.ratpoisonrc
+ owner: kiosk
+ group: kiosk
+
+- name: install run script
+ copy:
+ content: "{{ browser_kiosk_run_script }}"
+ dest: /var/lib/kiosk/run
+ owner: kiosk
+ group: kiosk
+ mode: 0755
+
+- name: create override direcotry for getty@tty1 service unit
+ file:
+ path: /etc/systemd/system/getty@tty1.service.d
+ state: directory
+
+- name: generate override for getty@tty1 service unit
+ copy:
+ content: |
+ [Service]
+ ExecStart=
+ ExecStart=-/sbin/agetty --autologin kiosk --noclear %I $TERM
+ RestartSec=2
+ StartLimitInterval=5
+ StartLimitBurst=3
+ dest: /etc/systemd/system/getty@tty1.service.d/autologin.conf
+
+- name: make sure getty@tty1 service unit is enabled and started
+ systemd:
+ daemon_reload: yes
+ name: getty@tty1.service
+ state: started
+ enabled: yes