Files
hyprduma-config/README.md
T

305 lines
7.8 KiB
Markdown
Raw Normal View History

2025-11-11 09:51:57 +00:00
# HyprDuma Dotfiles
Personal Hyprland configuration focused on productivity and ergonomics.
## Features
### Enhanced Keybindings
- **[KEYBINDS.md](KEYBINDS.md)** - Complete keybindings reference
### Visual & UX
2025-11-22 00:16:21 +04:00
- Minimal gaps (10px/40px) for space efficiency
- Blur effects and transparency
2025-11-11 09:51:57 +00:00
- Smooth custom animations with bezier curves
2025-11-22 00:16:21 +04:00
- **Pywal integration** - Dynamic colors from wallpaper (optional)
2025-11-11 09:51:57 +00:00
### Input
- 3-finger gestures (horizontal: workspace, vertical: fullscreen)
- Dual keyboard layout (US/RU with `ALT + SHIFT` toggle)
- Numlock enabled by default
- Optimized touchpad scrolling
### Display Setup
- Dual monitor configuration (HDMI-A-1 flipped + eDP-1)
- Workspaces 1-4 on external monitor
2025-11-22 00:16:21 +04:00
- Workspaces 5-10 on laptop screen
2025-11-11 09:51:57 +00:00
2025-11-22 00:16:21 +04:00
---
## Complete Installation Guide
Follow these steps in order to install the complete setup from scratch.
### Step 1: Install Required Packages
2025-11-11 09:51:57 +00:00
```bash
2025-11-14 23:17:05 +04:00
# Core Hyprland components
2025-11-14 23:48:17 +04:00
sudo pacman -S hyprland hyprlock hyprshot wlogout
2025-11-14 23:17:05 +04:00
2025-11-22 00:16:21 +04:00
# Terminal emulator
2025-11-14 23:17:05 +04:00
sudo pacman -S kitty
2025-11-22 00:16:21 +04:00
# Status bar & Wallpaper manager
sudo pacman -S waybar swaybg waypaper
2025-11-14 23:17:05 +04:00
# Application launcher
sudo pacman -S wofi
2025-11-22 00:16:21 +04:00
# File manager
2025-11-14 23:17:05 +04:00
sudo pacman -S nautilus
# Audio control (PipeWire)
sudo pacman -S wireplumber pipewire-pulse
# Brightness control
sudo pacman -S brightnessctl
# Media player control
sudo pacman -S playerctl
# Cursor theme
sudo pacman -S adwaita-cursors
2025-11-22 00:16:21 +04:00
# Pywal for dynamic colors (optional but recommended)
sudo pacman -S python-pywal
# Install rust/cargo if you don't have it (needed for Caelestia)
sudo pacman -S rust
2025-11-21 22:43:00 +04:00
```
2025-11-22 00:16:21 +04:00
### Step 2: Install Optional Applications
```bash
# Applications referenced in config (adjust to your preference)
sudo pacman -S telegram-desktop spotify code
# AUR packages (requires yay or another AUR helper)
yay -S google-chrome zen-browser-bin # or your preferred browser
```
### Step 3: Install Caelestia Shell (Optional)
Caelestia is a modern shell with AI features that integrates with the pywal theming system.
2025-11-11 09:51:57 +00:00
```bash
2025-11-22 00:16:21 +04:00
# Install Caelestia via cargo
cargo install caelestia
# Start Caelestia daemon (it will auto-restart when pywal colors change)
caelestia shell -d &
```
**Note:** Caelestia runs as a background service and integrates with pywal for dynamic color theming.
### Step 4: Clone This Repository
```bash
# Clone to a temporary location
cd ~/Downloads
git clone https://github.com/yourusername/hyprduma-config.git
cd hyprduma-config
```
### Step 5: Backup Existing Configs (If Any)
```bash
# Backup existing Hyprland config
[ -d ~/.config/hypr ] && mv ~/.config/hypr ~/.config/hypr.backup
# Backup existing waybar config
[ -d ~/.config/waybar ] && mv ~/.config/waybar ~/.config/waybar.backup
# Backup existing wlogout config
[ -d ~/.config/wlogout ] && mv ~/.config/wlogout ~/.config/wlogout.backup
```
### Step 6: Install Hyprland Configuration
2025-11-21 22:43:00 +04:00
2025-11-22 00:16:21 +04:00
```bash
# Create Hypr config directory
2025-11-11 09:51:57 +00:00
mkdir -p ~/.config/hypr
2025-11-22 00:16:21 +04:00
# Copy main config
2025-11-11 09:51:57 +00:00
cp hyprland.conf ~/.config/hypr/
2025-11-22 00:16:21 +04:00
cp hyprland-colors.conf ~/.config/hypr/
# Copy wallpapers (optional, for use with waypaper)
mkdir -p ~/.config/hypr/wallpapers
cp wallpapers/* ~/.config/hypr/wallpapers/
# Create screenshots directory (used by config)
mkdir -p ~/Pictures/Screenshots
```
2025-11-11 09:51:57 +00:00
2025-11-22 00:16:21 +04:00
### Step 7: Configure Your Applications
**IMPORTANT:** Edit the config file to set your preferred applications.
```bash
# Open the config file
2025-11-11 09:51:57 +00:00
nvim ~/.config/hypr/hyprland.conf
2025-11-22 00:16:21 +04:00
# Find lines 27-34 and adjust these variables:
# $terminal = kitty # Your terminal
# $fileManager = dolphin # Your file manager
# $menu = wofi --show drun # Your app launcher
# $telegram = Telegram # Path to Telegram
# $spotify = spotify # Path to Spotify
# $vscode = code # Path to VSCode
# $browser = your-browser # Your browser command
2025-11-21 22:43:00 +04:00
```
2025-11-22 00:16:21 +04:00
### Step 8: Install Pywal Integration (Optional but Recommended)
Pywal provides dynamic color theming based on your wallpaper.
```bash
# Install pywal templates
mkdir -p ~/.config/wal/templates
cp -r wal/templates/* ~/.config/wal/templates/
# Copy the color application and wallpaper sync scripts
cp apply-pywal-colors.sh ~/.config/hypr/
cp sync-caelestia-wallpaper.sh ~/.config/hypr/
chmod +x ~/.config/hypr/apply-pywal-colors.sh
chmod +x ~/.config/hypr/sync-caelestia-wallpaper.sh
# Test pywal with a wallpaper
wal -i /path/to/your/wallpaper.png
# Apply colors to Hyprland and Caelestia
~/.config/hypr/apply-pywal-colors.sh
```
**What this does:**
- Generates a color scheme from your wallpaper
- Applies colors to Hyprland window borders
- Applies colors to Caelestia shell (if installed)
- Restarts necessary services to apply changes
### Step 9: Install Waybar Config (If You Have It)
```bash
# If you have waybar configs in this repo
mkdir -p ~/.config/waybar
cp -r waybar/* ~/.config/waybar/
```
### Step 10: Install Wlogout Config (If You Have It)
```bash
# If you have wlogout configs in this repo
mkdir -p ~/.config/wlogout
cp -r wlogout/* ~/.config/wlogout/
```
### Step 11: Start Hyprland
```bash
# If you're in a TTY, start Hyprland
Hyprland
# If already in Hyprland, reload the config
# Press SUPER + SHIFT + R (or restart Hyprland session)
```
### Step 12: Set Up Autostart for Caelestia (Optional)
If you want Caelestia to start automatically with Hyprland:
```bash
# Edit your Hyprland config
nvim ~/.config/hypr/hyprland.conf
# Add this line in the Autostart section (around line 21-25):
# exec-once = caelestia shell -d
```
---
## Post-Installation
### Setting Wallpaper with Pywal
```bash
# Generate colors and apply them
wal -i /path/to/wallpaper.png && ~/.config/hypr/apply-pywal-colors.sh
# Or use the wallpapers included in this repo
wal -i ~/.config/hypr/wallpapers/sakura.jpg && ~/.config/hypr/apply-pywal-colors.sh
```
**Note about waypaper and Caelestia:**
- This config uses **swaybg** as the wallpaper backend (not hyprpaper)
- Use `waypaper` GUI (Super+W) to select wallpapers
- Waypaper with swaybg backend automatically saves and restores your wallpaper on login
- **Important**: Caelestia shell has its own wallpaper management that may conflict with waypaper
- The config includes `sync-caelestia-wallpaper.sh` to automatically sync Caelestia's wallpaper reference with swaybg
- This sync happens automatically on startup and when you open waypaper (Super+W)
- For pywal integration, use `wal -i` as shown above, then run the apply script (which also syncs Caelestia)
### Monitor Configuration
If you have different monitors, adjust lines 4-18 in `~/.config/hypr/hyprland.conf`:
```bash
nvim ~/.config/hypr/hyprland.conf
# Edit monitor configuration:
# monitor = eDP-1, 1920x1080@144, 1920x0, 1
# monitor = HDMI-A-1, 1920x1080@144, 0x0, 1, transform, 2
```
### Keyboard Layout
Default is US/RU with ALT+SHIFT toggle. To change, edit `~/.config/hypr/hyprland.conf` line 42:
```
kb_layout = us, ru # Change to your layouts
```
---
2025-11-21 22:43:00 +04:00
## Documentation
- **[KEYBINDS.md](KEYBINDS.md)** - Complete keybindings reference
2025-11-22 00:16:21 +04:00
- **[PYWAL-SETUP.md](PYWAL-SETUP.md)** - Detailed pywal integration guide
---
## Troubleshooting
### Hyprland won't start
- Check if all required packages are installed
- Review error logs: `journalctl -b | grep hyprland`
### Applications don't launch
- Make sure you edited the app variables in `hyprland.conf` (lines 27-34)
- Check if the applications are actually installed
### Pywal colors not applying
- Ensure the script is executable: `chmod +x ~/.config/hypr/apply-pywal-colors.sh`
- Check if pywal cache exists: `ls ~/.cache/wal/`
- Manually reload: `~/.config/hypr/apply-pywal-colors.sh`
### Caelestia colors not updating
```bash
# Restart Caelestia daemon
pkill caelestia && sleep 0.5 && caelestia shell -d &
```
### Wallpaper not showing on startup
```bash
# Restore wallpaper with waypaper
waypaper restore
# Manually restart swaybg if needed
pkill swaybg && swaybg &
```
---
2025-11-21 22:43:00 +04:00
2025-11-11 09:51:57 +00:00
## Note
2025-11-22 00:16:21 +04:00
Everything is still in progress. Feel free to customize and adjust to your needs!