X

mydot

Information

# Hyprland Dotfiles Configuration A comprehensive Hyprland desktop environment configuration featuring a modern, customizable Wayland compositor setup with carefully crafted theming and productivity-focused workflows. ## Overview This repository contains my personal dotfiles for a complete Hyprland-based desktop environment. The configuration emphasizes performance, aesthetics, and workflow efficiency with a focus on keyboard-driven interaction patterns. ## Screenshots ![Wallpaper](./images/wall.png) ![Terminal](./images/term.png) ## Features - **️ Hyprland**: Modern Wayland compositor with advanced window management - ** Catppuccin Theme**: Consistent Macchiato colorscheme across all applications - ** Performance Optimized**: Efficient animations and resource usage - **⌨️ Keyboard-Centric**: Comprehensive keybinding system with vim-like navigation - ** Media Integration**: MPV background videos and MPRIS media controls - ** Modular Configuration**: Well-organized, easily customizable setup - ** Multi-Monitor Support**: Intelligent workspace distribution across displays - ** Security**: Integrated screen locking with biometric support ## Core Components ### Window Manager & Desktop - **Hyprland**: Main compositor with custom animations and layouts - **Waybar**: Feature-rich status bar with system monitoring - **Rofi**: Application launcher and system interaction - **Hyprpaper**: Wallpaper daemon - **Hypridle/Hyprlock**: Idle management and screen locking ### Applications & Tools - **Kitty**: GPU-accelerated terminal emulator - **Neovim**: Advanced text editor with LazyVim configuration - **Yazi**: Modern file manager with vim-like navigation - **Fish**: User-friendly shell with custom functions - **Tmux**: Terminal multiplexer for session management ### System Integration - **Dunst**: Notification daemon - **ClipHist**: Clipboard manager with Wayland support - **Brightness/Audio Controls**: Integrated system controls - **Power Management**: Automatic suspend and power profile switching ## Prerequisites ### System Requirements - **Operating System**: Arch Linux (or Arch-based distribution) - **GPU**: Modern GPU with OpenGL support (NVIDIA users see special notes) - **Display Server**: Wayland support required ### Core Dependencies #### Hyprland Ecosystem \`\`\`bash # Main compositor and tools hyprland # Wayland compositor hyprpaper # Wallpaper daemon hypridle # Idle daemon hyprlock # Screen locker hyprshot # Screenshot utility \`\`\` #### Essential System Components \`\`\`bash # Window management and desktop waybar # Status bar rofi # Application launcher dunst # Notification daemon kitty # Terminal emulator # Audio and media pipewire # Audio server pipewire-pulse # PulseAudio compatibility pavucontrol # Audio control GUI playerctl # Media player control swayosd # On-screen display for volume/brightness # System utilities brightnessctl # Backlight control cliphist # Clipboard manager wl-clipboard # Wayland clipboard utilities polkit-gnome # Authentication agent \`\`\` #### Application Suite \`\`\`bash # File management and productivity thunar # File manager yazi # Terminal file manager tmux # Terminal multiplexer # Networking and connectivity fcitx5 # Input method framework google-chrome # Web browser (or browser of choice) # Development tools neovim # Text editor fish # Shell \`\`\` #### Fonts and Theming \`\`\`bash # Essential fonts ttf-jetbrains-mono-nerd # Main UI font ttf-hack-nerd # Alternative nerd font papirus-icon-theme # Icon theme # Theme components catppuccin-gtk-theme # GTK theme (AUR) \`\`\` ### Optional Dependencies \`\`\`bash # Media and entertainment mpv # Video player (for background videos) sunshine # Game streaming (commented in config) # Development utilities ydotool # Programmatic input (for mouse control submap) \`\`\` ### NVIDIA Users For NVIDIA GPU users, additional configuration is required: 1. Install NVIDIA drivers: \`\`\`bash nvidia nvidia-utils nvidia-settings \`\`\` 2. Set environment variables in \`/etc/environment\`: \`\`\`bash LIBVA_DRIVER_NAME=nvidia __GL_VRR_ALLOWED=0 __GLX_VENDOR_LIBRARY_NAME=nvidia \`\`\` 3. Enable DRM kernel mode setting in \`/etc/default/grub\`: \`\`\`bash GRUB_CMDLINE_LINUX_DEFAULT="... nvidia-drm.modeset=1" \`\`\` ## Installation ### 1. Install Dependencies \`\`\`bash # Install from official repositories sudo pacman -S hyprland waybar rofi dunst kitty pipewire pipewire-pulse \ pavucontrol playerctl brightnessctl wl-clipboard polkit-gnome \ thunar tmux neovim fish ttf-jetbrains-mono-nerd papirus-icon-theme # Install AUR packages (using yay or paru) yay -S hyprpaper hypridle hyprlock hyprshot cliphist swayosd catppuccin-gtk-theme-macchiato \`\`\` ### 2. Clone and Deploy Configuration \`\`\`bash # Clone the repository git clone ~/.config/mydotfiles cd ~/.config/mydotfiles # Create symbolic links (adjust paths as needed) ln -sf ~/.config/mydotfiles/hypr ~/.config/ ln -sf ~/.config/mydotfiles/waybar ~/.config/ ln -sf ~/.config/mydotfiles/rofi ~/.config/ ln -sf ~/.config/mydotfiles/kitty ~/.config/ ln -sf ~/.config/mydotfiles/nvim ~/.config/ ln -sf ~/.config/mydotfiles/yazi ~/.config/ ln -sf ~/.config/mydotfiles/fish ~/.config/ ln -sf ~/.config/mydotfiles/tmux ~/.config/ \`\`\` ### 3. Configure System Services \`\`\`bash # Enable required user services systemctl --user enable pipewire pipewire-pulse systemctl --user start pipewire pipewire-pulse # Configure fish as default shell (optional) chsh -s /usr/bin/fish \`\`\` ### 4. Set Up Wallpapers \`\`\`bash # Create wallpaper directory mkdir -p ~/Wallpapers # Add your wallpapers and update hyprpaper.conf paths accordingly \`\`\` ## Configuration Structure \`\`\` hypr/ ├── hyprland.conf # Main Hyprland configuration ├── windowrule.conf # Window rules and behavior ├── macchiato.conf # Catppuccin color definitions ├── hyprpaper.conf # Wallpaper configuration ├── hypridle.conf # Idle management ├── hyprlock.conf # Lock screen configuration └── scripts/ # Helper scripts waybar/ ├── config # Waybar configuration ├── style.css # Waybar styling └── script/ # Custom waybar modules rofi/ ├── config.rasi # Rofi configuration └── */ # Custom rofi scripts and themes \`\`\` ## Key Features & Keybindings ### Core Navigation - \`Super + Return\`: Open terminal (Kitty) - \`Super + B\`: Launch browser (Chrome) - \`Super + E\`: File manager (Thunar) - \`Super + W\`: Toggle Waybar ### Window Management - \`Super + hjkl\`: Focus windows (vim-style) - \`Super + Shift + hjkl\`: Move windows - \`Super + Ctrl + hjkl\`: Resize windows - \`Super + F\`: Fullscreen toggle - \`Super + Space\`: Toggle floating mode ### Application Launcher - \`Super + Shift + P\`: Application launcher (Rofi) - \`Super + Shift + R\`: Run command - \`Super + Shift + O\`: File browser - \`Super + V\`: Clipboard history ### Workspaces - \`Super + 1-9\`: Switch to workspace - \`Super + Shift + 1-9\`: Move window to workspace - \`Super + Tab/Shift+Tab\`: Cycle workspaces - \`Super + N\`: Move to special workspace ### System Controls - \`Super + Ctrl + Q\`: Lock screen - Volume/Brightness keys: Hardware key support - \`Super + Shift + S\`: Screenshot region - \`Print\`: Screenshot current output ### Advanced Features - \`Super + S\`: Mouse control mode (keyboard mouse navigation) - \`Super + Backspace\`: Show keybindings help - \`Alt + Tab\`: Window cycling with thumbnails ## Customization ### Themes The configuration uses Catppuccin Macchiato theme. To change themes: 1. Update \`hypr/macchiato.conf\` with new color definitions 2. Modify \`waybar/style.css\` for status bar colors 3. Adjust \`rofi\` themes accordingly ### Monitors Update monitor configuration in \`hypr/hyprland.conf\`: \`\`\`bash monitor=DP-3,1920x1080@60,auto,1 workspace=1,default:true,monitor:eDP-1 \`\`\` ### Wallpapers Configure wallpapers in \`hypr/hyprpaper.conf\`: \`\`\`bash preload = ~/Wallpapers/your-wallpaper.jpg wallpaper = ,~/Wallpapers/your-wallpaper.jpg \`\`\` ## Troubleshooting ### Common Issues 1. **Black screen on startup**: Check GPU drivers and Hyprland installation 2. **No audio**: Ensure PipeWire services are running 3. **Applications not launching**: Verify all dependencies are installed 4. **NVIDIA issues**: Follow NVIDIA-specific setup steps above ### Logs and Debugging \`\`\`bash # Check Hyprland logs journalctl --user -u hyprland # Check Waybar logs journalctl --user -u waybar # Test Hyprland configuration hyprctl reload \`\`\` ## Contributing Feel free to submit issues, feature requests, or pull requests. When contributing: 1. Test changes thoroughly 2. Update documentation as needed 3. Follow existing code style and organization 4. Consider backward compatibility ## License This configuration is available under the MIT License. See individual component licenses for their respective terms. ## Acknowledgments - [Hyprland](https://hyprland.org/) - The amazing Wayland compositor - [Catppuccin](https://catppuccin.com/) - Beautiful pastel theme - [LazyVim](https://lazyvim.github.io/) - Neovim configuration framework - The open-source community for countless tools and inspiration

Prompts

Reviews

Tags

Write Your Review

Detailed Ratings

ALL
Correctness
Helpfulness
Interesting
Upload Pictures and Videos

Name
Size
Type
Download
Last Modified
  • Community

Add Discussion

Upload Pictures and Videos