Hyperdeepnix#
Originally based on Henry Sipp's Omarchy project, check out his repo at henrysipp/omarchy. In turn both Hyperdeepnix and Omarchy-nix are based on and inspired by DHH's Omarchy project.
I've deviated a bit from both projects mostly in order to fit my needs and preferences.
Components#
Hyperdeepnix is composed from various pieces of software including the following.
- Hyperland as the window manager.
- Hyprpaper as the wallpaper manager.
- Hyprlock as the lock screen.
- Waybar as the status bar.
- Wofi as the launcher.
- Wob as the OSD.
- Mako as the notification system.
- Clipse is the clipboard manager.
- Impala is the wifi manager.
- BlueTUI is the bluetooth manager.
- Wiremix is the audio manager.
- Jocalsend is the file transfer manager.
Additionally I am launching Hyprland via the Universal Wayland Session Manager (UWSM)
Quick Start#
To get started you'll first need to set up a fresh NixOS install. Just download and create a bootable USB and you should be good to go.
Once ready, add this flake to your system configuration, you'll also need home-manager as well:
{
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-25.05";
hyperdeepnix = {
url = "https://tangled.org/deephackontech.bsky.social/hyperdeepnix";
inputs.nixpkgs.follows = "nixpkgs";
inputs.home-manager.follows = "home-manager";
};
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { nixpkgs, hyperdeepnix, home-manager, ... }: {
nixosConfigurations.your-hostname = nixpkgs.lib.nixosSystem {
modules = [
hyperdeepnix.nixosModules.default
home-manager.nixosModules.home-manager #Add this import
{
# Configure hyperdeepnix
hyperdeepnix = {
full_name = "Your Name";
email_address = "your.email@example.com";
theme = "tokyo-night";
};
home-manager = {
users.your-username = {
imports = [ hyperdeepnix.homeManagerModules.default ]; # And this one
};
};
}
];
};
};
}
Configuration Options#
The following configuration options are available under hyperdeepnix (as defined in config.nix).
| Option | Type | Default | Description |
|---|---|---|---|
full_name |
string | required | Main user's full name |
email_address |
string | required | Main user's email address |
theme |
string | tokyo-night |
Theme to use for hyperdeepnix configuration |
theme_overrides.wallpaper_path |
path or null | null |
Path to the wallpaper image to extract colors from |
primary_font |
string | Liberation Sans 11 |
— |
monitors |
list of strings | [] |
— |
quick_app_bindings |
list of strings | (provided) | A list of single keystroke key bindings to launch common apps |
exclude_packages |
list of packages | [] |
Packages to exclude from the default system packages |
terminal |
string | required | Terminal invocation to use |
editor |
string | required | Editor invocation to use |
browser |
string | firefox |
Browser invocation to use |
kb_layout |
string | required | Keyboard layout in Hyprland |
window_rules |
list of strings | [] |
A list of window rules to apply to windows |
pyprland_config |
string | null |
Content for the pyprland configuration file |
Example:
{
hyperdeepnix = {
full_name = "Your Name";
email_address = "your.email@example.com";
terminal = "kitty";
editor = "code";
kb_layout = "us";
theme = "tokyo-night";
# theme_overrides.wallpaper_path = ./path/to/wallpaper.png;
};
}
Themes#
Hyperdeepnix includes several predefined themes:
tokyo-night(default)kanagawaeverforestcatppuccinnordgruvboxgruvbox-light
You can also generate themes from wallpaper images using:
generated_light- generates a light color scheme from wallpapergenerated_dark- generates a dark color scheme from wallpaper
Generated themes require a wallpaper path to be specified:
{
hyperdeepnix = {
theme = "generated_dark"; # or "generated_light"
theme_overrides = {
wallpaper_path = ./path/to/your/wallpaper.png;
};
};
}
Wallpaper Overrides#
Any theme can be customized with a custom wallpaper by specifying wallpaper_path in theme_overrides. For predefined themes, this will only change the wallpaper but keep the original color scheme:
{
hyperdeepnix = {
theme = "tokyo-night"; # or any other predefined theme
theme_overrides = {
wallpaper_path = ./path/to/your/wallpaper.png;
};
};
}
Generated themes automatically extract colors from the wallpaper and create a matching color scheme for all Hyperdeepnix applications (terminal, editor, launcher, etc.).
Contributing#
Contributions are welcome! Please fork and make a PR at https://tangled.org/deephackontech.bsky.social/hyperdeepnix
License#
This project is released under the MIT License.