Logo

Arch Linux with Hyprland: A Beginner's Guide

Discover the power of Arch Linux and Hyprland, two popular choices for minimalist and highly customizable desktop setups. This tutorial will teach you how to install and configure both, providing you with a tailored desktop experience.

  • Arch Linux
  • Linux
  • Hyprland

Introduction

What is Hyprland?

Hyprland is a Linux distribution based on Arch Linux. It is a rolling release distribution that is focused on simplicity and minimalism. It is designed to be lightweight and fast, with a clean and simple user interface. Hyprland is designed to be easy to install and use, with a focus on providing a stable and reliable operating system that is easy to maintain and update.

Why Hyprland?

Hyprland is a great choice for users who want a simple and lightweight Linux distribution that is easy to install and use. It is designed to be fast and efficient, with a clean and simple user interface that is easy to navigate. Hyprland is a rolling release distribution, which means that it is constantly updated with the latest software and security updates. This makes it a great choice for users who want to stay up to date with the latest software and security updates.

Hyprland is also a great choice for users who want a stable and reliable operating system that is easy to maintain and update. It is designed to be easy to install and use, with a focus on providing a stable and reliable operating system that is easy to maintain and update. Hyprland is a great choice for users who want a simple and lightweight Linux distribution that is easy to install and use.

Installation

Requirements

  • A usb drive with at least 8GB of storage
  • A ISO image of Arch Linux Download
  • A computer with a 64-bit processor
  • A stable internet connection

Installation steps

First, you need to download the Arch Linux ISO image from the Arch Linux website. You can download the ISO image from the Arch Linux website by clicking on the download link on the Arch Linux website.

Then, use Ventoy to burn the ISO image to the USB drive. You can download Ventoy from ths website . Once you have downloaded Ventoy, you can craete bootable USB, then copy the ISO file to this.

Second, plug the USB drive into the computer that you want to install Arch Linux on. Then, you need to boot the computer from the USB drive. You can do this by restarting the computer and pressing the boot menu key when the computer starts up. The boot menu key is usually F12, but it can vary depending on the computer. Once you have booted the computer from the USB drive, you need to select the Arch Linux installation option from the boot menu.

Now, started to install Arch Linux on your computer. You can follow the Arch Linux installation guide to install Arch Linux on your computer.

# Increase the font size
setfont ter-120n

Check the internet connection.

ping google.com

If the internet connection is not working, you can use the following command to connect to the internet.

iwctl

# List the available device
device list

# Scan the available network
station device_name scan
station device_name get-networks

# Connect to the network
station device_name connect SSID
# Enter the password

# Check the connection
station device_name show

# Exit the iwctl and check the connection
exit
ping google.com

# if the connection is working, you can continue the next step

Set up drive partitions to install Arch Linux.

# Show the available disk
lsblk

# Choose the drive has at least 50GB of storage
# Use cfdisk to create a new partition table on the drive
cfdisk /dev/[drive_name]

Create the partitions on the drive.

  • Move the cursor to the free space and press Enter
  • Select the New option and press Enter
  • Set the size of the partition is 1G and press Enter
  • Select type to EFI System and press Enter
  • Go to the free space again and select the New option and press Enter
  • Set the size of the partition is at least 40GB and press Enter

    Note: this partition is used to home directory

  • Select write and press Enter to write the changes to the disk then quit to exit the cfdisk
# Format the partitions
mkfs.fat -F32 /dev/[drive_name] # EFI partition 1G
mkfs.ext4 /dev/[drive_name] # Home partition >= 40G

# Mount the partitions to the system
mount --mkdir /dev/[drive_name] /mnt/archinstall # Home partition (>= 40G)
mount --mkdir /dev/[drive_name] /mnt/archinstall/boot # EFI partition (1G)

Run archinstall script to start the installation. In archinstall script, you can choose the following options:

  • Disk configuration:
    • Choose Pre-mounted configuration to use the partitions that you have created
    • Enter the directory: /mnt/archinstall
  • Bootloader: Choose GRUB as the bootloader
  • Hostname: Enter the hostname for the computer
  • Root password: Enter the root password
  • User: Create your user account and remember to set user as superuser
  • Profile:
    • Choose Desktop as the profile and select Hyprland as the desktop environment
    • Choose Graphics driver and select GPU driver for your computer. In my case, I choose Nvidia driver
    • Greeter: Choose SDDM as the greeter or something you like
  • Additional packages:
    • Choose Yes to install additional packages
    • Enter the package name: pipewire-pulse grub efibootmgr os-prober neovim
    • Press enter to verify the package name
  • Network configuration: Choose Use NetworkManager to manage the network connection
  • Timezone: Choose the timezone for your location.
  • Finally, choose Install to start the installation process

If you encounter a "Failed to install packages to new root" error when running archinstall, you may need to update the Arch Linux keyring before proceeding:

pacman -S archlinux-keyring

After that, configure the system to boot into Arch Linux.

bootctl remove

# Mount the EFI partitions of Windows 11
lsblk # Check the EFI partition
mkdir /mnt/windows
mount /dev/[drive_name] /mnt/windows

# Grub installation
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=arch
grub-mkconfig -o /boot/grub/grub.cfg

Then, config grub boot menu

nvim /etc/default/grub

Uncomment the following line

/etc/default/grub
GRUB_DISABLE_OS_PROBER=false

Update the grub resolution by find and update the following line

/etc/default/grub
GRUB_GFXMODE=1920x1080x32

Optionally, you can set GRUB to remember your last boot selection:

/etc/default/grub
GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true

Finally, reboot the computer and select the Arch Linux in the boot menu to start the system.

exit
reboot

After reboot, open the terminal by press Win + Q, and start to set up dual boot with Windows 11.

sudo grub-mkconfig -o /boot/grub/grub.cfg

Now, you can reboot the computer and can see the Windows 11 in the boot menu.

Congratulation! You have successfully installed Arch Linux with Hyprland OS on your computer. Then, customize the system.

Set up

Installation

  1. Install yay
pacman -Syu --needed git base-devel
git clone https://aur.archlinux.org/yay.git ~/yay
cd ~/yay
makepkg -si
rm -rf ~/yay
  1. Install all packages
yes | yay -S --answerclean All --answerdiff None \
  hypridle hyprlock hyprpaper hyprpicker xdg-desktop-portal-hyprland-git rofi-wayland \
  noto-fonts noto-fonts-cjk noto-fonts-emoji otf-geist otf-geist-mono-nerd \
  fastfetch zsh brightnessctl nwg-look playerctl libnotify \
  github-cli lazygit lsd ripgrep unzip \
  grim slurp cliphist wl-clipboard \
  ffmpeg pipewire wireplumber \
  zen-browser-bin \
  thunar gvfs
  1. Install oh-my-zsh
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

Then, install zsh plugins

git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
  1. Optional: Install some stuffs
  • UV (Python package manager)
curl -LsSf https://astral.sh/uv/install.sh | sh
  • NVM (Node Version Manager)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.0/install.sh | bash
  1. Set up github

Open the browser and login to your github account, then run the following command to set up the SSH key for your github account.

gh auth login
  1. Uninstall unnecessary packages (optional)
sudo pacman -Runs htop nano vim wofi

Usage

  1. To apply my config, you can run the following command:
git clone git@github.com:tiesen243/dotfiles.git ~/dotfiles

Then, create the symbolic links to the config files

rm ~/.zshrc
rm -rf ~/.config/{dunst,fastfetch,hypr,kitty,lazygit,lsd,nvim,rofi,Thunar}

ln -s ~/dotfiles/{dunst,fastfetch,hypr,kitty,lazygit,lsd,nvim,rofi,Thunar} ~/.config
ln -s ~/dotfiles/zsh/themes/yuki.zsh-theme ~/.oh-my-zsh/custom/themes
ln -s ~/dotfiles/zsh/config.zsh ~/.zshrc
  1. Change Wallpaper in ~/dotfiles/hypr/hyprpaper.conf
$path = /path/to/your/wallpaper

Or change file in ~/dotfiles/assets/_background.png

  1. Add your avatar to ~/dotfiles/assets/_profile.png to show in the lock screen

If it show wrong time on Windows, you can run the following command to fix it

timedatectl set-local-rtc 1
  1. Laptop Fan Control

If you're using a laptop and want to control your fans for better thermal management or noise reduction, install nbfc and configure it to your liking.

yay -S nbfc-linux

Then run the following command to set up the fan control

  • Detect the fan on your laptop and set it.
sudo nbfc config --set auto
  • Add service to start the fan control
sudo systemctl enable nbfc_service

Then reboot the computer to apply the changes.

  • Now you can control the fan speed by using the following command
nbfc set -s [fan_speed in percentage]
nbfc set -a #auto fan speed

Installation

Conclusion

In this tutorial, you have learned how to install Arch Linux with Hyprland OS on your computer. You have also learned how to set up the system and customize it to your liking. I hope this tutorial has been helpful to you, and I wish you the best of luck with your new Arch Linux system. If you have any questions or need further assistance, please feel free to ask. Thank you for reading!

References

Document: Hyprland