
This guide is part of the MusaBase Hyprland series. For a full comparison of all five setups, see the Best Hyprland Dotfiles for Linux: Compared and Tested.
The Linux desktop is currently undergoing its most significant shift in decades as Wayland takes the throne from X11. At the forefront of this revolution is Hyprland, a dynamic tiling window manager that proves you don't have to sacrifice eye-candy for performance. Building your environment from scratch on Arch Linux is the best way to understand the true power of this modern compositor.
Hi all, welcome to MusaBase! In this guide, I will walk you through the process of installing Hyprland on Arch Linux to take your desktop experience to the next level. While setting up a dynamic tiling window manager can be challenging, this tutorial simplifies everything. By the end of this guide, we will have achieved:
- Installation of core dependencies on an Arch Linux system
- Configuration of essential Hyprland and Wayland packages
- Hassle-free deployment of ML4W dotfiles using a single command
- A fully functional, aesthetically pleasing Hyprland desktop environment
We will be using the popular ML4W dotfiles repository to automate the setup and ensure a professional look. Without further ado, let's get started.
Let's do this!
⚡ TL;DR: Install ML4W Dotfiles on Hyprland (Arch Linux)
A quick reference for the essential commands to install the ML4W (My Linux for Work) dotfiles on a minimal Arch Linux system, from core packages and yay to enabling SDDM and running the automated installer.
-
Install core dependencies and yay:
sudo pacman -Syu kitty firefox kate hyprland sddm curl wget gitcd ~ git clone https://aur.archlinux.org/yay.git cd yay makepkg -si -
Enable SDDM and log into Hyprland:
sudo systemctl enable --now sddmAt the login screen, enter your password. Once inside Hyprland, press SUPER + Q to open kitty.
-
(Optional) Fix slow/failed downloads with a DNS change:
sudo nano /etc/resolv.confAdd
nameserver 8.8.8.8ornameserver 1.1.1.1, then save and exit. -
Install ML4W dotfiles using the official installer:
bash <(curl -s https://ml4w.com/os/stable)Wait for the process to complete (10–15 minutes), then reboot:
sudo reboot
💡 After the reboot you will have a fully configured ML4W Hyprland desktop. If you encounter any issues, refer to the detailed steps in the guide above. The old one‑line curl method (bash <(curl -s https://raw.githubusercontent.com/...)) is deprecated and replaced by the ml4w.com script shown here.
Prerequisites
Before you begin the installation of ML4W Hyprland, make sure you have the following essentials in place:
- A base Arch Linux system: This guide does not cover Arch Linux installation itself. If you haven't installed Arch yet, follow my Arch Linux UEFI installation or Arch Linux with Btrfs Filesystem Snapshot Ready guide. Installing without a desktop environment is highly recommended for a clean setup.
- The yay AUR helper: Since most packages for ML4W Hyprland come from the AUR, yay is essential. I've covered yay installation in my complete daily-driver guide.
Note: You don't need to follow the entire daily-driver article, just complete the "Install AUR helper yay" step, then return here to proceed with the ML4W Hyprland installation.
What is Hyprland?
Hyprland is a dynamic tiling Wayland compositor and window manager for Linux, known for its smooth animations, customizable features, and clean codebase. It's written in C++ and focuses on providing a visually appealing and efficient way to manage windows and desktops.
Step 1: Installing Required Dependencies & Packages
In this step, we need to install packages like git, wget, curl and nano etc. And also we are going to install yay. The direct link of ML4W dotfile will install yay and all other required dependencies for it to work but covering these hurdles beforehand will make the installation even more smoother.
1.1: Install Essential Packages
- Run the following command:
sudo pacman -Syu kitty firefox kate hyprland sddm curl wget git
Step 2: Configuring Services
Next, we need to enable and configure services for display, network and Hyprland.
2.1: Enable the SDDM Display Manager
- First we need to enable and start SDDM, so we can log into Hyprland.
- Run the following command:
sudo systemctl enable --now sddm
3.2: Login into Your Hyprland
At the login screen, enter your user's password and press Enter. After a few seconds, you will see the Hyprland desktop:
- Close any welcome dialog, then press SUPER + Q or Meta + Q or WindowsKey + Q to open kitty terminal emulator.
Step 4: Install the ML4W (My Linux for Work) Dotfiles
- Now that everything is set up, let's install the ML4W Dotfiles.
- In the kitty terminal, run this command:
bash <(curl -s https://raw.githubusercontent.com/mylinuxforwork/dotfiles/main/setup-arch.sh)
Important Update: ML4W has changed its installation method. The old one-line curl script is no longer used. Now, you need to clone the official ml4w-dotfiles-installer repository and install it globally using make install. After that, you can run the installer directly from your system.
- The command for this dotfiles has been updated, use the following command:
bash <(curl -s https://ml4w.com/os/stable) - This will clone the ML4W repository and execute the installation script to set up its dotfiles.
- This process can take 10-15 minutes, depending on your internet connection and CPU speed.
- After the installation is finish, simply reboot your system with sudo reboot command.
- For a visual of the installation prompts, refer to my video below:
Couldn't resolve host during Installation
If during installation you get the following error:
🔍 This does not mean the package is missing or that there is a problem with the AUR. In most cases, it is caused by one of the following:
- Network or Firewall Restrictions: Your local firewall, ISP, or proxy may be blocking outbound connections on certain ports.
- Mirror Issues: The selected package mirror may be slow, temporarily down, or undergoing maintenance.
- DNS Problems: Your configured nameserver may be failing to resolve the mirror's IP address.
✅ Quick fix: run these commands:
sudo echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf
sudo pacman -Syyu
This should be treated as a temporary fix.
🎉 Congratulations! Your Arch Linux system with ML4W Hyprland dotfiles is now up and running!
Now that you have a fully configured ML4W environment, you can begin personalizing your workspace. To adjust keybindings for your terminal, browser, or file manager, simply edit the ~/.config/hypr/hyprland.conf file. Remember to reload your configuration by pressing SUPER + Shift + R or by running hyprctl reload in your terminal.
Stay tuned for more customization walkthroughs. If this guide helped you, feel free to subscribe to the newsletter.
101 out, I’ll see you in the next one! 🚀