A big shoutout to @anotherhadi for making Nixy and many other awesome projects, I highly recommend checking his work out!
Nixy simplifies and unifies the Hyprland ecosystem with a modular, easily customizable setup. It provides a structured way to manage your system configuration and dotfiles with minimal effort. It includes home-manager, secrets, and custom theming all in one place.
MyNixy is a Nixy fork, which is a NixOS configuration that I use on my personal laptop and server, with added features and modules to make it more suitable for my needs.
Nixy features:
- 💻 Hyprland-centric: Preconfigured Hyprland ecosystem (Hyprlock, Hyprpaper, etc.)
- 🏠 Home-manager support
- 🔏 Secret handling with sops
- 🏔️ Nvidia GPU support (optimus-manager, nvidia-prime, ...)
- 🎨 Consistent Theming: Base16 & Stylix-powered themes
MyNixy major additions:
- 💫 Both waybar and hyprpanel have a configuration, allowing you to choose your preferred panel.
- 🕹️ A fully customizable and optimized Minecraft Paper server, which can be started and stopped directly from the glance dashboard through API calls.
- 💾 New server modules : Cyberchef, Fail2ban, Autosleep, ...
- 📦 A WSL2 compatible configuration for Nixy, allowing you to run Nixy on Windows natively.
- 🎮 Gaming integration with Steam x Proton, Osu-Lazer, Modrinth (Minecraft Open-Source launcher).
Other small modifications include:
- Minecraft-themed grub instead of relying on systemd-boot.
- New nvim shortcuts
- C++ environment with clangd
- Removed bluetooth module
- And many more to come ! Feel free to check the repository issues for more information about the next features to come.
Contains dotfiles and settings that apply to your user environment.
Subfolders:
programs
is a collection of apps configured with home-managerscripts
is a folder full of bash scripts (see SCRIPTS.md)system
is some "desktop environment" configuration
This directory contains host-specific configurations. Each host includes:
configuration.nix
for system-wide settingshome.nix
for user-level configurationvariables.nix
for global variablessecrets/
for sensitive data
Those are the system-level configurations. (audio, gpu, bootloader, session manager, ...)
Those are the server modules that are used to add features to the server. These include a nextcloud environment, a glance dashboard, ssh connection support, and more.
Note
Please note that if you do not have a needed package in your NixOS installation (if you installed the minimal terminal version for instance), you can use the following command to temporarily install the needed package:
nix-shell -p <package-name>
- Fork this repository and clone it to your machine:
git clone https://github.com/Dylouwu/MyNixy ~/.config/nixos
- Update
variables.nix
with your device settings. - Copy your
hardware-configuration.nix
into your new host's folder to ensure proper hardware support. - Register your new host in
flake.nix
by adding it under nixosConfigurations.
Note
# CHANGEME
comments are placed throughout the configuration to indicate necessary modifications.
Use the following command to quickly locate them:
rg "CHANGEME" ~/.config/nixos
Tip
When you add new files, don't forget to run git add .
to add them to the git repository
- Build the system
sudo nixos-rebuild switch --flake ~/.config/nixos#yourhostname
- Reboot your system.
Tip
Recommended things to do after the installation:
-
Add your private age key to the
.config/sops/age/keys.txt
file to enable sops-nix support. -
Since your fork was cloned through HTTPS, you may want to change its origin to the SSH one (making full use of the config).
-
Additionally, you can remove warning messages while rebuilding the system by using these commands:
sudo rm /root/.nix-defexpr/channels
sudo rm /nix/var/nix/profiles/per-user/root/channels
- Tailscale (
sudo tailscale up
)
For laptop configurations :
- Zen's settings, logins, extensions (which can be alternatively synced with a firefox account), and mods must be installed manually from the browser directly.
- Discord, Nextcloud, Copilot (in nvim) and other apps need their settings must be done manually
- Steam launch options (included in
nixos/steam.nix
) and game library - Modrinth modpacks, JVM arguments, and other Minecraft-related things
- And maybe more ☔
For server configurations:
- Most apps configurations (adguardhome, cloudflare, glance, nextcloud, etc.) are done through the web interface.
- Some data like the nextcloud database, vaultwarden, minecraft worlds and more, need to be imported manually if you have them on your previous server, and you SHOULD backup them, algonside with your keys.
-
SCRIPTS: Scripts that are available
-
KEYBINDINGS-HYPRLAND: Keybindings available in Hyprland
-
WALLPAPERS: A collection of wallpapers for Nixy.
-
LICENSE: MIT License