Skip to content

NixOS Core

Source directory: modules/nixos/

default.nix

modules/nixos/default.nix

No option declarations; see source for implementation.

admin.nix

modules/nixos/packages/categories/admin.nix

Administrative Packages System administration and monitoring tools Compliant with NIXOS-ANTI-PATTERNS.md

  • Enable option: Administrative packages
Options declaration (Nix)
  options.packages.admin = {
    enable = lib.mkEnableOption "Administrative packages";

    monitoring = lib.mkOption {
      type = lib.types.bool;
      default = true;
      description = "Enable monitoring tools (headless-compatible)";
    };

    network = lib.mkOption {
      type = lib.types.bool;
      default = false;
      description = "Enable network analysis tools (headless-compatible)";
    };

    security = lib.mkOption {
      type = lib.types.bool;
      default = false;
      description = "Enable security tools";
    };
  }

desktop.nix

modules/nixos/packages/categories/desktop.nix

Desktop GUI Packages GUI applications that require desktop environment Compliant with NIXOS-ANTI-PATTERNS.md

  • Enable option: Desktop GUI packages
Options declaration (Nix)
  options.packages.desktop = {
    enable = lib.mkEnableOption "Desktop GUI packages";

    wayland = lib.mkOption {
      type = lib.types.bool;
      default = true;
      description = "Enable Wayland-specific packages";
    };

    browsers = lib.mkOption {
      type = lib.types.attrsOf lib.types.bool;
      default = { };
      description = "Web browsers";
    };

    media = lib.mkOption {
      type = lib.types.attrsOf lib.types.bool;
      default = { };
      description = "Media applications";
    };

    productivity = lib.mkOption {
      type = lib.types.attrsOf lib.types.bool;
      default = { };
      description = "Productivity applications";
    };

    communication = lib.mkOption {
      type = lib.types.attrsOf lib.types.bool;
      default = { };
      description = "Communication applications";
    };
  }

development.nix

modules/nixos/packages/categories/development.nix

Development Packages Development tools and programming languages Compliant with NIXOS-ANTI-PATTERNS.md

  • Enable option: Development packages
Options declaration (Nix)
  options.packages.development = {
    enable = lib.mkEnableOption "Development packages";

    languages = lib.mkOption {
      type = lib.types.attrsOf lib.types.bool;
      default = { };
      description = "Language-specific development tools";
    };

    editors = lib.mkOption {
      type = lib.types.attrsOf lib.types.bool;
      default = { };
      description = "Development editors and IDEs";
    };

    tools = lib.mkOption {
      type = lib.types.attrsOf lib.types.bool;
      default = { };
      description = "Development utility tools";
    };
  }

media.nix

modules/nixos/packages/categories/media.nix

Media Packages Media processing, streaming, and entertainment tools Compliant with NIXOS-ANTI-PATTERNS.md

  • Enable option: Media packages
Options declaration (Nix)
  options.packages.media = {
    enable = lib.mkEnableOption "Media packages";

    server = lib.mkOption {
      type = lib.types.bool;
      default = false;
      description = "Enable media server tools (headless-compatible)";
    };

    processing = lib.mkOption {
      type = lib.types.bool;
      default = false;
      description = "Enable media processing tools (headless-compatible)";
    };

    gui = lib.mkOption {
      type = lib.types.bool;
      default = false;
      description = "Enable GUI media applications (requires desktop)";
    };
  }

virtualization.nix

modules/nixos/packages/categories/virtualization.nix

Virtualization Packages Container and VM management tools Compliant with NIXOS-ANTI-PATTERNS.md

  • Enable option: Virtualization packages
Options declaration (Nix)
  options.packages.virtualization = {
    enable = lib.mkEnableOption "Virtualization packages";

    docker = lib.mkOption {
      type = lib.types.bool;
      default = false;
      description = "Enable Docker tools (headless-compatible)";
    };

    vm = lib.mkOption {
      type = lib.types.bool;
      default = false;
      description = "Enable VM management tools";
    };

    kubernetes = lib.mkOption {
      type = lib.types.bool;
      default = false;
      description = "Enable Kubernetes tools (headless-compatible)";
    };
  }

conditional.nix

modules/nixos/packages/conditional.nix

Conditional Feature Packages - Tier 2 Packages enabled based on host capabilities and feature flags Compliant with NIXOS-ANTI-PATTERNS.md

No option declarations; see source for implementation.

core.nix

modules/nixos/packages/core.nix

Core System Packages - Tier 1 Essential packages that ALL hosts need regardless of purpose Compliant with NIXOS-ANTI-PATTERNS.md

No option declarations; see source for implementation.

default.nix

modules/nixos/packages/default.nix

NixOS Package Management System Three-tier architecture compliant with NIXOS-ANTI-PATTERNS.md Tier 1: Core (always installed) Tier 2: Conditional (feature-based) Tier 3: Host-specific (in host configs)

No option declarations; see source for implementation.

laptop-packages.nix

modules/nixos/packages/host-specific/laptop-packages.nix

Laptop Host-Specific Packages Packages specifically for laptop hosts Compliant with NIXOS-ANTI-PATTERNS.md

No option declarations; see source for implementation.

server-packages.nix

modules/nixos/packages/host-specific/server-packages.nix

Server Host-Specific Packages Packages specifically for server hosts (headless) Compliant with NIXOS-ANTI-PATTERNS.md

No option declarations; see source for implementation.

workstation-packages.nix

modules/nixos/packages/host-specific/workstation-packages.nix

Workstation Host-Specific Packages Packages specifically for workstation hosts Compliant with NIXOS-ANTI-PATTERNS.md

No option declarations; see source for implementation.