forked from infra/ansible
116 lines
3.3 KiB
YAML
116 lines
3.3 KiB
YAML
---
|
|
|
|
- name: Install main dependencies
|
|
apt:
|
|
name:
|
|
- xrdp
|
|
- libasound2
|
|
- matchbox-window-manager
|
|
|
|
- name: Configure xrdp.ini
|
|
template: src=xrdp.ini.j2 dest=/etc/xrdp/xrdp.ini
|
|
notify: Restart xrdp
|
|
|
|
- name: Configure sesman.ini
|
|
template: src=sesman.ini.j2 dest=/etc/xrdp/sesman.ini
|
|
notify: Restart xrdp
|
|
|
|
- name: Create xrdp directory
|
|
file: path=/usr/local/share/xrdp/ state=directory mode=0755 owner=root group=root
|
|
|
|
- name: Copy Binary Kitchen Logo
|
|
copy: src={{ xrdp_ls_logo_filename }} dest=/usr/local/share/xrdp/{{ xrdp_ls_logo_filename }}
|
|
notify: Restart xrdp
|
|
|
|
|
|
- name: Install samba
|
|
apt:
|
|
name:
|
|
- samba
|
|
|
|
- name: Configure samba
|
|
template:
|
|
src: smb.conf.j2
|
|
dest: /etc/samba/smb.conf
|
|
notify: Reload smbd
|
|
|
|
|
|
- name: Install LightBurn dependencies
|
|
apt:
|
|
name:
|
|
- libpulse-mainloop-glib0
|
|
- libnss3
|
|
|
|
- name: Create LightBurn group
|
|
group: name={{ lightburn_group }}
|
|
|
|
- name: Create LightBurn user
|
|
user: name={{ lightburn_user }} password={{ lightburn_pass | password_hash('sha512', lightburn_salt) }} home=/home/{{ lightburn_user }} group={{ lightburn_group }}
|
|
|
|
- name: Create LightBurn .xsession
|
|
template: src=lightburn_xsession.j2 dest=/home/{{ lightburn_user }}/.xsession
|
|
|
|
- name: Create LightBurn data directory
|
|
file: path=/home/{{ lightburn_user }}/data state=directory mode=0755 owner={{ lightburn_user }} group={{ lightburn_group }}
|
|
|
|
- name: Download LightBurn binary
|
|
get_url: url={{ lightburn_url }} dest={{ lightburn_target }} checksum={{ lightburn_checksum }} mode=0755
|
|
notify: Install LightBurn
|
|
|
|
|
|
- name: Enable contrib repositories
|
|
apt_repository:
|
|
repo: deb http://deb.debian.org/debian {{ ansible_distribution_release }} contrib
|
|
|
|
- name: Add i386 Architecture
|
|
command: dpkg --add-architecture i386
|
|
args:
|
|
creates: /var/lib/dpkg/arch
|
|
when: ansible_architecture != 'i386'
|
|
register: archrc
|
|
|
|
- name: Update APT Cache for i386
|
|
apt:
|
|
update_cache: true
|
|
when: archrc is defined and archrc.changed
|
|
|
|
- name: Install Estlcam dependencies
|
|
apt:
|
|
name:
|
|
- winetricks
|
|
- wine32
|
|
- xfwm4
|
|
|
|
- name: Create Estlcam group
|
|
group: name={{ estlcam_group }}
|
|
|
|
- name: Create Estlcam user
|
|
user: name={{ estlcam_user }} password={{ estlcam_pass | password_hash('sha512', estlcam_salt) }} home=/home/{{ estlcam_user }} group={{ estlcam_group }}
|
|
|
|
- name: Create Estlcam .xsession
|
|
template: src=estlcam_xsession.j2 dest=/home/{{ estlcam_user }}/.xsession
|
|
|
|
- name: Create Estlcam data directory
|
|
file: path=/home/{{ estlcam_user }}/data state=directory mode=0755 owner={{ estlcam_user }} group={{ estlcam_group }}
|
|
|
|
|
|
- name: Create tsadmin group
|
|
group: name={{ tsadmin_group }}
|
|
|
|
- name: Create tsadmin_user
|
|
user: name={{ tsadmin_user }} password={{ tsadmin_pass | password_hash('sha512', tsadmin_salt) }} home=/home/{{ tsadmin_user }} group={{ tsadmin_group }}
|
|
|
|
- name: Allow 'tsadmin_user' group to have passwordless sudo to other users
|
|
lineinfile:
|
|
dest: /etc/sudoers
|
|
state: present
|
|
regexp: '^{{ tsadmin_user }} ALL=({{ item }}) NOPASSWD: ALL'
|
|
line: '{{ tsadmin_user }} ALL=({{ item }}) NOPASSWD: ALL'
|
|
validate: visudo -cf %s
|
|
with_items:
|
|
- "{{ estlcam_user }}"
|
|
- "{{ lightburn_user }}"
|
|
|
|
- name: Create tsadmin_user .xsession
|
|
template: src=tsadmin_xsession.j2 dest=/home/{{ tsadmin_user }}/.xsession
|