{ description = "A system flake with various options for bootstrapping a complete Aux install."; inputs = { # Flatpak support nix-flatpak.url = "github:gmodena/nix-flatpak/v0.4.1"; # Import the desired Nixpkgs repo. Defaults to unstable. nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable"; # SecureBoot support lanzaboote.url = "github:nix-community/lanzaboote/v0.4.0"; # NixOS hardware quirks nixos-hardware.url = "github:NixOS/nixos-hardware/master"; # Add Home-manager support home-manager = { url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; }; outputs = inputs@{ self, auxlib, home-manager, lanzaboote, nix-flatpak, nixos-hardware, nixpkgs, ... }: let ###*** IMPORTANT: Please set your system's hostname here ***### hostName = builtins.abort "Please set the 'hostName' variable in flake.nix"; /* What kind of system are you running NixOS on? If you're not sure, leave this as the default. Options are: x86_64-linux - (Default) 64-bit PCs. aarch64-linux - 64-bit ARM PCs. x86_64-darwin - Intel Macs. aarch64-darwin - M-series Macs. */ platform = "x86_64-linux"; baseModules = [ ./modules/autoimport.nix home-manager.nixosModules.home-manager lanzaboote.nixosModules.lanzaboote nix-flatpak.nixosModules.nix-flatpak # Set global home-manager settings { home-manager = { /* When running, Home Manager will use the global package cache. It will also back up any files that it would otherwise overwrite. The originals will have the extension ".home-manager_backup". */ useGlobalPkgs = true; useUserPackages = true; backupFileExtension = "home-manager_backup"; }; } ]; in { nixosConfigurations."${hostName}" = nixpkgs.lib.nixosSystem { specialArgs = { inherit inputs; }; modules = baseModules ++ [ { networking.hostName = hostName; nixpkgs.hostPlatform = platform; } ./host/configuration.nix # NixOS-Hardware # Add your model from this list: https://github.com/NixOS/nixos-hardware/blob/master/flake.nix # nixos-hardware.nixosModules.framework-13th-gen-intel ]; }; formatter.${platform} = nixpkgs.legacyPackages.${platform}.nixfmt-rfc-style; }; }