Skip to content

chihyanglee/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

46 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dotfiles

Arch Linux desktop configuration for Hyprland (Wayland), managed with GNU Stow.

Stack

Component Role
Hyprland (UWSM) Wayland compositor via systemd session
EWW Top bar — workspaces, clock, system info, input method
Kitty GPU-accelerated terminal
tmux + zsh Multiplexer + shell (Powerlevel10k prompt)
Yazi TUI file manager (used for wallpaper picker)
Fuzzel App launcher
Mako Notification daemon
fcitx5 Input method (Rime for Chinese, Mozc for Japanese)
awww + Matugen Wallpaper setter + Material You color generation
mise Dev tool version manager
fastfetch System info display
eza Modern ls with icons and git status
bat cat with syntax highlighting
ripgrep Fast recursive search
delta Git diff viewer with syntax highlighting
dust Disk usage visualizer
duf Disk free viewer
btop System monitor
procs Process viewer

Layout

Each top-level directory is a stow package that mirrors $HOME:

dotfiles/
├── awww/.config/awww/          wallpaper manager + picker script
├── eww/.config/eww/            bar (yuck + scss + scripts)
├── fuzzel/.config/fuzzel/      app launcher
├── hypr/.config/hypr/          compositor (modular sub-configs)
│   ├── autostart.conf
│   ├── env.conf
│   ├── keybinds.conf
│   ├── rules.conf
│   ├── animations.conf
│   ├── monitors.conf
│   └── theme.conf              ← generated by matugen
├── kitty/.config/kitty/        terminal emulator
├── mako/.config/mako/          notifications
├── matugen/.config/matugen/    color generation templates
├── gtk-3.0/.config/gtk-3.0/    GTK 3 settings
├── gtk-4.0/.config/gtk-4.0/    GTK 4 settings
├── mise/.config/mise/          dev tool versions
├── scripts/.local/bin/         user scripts (dark mode, tmux-launch, etc.)
├── tmux/.config/tmux/          terminal multiplexer
├── fastfetch/.config/fastfetch/ system info (config + logos/)
├── vim/.vim/vimrc              editor
├── yazi/.config/yazi/          file manager
└── zsh/
    ├── .config/zsh/            shell (.zshrc, aliases, plugins, keybinds, p10k)
    └── .zshrc                  stub that sets ZDOTDIR

Theme Pipeline

Changing a wallpaper regenerates the entire color scheme across all apps:

wallpaper → awww (display) → matugen (extract colors) → template files → app reloads

Templates live in matugen/.config/matugen/templates/. Generated files (theme.conf, colors.scss, colors.ini, generated.conf) are gitignored — never edit them directly.

Switch Wallpaper

Drop images into ~/Pictures/Wallpapers/, then pick one of:

  • Keyboard: Super + Shift + W — opens a floating Kitty with the fuzzel picker
  • Picker script: ~/.config/awww/scripts/pick-wallpaper.sh
  • Direct: ~/.config/awww/scripts/wallpaper.sh /absolute/path/to/image.jpg

Either path runs awww imgmatugen image -m darkhyprctl reload, reloads Kitty (pkill -USR1 kitty), and restarts EWW.

Setup

1. Install packages

# Core
sudo pacman -S hyprland uwsm xdg-desktop-portal-hyprland kitty tmux zsh fuzzel mako stow

# Bar and theming (AUR)
yay -S eww awww matugen

# Audio (PipeWire + WirePlumber)
sudo pacman -S pipewire wireplumber pipewire-pulse

# Bluetooth
sudo pacman -S bluez bluez-utils
sudo systemctl enable --now bluetooth

# Tools
sudo pacman -S yazi fzf zoxide jq grim slurp wl-copy brightnessctl networkmanager mpv glow

# CLI replacements
sudo pacman -S eza bat ripgrep git-delta dust duf btop procs fastfetch

# Input method
sudo pacman -S fcitx5 fcitx5-configtool fcitx5-gtk fcitx5-qt fcitx5-rime fcitx5-mozc

# Font
sudo pacman -S ttf-firacode-nerd

# Dev
sudo pacman -S mise

2. Stow configs

git clone <repo-url> ~/dotfiles
cd ~/dotfiles
./setup.sh

Or stow individual packages:

stow hypr kitty zsh eww  # etc.

3. Zsh plugins (outside the repo)

mkdir -p ~/.local/share/zsh
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ~/.local/share/zsh/powerlevel10k
git clone --depth=1 https://github.com/zsh-users/zsh-autosuggestions ~/.local/share/zsh/zsh-autosuggestions
git clone --depth=1 https://github.com/zsh-users/zsh-syntax-highlighting ~/.local/share/zsh/zsh-syntax-highlighting

4. First run

mkdir -p ~/Pictures/Wallpapers
touch ~/.config/hypr/theme.conf
set-dark-mode
fcitx5-configtool   # add Rime and Mozc to input method list

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages