Skip to content

Revprm/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

84 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

✨ Dotfiles

My personal configuration files for a beautiful Arch Linux + Hyprland setup

OS WM License


🖥️ System Information

Component Tool
OS Arch Linux
Window Manager Hyprland
Theme Engine HyDE
Terminal Kitty
Shell Zsh
Status Bar Waybar
App Launcher Rofi
Notifications Dunst
Logout Menu Wlogout
System Monitor Btop
Fetch Tool Fastfetch
Qt Theme Kvantum
Music Player RMPC
Chat Client Vesktop (Discord)

📦 Installation

Prerequisites

Important: These dotfiles are designed to work with HyDE (Hyprland Desktop Environment). Make sure you have HyDE installed first.

Required:

Optional Dependencies:

  • Kitty (terminal emulator)
  • Rofi (application launcher)
  • Waybar (status bar)
  • Dunst (notification daemon)

Quick Install

# Clone this repository
git clone https://github.com/revprm/dotfiles.git ~/dotfiles
cd ~/dotfiles

# Make scripts executable
chmod +x scripts/*.sh

# Run the installation script (includes backup)
./scripts/install.sh

The install script will:

  1. ✅ Create a timestamped backup of your existing configs
  2. ✅ Create necessary directories
  3. ✅ Symlink all dotfiles to appropriate locations
  4. ✅ Preserve your current setup in case you need to rollback

Manual Installation

If you prefer more control over the installation process:

# 1. Backup your current configs
./scripts/backup.sh

# 2. Create symlinks
./scripts/symlink.sh

# 3. To undo changes (if needed)
./scripts/unsymlink.sh

📁 Structure

dotfiles/
├── .config/              # Application configurations
│   ├── hypr/            # Hyprland compositor settings
│   ├── hyde/            # HyDE theme engine configs
│   ├── waybar/          # Status bar configuration
│   ├── kitty/           # Terminal emulator settings
│   ├── rofi/            # Application launcher themes
│   ├── dunst/           # Notification daemon config
│   ├── zsh/             # Zsh shell configuration
│   ├── btop/            # System monitor theme
│   ├── fastfetch/       # System info fetch config
│   ├── vim/             # Vim text editor settings
│   ├── wlogout/         # Logout menu configuration
│   ├── Kvantum/         # Qt application theming
│   ├── qt5ct/           # Qt5 theme settings
│   ├── qt6ct/           # Qt6 theme settings
│   ├── gtk-3.0/         # GTK3 theme settings
│   ├── rmpc/            # Music player config
│   └── vesktop/         # Discord client settings
├── .local/              # Local user data and libraries
│   ├── lib/             # Local libraries
│   └── share/           # Shared application data
├── home/                # Home directory dotfiles
├── scripts/             # Utility scripts
│   ├── install.sh       # Main installation script
│   ├── backup.sh        # Backup existing configs
│   ├── symlink.sh       # Create symlinks
│   ├── unsymlink.sh     # Remove symlinks
│   └── services/        # System service scripts
├── docs/                # Documentation files
└── images/              # Screenshots and images

🎨 Customization

Key Configuration Locations

Component Configuration Path Description
Hyprland .config/hypr/ Window manager settings, keybinds, animations
HyDE Theme .config/hyde/ Theme selector and engine configs
Waybar .local/share/waybar/ Status bar modules and styling
Kitty .config/kitty/ Terminal colors, fonts, and behavior
Rofi .config/rofi/ Launcher themes and modi
Dunst .config/dunst/ Notification appearance and rules
Zsh .config/zsh/ Shell aliases, functions, and plugins

Quick Customization Tips

🎨 Changing Themes

Use the built-in HyDE theme selector:

# Open HyDE theme selector
hyde theme select

Or manually edit theme files in .config/hyde/

⌨️ Modifying Keybinds

Edit Hyprland keybindings in .config/hypr/hyprland.conf:

# Example: Change terminal keybind
bind = $mainMod, Return, exec, kitty
🎯 Waybar Customization

Waybar modules can be customized in .local/share/waybar/:

  • config - Module configuration
  • style.css - Visual styling
🖼️ Terminal Colors

Edit Kitty color scheme in .config/kitty/:

kitty +kitten themes

📸 Screenshots

🪟 Tiling Window Layout

tiling

🎵 Music Player (RMPC)

rmpc

💬 Discord (Vesktop)

discord

🚀 Application Launcher (Rofi)

rofi

🔒 Lock Screen

lock


🛠️ Scripts

Script Purpose
install.sh Complete installation with automatic backup
backup.sh Backup existing configurations
symlink.sh Create symlinks for dotfiles
unsymlink.sh Remove symlinks and restore
services/smart-performance.sh Performance optimization service

🐛 Troubleshooting

Symlinks not working

Ensure you're running the scripts from the dotfiles directory:

cd ~/dotfiles
./scripts/symlink.sh
Theme not applying
  1. Make sure HyDE is properly installed
  2. Reload Hyprland: hyprctl reload
  3. Check HyDE theme selector: hyde theme select
Waybar not showing

Restart Waybar:

pkill waybar && waybar &

🤝 Contributing

Feel free to:

  • 🐛 Report bugs
  • 💡 Suggest new features
  • 🔀 Submit pull requests
  • ⭐ Star this repository if you find it useful!

📜 License

This project is licensed under the MIT License - see the LICENSE file for details.

Feel free to use, modify, and share these dotfiles!


🙏 Acknowledgments

Special thanks to these amazing projects:

  • HyDE - Hyprland Desktop Environment
  • Hyprland - Dynamic tiling Wayland compositor
  • Waybar - Highly customizable status bar
  • Rofi - Window switcher and application launcher
  • Kitty - GPU-accelerated terminal emulator

Made with ❤️ by Revprm

If you found this helpful, consider giving it a ⭐!

About

My Arch + Hyprland dotfiles configuration

Resources

License

Stars

Watchers

Forks