{ description = "A very basic flake"; inputs = { nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable"; nixos-hardware.url = "github:NixOS/nixos-hardware/master"; nixos-wsl.url = "github:nix-community/NixOS-WSL/main"; mac-app-util.url = "github:hraban/mac-app-util"; darwin.url = "github:lnl7/nix-darwin/master"; darwin.inputs.nixpkgs.follows = "nixpkgs"; home-manager = { url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; nix-vscode-extensions = { url = "github:nix-community/nix-vscode-extensions"; inputs.nixpkgs.follows = "nixpkgs"; }; firefox-addons = { url = "gitlab:rycee/nur-expressions?dir=pkgs/firefox-addons"; inputs.nixpkgs.follows = "nixpkgs"; }; }; outputs = { self, darwin, nixpkgs, nixos-hardware, nixos-wsl, home-manager, mac-app-util, ... }@inputs: let system = "x86_64-linux"; pkgs = import nixpkgs { inherit system; config = { allowUnfree = true; }; }; in { # Framework - argon nixosConfigurations.argon = nixpkgs.lib.nixosSystem { specialArgs = { inherit system; inherit inputs; }; modules = [ nixos-hardware.nixosModules.framework-12th-gen-intel ./_hosts/argon/configuration.nix ./nixos-modules ]; }; nixosConfigurations.bromine = nixpkgs.lib.nixosSystem { specialArgs = { inherit system; inherit inputs; }; modules = [ nixos-hardware.nixosModules.framework-11th-gen-intel ./_hosts/bromine/configuration.nix ./nixos-modules ]; }; nixosConfigurations.caesium = nixpkgs.lib.nixosSystem { specialArgs = { inherit system; inherit inputs; }; modules = [ nixos-hardware.nixosModules.framework-11th-gen-intel ./_hosts/caesium/configuration.nix ./nixos-modules ]; }; nixosConfigurations.caesium-wsl = nixpkgs.lib.nixosSystem { specialArgs = { inherit system; inherit inputs; }; modules = [ nixos-wsl.nixosModules.default ./_hosts/caesium-wsl/configuration.nix ]; }; darwinConfigurations.cleo-darwin = darwin.lib.darwinSystem { specialArgs = { inherit system; inherit inputs; }; system = "aarch64-darwin"; modules = [ ./cleo.darwin.nix mac-app-util.darwinModules.default home-manager.darwinModules.home-manager { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.extraSpecialArgs = { inherit inputs; }; home-manager.users."matthew.bessette" = import ./cleo.home.nix; home-manager.backupFileExtension = ".before-nix"; } ]; }; darwinConfigurations.hydrogen = darwin.lib.darwinSystem { specialArgs = { inherit system; inherit inputs; }; system = "aarch64-darwin"; modules = [ ./hydrogen.darwin.nix mac-app-util.darwinModules.default home-manager.darwinModules.home-manager # home-manager.sharedModules = [ # mac-app-util.homeManagerModules.default # ] { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.extraSpecialArgs = { inherit inputs; }; home-manager.users."mbessette" = import ./hydrogen.home.nix; home-manager.backupFileExtension = ".before-nix"; } ]; }; homeManagerModules.default = "./nixos-modules/home-manager"; }; }