{"id":50490129,"url":"https://github.com/caioax/lyne-dots","last_synced_at":"2026-06-18T19:00:40.153Z","repository":{"id":332422269,"uuid":"1126840070","full_name":"caioax/lyne-dots","owner":"caioax","description":"Full Arch Linux desktop setup featuring Hyprland and custom Quickshell components","archived":false,"fork":false,"pushed_at":"2026-04-23T12:17:25.000Z","size":55464,"stargazers_count":94,"open_issues_count":0,"forks_count":3,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-23T14:25:44.797Z","etag":null,"topics":["archlinux","archlinux-dotfiles","dotfiles","hyprland","hyprland-rice","linux","quickshell","rice","wayland"],"latest_commit_sha":null,"homepage":"","language":"QML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/caioax.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-01-02T17:10:10.000Z","updated_at":"2026-04-23T12:17:30.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/caioax/lyne-dots","commit_stats":null,"previous_names":["caioax/.arch-dots","caioax/lyne-shell","caioax/lyne-dots"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/caioax/lyne-dots","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caioax%2Flyne-dots","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caioax%2Flyne-dots/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caioax%2Flyne-dots/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caioax%2Flyne-dots/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/caioax","download_url":"https://codeload.github.com/caioax/lyne-dots/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caioax%2Flyne-dots/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34503511,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-18T02:00:06.871Z","response_time":128,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["archlinux","archlinux-dotfiles","dotfiles","hyprland","hyprland-rice","linux","quickshell","rice","wayland"],"created_at":"2026-06-02T02:00:28.058Z","updated_at":"2026-06-18T19:00:40.147Z","avatar_url":"https://github.com/caioax.png","language":"QML","funding_links":[],"categories":["🐧 Arch Linux"],"sub_categories":["Hyprland"],"readme":"# 📦 Lyne Dots\n\n\u003e Arch Linux dotfiles managed with [GNU Stow](https://www.gnu.org/software/stow/), featuring a Hyprland (Wayland) desktop environment with a custom QuickShell bar and a unified theme system that applies across the entire setup.\n\n---\n\n## 📸 Screenshots\n\n### Tokyo Night\n\n![Tokyo Night](./.data/assets/tokyonight.png)\n\n### Catppuccin Mocha\n\n![Catppuccin Mocha](./.data/assets/catppuccin-mocha.png)\n\n### Dracula\n\n![Dracula](./.data/assets/dracula.png)\n\n### Gruvbox Dark\n\n![Gruvbox Dark](./.data/assets/gruvbox-dark.png)\n\n### Nord\n\n![Nord](./.data/assets/nord.png)\n\n### Rose Pine\n\n![Rose Pine](./.data/assets/rosepine.png)\n\n## ✨ Features\n\n- 🪟 **Hyprland** - Tiling Wayland compositor with modular configuration\n- 🖥️ **QuickShell** - Custom QML-based status bar, launcher, notifications, quick settings, and power menu\n- 🎨 **Dynamic Theming** - 11 themes (6 dark + 5 light variants) applied live across the entire system, plus a **Material You** auto mode that generates colors from your wallpaper\n- 🖼️ **Wallpaper Picker** - Built-in wallpaper manager with search, favorites, and per-theme wallpaper folders\n- 📸 **Screenshot Tool** - Multi-monitor region/fullscreen capture with annotation overlay\n- ✏️ **Neovim** - Lua-based configuration with LSP, Telescope, Smart Splits, and lazy.nvim\n- 📟 **Tmux** - Terminal multiplexer with seamless Neovim navigation (Smart Splits)\n- 🐱 **Kitty** - GPU-accelerated terminal with dynamic theme switching\n- ⚡ **Zsh** - Oh-My-Zsh with autosuggestions, syntax highlighting, vi-mode, and Powerlevel10k\n- 🔧 **Lyne CLI** - Built-in command-line tool for managing the dotfiles\n\n### 🎨 Theme System\n\nSwitching themes from the Quick Settings panel or CLI applies colors instantly to:\n\n| Component                                 | What changes                                |\n| ----------------------------------------- | ------------------------------------------- |\n| QuickShell (bar, launcher, notifications) | All UI colors                               |\n| Kitty                                     | Terminal colors, cursor, tabs, borders      |\n| Neovim                                    | Colorscheme (sent to all running instances) |\n| Hyprland                                  | Active/inactive border colors, shadow       |\n| GTK / Qt                                  | Application theme colors                    |\n| Wallpaper                                 | Theme-linked wallpaper applied via awww     |\n\nNo restarts required.\n\n**Available presets:**\n\n| Dark             | Light            |\n| ---------------- | ---------------- |\n| Tokyo Night      | Tokyo Night Day  |\n| Catppuccin Mocha | Catppuccin Latte |\n| Dracula          | —                |\n| Gruvbox Dark     | Gruvbox Light    |\n| Nord             | Nord Light       |\n| Rose Pine        | Rose Pine Dawn   |\n\n**Material You mode** generates a color palette from your current wallpaper using [matugen](https://github.com/InioX/matugen), supporting both dark and light schemes. Enable it from Quick Settings or with `lyne theme auto`.\n\n---\n\n## 📦 Installation\n\n### Requirements\n\n- Arch Linux\n- Git\n- Internet connection\n\n### Steps\n\n```bash\ngit clone https://github.com/caioax/lyne-dots.git ~/.lyne-dots\ncd ~/.lyne-dots\n./install.sh\n```\n\nThe installer is interactive and lets you pick which package categories to install. After finishing, it will prompt you to reboot.\n\n| Category     | Packages                           |\n| ------------ | ---------------------------------- |\n| `core`       | Hyprland, UWSM, portal             |\n| `terminal`   | Kitty, Zsh, Tmux, Fastfetch        |\n| `editor`     | Neovim + development tools         |\n| `apps`       | Dolphin, Zen Browser, Spotify, mpv |\n| `utils`      | Clipboard, playerctl, audio, etc   |\n| `fonts`      | Nerd Fonts, cursors, icons         |\n| `quickshell` | QuickShell bar/shell               |\n| `theming`    | Qt/GTK theming                     |\n| `nvidia`     | NVIDIA drivers (only if needed)    |\n\n### Advanced Options\n\n```bash\n./install.sh --stow-only       # Only create symlinks\n./install.sh --setup-only      # Only run Hyprland setup\n./install.sh --packages core   # Install a single category\n```\n\nSee [.install/README.md](.install/README.md) for more details.\n\n---\n\n## 🔧 Lyne CLI\n\nLyne Dots includes a built-in CLI tool called `lyne` for managing the dotfiles. It is loaded automatically via `.zshrc`.\n\n### Usage\n\n```\nlyne \u003ccommand\u003e [args...]\n```\n\n### Commands\n\n| Command   | Description                                         |\n| --------- | --------------------------------------------------- |\n| `theme`   | Manage themes (set, list, auto, scheme)             |\n| `state`   | Manage `state.json` (edit, sync, rebuild)           |\n| `migrate` | Manage migrations (run, list, done)                 |\n| `update`  | Pull latest changes, sync state, and run migrations |\n| `git`     | Run git commands in the dotfiles repo               |\n| `reload`  | Reload QuickShell                                   |\n| `help`    | Show available commands                             |\n\nRun `lyne \u003ccommand\u003e --help` for details and subcommands.\n\n### Examples\n\n```bash\n# Show current theme info\nlyne theme\n\n# List all available themes (dark and light)\nlyne theme list\n\n# Switch to a specific theme preset\nlyne theme set catppuccin-mocha\n\n# Switch to Material You auto mode (colors from wallpaper)\nlyne theme auto\n\n# Toggle between dark and light scheme\nlyne theme scheme light\n\n# Pull the latest changes and apply migrations\nlyne update\n\n# Check the git status of the dotfiles\nlyne git status\n\n# Edit the QuickShell state configuration\nlyne state\n\n# Sync state.json after a manual defaults.json update\nlyne state sync\n\n# Check which migrations are pending\nlyne migrate list\n\n# Show help for a specific command\nlyne state --help\n```\n\n---\n\n## ⌨️ Keybindings\n\n### Apps\n\n| Keybind          | Action                 |\n| ---------------- | ---------------------- |\n| `Super + Return` | Terminal (Kitty)       |\n| `Super + D`      | File Manager (Dolphin) |\n| `Super + Z`      | Browser (Zen Browser)  |\n| `Super + Space`  | App Launcher           |\n\n### Windows\n\n| Keybind                   | Action                          |\n| ------------------------- | ------------------------------- |\n| `Super + Q`               | Kill window                     |\n| `Super + F`               | Fullscreen                      |\n| `Super + Shift + F`       | Fullscreen (pinned)             |\n| `Super + Shift + Space`   | Toggle floating                 |\n| `Super + Tab`             | Toggle split                    |\n| `Super + P`               | Pseudo tile                     |\n| `Super + H J K L`         | Move focus (left/down/up/right) |\n| `Super + Shift + H J K L` | Move window                     |\n| `Super + Alt + H J K L`   | Resize window                   |\n\n### Workspaces\n\n| Keybind                        | Action                               |\n| ------------------------------ | ------------------------------------ |\n| `Super + 1-0`                  | Switch to workspace 1-10             |\n| `Super + Shift + 1-0`          | Move window to workspace 1-10        |\n| `Super + Ctrl + H / L`         | Previous / Next workspace            |\n| `Super + Ctrl + Shift + H / L` | Move window to prev / next workspace |\n| `Super + W`                    | Toggle WhatsApp workspace            |\n| `Super + M`                    | Toggle Spotify workspace             |\n| `Super + S`                    | Toggle Magic workspace               |\n\n### System\n\n| Keybind             | Action            |\n| ------------------- | ----------------- |\n| `Super + B`         | Wallpaper Picker  |\n| `Super + /`         | Keybinds Help     |\n| `Super + V`         | Clipboard History |\n| `Super + End`       | Power Menu        |\n| `Print`             | Screenshot        |\n| `Super + = / -`     | Zoom in / out     |\n| `Super + Shift + R` | Reload QuickShell |\n\n### Media\n\n| Keybind           | Action                         |\n| ----------------- | ------------------------------ |\n| `Volume Keys`     | Volume up / down / mute        |\n| `Brightness Keys` | Brightness up / down           |\n| `Media Keys`      | Play / Pause / Next / Previous |\n\n---\n\n## 📁 Structure\n\nEach top-level directory is a [GNU Stow](https://www.gnu.org/software/stow/) package that gets symlinked into `$HOME`.\n\n| Directory     | Description                                                                          |\n| ------------- | ------------------------------------------------------------------------------------ |\n| `hyprland/`   | Hyprland compositor config (appearance, keybinds, rules)                             |\n| `quickshell/` | QML shell: bar, launcher, notifications, quick settings                              |\n| `nvim/`       | Neovim config with lazy.nvim plugin manager                                          |\n| `tmux/`       | Tmux config with TPM and Smart Splits integration                                    |\n| `kitty/`      | Kitty terminal config with dynamic themes                                            |\n| `zsh/`        | Zsh config with Oh-My-Zsh and Powerlevel10k                                          |\n| `local/`      | Custom scripts, wallpapers (`~/.local/wallpapers/`), and themes (`~/.local/themes/`) |\n| `fastfetch/`  | System info display config                                                           |\n| `theming/`    | GTK3/4 and Qt5/6 theme settings                                                      |\n| `kde/`        | KDE Plasma global settings (colors, icons, fonts)                                    |\n\n### Other Directories\n\n| Directory         | Description                                       |\n| ----------------- | ------------------------------------------------- |\n| `.install/`       | Installation scripts and package lists            |\n| `.data/`          | Templates, default themes, and default wallpapers |\n| `.data/lyne-cli/` | CLI commands, libraries, and migrations           |\n\n---\n\n## 🛠️ Tech Stack\n\n| Component       | Tool            |\n| --------------- | --------------- |\n| Compositor      | Hyprland        |\n| Session Manager | UWSM            |\n| Desktop Shell   | QuickShell      |\n| Terminal        | Kitty           |\n| Shell           | Zsh + Oh-My-Zsh |\n| Multiplexer     | Tmux            |\n| Editor          | Neovim          |\n| Wallpaper       | awww            |\n| Auto Theming    | matugen         |\n| File Manager    | Dolphin         |\n| Browser         | Zen Browser     |\n| AUR Helper      | yay             |\n| Dotfile Manager | GNU Stow        |\n\n---\n\n## ⚙️ Customization\n\nMachine-specific configs are kept in `~/.config/hypr/local/` and are not tracked by git. The install script generates these from templates in `.data/hyprland/templates/` on first run:\n\n- `monitors.conf` - Monitor layout\n- `workspaces.conf` - Workspace mapping\n- `extra_environment.conf` - Local environment variables\n- `autostart.conf` - Local autostart programs\n- `extra_keybinds.conf` - Local keybinds\n\n### Wallpapers\n\nWallpapers live in `~/.local/wallpapers/` (git-ignored, defaults copied on install) and are managed through the QuickShell wallpaper picker (`Super + B`). Features include:\n\n- **Search** by filename\n- **Favorites** with persistent state\n- **Theme wallpapers** organized in `~/.local/wallpapers/themes/{theme-name}/`\n- Each theme can have multiple wallpapers; the active one is set from the picker and applied automatically on theme switch\n\n### Adding Themes\n\nThemes are JSON files in `~/.local/themes/` (git-ignored, defaults copied from `.data/themes/` on install). Each theme defines colors for the palette, terminal, Hyprland, Neovim, GTK/Qt, and a wallpaper path. Light themes include a `\"variant\": \"light\"` field and a `\"darkPair\"` field linking them to their dark counterpart. To create a new theme, copy an existing one and modify the values.\n\n---\n\n## 🙏 Credits\n\n- Screenshot implementation inspired by [HyprQuickFrame](https://github.com/Ronin-CK/HyprQuickFrame)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcaioax%2Flyne-dots","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcaioax%2Flyne-dots","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcaioax%2Flyne-dots/lists"}