My personal dotfiles managed with chezmoi.
- OS: CachyOS (Arch Linux-based)
- Shell: zsh with zinit plugin manager
- Prompt: starship
- Window Manager: Niri (Wayland compositor)
- Terminal: kitty + tmux
- Terminal File Manager: yazi
- File Manager: Nautilus (GNOME Files)
- App Launcher: vicinae
- Notifications: mako
- Editor: Neovim + VSCodium
- Browser: Zen
- Theme: Tokyo Night
- zsh with zinit plugin manager
- Plugins: zsh-syntax-highlighting, zsh-completions, zsh-autosuggestions, fzf-tab, zsh-history-substring-search
- starship prompt with minimal configuration
- zoxide for smarter cd
- fzf integration
- tmux for terminal multiplexing
- Wayland compositor with dynamic tiling
- Custom keybindings (vim-like navigation)
- Screenshot functionality
- Floating window rules for apps like Nautilus, Calculator, OBS, etc.
- Lua-based configuration
- Language-specific ftplugin configurations
- Autocommands for enhanced UX
- picom - compositor for transparency/blur
- dunst - notification daemon
- swaylock - screen locker
- wlogout - logout menu
- wofi - app launcher
- rofi - alternative app launcher
-
Install chezmoi:
sh -c "$(curl -fsSL https://get.chezmoi.io)" -
Initialize my dotfiles:
chezmoi init --source https://github.com/0xElsharawy/dotfiles
-
Apply the dotfiles:
chezmoi apply
- CachyOS or Arch Linux-based distribution
- Wayland session (for Niri)
- The following packages should be installed:
- zsh, zinit, starship, zoxide, fzf
- kitty, tmux
- niri, mako, swaylock
- neovim, codium (VSCodium)
- yazi, nautilus
- vicinae or another app launcher
- JetBrains Mono Nerd Font (or another Nerd Font)
| Key | Action |
|---|---|
Mod+Return |
Open terminal (kitty) |
Mod+M |
Open app launcher (vicinae) |
Mod+X |
Lock screen (swaylock) |
Mod+P |
Open powermenu (wlogout) |
Mod+Y |
Open clipboard manager |
Mod+O |
Toggle overview |
Mod+Shift+B |
Change wallpaper |
Mod+Q |
Close window |
Mod+H/J/K/L |
Focus window (vim-like) |
Mod+Ctrl+H/J/K/L |
Move window |
Mod+1-9 |
Switch to workspace |
Mod+Shift+1-9 |
Move window to workspace |
Mod+R |
Switch column width preset |
Mod+F |
Maximize column |
Mod+V |
Toggle floating |
| Key | Action |
|---|---|
Ctrl+p |
History search backward |
Ctrl+n |
History search forward |
Tab |
Completion menu |
.
βββ dot_zshrc # zsh configuration
βββ dot_gitconfig # git configuration
βββ private_dot_config/
β βββ niri/config.kdl # Niri window manager
β βββ starship.toml # Starship prompt
β βββ tmux/tmux.conf # tmux configuration
β βββ nvim/ # Neovim configuration
β βββ kitty/ # kitty terminal
β βββ alacritty/ # alacritty terminal
β βββ yazi/ # yazi file manager
β βββ mako/ # notification daemon
β βββ dunst/ # notification daemon
β βββ picom/ # compositor
β βββ swaylock/ # screen locker
β βββ wlogout/ # logout menu
β βββ waybar/ # status bar
β βββ polybar/ # status bar
β βββ rofi/ # app launcher
β βββ wofi/ # app launcher
β βββ ohmyposh/ # prompt (deprecated, now using starship)
β βββ zathura/ # PDF viewer
β βββ shell/ # shell scripts
β βββ scripts/ # custom scripts
β βββ VSCodium/ # VSCodium settings
βββ assets/ # images for README