{ description = "Panoptes flake config"; inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; nixpkgs-stable.url = "github:NixOS/nixpkgs/nixos-24.11"; home-manager = { url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; # vscode-server.url = "path:./nixos/vscode"; vscode-server.url = "github:nix-community/nixos-vscode-server"; }; outputs = { self, nixpkgs, nixpkgs-stable, home-manager, ... } @ inputs: let stateVersion = "24.11"; inherit (self) outputs; nixosSystem = inputs.nixpkgs.lib.nixosSystem; userSettings = rec { username = "panoptes"; gitUserName = "John Lancaster"; gitUserEmail = "32917998+jsl12@users.noreply.github.com"; }; systemSettings = rec { hostname = "panoptes-nix"; system = "x86_64-linux"; timeZone = "America/Chicago"; locale = "en_US.UTF-8"; }; pkgs = inputs.nixpkgs.legacyPackages.${systemSettings.system}; pkgs-stable = inputs.nixpkgs-stable.legacyPackages.${systemSettings.system}; in { nixosConfigurations = { "${systemSettings.hostname}" = nixosSystem { system = systemSettings.system; specialArgs = { inherit inputs; inherit outputs; inherit userSettings; inherit systemSettings; }; modules = [ ./configuration.nix # > Our main nixos configuration file < "${inputs.nixpkgs}/nixos/modules/virtualisation/proxmox-lxc.nix" ({ ... }: { system.stateVersion = "${stateVersion}"; services.vscode-server.enable = true; }) inputs.vscode-server.nixosModules.default ]; }; }; homeConfigurations = { useGlobalPkgs = true; "${userSettings.username}" = home-manager.lib.homeManagerConfiguration { inherit pkgs; specialArgs = { inherit inputs; inherit outputs; inherit userSettings; inherit systemSettings; }; modules = [ ./homeManagerModules/home.nix ({...}: {home.stateVersion = "${stateVersion}";}) ]; }; }; }; }