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.


