My personal XMonad setup with EWW bar, Catppuccin Frappe theme, and various tools for a complete desktop environment.
- XMonad - Tiling window manager with custom keybindings and layouts
- EWW - Elkowar's Wacky Widgets for a modern, customizable bar
- Catppuccin Frappe - Beautiful pastel color scheme
- Rofi - Application launcher and dmenu replacement
- Picom - Compositor for transparency and animations
- Dunst - Notification daemon
- Wezterm - GPU-accelerated terminal emulator
- Neovim - Text editor with LazyVim configuration
dotfiles/
├── .config/
│ ├── dunst/ # Notification daemon config
│ ├── eww/ # EWW bar widgets and styles
│ │ ├── eww.yuck # Widget definitions
│ │ ├── eww.scss # Styling (Catppuccin Frappe)
│ │ ├── launch.sh # Bar launcher script
│ │ └── scripts/ # EWW helper scripts
│ ├── nvim/ # Neovim configuration (LazyVim)
│ ├── parcellite/ # Clipboard manager config
│ ├── picom/ # Compositor config
│ ├── rofi/ # Rofi launcher config
│ │ ├── config.rasi
│ │ ├── colors.rasi
│ │ ├── themes/
│ │ └── scripts/
│ └── tint2/ # Tint2 bar (alternative)
│ └── executor/ # Tint2 scripts
├── .scripts/ # Custom scripts
│ ├── screenshot-*.sh # Screenshot utilities
│ ├── change-volume.sh
│ └── change-brightness.sh
├── xmonad/ # XMonad configuration
│ ├── xmonad.hs # Main config
│ ├── gaming-mode.sh # Gaming mode toggle
│ ├── layout-*.sh # Layout scripts
│ └── icons/ # XBM icons
├── .wezterm.lua # Wezterm terminal config
└── .Xresources # X11 resources
xmonad- Window managerxmonad-contrib- XMonad extensionseww- Widget systemrofi- Launcher
picom- Compositordunst- Notificationsnitrogen- Wallpaper managerxdotool- X11 automationplayerctl- Media controls
- JetBrainsMono Nerd Font
- Material Icons
- Vanilla Caramel (optional)
wezterm- Terminalneovim- Editorparcellite- Clipboard managerpamixer- Volume controlbrightnessctl- Brightness controlflameshotorscrot- Screenshots
tint2- Alternative barplank- Dockredshift- Blue light filter
git clone https://github.com/yourusername/dotfiles.git ~/github/dotfiles
cd ~/github/dotfiles# Core packages
sudo pacman -S xmonad xmonad-contrib eww rofi picom dunst nitrogen xdotool playerctl
# Applications
sudo pacman -S wezterm neovim parcellite pamixer brightnessctl
# Fonts
sudo pacman -S ttf-jetbrains-mono-nerd ttf-material-icons-git
# Optional
sudo pacman -S tint2 plank redshift# XMonad
ln -sf ~/github/dotfiles/xmonad ~/.xmonad
# Config files
ln -sf ~/github/dotfiles/.config/eww ~/.config/eww
ln -sf ~/github/dotfiles/.config/rofi ~/.config/rofi
ln -sf ~/github/dotfiles/.config/dunst ~/.config/dunst
ln -sf ~/github/dotfiles/.config/picom ~/.config/picom
ln -sf ~/github/dotfiles/.config/nvim ~/.config/nvim
ln -sf ~/github/dotfiles/.config/parcellite ~/.config/parcellite
# Home directory files
ln -sf ~/github/dotfiles/.wezterm.lua ~/.wezterm.lua
ln -sf ~/github/dotfiles/.Xresources ~/.Xresources
# Scripts
ln -sf ~/github/dotfiles/.scripts ~/.scriptsxmonad --recompileLog out and select XMonad from your display manager, or run:
xmonad --restart| Key | Action |
|---|---|
Super + Enter |
Open terminal |
Super + P |
Rofi launcher |
Super + Shift + C |
Close window |
Super + Space |
Cycle layouts |
Super + [1-9] |
Switch workspace |
Super + Shift + [1-9] |
Move window to workspace |
Super + H/L |
Resize master |
Super + J/K |
Focus next/prev window |
Super + Shift + J/K |
Swap windows |
Super + Shift + Q |
Quit XMonad |
Super + Q |
Restart XMonad |
The bar includes:
- Left: Logo, Workspaces, Layout indicator, Clipboard, System tray
- Center: Music player (playerctl)
- Right: System info (CPU, RAM, Temp), Network, Volume, Date, Clock, Power
~/.config/eww/launch.sh start # Start the bar
~/.config/eww/launch.sh stop # Stop the bar
~/.config/eww/launch.sh reload # Reload the bar
~/.config/eww/launch.sh toggle # Toggle the barUsing Catppuccin Frappe:
| Color | Hex |
|---|---|
| Base | #303446 |
| Text | #c6d0f5 |
| Blue | #8caaee |
| Green | #a6d189 |
| Yellow | #e5c890 |
| Red | #e78284 |
| Lavender | #babbf1 |
- Catppuccin - Color scheme
- EWW - Widget system
- XMonad - Window manager
MIT License - feel free to use and modify as you wish.


