{ description = "parsec system and home configuration"; inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; nixos-hardware.url = "github:NixOS/nixos-hardware"; nix-flatpak.url = "github:gmodena/nix-flatpak"; home-manager = { url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; firefox-nightly = { url = "github:nix-community/flake-firefox-nightly"; inputs.nixpkgs.follows = "nixpkgs"; }; }; outputs = { nixpkgs, nixos-hardware, home-manager, firefox-nightly, nix-flatpak, ... }: let system = "x86_64-linux"; pkgs = import nixpkgs { inherit system; config.allowUnfree = true; }; in { nixosConfigurations.parsec = nixpkgs.lib.nixosSystem { specialArgs = { inherit firefox-nightly; }; modules = [ { nixpkgs.hostPlatform = system; } nixos-hardware.nixosModules.framework-desktop-amd-ai-max-300-series nix-flatpak.nixosModules.nix-flatpak ./nixos/hardware-configuration.nix ./nixos/configuration.nix { users.users.tester = { isNormalUser = true; home = "/home/tester"; shell = pkgs.zsh; extraGroups = ["wheel" "networkmanager" "video" "render"]; }; } ]; }; homeConfigurations.tester = home-manager.lib.homeManagerConfiguration { inherit pkgs; modules = [ nix-flatpak.homeManagerModules.nix-flatpak ./nixos/home-tester.nix ]; }; }; }