Update README.md
This commit is contained in:
85
README.md
85
README.md
@@ -1,13 +1,9 @@
|
|||||||
Arch Linux + Hyprland :: Stargate Atlantis Edition
|
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.
|
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.
|
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
|
!http://googleusercontent.com/image_generation_content/1
|
||||||
|
|
||||||
Kernekomponenter
|
Kernekomponenter
|
||||||
Denne playbook installerer og konfigurerer følgende:
|
Denne playbook installerer og konfigurerer følgende:
|
||||||
|
|
||||||
Window Manager: Hyprland (en dynamisk tiling Wayland compositor)
|
Window Manager: Hyprland (en dynamisk tiling Wayland compositor)
|
||||||
Terminal: Kitty
|
Terminal: Kitty
|
||||||
Statuslinje: Waybar
|
Statuslinje: Waybar
|
||||||
@@ -18,7 +14,6 @@ Tema: Et Stargate: Atlantis-inspireret tema med specifikke farver, fonte og bagg
|
|||||||
Automatisering: Hele processen drives af et ansible-pull script.
|
Automatisering: Hele processen drives af et ansible-pull script.
|
||||||
Trin 0: Installation af Arch Linux Basis System
|
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.
|
Dette er en forkortet guide. For en komplet og mere detaljeret vejledning, se den officielle Arch Wiki Installation Guide.
|
||||||
|
|
||||||
1. Forberedelse
|
1. Forberedelse
|
||||||
Download den seneste Arch Linux ISO fra den officielle hjemmeside.
|
Download den seneste Arch Linux ISO fra den officielle hjemmeside.
|
||||||
Opret et bootbart USB-drev med et værktøj som Rufus eller Etcher.
|
Opret et bootbart USB-drev med et værktøj som Rufus eller Etcher.
|
||||||
@@ -26,7 +21,6 @@ Opret et bootbart USB-drev med et værktøj som Rufus eller Etcher.
|
|||||||
Start computeren fra dit USB-drev.
|
Start computeren fra dit USB-drev.
|
||||||
Forbind til Wi-Fi med iwctl:
|
Forbind til Wi-Fi med iwctl:
|
||||||
Bash
|
Bash
|
||||||
|
|
||||||
# Start iwctl
|
# Start iwctl
|
||||||
iwctl
|
iwctl
|
||||||
# Find din enhed (f.eks. wlan0)
|
# Find din enhed (f.eks. wlan0)
|
||||||
@@ -41,6 +35,8 @@ iwctl
|
|||||||
[iwd]# exit
|
[iwd]# exit
|
||||||
# Test forbindelsen
|
# Test forbindelsen
|
||||||
ping archlinux.org
|
ping archlinux.org
|
||||||
|
|
||||||
|
|
||||||
3. Partitionering og Formatering
|
3. Partitionering og Formatering
|
||||||
Identificer din harddisk med lsblk.
|
Identificer din harddisk med lsblk.
|
||||||
Brug fdisk /dev/sdx eller cfdisk /dev/sdx til at oprette mindst to partitioner:
|
Brug fdisk /dev/sdx eller cfdisk /dev/sdx til at oprette mindst to partitioner:
|
||||||
@@ -48,36 +44,42 @@ En EFI System Partition (ca. 512MB, type EFI System).
|
|||||||
En Root partition (resten af pladsen, type Linux root (x86-64)).
|
En Root partition (resten af pladsen, type Linux root (x86-64)).
|
||||||
Formater partitionerne:
|
Formater partitionerne:
|
||||||
Bash
|
Bash
|
||||||
|
|
||||||
# Erstat sdx1 med din EFI-partition
|
# Erstat sdx1 med din EFI-partition
|
||||||
mkfs.fat -F32 /dev/sdx1
|
mkfs.fat -F32 /dev/sdx1
|
||||||
# Erstat sdx2 med din root-partition
|
# Erstat sdx2 med din root-partition
|
||||||
mkfs.ext4 /dev/sdx2
|
mkfs.ext4 /dev/sdx2
|
||||||
|
|
||||||
|
|
||||||
Monter partitionerne:
|
Monter partitionerne:
|
||||||
Bash
|
Bash
|
||||||
|
|
||||||
mount /dev/sdx2 /mnt
|
mount /dev/sdx2 /mnt
|
||||||
mkdir /mnt/boot
|
mkdir /mnt/boot
|
||||||
mount /dev/sdx1 /mnt/boot
|
mount /dev/sdx1 /mnt/boot
|
||||||
|
|
||||||
|
|
||||||
4. Kerneinstallation
|
4. Kerneinstallation
|
||||||
Installer basissystemet samt nødvendige værktøjer med pacstrap:
|
Installer basissystemet samt nødvendige værktøjer med pacstrap:
|
||||||
Bash
|
Bash
|
||||||
|
|
||||||
pacstrap /mnt base linux linux-firmware networkmanager sudo git
|
pacstrap /mnt base linux linux-firmware networkmanager sudo git
|
||||||
|
|
||||||
|
|
||||||
5. Systemkonfiguration
|
5. Systemkonfiguration
|
||||||
Generer fstab-filen:
|
Generer fstab-filen:
|
||||||
Bash
|
Bash
|
||||||
|
|
||||||
genfstab -U /mnt >> /mnt/etc/fstab
|
genfstab -U /mnt >> /mnt/etc/fstab
|
||||||
|
|
||||||
|
|
||||||
Gå ind i dit nye system med arch-chroot:
|
Gå ind i dit nye system med arch-chroot:
|
||||||
Bash
|
Bash
|
||||||
|
|
||||||
arch-chroot /mnt
|
arch-chroot /mnt
|
||||||
|
|
||||||
|
|
||||||
Sæt tidszone (eksempel for Danmark):
|
Sæt tidszone (eksempel for Danmark):
|
||||||
Bash
|
Bash
|
||||||
|
|
||||||
ln -sf /usr/share/zoneinfo/Europe/Copenhagen /etc/localtime
|
ln -sf /usr/share/zoneinfo/Europe/Copenhagen /etc/localtime
|
||||||
hwclock --systohc
|
hwclock --systohc
|
||||||
|
|
||||||
|
|
||||||
Konfigurer sprog (locale):
|
Konfigurer sprog (locale):
|
||||||
Åbn /etc/locale.gen og fjern # foran en_US.UTF-8 UTF-8 og da_DK.UTF-8 UTF-8.
|
Åbn /etc/locale.gen og fjern # foran en_US.UTF-8 UTF-8 og da_DK.UTF-8 UTF-8.
|
||||||
Kør locale-gen.
|
Kør locale-gen.
|
||||||
@@ -85,17 +87,18 @@ Opret locale.conf: echo "LANG=en_US.UTF-8" > /etc/locale.conf
|
|||||||
Sæt værtsnavn: echo "dit-hostname" > /etc/hostname
|
Sæt værtsnavn: echo "dit-hostname" > /etc/hostname
|
||||||
Sæt root-adgangskode: passwd
|
Sæt root-adgangskode: passwd
|
||||||
6. Bootloader (GRUB)
|
6. Bootloader (GRUB)
|
||||||
|
|
||||||
Bash
|
Bash
|
||||||
|
|
||||||
|
|
||||||
pacman -S grub efibootmgr
|
pacman -S grub efibootmgr
|
||||||
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB
|
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB
|
||||||
grub-mkconfig -o /boot/grub/grub.cfg
|
grub-mkconfig -o /boot/grub/grub.cfg
|
||||||
|
|
||||||
|
|
||||||
7. Opret Bruger og Sudo
|
7. Opret Bruger og Sudo
|
||||||
Vigtigt: Denne bruger er den, din Ansible playbook vil konfigurere.
|
Vigtigt: Denne bruger er den, din Ansible playbook vil konfigurere.
|
||||||
<!-- end list -->
|
|
||||||
|
|
||||||
Bash
|
Bash
|
||||||
|
|
||||||
# Opret brugeren og tilføj til 'wheel'-gruppen
|
# Opret brugeren og tilføj til 'wheel'-gruppen
|
||||||
useradd -m -G wheel din-bruger
|
useradd -m -G wheel din-bruger
|
||||||
# Sæt adgangskode for din nye bruger
|
# Sæt adgangskode for din nye bruger
|
||||||
@@ -104,68 +107,76 @@ passwd din-bruger
|
|||||||
pacman -S sudo
|
pacman -S sudo
|
||||||
EDITOR=nano visudo
|
EDITOR=nano visudo
|
||||||
# Find linjen `%wheel ALL=(ALL:ALL) ALL` og fjern `#` foran den. Gem og afslut.
|
# Find linjen `%wheel ALL=(ALL:ALL) ALL` og fjern `#` foran den. Gem og afslut.
|
||||||
|
|
||||||
|
|
||||||
8. Netværk
|
8. Netværk
|
||||||
Aktiver NetworkManager, så du har internet efter genstart:
|
Aktiver NetworkManager, så du har internet efter genstart:
|
||||||
Bash
|
Bash
|
||||||
|
|
||||||
systemctl enable NetworkManager
|
systemctl enable NetworkManager
|
||||||
|
|
||||||
|
|
||||||
9. Afslut og Genstart
|
9. Afslut og Genstart
|
||||||
|
|
||||||
Bash
|
Bash
|
||||||
|
|
||||||
|
|
||||||
exit # Forlad chroot
|
exit # Forlad chroot
|
||||||
umount -R /mnt
|
umount -R /mnt
|
||||||
reboot # Husk at fjerne USB-drevet
|
reboot # Husk at fjerne USB-drevet
|
||||||
Dit basissystem er nu klar!
|
|
||||||
|
|
||||||
|
|
||||||
|
Dit basissystem er nu klar!
|
||||||
Trin 1: Installation med Ansible
|
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.
|
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.
|
Giv dig selv root-privilegier.
|
||||||
|
|
||||||
Bash
|
Bash
|
||||||
|
|
||||||
sudo su
|
sudo su
|
||||||
|
|
||||||
|
|
||||||
Download installationsscriptet.
|
Download installationsscriptet.
|
||||||
|
|
||||||
Bash
|
Bash
|
||||||
|
|
||||||
curl -O https://raw.githubusercontent.com/dit-brugernavn/dit-repo/main/pull.sh
|
curl -O https://raw.githubusercontent.com/dit-brugernavn/dit-repo/main/pull.sh
|
||||||
|
|
||||||
(Husk at erstatte med din egen repository-URL)
|
(Husk at erstatte med din egen repository-URL)
|
||||||
|
|
||||||
Gør scriptet kørbart.
|
Gør scriptet kørbart.
|
||||||
|
|
||||||
Bash
|
Bash
|
||||||
|
|
||||||
chmod +x pull.sh
|
chmod +x pull.sh
|
||||||
Opsæt Ansible Vault adgangskode.
|
|
||||||
Playbook'en bruger Ansible Vault. Du skal levere adgangskoden via terminalen.
|
|
||||||
|
|
||||||
sudo ./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.
|
|
||||||
|
|
||||||
|
Kør scriptet.
|
||||||
Bash
|
Bash
|
||||||
|
sudo ./pull.sh
|
||||||
|
|
||||||
|
|
||||||
|
Indtast Vault Adgangskode.
|
||||||
|
Under kørslen vil scriptet stoppe op og bede dig om din Ansible Vault adgangskode. Indtast den i terminalen for at fortsætte.
|
||||||
|
Vault password:
|
||||||
|
|
||||||
|
|
||||||
|
Læn dig tilbage.
|
||||||
|
Efter du har indtastet adgangskoden, vil scriptet køre færdigt og installere alt. Dette kan tage 5-15 minutter.
|
||||||
|
Genstart.
|
||||||
|
Når scriptet melder, at det er færdigt, genstart systemet.
|
||||||
|
Bash
|
||||||
reboot
|
reboot
|
||||||
Log ind som din bruger, skriv Hyprland i terminalen, og dit Stargate: Atlantis skrivebord er klar!
|
|
||||||
|
|
||||||
|
|
||||||
|
Log ind som din bruger, skriv Hyprland i terminalen, og dit Stargate: Atlantis skrivebord er nu klar!
|
||||||
Konfiguration & Tilpasning
|
Konfiguration & Tilpasning
|
||||||
Du kan nemt tilpasse denne opsætning til dine egne behov.
|
Du kan nemt tilpasse denne opsætning til dine egne behov.
|
||||||
|
|
||||||
Brugernavn
|
Brugernavn
|
||||||
Brugernavnet er krypteret i local.yml. For at ændre det skal du bruge ansible-vault.
|
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.
|
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:
|
Krypter dit nye brugernavn med følgende kommando og erstat den krypterede streng i local.yml:
|
||||||
Bash
|
Bash
|
||||||
|
|
||||||
ansible-vault encrypt_string 'nyt-brugernavn' --name 'vault_username'
|
ansible-vault encrypt_string 'nyt-brugernavn' --name 'vault_username'
|
||||||
|
|
||||||
|
|
||||||
Tema og indstillinger
|
Tema og indstillinger
|
||||||
Programindstillinger: Rediger filerne i templates/-mappen (kitty.conf.j2, waybar-config.j2 osv.) for at ændre udseendet.
|
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.
|
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....
|
Installerede pakker: Tilføj eller fjern pakker fra listen i local.yml under opgaven PAKKER :: Installer alle nødvendige pakker....
|
||||||
Licens
|
Licens
|
||||||
Dette projekt er licenseret under MIT Licensen. Se LICENSE-filen for yderligere detaljer.
|
Dette projekt er licenseret under MIT Licensen. Se LICENSE-filen for yderligere detaljer.
|
||||||
|
Sources
|
||||||
|
1. https://orcuslc.github.io/dev/2018/09/14/Install-Arch-Linux/
|
||||||
|
|||||||
Reference in New Issue
Block a user