Some checks failed
CI / Flake Check (push) Has been cancelled
CI / Evaluate Key Configurations (nix-builder) (push) Has been cancelled
CI / Evaluate Key Configurations (nix-desktop1) (push) Has been cancelled
CI / Evaluate Key Configurations (nix-laptop1) (push) Has been cancelled
CI / Evaluate Artifacts (installer-iso-nix-laptop1) (push) Has been cancelled
CI / Evaluate Artifacts (lxc-nix-builder) (push) Has been cancelled
CI / Format Check (push) Has been cancelled
89 lines
2.4 KiB
Nix
89 lines
2.4 KiB
Nix
{
|
|
# ============================================================================
|
|
# Flake Entry Point
|
|
# ============================================================================
|
|
# This file defines the inputs (dependencies) and outputs (configurations)
|
|
# for Athenix. It ties together the hardware, software, and user
|
|
# configurations into deployable systems using flake-parts.
|
|
|
|
inputs = {
|
|
# Core NixOS package repository (Release 25.11)
|
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.11";
|
|
|
|
# Older kernel packages for Surface compatibility if needed
|
|
nixpkgs-old-kernel.url = "github:NixOS/nixpkgs/nixos-25.05";
|
|
|
|
# Flake-parts for modular flake organization
|
|
flake-parts = {
|
|
url = "github:hercules-ci/flake-parts";
|
|
inputs.nixpkgs-lib.follows = "nixpkgs";
|
|
};
|
|
|
|
# Home Manager for user environment management
|
|
home-manager = {
|
|
url = "github:nix-community/home-manager/release-25.11";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
# Disko for declarative disk partitioning
|
|
disko = {
|
|
url = "github:nix-community/disko";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
# Hardware quirks and configurations
|
|
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
|
|
|
|
agenix = {
|
|
url = "github:yaxitech/ragenix";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
# Neovim configuration
|
|
lazyvim-nixvim.url = "github:azuwis/lazyvim-nixvim";
|
|
|
|
# VS Code server for remote development
|
|
vscode-server = {
|
|
url = "github:nix-community/nixos-vscode-server";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
# NixOS Generators for creating ISOs, LXC, etc.
|
|
nixos-generators = {
|
|
url = "github:nix-community/nixos-generators";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
# WSL Support
|
|
nixos-wsl = {
|
|
url = "github:nix-community/NixOS-WSL/main";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
};
|
|
|
|
outputs =
|
|
inputs@{ self, flake-parts, ... }:
|
|
flake-parts.lib.mkFlake { inherit inputs; } {
|
|
# Support all common systems
|
|
systems = [
|
|
"x86_64-linux"
|
|
"aarch64-linux"
|
|
"x86_64-darwin"
|
|
"aarch64-darwin"
|
|
];
|
|
|
|
# Import flake-parts modules
|
|
imports = [
|
|
./parts/formatter.nix
|
|
./parts/lib.nix
|
|
./parts/nixos-configurations.nix
|
|
./parts/nixos-modules.nix
|
|
./parts/packages.nix
|
|
./parts/templates.nix
|
|
./inventory.nix
|
|
./users.nix
|
|
];
|
|
};
|
|
|
|
}
|