Add Arch installation guide
							parent
							
								
									2f3fdb20a7
								
							
						
					
					
						commit
						b5be657aa2
					
				
					 1 changed files with 223 additions and 0 deletions
				
			
		
							
								
								
									
										223
									
								
								Arch-Linux.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										223
									
								
								Arch-Linux.md
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,223 @@ | ||||||
|  | # Arch Linux | ||||||
|  | 
 | ||||||
|  | ## Installation | ||||||
|  | 
 | ||||||
|  | Attach ArchLinux boot key. Boot. | ||||||
|  | 
 | ||||||
|  | Set the keyboard layout. | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | # loadkeys be-latin1 | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | Connect to the internet. | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | # iwctl | ||||||
|  | [iwd]# station wlan0 connect <network> | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | Escape the menu with ^D. Automatically update the time. | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | # timedatectl set-ntp true | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | Format the disk.  | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | # fdisk -l  | ||||||
|  | # fdisk /dev/sda | ||||||
|  | : g | ||||||
|  | : n, 1, _, +1G | ||||||
|  | : t, 1, 1 | ||||||
|  | : n, 2, _, +8G | ||||||
|  | : t, 2, 19 | ||||||
|  | : n, 3, _, _ | ||||||
|  | : w | ||||||
|  | 
 | ||||||
|  | # pvcreate /dev/sda3 | ||||||
|  | # vgcreate MyGroup /dev/sda3 | ||||||
|  | # lvcreate -l +100%FREE MyGroup -n MyVolume | ||||||
|  | 
 | ||||||
|  | # mkfs.ext4 /dev/MyGroup/MyVolume | ||||||
|  | # mkswap /dev/sda2 | ||||||
|  | # mkfs.fat -F 32 /dev/sda1 | ||||||
|  | 
 | ||||||
|  | # mount /dev/MyGroup/MyVolume /mnt | ||||||
|  | # mkdir /mnt/boot | ||||||
|  | # mount /dev/sda1 /mnt/boot | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | Enable swap.  | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | # swapon /dev/sda2 | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | Install the kernel. Also install keyring because keys will be needed. | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | # pacman -Sy archlinux-keyring | ||||||
|  | # pacstrap /mnt base linux linux-firmware | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | Make the mounts persistent.  | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | # genfstab -U /mnt >> /mnt/etc/fstab | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | Configure the system. | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | # arch-chroot /mnt | ||||||
|  | # ln -sf /usr/share/zoneinfo/Europe/Brussels /etc/localtime | ||||||
|  | # hwclock --systohc | ||||||
|  | # locale-gen | ||||||
|  | # echo "LANG=en_GB.UTF-8" >> /etc/locale.conf | ||||||
|  | # echo "KEYMAP=be-latin1" >> /etc/vconsole.conf | ||||||
|  | # echo "Laptop-Tibo" >> /etc/hostname | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | Enable hibernation.  | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | # lsblk | ||||||
|  | # echo "8:2" > /sys/power/resume | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | Create initial ramdisk environment.  | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | # pacman -S vim lvm2 | ||||||
|  | # vim /etc/mkinitcpio.conf | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | Change the file to match the following line:  | ||||||
|  | 
 | ||||||
|  | `HOOKS=(base udev autodetect modconf block lvm2 filesystems resume keyboard fsck)` | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | # mkinitcpio -P | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | Generate root password.  | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | # passwd | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | Configure boot manager. Also enable hibernation.  | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | # pacman -S grub efibootmgr | ||||||
|  | # grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB | ||||||
|  | # vim /etc/default/grub | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | Change the file to match the following lines:  | ||||||
|  | 
 | ||||||
|  | `GRUB_TIMEOUT=0` | ||||||
|  | 
 | ||||||
|  | `GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 quiet resume=/dev/sda2"` | ||||||
|  | 
 | ||||||
|  | `GRUB_PRELOAD_MODULES="part_gpt part_msdos lvm"` | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | # grub-mkconfig -o /boot/grub/grub.cfg | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | Add the default user (me).  | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | # useradd -m -G wheel,users,input,video tdpeuter | ||||||
|  | # passwd tdpeuter | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | Make the system automatically log into that user. | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | # sudo mkdir -p /etc/systemd/system/getty@tty1.service.d | ||||||
|  | # sudo vim /etc/systemd/system/getty@tty1.service.d/autologin.conf | ||||||
|  | ``` | ||||||
|  | Contents of the file:  | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | [Service] | ||||||
|  | ExecStart= | ||||||
|  | ExecStart=-/sbin/agetty -o '-p -f -- \\u' --noclear --autologin tdpeuter - $TERM | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | Install sudo. | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | # pacman -S sudo | ||||||
|  | # visudo | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | In the file that comes up, uncomment the following line: `%wheel ALL=(ALL:ALL) ALL` | ||||||
|  | 
 | ||||||
|  | Install a networkmanager so you have bloody internet when you reboot (otherwise rendering your device utterly useless). | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | # pacman -S networkmanager | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | Escape fakeroot with ^D. | ||||||
|  | 
 | ||||||
|  | Finally,  | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | # reboot | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | ##  Users | ||||||
|  | 
 | ||||||
|  | Set paralell downloads.  | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | $ sudo vim /etc/pacman.conf | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | Uncomment the following line.  | ||||||
|  | 
 | ||||||
|  | `ParallelDownloads = 5` | ||||||
|  | 
 | ||||||
|  | Install connection applications.  | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | $ sudo pacman -S network-manager-applet blueman | ||||||
|  | $ sudo pacman -S pulseaudio pulseaudio-alsa pulseaudio-bluetooth | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | Setup a desktop environment.  | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | $ sudo pacman -S sway swayidle waybar alacritty | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | Install yay for easy package management.  | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | $ sudo pacman -S base-devel git | ||||||
|  | $ cd /opt | ||||||
|  | $ sudo git clone https://aur.archlinux.org/yay.git | ||||||
|  | $ sudo chown -R ${username}:users ./yay | ||||||
|  | $ cd yay | ||||||
|  | $ makepkg -si | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | $ yay swaylock-effects-git | ||||||
|  | $ yay mako | ||||||
|  | $ yay wlsunset | ||||||
|  | $ yay fuzzel | ||||||
|  | $ yay firefox | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | ## Configuration | ||||||
|  | 
 | ||||||
|  | Put the [files from the repository](../src/branch/main/stow) in the appropriate places, or cherry pick the ones you want to use on your system. | ||||||
|  | 
 | ||||||
|  | If you are using `stow` you can put them in place easily with the appropriate command. | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue