{ inputs = { nixpkgs.follows = "nixpkgs-unstable"; nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-24.11"; nixpkgs-unstable.url = "github:steveej-forks/nixpkgs/nixos-unstable"; get-flake.url = "github:ursi/get-flake"; disko.inputs.nixpkgs.follows = "nixpkgs"; home-manager = { url = "github:nix-community/home-manager/master"; # url = "github:nix-community/home-manager/release-24.11"; inputs.nixpkgs.follows = "nixpkgs"; }; nixos-x13s.url = "git+https://forgejo.www.stefanjunker.de/steveej/nixos-x13s.git?ref=bump" # 6.11.0 # "git+https://forgejo.www.stefanjunker.de/steveej/nixos-x13s.git?branch=remaintain&rev=6b9efe77ca80653354981c720af3c4241ac71490" # 6.12.0-rc6 # "git+https://forgejo.www.stefanjunker.de/steveej/nixos-x13s.git?branch=remaintain&rev=bd580ee9c35fcb8a720122d5bb2f903f1b7395ee" # "git+https://forgejo.www.stefanjunker.de/steveej/nixos-x13s.git?branch=remaintain&rev=1286d20be2321a1a2d27f5d09257ebaf54ce0630" #"/home/steveej/src/others/nixos-x13s" # ; # nixos-x13s.url = "path:/home/steveej/src/others/nixos-x13s"; # nixos-x13s.inputs.nixpkgs.follows = "nixpkgs"; mycelium.url = "github:threefoldtech/mycelium"; mycelium.inputs.nixpkgs.follows = "nixpkgs"; nix-snapshotter = { url = "github:yu-re-ka/nix-snapshotter"; # url = "github:pdtpartners/nix-snapshotter"; inputs.nixpkgs.follows = "nixpkgs"; }; }; outputs = { self, get-flake, nixpkgs, ... }: let nativeSystem = "aarch64-linux"; nodeName = "steveej-x13s"; repoFlake = get-flake ../../../..; mkNixosConfiguration = { extraModules ? [ ], ... }@attrs: nixpkgs.lib.nixosSystem ( nixpkgs.lib.attrsets.recursiveUpdate attrs { specialArgs = (import ./default.nix { system = nativeSystem; inherit nodeName; inherit repoFlake; repoFlakeWithSystem = repoFlake.lib.withSystem; nodeFlake = self; }).meta.nodeSpecialArgs.${nodeName}; modules = [ ./configuration.nix # flake registry { nix.registry.nixpkgs.flake = nixpkgs; } ] ++ extraModules; } ); in { lib = { inherit mkNixosConfiguration; }; overlays.default = _final: _previous: { }; nixosConfigurations = { native = mkNixosConfiguration { system = nativeSystem; }; cross = mkNixosConfiguration { extraModules = [ { nixpkgs.buildPlatform.system = "x86_64-linux"; nixpkgs.hostPlatform.system = nativeSystem; } ]; }; }; }; }