Skip to content

Dylouwu/MyNixy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nixy logo

MyNixy



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.

Table of Contents

Gallery

nvim, lazygit

Architecture

🏠 /home

Contains dotfiles and settings that apply to your user environment.

Subfolders:

  • programs is a collection of apps configured with home-manager
  • scripts is a folder full of bash scripts (see SCRIPTS.md)
  • system is some "desktop environment" configuration

💻 /hosts

This directory contains host-specific configurations. Each host includes:

  • configuration.nix for system-wide settings
  • home.nix for user-level configuration
  • variables.nix for global variables
  • secrets/ for sensitive data

🐧 /nixos

Those are the system-level configurations. (audio, gpu, bootloader, session manager, ...)

💾 /server-modules

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.

Installation

  1. Download and install NixOS.

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>
  1. Fork this repository and clone it to your machine:
git clone https://github.com/Dylouwu/MyNixy ~/.config/nixos
  1. Update variables.nix with your device settings.
  2. Copy your hardware-configuration.nix into your new host's folder to ensure proper hardware support.
  3. 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

  1. Build the system
sudo nixos-rebuild switch --flake ~/.config/nixos#yourhostname
  1. 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

😿 Non-declarative things

  • 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.

Documentation

About

A Nixy fork.

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 5

Languages