Files
Workstation_Arch_Hyprland/local.yml
Mikkel Harboe Arp Henriksen c5724890b4 rettet en stave fejl
2025-06-14 16:05:56 +02:00

154 lines
5.0 KiB
YAML

---
- name: "Konfigurer Stargate: Atlantis Hyprland Desktop"
hosts: localhost
connection: local
become: true # De fleste opgaver kræver root
# Definer variabler for at gøre playbook'en genbrugelig
vars:
vault_username: !vault |
$ANSIBLE_VAULT;1.1;AES256
65333337373432643531656532653939343663656364613964346637663862636464323236633636
3065653162376666666666643061636162353835353034660a656134643363383663386335613338
61646633303331663761323630346363316238643036373539346630333966656637643039613965
6565313362393234380a396461636661356362633534323366633164623831623135633631383334
3062
username: "{{ vault_username }}" # ERSTAT med det brugernavn du oprettede i Arch-installationen.
# Hvis du ikke har brug for at kryptere dit brugernavn kan du skrive det direkte i her.
aur_helper: "yay" # Vi bruger yay til AUR pakker
tasks:
- name: "SYSTEM :: Opdater systemet"
community.general.pacman:
update_cache: true
upgrade: true
- name: "SYSTEM :: Installer AUR helper ({{ aur_helper }})"
block:
- name: "Installer base-devel og git"
community.general.pacman:
name:
- base-devel
- git
state: present
- name: "Klon, byg og installer {{ aur_helper }}"
become: true
become_user: "{{ username }}"
ansible.builtin.shell: |
cd /tmp
git clone https://aur.archlinux.org/{{ aur_helper }}.git
cd {{ aur_helper }}
makepkg -si --noconfirm
args:
creates: "/usr/bin/{{ aur_helper }}"
- name: "PAKKER :: Installer alle nødvendige pakker fra Pacman og AUR"
kewlfft.aur:
use: "{{ aur_helper }}"
name:
# Hyprland og Wayland
- hyprland
- xdg-desktop-portal-hyprland
- kitty # Terminal
- waybar # Statuslinje
- wofi # App starter
- mako # Notifikationer
- swaybg # Baggrund
- polkit-kde-agent
- qt5-wayland
- qt6-wayland
# Skrifttyper & Tema
- ttf-font-awesome
- ttf-jetbrains-mono-nerd
- noto-fonts
# Værktøjer
- grim # Screenshot værktøj
- slurp # Område-vælger til screenshots
- network-manager-applet # Til Waybar tray
- ufw # Firewall
state: present
- name: "BRUGER :: Opret konfigurationsmapper"
become: true
become_user: "{{ username }}"
ansible.builtin.file:
path: "{{ ansible_user_dir }}/.config/{{ item }}"
state: directory
mode: '0755'
loop:
- hypr
- kitty
- waybar
- mako
- wofi
- name: "DOTFILES :: Kopier skabeloner til brugerens .config"
become: true
become_user: "{{ username }}"
ansible.builtin.template:
src: "templates/{{ item.src }}"
dest: "{{ ansible_user_dir }}/.config/{{ item.dest }}"
mode: '0644'
loop:
- { src: 'hyprland.conf.j2', dest: 'hypr/hyprland.conf' }
- { src: 'kitty.conf.j2', dest: 'kitty/kitty.conf' }
- { src: 'waybar-config.j2', dest: 'waybar/config' }
- { src: 'waybar-style.css.j2', dest: 'waybar/style.css' }
- name: "TEMA :: Installer Atlantis skrifttype"
ansible.builtin.copy:
src: "files/fonts/"
dest: "/home/{{ username }}/.local/share/fonts/"
mode: '0644'
notify: Opdater font cache
- name: "TEMA :: Kopier Atlantis baggrundsbillede"
become: true
become_user: "{{ username }}"
ansible.builtin.copy:
src: "files/wallpapers/atlantis-wallpaper.jpg"
dest: "{{ ansible_user_dir }}/Pictures/atlantis-wallpaper.jpg"
mode: '0644'
- name: "FIREWALL :: Konfigurer UFW's standardpolitikker"
tags: firewall
block:
- name: "Sæt standard for indgående trafik til 'deny'"
community.general.ufw:
policy: deny
direction: incoming
- name: "Sæt standard for udgående trafik til 'allow'"
community.general.ufw:
policy: allow
direction: outgoing
# Hvis du har brug for ssh så tilføj følgende regel og tilføj OpenSSH til installations listen
# - name: "FIREWALL :: Tillad SSH-forbindelser (vigtigt for fjernadgang)"
# community.general.ufw:
# rule: allow
# name: OpenSSH # Bruger UFW's applikationsprofil for SSH
# tags: firewall
- name: "FIREWALL :: Aktiver og start UFW service"
community.general.ufw:
state: enabled # Dette aktiverer firewallen, så den starter ved boot
tags: firewall
- name: "SERVICES :: Aktiver NetworkManager"
ansible.builtin.systemd:
name: NetworkManager
enabled: true
state: started
# Handlers køres kun hvis en opgave 'notifierer' dem
handlers:
- name: Opdater font cache
ansible.builtin.command: fc-cache -fv
become: true
become_user: "{{ username }}"
changed_when: false