{ inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05"; nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; home-manager = { url = "github:nix-community/home-manager/release-25.05"; inputs.nixpkgs.follows = "nixpkgs"; }; nix-darwin = { url = "github:nix-darwin/nix-darwin/nix-darwin-25.05"; inputs.nixpkgs.follows = "nixpkgs"; }; }; # The idea behind having a bunch of modules listed out like this is so I can layer different things # on top of each other in a pretty way, as well as give an immediate idea of what a system will look # like before even beginning to install it. outputs = { self, nixpkgs, nixpkgs-unstable, home-manager, nix-darwin, ... }@inputs: { # not-quite-fucked-up thinkpad nixosConfigurations."yaoi" = nixpkgs.lib.nixosSystem (rec { system = "x86_64-linux"; specialArgs = { inherit inputs; pkgs-unstable = import nixpkgs-unstable { inherit system; }; }; modules = [ home-manager.nixosModules.home-manager ./common ./workstation.nix ./capabilities/autoupdate.nix ./capabilities/bluetooth.nix ./hosts/yaoi.nix ./users/hotsocket.nix # *scoots away* ./nonfree/_allow.nix ./nonfree/steam.nix ]; }); # corebooted chromebook nixosConfigurations."yuri" = nixpkgs.lib.nixosSystem (rec { system = "x86_64-linux"; specialArgs = { inherit inputs; pkgs-unstable = import nixpkgs-unstable { inherit system; }; }; modules = [ home-manager.nixosModules.home-manager ./common ./workstation.nix ./capabilities/autoupdate.nix ./capabilities/bluetooth.nix ./hosts/yuri.nix ./users/hotsocket.nix ]; }); # MacBook Pro darwinConfigurations."bara" = nix-darwin.lib.darwinSystem (rec { system = "aarch64-darwin"; specialArgs = { inherit inputs system; pkgs-unstable = import nixpkgs-unstable { inherit system; }; }; modules = [ home-manager.darwinModules.home-manager ./common ./workstation.nix ./hosts/bara.nix ./users/hotsocket.nix ]; }); }; }