Arch Linux Installation Notes
NOTE
These are the base notes displayed at the top of the documentation.
Only refer to them if you missed something in the earlier guide.
Avoid following these legacy notes directly.
Preparation in the ISO Environment
Set Keymap
loadkeys usList Existing Partitions
lsblkPartition Disk (Erase All)
Usegdiskto prepare the disk:gdisk /dev/nvme0n1orgdisk /dev/sda- Enter
xto open expert mode - Enter
zto delete all partitions
- Enter
Reboot System
rebootSet Keymap Again
loadkeys usList Partitions Again
lsblkCreate Partitions with cfdisk
cfdisk /dev/nvme0n1orcfdisk /dev/sda
- Partition 1: `1G`, EFI
- Partition 2: `4G`, Linux swap
- Partition 3: Remaining space, Linux filesystem - Bios Boot Partition: BIOS (1MiB)
- Swap Partition: 4GiB
- System Partition: Remaining spaceFormat Partitions
mkfs.fat -F 32 /dev/nvme0n1p*ormkfs.fat -F 32 /dev/sda*[ Only For UEFI System]mkswap /dev/nvme0n1p*ormkswap /dev/sda*swapon /dev/nvme0n1p*orswapon /dev/sda*mkfs.ext4 /dev/nvme0n1p*ormkfs.ext4 /dev/sda*
Mount Partitions
mount /dev/nvme0n1p* /mntormount /dev/sda* /mntmount --mkdir /dev/nvme0n1p* /mnt/bootormount --mkdir /dev/sda* /mnt/boot[ Only For UEFI System]mount --mkdir /dev/sda* /mnt/mediaormount --mkdir /dev/sda* /mnt/media[ IDK ]
Install Base System
pacstrap -k /mnt base base-devel linux linux-firmware sof-firmware linux-headers nano networkmanager grub efibootmgr intel-ucode bash-completionpacstrap -k /mnt base base-devel linux-zen linux-zen-headers linux-firmware sof-firmware nano networkmanager grub wget git intel-ucode bash-completionGenerate fstab
genfstab -U /mnt >> /mnt/etc/fstabChroot into New System
arch-chroot /mnt
Configuration in the New System
Enable NetworkManager
sudo systemctl enable NetworkManagerConfigure pacman [OPTIONAL]
nano /etc/pacman.conf- Enable
ILoveCandy,ParallelDownloads, andMultilib
- Enable
- Update Package Database
pacman -Syy
Set Timezone
ln -sf /usr/share/zoneinfo/Asia/Kathmandu /etc/localtime[ChangeAsia/Kathmanduto your timezone]Synchronize Hardware Clock
hwclock --systohcConfigure Locale
- Edit locale file:
nano /etc/locale.gen- Uncomment
en_US.UTF-8[Changeen_US.UTF-8to your locale]
- Uncomment
- Generate locale:
locale-gen - Set locale:
echo "LANG=en_US.UTF-8" > /etc/locale.conf[Changeen_US.UTF-8to your locale]
- Edit locale file:
Set Hostname
echo "arch" > /etc/hostnameSet Keymap
echo "KEYMAP=us" > /etc/vconsole.conf[Changeusto your keymap]Create User
useradd -m -g wheel,power,storage,video,audio -s /bin/bash yourusernameSet User Password
passwd yourusernameEdit sudoers File
EDITOR=nano visudo- Uncomment
%wheel ALL=(ALL) ALL
- Uncomment
Additional Installations
Nvidia Drivers
Install Drivers
pacman -S nvidia-dkms libglvnd nvidia-utils opencl-nvidia nvidia-settingsConfigure mkinitcpio
- Edit configuration:
nano /etc/mkinitcpio.conf- Add
nvidia nvidia_modeset nvidia_uvm nvidia_drmtoMODULES
- Add
- Edit configuration:
Update Grub Configuration
- Edit grub settings:
nano /etc/default/grub- Add
nvidia_drm.modeset=1toGRUB_CMDLINE_LINUX_DEFAULT
- Add
- Rebuild initramfs:
mkinitcpio -P
- Edit grub settings:
Reboot System
GRUB Bootloader
- Install GRUB
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=grub --removablegrub-install --target=i386-pc /dev/sdXGenerate GRUB Configuration
grub-mkconfig -o /boot/grub/grub.cfgExit Umount and Reboot
exitumount -R /mntreboot
PipeWire (Audio Server)
Install PipeWire
sudo pacman -S lib32-pipewire pipewire pipewire-alsa pipewire-audio pipewire-jack pipewire-pulse gst-plugin-pipewire wireplumber rtkitAdd User to rtkit Group
sudo usermod -a -G rtkit $USEREnable PipeWire Services
systemctl --user enable pipewire pipewire-pulse wireplumber
Installing Desktop Environments (DE)
GNOME
Install GNOME and GDM
sudo pacman -S gnome gnome-tweaks gdm gst-libavSet Keymap
sudo localectl set-keymap de-latin1Enable GDM
sudo systemctl enable gdmReboot System
reboot
i3wm
Clone Dotfiles Repo
git clone https://github.com/justus0405/i3wm-dotfiles.gitNavigate to Script Directory
cd i3wm-dotfiles/src/Make Script Executable
chmod +x install.shRun Install Script
./install.sh
DWM
Clone DWM Repo
git clone https://github.com/harilvfs/dwmInstall DWM
cd dwmsudo make clean install
Hyprland
Recommended Setup
Use one of these repositories for a seamless setup:These repositories provide a ready-to-use Hyprland environment.
