configs/roles/packages/tasks/main.yml
2024-11-06 08:55:00 +01:00

260 lines
6.3 KiB
YAML

---
- name: x86_64 | Enable multilib repo
ansible.builtin.blockinfile:
path: /etc/pacman.conf
prepend_newline: true
block: |
[multilib]
Include = /etc/pacman.d/mirrorlist
when: ansible_architecture == "x86_64"
tags: first
become: true
- name: Update packages
community.general.pacman:
update_cache: true
upgrade: true
tags: packages
become: true
- name: Install priority packages
community.general.pacman:
state: present
# select the lines and use 'M-x sort-lines'
name: "{{ item }}"
loop:
- pipewire # audio
- pipewire-alsa # audio
- pipewire-jack # audio
- pipewire-pulse # audio
tags: packages
become: true
- name: Install other packages
community.general.pacman:
name: "{{ item }}"
state: present
loop:
#- gnome-keyring
#- hdparm
#- libaacs
#- libbluray
#- libcdio
#- libdvdcss
#- libdvdnav
#- libdvdread
#- libsecret
#- seahorse
- aardvark-dns # containers
- ansible # iac
- base-devel # devel stuff
- bash-language-server # bash lsp
- bind # dnsutils (nslookup, dig)
- bottom # htop alternative
- btrfs-progs # btrfs
- buildah # containers
- clang
- cmake
- composer
- dnsmasq # virtualization
- dosfstools # fat
- e2fsprogs # ext4
- easyeffects # audio effects
- emacs-wayland
- exfatprogs # exfat
- f2fs-tools # f2fs
- fd
- ffmpeg # multimedia
- firefox # browser
- firewalld # firewall
- fish # shell
- flatpak # packages
- freetype2 # fonts
- fuse-overlayfs # containers
- fwupd # firmware
- fwupd-efi # firmware
- gdb
- git # code
- git-lfs # code
- hunspell # spelling
- hunspell-de # spelling
- hunspell-en_gb # spelling
- hunspell-en_us # spelling
- hyphen # spelling
- hyphen-de # spelling
- hyphen-en # spelling
- inxi # host information
- jre-openjdk # java
- just # command runner
- kde-applications-meta # kde
- kid3 # music metadata
- krita
- languagetool
- libreoffice-fresh # office
- libreoffice-fresh-de # office
- lldb
- lldb-mi
- lutris # games
- maliit-keyboard # virtual keyboard
- man-db # docs
- mesa # video driver
- mesa-vdpau # VDPAU
- mosh # remote shell
- mtools # fat
- mythes-de # thesaurus
- mythes-en # thesaurus
- nerd-fonts # fonts
- nextcloud-client # cloud
- nodejs
- noto-fonts # fonts
- noto-fonts-cjk # fonts
- noto-fonts-emoji # fonts
- ntfs-3g # ntfs
- nvme-cli # nvme ssd
- okular # pdf
- openssh # remote shell
- opentofu # iac
- otf-font-awesome # fonts
- p7zip # compression
- pacman-contrib # scripts
- phonon-qt5-vlc # multimedia
- phonon-qt6-vlc # multimedia
- php # code
- pkgstats
- plasma-meta
- podman # containers
- podman-compose # containers
- power-profiles-daemon # power management
- prettier # code
- pyright # code
- python-black # code
- python-debugpy # code
- python-isort # code
- python-pip # code
- python-pipenv # code
- python-pyflakes # code
- python-pytest # code
- rebuild-detector # packages
- restic # backup
- ripgrep # doom emacs
- rsync # file sync
- ruby-sass # code
- shfmt # code
- smartmontools # disks
- speech-dispatcher # TTS
- stress # benchmark
- stylelint # code
- swtpm # libvirt tpm support
- systemd-resolvconf # resolvectl
- tesseract-data-deu
- tesseract-data-eng
- texlive-core
- thunderbird # email
- tidy
- traceroute # network
- transmission-remote-gtk # torrent
- ttf-fira-code # fonts
- ttf-fira-sans # fonts
- ttf-roboto-mono # fonts
- udftools # udf
- unrar # compression
- unzip # compression
- util-linux # various utils
- vdpauinfo # VDPAU
- vim # editor
- vscode-css-languageserver
- wget # network
- whois # mkpasswd
- wireguard-tools # vpn
- wireplumber # audio
- xdg-desktop-portal-gtk # flatpak theming
- xdg-user-dirs # standards
- xdg-utils # standards
- xfsprogs # xfs
- yaml-language-server # code
- yt-dlp
- zram-generator # zram
tags: packages
become: true
# - dockerfile-language-server # code # AUR
# - dockfmt # AUR
# - refind-theme-nord # bootmenu # AUR
# - btrfsmaintenance # AUR
# - virter # AUR
# - konsave # AUR
- name: x86_64 | Install other packages unavailable/unnecessary on ALARM
community.general.pacman:
state: present
name: "{{ item }}"
loop:
- amd-ucode # microcode
- discord
- edk2-ovmf # virtualization
- intel-media-driver # VAAPI
- intel-ucode # microcode
- libva-intel-driver # VAAPI
- libva-mesa-driver # VAAPI
- libva-utils # VAAPI
- libvirt # virtualization
- linux # kernel
- linux-firmware # kernel
- linux-headers # kernel
- obs-studio # recording
- pandoc
- piper # mouse
- qemu-full # virtualization
- reflector # mirrors
- shellcheck # code
- virt-manager # virtualization
- vulkan-intel # video driver
- vulkan-radeon # video driver
when: ansible_architecture == "x86_64"
tags: packages
become: true
- name: x86_64 | Install multilib packages
community.general.pacman:
name: "{{ item }}"
state: present
loop:
- lib32-mesa # video driver
- lib32-vulkan-intel # video driver
- lib32-vulkan-radeon # video driver
- steam # games
- wine # windows
when: ansible_architecture == "x86_64"
tags: packages
become: true
- name: Install flatpak packages
community.general.flatpak:
name: "{{ item }}"
state: present
loop:
- https://github.com/Elleo/pied/releases/latest/download/com.mikeasoft.pied.flatpak
tags: packages
become: true
- name: Host | Install host specific packages
community.general.pacman:
state: present
name: "{{ item }}"
loop: "{{ additional_pacman_packages|default([]) }}"
when: host_file.stat.exists
become: true
tags: packages
- name: Doom Emacs | Clone
ansible.builtin.git:
repo: https://github.com/doomemacs/doomemacs
dest: "~/.config/emacs"
depth: 1
tags: doomemacs
- name: Doom Emacs | Install
ansible.builtin.shell:
cmd: "~/.config/emacs/bin/doom install --aot --force"
tags: doomemacs