214 lines
4.6 KiB
YAML
214 lines
4.6 KiB
YAML
---
|
|
# tasks file for arch-post-setup
|
|
- name: Ensure yay is installed
|
|
kewlfft.aur.aur:
|
|
name: yay
|
|
|
|
- name: Install pacman.conf
|
|
become: true
|
|
ansible.builtin.copy:
|
|
src: pacman.conf
|
|
dest: /etc/pacman.conf
|
|
owner: root
|
|
group: root
|
|
mode: "0644"
|
|
|
|
- name: Update Pacman Caches
|
|
become: true
|
|
community.general.pacman:
|
|
update_cache: true
|
|
|
|
- name: Install Needed Programs via Pacman
|
|
become: true
|
|
community.general.pacman:
|
|
name:
|
|
# Pacman goodies, importantly checkupdates used in waybar
|
|
- pacman-contrib
|
|
# Driver support for Intel GPUs for vulkan
|
|
- vulkan-intel
|
|
# Access linux machine from phones
|
|
- chromium
|
|
- github-cli
|
|
- firefox-developer-edition
|
|
- thunderbird
|
|
- ffmpeg
|
|
- jq
|
|
- inotify-tools
|
|
- wf-recorder
|
|
- mako
|
|
- wl-clipboard
|
|
- udiskie
|
|
- playerctl
|
|
- wofi
|
|
- qbittorrent
|
|
- qt5-wayland
|
|
- qt6-wayland
|
|
- bind
|
|
- man
|
|
- pavucontrol-qt
|
|
- sddm
|
|
- silicon
|
|
- slurp
|
|
- gifski
|
|
- feh
|
|
- grim
|
|
- bob
|
|
- wireshark-qt
|
|
- libva-mesa-driver
|
|
- intel-media-driver
|
|
- intel-media-sdk
|
|
- onevpl-intel-gpu
|
|
- docker
|
|
- docker-compose
|
|
- docker-buildx
|
|
- llvm
|
|
- protobuf
|
|
- sdbus-cpp
|
|
- libfido2
|
|
- yarn
|
|
- musl
|
|
- clang
|
|
- bat
|
|
- ccache
|
|
- python-pip
|
|
- timeshift
|
|
- tlp
|
|
- thermald # Handle intel cpu overheating better
|
|
- polkit-kde-agent # Allows apps to elevate themselves by prompting for password, e.g. timeshift
|
|
- lxappearance
|
|
- waybar # Top status bar in DE
|
|
- qt6ct
|
|
- qt5ct
|
|
- gtk-engine-murrine
|
|
- mpv # Video playing from command line
|
|
- fuse2 # appimage support
|
|
# Smart cards
|
|
- pcsclite
|
|
- ccid
|
|
# Some deps needed for some neovim plugins
|
|
- lua51
|
|
- imagemagick
|
|
# Tectonic for latex and dependencies
|
|
- tectonic
|
|
- openssl-1.1
|
|
# Opensnitch and dependencies
|
|
- opensnitch
|
|
- python-qt-material
|
|
- python-pyasn
|
|
# Ansible at the system level
|
|
- ansible
|
|
- ansible-lint
|
|
# Dell audio driver support
|
|
- sof-firmware
|
|
- alsa-ucm-conf
|
|
# Fonts
|
|
- noto-fonts
|
|
- noto-fonts-cjk
|
|
- noto-fonts-emoji
|
|
- ttf-firacode-nerd
|
|
- ttf-liberation
|
|
- ttf-roboto
|
|
- ttf-opensans
|
|
- ttf-meslo-nerd
|
|
# Terminals
|
|
- kitty
|
|
# Zathura pdf viewer stuff
|
|
- zathura
|
|
- zathura-pdf-mupdf
|
|
- texlive-latexextra
|
|
- texlive-lang
|
|
- texlive-langextra
|
|
- biber
|
|
- texlive-bibtexextra
|
|
- texlive-fontsextra
|
|
# Virtual Machines
|
|
- qemu-full
|
|
- virt-manager
|
|
- dnsmasq
|
|
- dmidecode
|
|
# Command completion for bash & zsh
|
|
- bash-completion
|
|
- zsh-completions
|
|
# Wayland Compositor
|
|
- hyprland
|
|
- xdg-desktop-portal-hyprland
|
|
- xdg-desktop-portal-gtk # For file picker
|
|
state: present
|
|
|
|
- name: Install Needed Programs From AUR
|
|
failed_when: false
|
|
kewlfft.aur.aur:
|
|
name:
|
|
# Allows vpn to work while opensnitch is running
|
|
- opensnitch-ebpf-module
|
|
- swww
|
|
- qt5-styleplugins
|
|
- qt6gtk2
|
|
- swaylock-effects-git
|
|
- wev
|
|
- pw-volume
|
|
- wezterm-git
|
|
- spotify
|
|
- powershell-bin
|
|
- xwaylandvideobridge-bin
|
|
- clight-git
|
|
- clight-gui-git
|
|
- slimbookbattery
|
|
- kanagawa-gtk-theme-git
|
|
- ttf-twemoji
|
|
state: present
|
|
|
|
- name: Get User
|
|
ansible.builtin.set_fact:
|
|
user: "{{ ansible_env.USER | default('sam') }}"
|
|
changed_when: false
|
|
|
|
- name: Ensure User Groups and Shell Are Set
|
|
become: true
|
|
ansible.builtin.user:
|
|
name: "{{ user }}"
|
|
groups:
|
|
- wheel
|
|
- docker
|
|
- sys
|
|
- log
|
|
- libvirt
|
|
- nix-users
|
|
shell: /usr/bin/zsh
|
|
state: present
|
|
when: user is defined and not user == 'root'
|
|
|
|
- name: Enable and Start Needed Systemd Services
|
|
become: true
|
|
ansible.builtin.systemd:
|
|
name: "{{ item }}"
|
|
state: started
|
|
enabled: true
|
|
loop:
|
|
- tlp.service
|
|
- pcscd.service
|
|
- docker.service
|
|
- libvirtd.service
|
|
- virtlogd.service
|
|
- opensnitchd.service
|
|
- cronie.service
|
|
- man-db.timer
|
|
- polkit.service
|
|
- sddm.service
|
|
- clightd.service
|
|
- thermald.service
|
|
|
|
- name: Import Other Arch Tasks
|
|
ansible.builtin.include_tasks:
|
|
file: '{{ task }}'
|
|
loop_control:
|
|
loop_var: task
|
|
loop:
|
|
- reflector.yml
|
|
- bluetooth.yml
|
|
- disable-gpu.yml
|
|
- modprobe-powersave.yml
|
|
- dns.yml
|
|
- powertop.yml
|
|
- pacman-hooks.yml
|