Personal Arch Linux dotfiles for a Hyprland-based Wayland desktop.
This repository contains configuration files and installer scripts for setting up a desktop environment with Hyprland, fish, Kitty, Waybar, Dunst, Rofi, Neovim, Fcitx5 Lotus, Wallust, and other daily-use tools.
-
Hyprland desktop configuration
- Hyprland
- Hyprlock
- Hyprpaper
- Hyprpolkitagent
- UWSM environment files
-
Shell and terminal setup
- fish shell
- Starship prompt
- Kitty terminal
- fish completions, including OpenVPN 3 completions
-
Desktop utilities
- Waybar
- Dunst
- Rofi
- Nautilus
- Firefox
- Fastfetch
- btop
-
Clipboard and media tools
- wl-clipboard
- cliphist
- playerctl
-
Networking and VPN tools
- WireGuard tools
- OpenVPN 3
- cloudflared
-
Input method
- Fcitx5
- Fcitx5 Qt support
- Fcitx5 Lotus
-
Theming
- Wallust
- wallpaper/theme templates
- GTK theme templates
- Nerd fonts
This setup is designed for Arch Linux or an Arch-based distribution.
Required before installing:
bashsudogitpacman- internet connection
The installer can install paru automatically if it is missing.
Run the bootstrap script from this repository source:
curl https://dots.mux0.dev/setup.shThe bootstrap script will:
-
Ensure
gitis installed. -
Clone this repository into:
~/.dotfiles -
Pull the latest changes if
~/.dotfilesalready exists. -
Run the installer from
installers/install.
git clone https://github.com/daipham3213/dotfiles.git ~/.dotfiles
cd ~/.dotfiles
bash installers/installThe main installer expects the repository to be located at
~/.dotfiles.
The installer performs these steps:
- Installs
paruif it is not already installed. - Installs packages listed in
installers/pkgs.txt. - Copies files from
config/into~/.config/. - Enables the Ly display manager service.
- Sets up Neovim/LazyVim configuration.
- Enables the Fcitx5 Lotus input method service.
- Prompts for reboot when finished.
Packages are managed in:
installers/pkgs.txt
The file is grouped with # comments by category. Empty lines and comments are ignored by the installer.
To add a package, edit installers/pkgs.txt:
# Example category
package-name
Then rerun:
bash ~/.dotfiles/installers/installMost configuration files are stored under config/ and are copied to:
~/.config/
For example:
config/fish/ -> ~/.config/fish/
config/hypr/ -> ~/.config/hypr/
config/kitty/ -> ~/.config/kitty/
config/waybar/ -> ~/.config/waybar/
config/wallust/ -> ~/.config/wallust/
After changing files in this repository, rerun the config setup script to copy them again:
bash ~/.dotfiles/installers/setup-config- This repository is tailored for the author's personal Hyprland desktop setup.
- Review scripts before running them on your own machine.
- Some packages come from the AUR and are installed through
paru. - Some services, such as Ly and Fcitx5 Lotus, are enabled with
systemctl. - A reboot is recommended after installation.