Arch Linux + Hyprland :: Stargate Atlantis Edition En Ansible playbook til fuldautomatisk opsætning af en Arch Linux desktop med Hyprland, stylet med et Stargate: Atlantis tema. Playbook'en bruger en ansible-pull tilgang, hvilket betyder, at du kan køre et enkelt script på en ny-installeret Arch-maskine for at udrulle hele skrivebordsmiljøet. !http://googleusercontent.com/image_generation_content/1 Kernekomponenter Denne playbook installerer og konfigurerer følgende: Window Manager: Hyprland (en dynamisk tiling Wayland compositor) Terminal: Kitty Statuslinje: Waybar Applikations-starter: Wofi Notifikationer: Mako Firewall: UFW (med en simpel, sikker standard) Tema: Et Stargate: Atlantis-inspireret tema med specifikke farver, fonte og baggrundsbillede. Automatisering: Hele processen drives af et ansible-pull script. Trin 0: Installation af Arch Linux Basis System Dette er en forkortet guide. For en komplet og mere detaljeret vejledning, se den officielle Arch Wiki Installation Guide. 1. Forberedelse Download den seneste Arch Linux ISO fra den officielle hjemmeside. Opret et bootbart USB-drev med et værktøj som Rufus eller Etcher. 2. Start og Internetforbindelse Start computeren fra dit USB-drev. Forbind til Wi-Fi med iwctl: Bash # Start iwctl iwctl # Find din enhed (f.eks. wlan0) [iwd]# device list # Scan efter netværk [iwd]# station wlan0 scan # Se netværk [iwd]# station wlan0 get-networks # Forbind (erstat "SSID" med dit netværksnavn) [iwd]# station wlan0 connect "SSID" # Afslut iwctl [iwd]# exit # Test forbindelsen ping archlinux.org 3. Partitionering og Formatering Identificer din harddisk med lsblk. Brug fdisk /dev/sdx eller cfdisk /dev/sdx til at oprette mindst to partitioner: En EFI System Partition (ca. 512MB, type EFI System). En Root partition (resten af pladsen, type Linux root (x86-64)). Formater partitionerne: Bash # Erstat sdx1 med din EFI-partition mkfs.fat -F32 /dev/sdx1 # Erstat sdx2 med din root-partition mkfs.ext4 /dev/sdx2 Monter partitionerne: Bash mount /dev/sdx2 /mnt mkdir /mnt/boot mount /dev/sdx1 /mnt/boot 4. Kerneinstallation Installer basissystemet samt nødvendige værktøjer med pacstrap: Bash pacstrap /mnt base linux linux-firmware networkmanager sudo git 5. Systemkonfiguration Generer fstab-filen: Bash genfstab -U /mnt >> /mnt/etc/fstab Gå ind i dit nye system med arch-chroot: Bash arch-chroot /mnt Sæt tidszone (eksempel for Danmark): Bash ln -sf /usr/share/zoneinfo/Europe/Copenhagen /etc/localtime hwclock --systohc Konfigurer sprog (locale): Åbn /etc/locale.gen og fjern # foran en_US.UTF-8 UTF-8 og da_DK.UTF-8 UTF-8. Kør locale-gen. Opret locale.conf: echo "LANG=en_US.UTF-8" > /etc/locale.conf Sæt værtsnavn: echo "dit-hostname" > /etc/hostname Sæt root-adgangskode: passwd 6. Bootloader (GRUB) Bash pacman -S grub efibootmgr grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB grub-mkconfig -o /boot/grub/grub.cfg 7. Opret Bruger og Sudo Vigtigt: Denne bruger er den, din Ansible playbook vil konfigurere. Bash # Opret brugeren og tilføj til 'wheel'-gruppen useradd -m -G wheel din-bruger # Sæt adgangskode for din nye bruger passwd din-bruger # Tillad 'wheel'-gruppen at bruge sudo pacman -S sudo EDITOR=nano visudo # Find linjen `%wheel ALL=(ALL:ALL) ALL` og fjern `#` foran den. Gem og afslut. 8. Netværk Aktiver NetworkManager, så du har internet efter genstart: Bash systemctl enable NetworkManager 9. Afslut og Genstart Bash exit # Forlad chroot umount -R /mnt reboot # Husk at fjerne USB-drevet Dit basissystem er nu klar! Trin 1: Installation med Ansible Efter genstart, log ind som den bruger du lige har oprettet. Følg disse trin for at udrulle skrivebordsmiljøet. Giv dig selv root-privilegier. Bash sudo su Download installationsscriptet. Bash curl -O https://raw.githubusercontent.com/dit-brugernavn/dit-repo/main/pull.sh (Husk at erstatte med din egen repository-URL) Gør scriptet kørbart. Bash chmod +x pull.sh Opsæt Ansible Vault adgangskode. Playbook'en bruger Ansible Vault. Du skal levere adgangskoden via en environment variabel. Bash export ANSIBLE_VAULT_PASSWORD="din-hemmelige-vault-adgangskode" Kør scriptet med sudo -E. -E flaget er vigtigt for at bevare den environment variabel, du lige har sat. Bash sudo -E ./pull.sh Læn dig tilbage. Scriptet vil nu køre og installere alt. Dette kan tage 5-15 minutter. Genstart. Når scriptet er færdigt, genstart systemet. Bash reboot Log ind som din bruger, skriv Hyprland i terminalen, og dit Stargate: Atlantis skrivebord er klar! Konfiguration & Tilpasning Du kan nemt tilpasse denne opsætning til dine egne behov. Brugernavn Brugernavnet er krypteret i local.yml. For at ændre det skal du bruge ansible-vault. Først skal du dekryptere den eksisterende variabel for at se formatet eller blot oprette en ny. Krypter dit nye brugernavn med følgende kommando og erstat den krypterede streng i local.yml: Bash ansible-vault encrypt_string 'nyt-brugernavn' --name 'vault_username' Tema og indstillinger Programindstillinger: Rediger filerne i templates/-mappen (kitty.conf.j2, waybar-config.j2 osv.) for at ændre udseendet. Baggrundsbillede og fonte: Udskift filerne i files/-mappen. Installerede pakker: Tilføj eller fjern pakker fra listen i local.yml under opgaven PAKKER :: Installer alle nødvendige pakker.... Licens Dette projekt er licenseret under MIT Licensen. Se LICENSE-filen for yderligere detaljer.