Pre-Installation
Windows preparation & disk setup before we dive in.
1.1 — Download the Arch ISO
- Go to the official Arch Linux website
- Download the latest ISO
- (Optional but recommended) Verify the checksum
https://archlinux.org/download/
1.2 — Create a Bootable USB
You can use Rufus (Windows) or Balena Etcher.
- Insert USB (8 GB+ recommended)
- Select the Arch ISO
- Choose DD mode
- Start flashing and wait until complete
1.3 — Prepare Disk
- Open Disk Management
- Shrink your main Windows partition
- Leave the space as Unallocated
Installing Arch Linux
Using archinstall — from first boot to a working system.
2.1 — Boot into Arch
- Reboot system
- Enter BIOS
- Select USB boot
- Choose: Arch Linux install medium
2.2 — Verify Internet Connection
If using Ethernet:
ping archlinux.org
If it works → continue.
If using Wi-Fi:
iwctl
Inside iwctl:
device list
station wlan0 scan
station wlan0 get-networks
station wlan0 connect WIFI_NAME
exit
Test connection:
ping archlinux.org
2.3 — Partition the Disk
Check available disks:
lsblk
Use cfdisk (example for NVMe):
cfdisk /dev/nvme0n1
- 1G → EFI System
- Remaining space → Linux filesystem
After creating partitions: Write changes → Quit.
Verify:
lsblk
2.4 — Format Partitions
mkfs.fat -F32 /dev/nvme0n1p1(1G)
mkfs.ext4 /dev/nvme0n1p2(Remaining Space)
Verify:
lsblk -f
2.5 — Installing via archinstall
Run the installer:
archinstall
Leave most options default except the following custom changes:
- Select the 1G EFI partition → assign mount point:
/boot - Select remaining Linux partition → assign mount point:
/
- Bootloader → GRUB
- Hostname → set if you want (optional)
- User Account → create username + set password and set user as sudo user
- Bluetooth → Yes
- Audio → PipeWire
- Network → NetworkManager (default)
- Search and install:
os-proberandvim(or any editor you prefer)
/ to search, press Tab to select. Use the
same for
Timezone — search your region using /.
2.6 — Verify & Reinstall GRUB
Inside chroot, install required packages:
sudo pacman -S efibootmgr grub mtools dosfstools
Install GRUB:
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB
Generate config:
grub-mkconfig -o /boot/grub/grub.cfg
Exit and reboot:
exit
reboot
Fixing GRUB to Show Windows
After reboot, GRUB might only show Arch Linux. Boot into Arch, log in with your created username and password. If using Wi-Fi, reconnect.
Edit GRUB config:
sudo vim /etc/default/grub
Find this line and uncomment it:
GRUB_DISABLE_OS_PROBER=false
Make sure required packages are installed:
sudo pacman -S os-prober fuse3
Regenerate GRUB:
sudo grub-mkconfig -o /boot/grub/grub.cfg
Reboot → Windows should now appear in GRUB. ✓
Setting Up Hyprland
Install Hyprland, enable the display manager, and rice it up.
3.1 — Install Required Packages
sudo pacman -S hyprland wayland wayland-protocols xorg-xwayland kitty sddm git
3.2 — Enable Display Manager
sudo systemctl enable sddm.service
Reboot:
reboot
Login via SDDM. Press Super + Q to open terminal.
3.3 — Update System
sudo pacman -Syu
sudo pacman -S --needed git base-devel
3.4 — Installing My Hyprland Rice (Zenities)
For this guide, I'm using a Hyprland rice from Zenities.
Clone the repository:
git clone https://github.com/hayyaoe/zenities
cd zenites
sh INSTALL.sh
Additionals Setup
Packages (what I use for dev setup).
4.1 — My Development Packages
Here are the packages I install for my development setup. You can run the script below to quickly install all of them at once.
neovim, thunar, libreoffice-fresh, discord,
gedit, code
sudo pacman -S --noconfirm neovim thunar libreoffice-fresh discord gedit code
brave-bin, localsend-bin, spotify, cursor-bin,
prismlauncher, antigravity
yay -S --noconfirm brave-bin localsend-bin spotify cursor-bin prismlauncher antigravity