My personal configuration for CachyOS, featuring the Niri window manager and DankMaterialShell. Managed with chezmoi.
To install this setup on a fresh CachyOS/Arch machine, open a terminal and run:
Replace "riacookie" with your github username.
sh -c "$(curl -fsLS get.chezmoi.io)" -- init --apply riacookieThe installation script automatically sets up the following environment:
| Category | Application | Package Name | Description |
|---|---|---|---|
| Window Manager | Niri | niri |
Infinite scrollable tiling window manager. |
| Shell UI | DankMaterialShell | dms-shell-bin |
Custom shell with Quick Settings & Bar. |
| Terminal | Alacritty | alacritty |
GPU-accelerated terminal, config via TOML. |
| Browser | Zen Browser | zen-browser-bin |
Privacy-focused, vertical-tab Firefox fork. |
| Editor | VS Code | visual-studio-code-bin |
Official Microsoft binary version. |
| Chat | Discord | discord |
Standard Discord client. |
| Music | Spotify | spotify |
Music streaming. |
| Peripherals | Solaar | solaar |
Manager for Logitech receivers/devices. |
| Maintenance | BleachBit | bleachbit |
System cleaner and space freer. |
| Fonts | JetBrains Mono | ttf-jetbrains-mono-nerd |
Patched Nerd Font for terminal icons. |
| Theme | Adwaita Dark | adw-gtk-theme |
Bridges GTK3 apps to Libadwaita style. |
This setup enforces a consistent Dark Mode across the system.
- GTK Applications: The installer automatically applies
adw-gtk3-darkand sets the color scheme toprefer-dark. This ensures legacy apps (like BleachBit or Pavucontrol) match modern Libadwaita apps (like Zen or Nautilus). - Terminal Icons:
ttf-jetbrains-mono-nerdis installed by default. If you see "squares" instead of icons in your terminal, ensure your terminal font is set to JetBrainsMono Nerd Font.
While Chezmoi handles 95% of the setup, you will need to do these things manually after the first boot:
- Logins: Log into Zen Browser (Sync), Discord, Spotify, and VS Code Sync.
- Solaar: Open Solaar to pair or configure your Logitech mouse/keyboard if they aren't detected immediately.
- DankMaterialShell: If the shell looks "default," you may need to reload it or select your preferred layout in the DMS settings menu once.
"The installer failed on a package!" If the script stops mid-way, you can resume it or install the missing package manually:
paru -S package_name
chezmoi applychezmoi edit --apply ~/.config/niri/config.kdl
chezmoi edit --apply ~/.config/niri/config.kdl# Example: After changing DMS theme
chezmoi add ~/.config/DankMaterialShellTo add a new app to the auto-installer script:
chezmoi cd- Edit
run_once_before_install_packages.sh - Add the package name to the list.
chezmoi cd
git add .
git commit -m "Updated configs"
git pushion know man, i just vibe wrote this readme because i got lazy to this point.