feat(ansible): added modules for a more customizable installation instead of just minimal and full

gaming, coding and multimedia (i still had to do the last)
This commit is contained in:
Sergio Laín 2023-11-20 00:36:57 +01:00
parent ab0e19456f
commit 23c129bf01
No known key found for this signature in database
GPG key ID: 14C9B8080681777B
6 changed files with 299 additions and 12 deletions

View file

@ -1,7 +1,6 @@
# PACMAN # PACMAN
- name: Install Pacman Packages - name: Install Pacman Packages
pacman: pacman:
update_cache: yes
name: name:
# Base / Core # Base / Core
- amd-ucode - amd-ucode

View file

@ -4,14 +4,6 @@
gather_facts: false gather_facts: false
vars_prompt: vars_prompt:
- name: install_choise
prompt: "What type of install do you want?"
choices:
- "minimal"
- "full"
default: "minimal"
private: no
- name: gpu_driver_choice - name: gpu_driver_choice
prompt: "What drivers do you want for your gpu?" prompt: "What drivers do you want for your gpu?"
choices: choices:
@ -20,11 +12,46 @@
- "Intel" - "Intel"
private: no private: no
- name: enable_coding_module
prompt: "Do you want to install the coding packages?"
type: list
choices:
- "Yes"
- "No"
private: no
- name: enable_gaming_module
prompt: "Do you want to install the gaming packages?"
type: list
choices:
- "Yes"
- "No"
private: no
- name: enable_multimedia_module
prompt: "Do you want to install the multimedia packages?"
type: list
choices:
- "Yes"
- "No"
private: no
block: block:
- name: Install packages for the system - name: Install base packages for the system
include_tasks: "{{ install_choice }}.yml" include_tasks: base.yml
when: install_choice is defined
- name: Install GPU drivers - name: Install GPU drivers
include_tasks: "drivers/{{ gpu_driver_choice | lower }}.yml" include_tasks: "drivers/{{ gpu_driver_choice | lower }}.yml"
when: gpu_driver_choice is defined when: gpu_driver_choice is defined
- name: Install coding packages
include_tasks: "modules/coding.yml"
when: enable_coding_module == "Yes"
- name: Install gaming packages
include_tasks: "modules/gaming.yml"
when: enable_gaming_module == "Yes"
- name: Install multimedia packages
include_tasks: "modules/multimedia.yml"
when: enable_multimedia_module == "Yes"

View file

@ -0,0 +1,50 @@
# PACMAN
- name: Install Pacman Packages
pacman:
name:
- dbeaver
- diff-so-fancy
- fzf
- lazygit
- neovide
- neovim
- npm
- bob
- onefetch
- ripgrep
- ripgrep-all
- sd
- yarn
- rustup
- python-pip
- python-pipx
- git
- github-cli
- luarocks
- nodejs
# AUR
- name: Install AUR Packages
become: true
become_user: aur_builder
aur:
use: yay
name:
- lazynpm
- scc-bin
- tgpt-bin
- visual-studio-code-bin
# Cargo
- name: Install Rust Packages
cargo:
name:
- cargo-update
# Npm
- name: Install Npm Packages
npm:
name:
- commitizen
- cz-git
global: true

View file

@ -0,0 +1,41 @@
# PACMAN
- name: Install Pacman Packages
pacman:
name:
# Launchers
- steam
# Emulators
- retroarch
# Tools
- gamemode
# AUR
- name: Install AUR Packages
become: true
become_user: aur_builder
aur:
use: yay
name:
# Launchers
- heroic-games-launcher
- atlauncher-bin
# Emulators
- dolphin-emu
- cemu-bin
- duckstation-git
- gzdoom
- rpcs3-bin
- ryujinx-bin
- pcsx2-latest-bin
- xemu-bin
# Tools
- proton-ge-custom-bin
- vkbasalt
- ludusavi
# Others
- adwsteamgtk

View file

@ -0,0 +1,170 @@
# PACMAN
- name: Install Pacman Packages
pacman:
name:
# Base / Core
- amd-ucode
- intel-ucode
- android-file-transfer
- android-tools
- baobab
- bat
- blender
- bluez
- blueman
- btop
- celluloid
- clamtk
- dbeaver
- diff-so-fancy
- discord
- dua-cli
- eza
- easyeffects
- fd
- fzf
- galculator
- gamemode
- geeqie
- gnome-disk-utility
- gst-plugins-base
- hyprland
- kitty
- kvantum
- lazygit
- libreoffice-still
- lsp-plugins
- lxappearance
- mesa
- mpv
- navi
- nemo
- nemo-fileroller
- nemo-image-converter
- neofetch
- neovide
- neovim
- npm
- nm-connection-editor
- nvtop
- obsidian
- onefetch
- pavucontrol
- pinta
- polkit-gnome
- ripgrep
- ripgrep-all
- scrcpy
- sd
- swappy
- swaydile
- thunderbird
- ufw
- waybar
- wine
- wl-clipboard
- yt-dlp
- yarn
- xplr
- zathura
- zathura-pdf-mupdf
# AUR
- name: Create the `aur_builder` user
become: true
ansible.builtin.user:
name: aur_builder
create_home: yes
group: wheel
- name: Allow the `aur_builder` user to run `sudo pacman` without a password
become: true
ansible.builtin.lineinfile:
path: /etc/sudoers.d/11-install-aur_builder
line: "aur_builder ALL=(ALL) NOPASSWD: /usr/bin/pacman"
create: yes
validate: "visudo -cf %s"
- name: Install AUR Packages
become: true
become_user: aur_builder
aur:
use: yay
name:
- amf-amdgpu-pro
- activitywatch-bin
- adwsteamgtk
- android-sdk-platform-tools
- ani-cli
- arronax
- betterdiscord-installer-bin
- brave-bin
- catppuccin-gtk-macchiato
- cava
- cemu-bin
- devify
- downgrade
- find-the-command
- heroic-games-launcher
- hyprpicker-git
- hyprshot
- lazynpm
- librewolf-bin
- ludusavi
- mangal-bin
- nerd-fonts-git
- nwg-displays
- nwg-look
- obs-studio-amf
- paccache-hook
- pika-backup
- pinterest-downloader-git
- pipes.sh
- prettierd
- proton-ge-custom-bin
- pyprland
- spotdl
- reflector-pacman-hook-git
- rofi-lboon-wayland-git
- rofi-file-browser-extended-git
- scc-bin
- sddm-git
- shell-color-scripts
- spicetify-cli
- spotify
- swaylock-effects
- swaync
- swayosd-git
- swww
- sysz
- tgpt-bin
- ttf-ms-win11-auto
- tty-clock-git
- unimatrix-git
- upscayl-bin
- vkbasalt
- vulkan-amdgpu-pro
- wev
- wl-clip-persist-git
- wleave-git
- wlr-randr
- wlrobs-hg
- xdg-desktop-portal-hyprland-git
- youtube-dl
- ytdlp-gui
- zarchive-git
# Cargo
- name: Install Rust Packages
cargo:
name:
- cargo-update
# Npm
- name: Install Npm Packages
npm:
name:
- commitizen
- cz-git
global: true