====== Wireless Network Setup ====== iwctl device list iwctl station wlan0 scan iwctl station wlan0 get-networks iwctl --passphrase station wlan0 connect ====== Base ====== gdisk cryptsetup luksFormat /dev/ mkfs.ext4 /dev/ cryptsetup open /dev/ mkfs.ext4 /dev/mapper/ mount /dev/mapper/ /mnt mkdir /mnt/boot mount /dev/ /mnt/boot mkdir /mnt/efi mount /dev/ /mnt/efi pacstrap -K /mnt base linux linux-firmware vim genfstab -U /mnt >> /mnt/etc/fstab arch-chroot /mnt ln -sf /usr/share/zoneinfo/America/Detroit /etc/localtime vim /etc/locale.gen # uncomment en_US entries locale-gen vim /etc/hostname vim /etc/mkinitcpio.conf # add encrypt hook between block and filesystems Reference https://wiki.archlinux.org/title/Dm-crypt/Encrypting_an_entire_system#Configuring_mkinitcpio mkinitcpio -P passwd ====== GRUB ====== pacman -S grub efibootmgr grub-install --efi-directory=/efi --bootloader-id=GRUB vim /etc/default/grub # Add cryptdevice=UUID=: Reference https://wiki.archlinux.org/title/Dm-crypt/Encrypting_an_entire_system#Configuring_the_boot_loader To boot Windows, add to ''/etc/grub.d/40_custom'': menuentry 'Windows' { insmod part_gpt insmod chain search --no-floppy --fs-uuid --set=root ABCD-EFGH chainloader /EFI/Microsoft/Boot/bootmgfw.efi } To chain to another Linux partition: menuentry 'Arch Secure' { insmod part_gpt search --no-floppy --fs-uuid --set=root configfile ($root)/grub/grub.cfg } grub-mkconfig -o /boot/grub/grub.cfg ====== Desktop Environment ====== pacman -S xorg-server xorg-apps sddm sddm-kcm plasma-desktop plasma-x11-session dolphin okular \ xfce4-terminal firefox vlc kscreen systemctl enable sddm.service ====== Audio ====== pacman -S alsa-utils pulseaudio pulseaudio-alsa kmix ====== Network ====== ===== Dynamic - Option 1 ===== pacman -S dhcpcd systemctl enable dhcpcd.service ===== Dynamic - Option 2 (good for wireless) ===== pacman -S iwd networkmanager plasma-nm systemctl enable NetworkManager.service ===== Static ===== Create ''/etc/systemd/network/20-wired.network '': [Match] Name=enp8s0 [Network] Address=192.168.16.68/24 Gateway=192.168.16.1 DNS=192.168.16.10 ====== User ====== pacman -S sudo useradd -m josh passwd josh visudo # enable wheel line vim /etc/group # wheel, games ====== SSH ====== pacman -S openssh x11-ssh-askpass ====== Printing ====== pacman -S cups print-manager system-config-printer systemctl enable cups.service ====== Misc ====== pacman -S which man man-pages rsync kwalletmanager base-devel less ===== Setting GTK application theme ===== pacman -S kde-gtk-config adw-gtk-theme ====== NFS ====== pacman -S nfs-utils In ''/etc/fstab'': server:/path /path nfs _netdev,noauto,x-systemd.automount,x-systemd.mount-timeout=10,rsize=8192,wsize=8192,timeo=14,intr 0 0 ====== Reboot ====== exit umount -R /mnt reboot ====== After reboot, as user ====== ===== ssh-agent setup ===== systemctl --user enable ssh-agent.service Put in profile: export SSH_AUTH_SOCK="$XDG_RUNTIME_DIR/ssh-agent.socket" Reference https://wiki.archlinux.org/title/SSH_keys#Start_ssh-agent_with_systemd_user