Basic Nixos Module
Find a file
2026-02-04 22:10:12 +01:00
app 🚀 add mangohud 4 Steam 2026-01-24 20:55:08 +01:00
config 🐛 missing auditd Daemon 2026-01-18 13:12:32 +01:00
desktop 📝 Doc 2025-09-29 22:28:33 +02:00
overlay/nixos-check_mk_agent-overlay ⬆️ Checkmk Server / Agent 2.4.0p9 2025-08-15 23:05:09 +02:00
service Parameter for SSH Port 2026-01-12 15:25:44 +01:00
virtualisation ⬆️ Nixos 25.11 - ovmf is default 2025-11-30 20:06:26 +01:00
default.nix 🔥 clear old vm.nix 2026-01-18 12:56:09 +01:00
flake.lock 🚀 Beta zNix with Desktop 2025-06-15 14:08:20 +02:00
flake.nix ⬆️ Nixos 25.11 - Flake 2025-11-30 20:19:04 +01:00
options.nix 🔐 add Audit by default 2025-06-15 23:31:08 +02:00
README.md 📝 Readme.md 2026-02-04 22:10:12 +01:00

Nixos - zNix

Vorraussetzung

Anwendung

Alias zur Anwendung:

alias apply_local="colmena apply-local --impure --sudo"
alias apply_remote="colmena apply --impure --on"

Danach kann mit apply_local oder apply_remote hostname der jeweilige Host aktualisiert werden. Flake aktualisieren: nix flake update znix Erneuert die flake.lock.

Options

Preset

Ein Preset ist eine Zusammenstellung aus mehreen Optionen:

Desktop Beispiel

znix = {
  preset = "desktop";
  desktops = ["plasma6" "sddm" "xserver"];
};

Die Optionen für Desktop setzt sich zusammen aus:

znix = {
  # Config
  config = {
    audit = true;
    basic = true;
    boost = false;
    bugfix = true;
    localuser = true;
    power = true;
    secure = false;
    shell = true;
  };
  # Services
  service = {
    ssh = {
      enable = true;
      secure = true;
    };
    checkmk_agent.enable = true;
    logrotate.enable = false;
  };
  # Desktop-Optionen
  desktop = {
    sound = true;
    print = true;
    bluetooth = true;
  };
  # Desktop
  #   verfügbare Optionen
  #   xserver sddm lightdm xterm
  #   plasma6 xfce hyprland
  desktops =  [ "xserver" ];
  # Virtualisation
  virtualisation = {
    podman = {
      enable = true;
      network = true;
    };
  };
  # Apps
  #   verfügbare Optionen:
  #   video game dev_workstation dev_workstation desktop basic
  apps = [ "basic" "desktop" ];
};

Setup

flake.nix

inputs = {
  nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11";
  nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable";
  home-manager.url = "github:nix-community/home-manager/release-25.11";
  home-manager.inputs.nixpkgs.follows = "nixpkgs";
  nixos-hardware.url = "github:NixOS/nixos-hardware";
  # -- Znix --
  znix.url = "git+https://git.zarix.de/richi/znix.git?ref=main";
  znix.inputs.nixpkgs.follows = "nixpkgs";
  znix.inputs.nixpkgs-unstable.follows = "nixpkgs-unstable"; # optional
};

outputs = { nixpkgs, home-manager, nixpkgs-unstable, nixos-hardware, ... }@inputs: {
  # ...
};

host.nix

imports = [
  ./hardware-configuration.nix
  inputs.home-manager.nixosModules.home-manager
  inputs.znix.nixosModules.znix
  # ...
];

Dev

Revision für ein Pakte/Overlay bei Github ermitteln:

nix-prefetch-git https://github.com/Checkmk/checkmk/ --rev refs/tags/v2.2.0p17