Add roles for Arch Linux
This commit is contained in:
parent
d5b8bc59b7
commit
12a9ad442c
9 changed files with 140 additions and 0 deletions
|
@ -5,6 +5,9 @@
|
||||||
vars:
|
vars:
|
||||||
gui: false
|
gui: false
|
||||||
tasks:
|
tasks:
|
||||||
|
- include_role:
|
||||||
|
name: arch
|
||||||
|
when: ansible_distribution == 'Archlinux'
|
||||||
- include_role:
|
- include_role:
|
||||||
name: debian
|
name: debian
|
||||||
when: ansible_distribution == 'Debian'
|
when: ansible_distribution == 'Debian'
|
||||||
|
|
|
@ -5,6 +5,9 @@
|
||||||
vars:
|
vars:
|
||||||
gui: true
|
gui: true
|
||||||
tasks:
|
tasks:
|
||||||
|
- include_role:
|
||||||
|
name: arch
|
||||||
|
when: ansible_distribution == 'Archlinux'
|
||||||
- include_role:
|
- include_role:
|
||||||
name: debian
|
name: debian
|
||||||
when: ansible_distribution == 'Debian'
|
when: ansible_distribution == 'Debian'
|
||||||
|
|
19
roles/arch/files/70-solokeys-access.rules
Normal file
19
roles/arch/files/70-solokeys-access.rules
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
# Notify ModemManager this device should be ignored
|
||||||
|
ACTION!="add|change|move", GOTO="mm_usb_device_blacklist_end"
|
||||||
|
SUBSYSTEM!="usb", GOTO="mm_usb_device_blacklist_end"
|
||||||
|
ENV{DEVTYPE}!="usb_device", GOTO="mm_usb_device_blacklist_end"
|
||||||
|
|
||||||
|
ATTRS{idVendor}=="0483", ATTRS{idProduct}=="a2ca", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||||
|
|
||||||
|
LABEL="mm_usb_device_blacklist_end"
|
||||||
|
|
||||||
|
|
||||||
|
# Solo bootloader + firmware access
|
||||||
|
SUBSYSTEM=="hidraw", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="a2ca", TAG+="uaccess"
|
||||||
|
SUBSYSTEM=="tty", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="a2ca", TAG+="uaccess"
|
||||||
|
|
||||||
|
# ST DFU access
|
||||||
|
SUBSYSTEM=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", TAG+="uaccess"
|
||||||
|
|
||||||
|
# U2F Zero
|
||||||
|
SUBSYSTEM=="hidraw", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="8acf", TAG+="uaccess"
|
7
roles/arch/tasks/main.yml
Normal file
7
roles/arch/tasks/main.yml
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
---
|
||||||
|
- include: packages-cli.yml
|
||||||
|
- include: packages-gui.yml
|
||||||
|
when: gui == true
|
||||||
|
- include: modules.yml
|
||||||
|
- include: ssh.yml
|
||||||
|
- include: solokeys.yml
|
13
roles/arch/tasks/modules.yml
Normal file
13
roles/arch/tasks/modules.yml
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
---
|
||||||
|
- name: Blacklist pcspkr module
|
||||||
|
become: true
|
||||||
|
lineinfile:
|
||||||
|
path: /etc/modprobe.d/blacklist.conf
|
||||||
|
line: blacklist pcspkr
|
||||||
|
create: yes
|
||||||
|
- name: Blacklist dvb_usb_rtl28xxu module
|
||||||
|
become: true
|
||||||
|
lineinfile:
|
||||||
|
path: /etc/modprobe.d/blacklist.conf
|
||||||
|
line: blacklist dvb_usb_rtl28xxu
|
||||||
|
create: yes
|
37
roles/arch/tasks/packages-cli.yml
Normal file
37
roles/arch/tasks/packages-cli.yml
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
---
|
||||||
|
- name: Upgrade all packages
|
||||||
|
become: true
|
||||||
|
pacman:
|
||||||
|
upgrade: yes
|
||||||
|
- name: Install CLI packages
|
||||||
|
become: true
|
||||||
|
pacman:
|
||||||
|
name: '{{ packages }}'
|
||||||
|
state: present
|
||||||
|
update_cache: yes
|
||||||
|
vars:
|
||||||
|
packages:
|
||||||
|
- ansible
|
||||||
|
- arch-wiki-docs
|
||||||
|
- asciidoctor
|
||||||
|
- bc
|
||||||
|
- bind-tools
|
||||||
|
- clang
|
||||||
|
- git
|
||||||
|
- gnupg
|
||||||
|
- lldb
|
||||||
|
- mc
|
||||||
|
- nmap
|
||||||
|
- openssh
|
||||||
|
- python
|
||||||
|
- python-psutil
|
||||||
|
- sudo
|
||||||
|
- tlp
|
||||||
|
- tmux
|
||||||
|
- zsh
|
||||||
|
- name: Enable TLP
|
||||||
|
become: true
|
||||||
|
systemd:
|
||||||
|
name: tlp.service
|
||||||
|
enabled: true
|
||||||
|
state: started
|
23
roles/arch/tasks/packages-gui.yml
Normal file
23
roles/arch/tasks/packages-gui.yml
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
---
|
||||||
|
- name: Upgrade all packages
|
||||||
|
become: true
|
||||||
|
pacman:
|
||||||
|
upgrade: yes
|
||||||
|
- name: Install GUI packages
|
||||||
|
become: true
|
||||||
|
dnf:
|
||||||
|
name: '{{ packages }}'
|
||||||
|
state: present
|
||||||
|
update_cache: yes
|
||||||
|
vars:
|
||||||
|
packages:
|
||||||
|
- emacs
|
||||||
|
- evolution
|
||||||
|
- evolution-ews
|
||||||
|
- galculator
|
||||||
|
- gvim
|
||||||
|
- libgnome-keyring
|
||||||
|
- nextcloud-client
|
||||||
|
- remmina
|
||||||
|
- rxvt-unicode
|
||||||
|
- xterm
|
15
roles/arch/tasks/solokeys.yml
Normal file
15
roles/arch/tasks/solokeys.yml
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
---
|
||||||
|
- name: install solokeys udev rule
|
||||||
|
become: true
|
||||||
|
copy:
|
||||||
|
src: 70-solokeys-access.rules
|
||||||
|
dest: /etc/udev/rules.d/70-solokeys-access.rules
|
||||||
|
register: solokeys_copy
|
||||||
|
- name: reload udevadm rules
|
||||||
|
become: true
|
||||||
|
command: udevadm control --reload-rules
|
||||||
|
when: solokeys_copy.changed
|
||||||
|
- name: trigger udevadm
|
||||||
|
become: true
|
||||||
|
command: udevadm trigger
|
||||||
|
when: solokeys_copy.changed
|
20
roles/arch/tasks/ssh.yml
Normal file
20
roles/arch/tasks/ssh.yml
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
---
|
||||||
|
- name: Disable SSH passwords
|
||||||
|
become: true
|
||||||
|
lineinfile:
|
||||||
|
path: /etc/ssh/sshd_config
|
||||||
|
regexp: '^#?\w*PasswordAuthentication (yes|no)'
|
||||||
|
line: 'PasswordAuthentication no'
|
||||||
|
register: changed_ssh_config
|
||||||
|
- name: Enable SSH
|
||||||
|
become: true
|
||||||
|
systemd:
|
||||||
|
name: sshd.service
|
||||||
|
enabled: yes
|
||||||
|
state: started
|
||||||
|
- name: Restart SSH
|
||||||
|
become: true
|
||||||
|
systemd:
|
||||||
|
name: sshd.service
|
||||||
|
state: restarted
|
||||||
|
when: changed_ssh_config.changed == true
|
Loading…
Reference in a new issue