No description
Find a file
2025-08-12 15:09:55 +02:00
Documentation Cleaner Readme 2025-08-11 15:32:23 +02:00
nyx fix nyx-tui - 1.1.1 2025-08-11 14:29:59 +02:00
other readme update 2025-08-11 15:22:06 +02:00
flake.nix Adding Importing functionality 2025-08-06 09:34:26 +02:00
README.md Cleaner Readme 2025-08-11 15:32:23 +02:00
Roadmap.md Add roadmap 2025-08-12 15:09:55 +02:00

Nyx — NixOS System Management Toolkit

Nyx is a modular toolkit that makes managing NixOS easier — faster rebuilds, automated cleanup, shell customization, and an optional TUI interface.


Features

  • Enhanced Rebuilds — Git auto-push, optional formatting, rebuild logs
  • Automated Cleanup — prune old generations, GC, optimize store
  • Shell Tools — banners, helpers, aliases
  • TUI Interface — simple, pretty menu for all Nyx tools
  • One Import to Enable Allnyx.nix

Requirements

Tool / Service Required Notes
NixOS / Nix Core platform
sudo Needed for system changes
Home Manager For integration
Git Required for autoPush features
nix-output-monitor Installed automatically by Nyx

Quick Install

1. Add Nyx to your flake

# flake.nix
{
  inputs.nyx.url = "github:Peritia-System/Nyx-Tools";

  outputs = inputs @ { nixpkgs, nyx, ... }: {
    nixosConfigurations.HOSTNAME = nixpkgs.lib.nixosSystem {
      modules = [ ./configuration.nix ];
    };
  };
}

2. Import in Home Manager

# home.nix
{
  imports = [ inputs.nyx.homeManagerModules.default ];
}

3. Enable modules

nyx = {
  enable     = true;
  username   = "alex";
  nixDirectory = "/home/alex/NixOS"; # full path to flake repo
  logDir     = "/home/alex/.nyx/logs";
  autoPush   = false;

  nyx-tool.enable    = true;   # must be enabled for others
  nyx-rebuild.enable = true;
  nyx-cleanup.enable = true;
  nyx-tui.enable     = true;
};

Usage

nyx-rebuild --update   # Update flake + rebuild
nyx-rebuild --repair   # Repair and clean unfinished logs

nyx-cleanup            # Remove old generations + GC
nyx-cleanup --dry-run  # Preview cleanup

nyx-tui                # Launch TUI
nyx-tui --pretty       # TUI with animation

Showcase

nyx-tui

Module Options

Module Key Options
nyx-rebuild startEditor, formatter, enableAlias
nyx-cleanup keepGenerations, enableAlias
nyx-tui enableAlias
nyx-tool Shell banners & helpers (base req)

Tips

  • nyx-tool must be enabled for other modules.
  • nixDirectory must be a full Git repo path for autoPush to work.
  • See other/example/example-home.nix for a full working setup.

More Info

refer to: Documentaion


📜 License

MIT — Contributions welcome!