Building a Cyberpunk Desktop: Inside cybrdots' Hyprland Theming Ecosystem
Hook
Most dotfile repositories give you someone's .bashrc and call it a day. cybrdots gives you an entire desktop universe spanning 20+ themed applications—all orchestrated from a single color palette repository.
Context
The Linux desktop customization community has always had a fragmentation problem. You find a gorgeous Neovim theme, but it clashes with your status bar. Your terminal looks slick, but your file manager is stuck in default grey. You end up maintaining scattered configurations across a dozen tools, each with its own color syntax, and none of them talking to each other.
This is the problem cybrdots attacks head-on. Created for the Hyprland Wayland compositor on Arch Linux, it's not just another dotfiles repo—it's a theming ecosystem. Drawing inspiration from Cyberpunk 2077's neon-soaked UI design language, the project attempts to solve visual consistency at scale through architectural decisions that go beyond simply sharing config files. At its core is cybrcolors, a dedicated color palette repository that serves as the single source of truth for the entire visual identity. Around it orbit 20+ individual theme repositories, each targeting a specific application but all drinking from the same chromatic well.
Technical Insight
The architecture of cybrdots reveals an interesting approach to the dotfile monorepo pattern. Rather than dumping all configs into a single repository, the project separates concerns into three layers: the palette definition (cybrcolors), the application themes (cybr-waybar, cybr-rofi, cybr-starship, etc.), and the wallpaper collection (cybrpapers). This separation means you can fork just the color scheme, adapt individual application themes, or swap wallpapers independently.
Let's look at how this works in practice. The cybrcolors repository defines the 'Lucid' palette that permeates the entire ecosystem. While the actual implementation details vary per application (some use JSON, others TOML or CSS), the conceptual model is consistent. For instance, a Waybar configuration might reference these colors in CSS format:
@define-color cybr-bg #0a0e14;
@define-color cybr-fg #b3b8c4;
@define-color cybr-accent #00d9ff;
@define-color cybr-error #ff3333;
@define-color cybr-warning #ffcc00;
#workspaces button.active {
background-color: @cybr-accent;
color: @cybr-bg;
}
#custom-media {
color: @cybr-accent;
padding: 0 10px;
}
Meanwhile, the same palette translates to Starship's TOML configuration for the shell prompt:
[character]
success_symbol = "[➜](bold #00d9ff)"
error_symbol = "[➜](bold #ff3333)"
[directory]
style = "bold #00d9ff"
truncation_length = 3
truncate_to_repo = true
[git_branch]
symbol = " "
style = "bold #ffcc00"
This multi-format approach is both pragmatic and limiting. It's pragmatic because each application has its own configuration language—you can't force Waybar to read TOML or Starship to parse CSS. But it's limiting because maintaining color consistency becomes a manual synchronization problem. Change the accent color? You're editing multiple files across multiple repositories.
The modular repository structure is particularly interesting for adoption patterns. Each theme repo (cybr-btop for system monitoring, cybr-yazi for file management, cybr-micro for text editing) can be cloned and used independently. This is valuable for users who might be running a different window manager but still want that cyberpunk aesthetic for their terminal tools. The project leans heavily into TUI/CLI applications—tools like yazi (file manager), broot (directory navigator), btop (system monitor), and micro (text editor)—which aligns with a keyboard-driven, terminal-centric workflow.
The Hyprland configuration itself serves as the orchestrator, tying together the window manager animations, keybindings, and workspace behavior with the themed applications. Hyprland's configuration syntax allows for sophisticated window rules and animation curves that complement the visual theme. The project uses swww (a wallpaper daemon for Wayland) to manage the cybrpapers wallpaper collection, enabling smooth transitions that maintain the aesthetic consistency even at the desktop background level.
What makes this architecture particularly relevant for developers is the template it provides for theme distribution. Rather than a single massive dotfiles repo that users fork and modify (breaking the update path), or scattered configs with no cohesion, cybrdots demonstrates a middle path: modular themes with a shared design system. You could theoretically swap out the Lucid palette for Nord or Dracula while keeping the application configurations, or mix cybrdots themes with your existing setup for just the applications you care about.
Gotcha
The first major limitation is platform lock-in. Despite the modular architecture, you're realistically looking at an Arch Linux + Hyprland dependency. The window manager configuration, Waybar themes, and rofi configs are tightly coupled to the Wayland compositor ecosystem. Many of the themes assume specific tool installations that might not be trivial on other distributions. If you're on Fedora, Ubuntu, or anything that isn't Arch-adjacent, you'll spend significant time resolving dependency issues.
The second gotcha is the WIP status of several key components. The Neovim configuration, Firefox customization refactor, GTK theming, and VSCode extensions are all marked as incomplete or unreleased. This is honest transparency from the maintainer, but it means the "20+ themed applications" claim comes with asterisks. For daily driver usage, you might find yourself with a beautifully themed terminal and status bar, but a stock-looking text editor or browser. The project also discloses AI assistance in development, which explains both the rapid proliferation of theme variants and the occasional rough edges where configurations might not reflect real-world usage patterns. This isn't necessarily bad—AI-assisted theming can be quite effective—but it does mean you should expect to debug and refine configs based on your actual workflow rather than trusting them out of the box.
Verdict
Use cybrdots if you're running Arch Linux with Hyprland and want a cohesive cyberpunk aesthetic across your entire desktop environment, especially if you work primarily in terminal applications and value visual consistency over bleeding-edge stability. It's also worth exploring if you're a theme developer interested in studying modular dotfile architecture—the separation of palette, themes, and wallpapers offers a solid template for similar projects. Skip it if you're not on Arch/Hyprland (the porting effort isn't worth it), if you need production-ready configurations for all advertised applications given the WIP status of several components, if you prefer minimal dependencies and don't want to install 20+ themed tools, or if the cyberpunk aesthetic doesn't resonate with you. For users who just want stable, well-tested Neovim or terminal themes without the broader ecosystem commitment, established alternatives like Catppuccin or Nord will serve you better.