What is it?
Personal dotfiles for Niri (Wayland compositor) on Arch Linux. GitHub Dark Default theme, minimal, TUI-first. Fish + Starship, Kitty, Fuzzel, Waybar, LazyVim, all on #58a6ff accent over #050505.
In my setup
Current daily driver. install.sh --base|--all deploys profiles (WM + shell + editor, or everything including the rice) with paru, and every alias/abbreviation is reachable from the shell via cuyy cheatsheet.
Screenshots
Desktop
Launcher


Apps





TUI

Why did I build it?
Moved my daily compositor from Hyprland to Niri, honestly just my preference for how I work and use the machine daily. This config keeps receiving updates and adjustments as I settle in.
What I learned
- Floating Windows: floating windows in niri always show on top of the tiled windows.
- Manage Gestures Configuration: hot-corner, delay-ms, max-speed, up to trigger-height/width.
- Basic Niri Command and Flag: such as
niri validate,niri msg window,niri msg layer. - Implementation Sed Commands: such
sed -i 's/transparency = .*/transparency = 0/' - Kitty Remote Control Socket: simple protocol that involves sending data to kitty in the form of JSON.
- Shellcheck: I learning about formatter and linter
.sh, really helped me. - Git Permission Conflict: yeahh, I also learned again, about insynchronization of file permission metadata (permission bit) with Git
This project currently growing, as it require some further adjustments.
Credits
Based on aadnanmt/hyprland-dotfiles refactored from Hyprland to Niri WM.
Special thanks to:
- elifouts (Dotfiles): Original menu configs.
- dln (wofi-emoji): Emoji selector.
- victordantasdev/waybar: Waybar base config.
- LazyVim: Neovim framework.
- Niri: Wayland compositor.
- GitHub Dark Default: Color palette (MIT).
- shivam-salkar/minimal-waybar-config: Waybar base config.
- Arch Linux: Foundation.