{ description = "NixOS system configuration"; inputs = { nixpkgs.url = "nixpkgs/nixos-unstable"; home-manager = { url = "github:nix-community/home-manager/master"; inputs.nixpkgs.follows = "nixpkgs"; }; nixos-hardware = { url = "github:NixOS/nixos-hardware/master"; }; }; outputs = { self, nixpkgs, home-manager, nixos-hardware, ... }@inputs: let system = "x86_64-linux"; currentSystem = system; pkgs = import nixpkgs { inherit system; }; lib = nixpkgs.lib; in { nixosConfigurations = { # Configuration for my framework 13 inch 11gen laptop laptop = lib.nixosSystem { inherit system; modules = [ # Set hardware config for the right host ./Hosts/hertog-laptop/hardware-configuration.nix nixos-hardware.nixosModules.framework-11th-gen-intel # System ./System/configuration.nix ./Hosts/hertog-laptop/configuration.nix # Comment out what's needed based on host #./System/getty.nix ./System/gnome.nix ./System/audio.nix # Appliances is where printer support is enabled but also things like flipperzero flashing ./System/appliances.nix # Systemwide installed pacakges userpackages are set through home-manager ./System/packages.nix ./Programs/steam.nix ./Hosts/hertog-laptop/packages.nix # Users still need to be set outside of home-manager ./Users/Hertog/user.nix # Home manager imports home-manager.nixosModules.home-manager { home-manager = { useGlobalPkgs = true; useUserPackages = true; users.hertog = import ./Users/Hertog/homeFull.nix; }; } ]; specialArgs = { inputs = inputs; inherit system; }; }; # HermitCollective Server config server = lib.nixosSystem { inherit system; modules = [ # System configuration ./Hosts/hertog-server/hardware-configuration.nix ./System/configuration.nix ./Hosts/hertog-server/configuration.nix ./System/getty.nix ./System/packages.nix ./Hosts/hertog-server/packages.nix # Services ./Services/ssh.nix ./Services/nginx.nix ./Services/nextcloud.nix ./Services/tt-rss.nix ./Services/owncast.nix ./Services/uptime-kuma.nix # Sites ./Sites/hermitcollective.net ./Sites/blog.hermitcollective.net ./Sites/hertog.hermitcollective.net # Users ./Users/Hertog/user.nix ./Users/Sara/user.nix home-manager.nixosModules.home-manager { home-manager = { useGlobalPkgs = true; useUserPackages = true; users.hertog = import ./Users/Hertog/homeMinimal.nix; users.sara = import ./Users/Sara/homeMinimal.nix; }; } ]; specialArgs = { inputs = inputs; inherit system; }; }; }; }; }