{ description = "~tsv's system config"; inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; home-manager = { url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; devenv.url = "github:cachix/devenv/latest"; hyprland.url = "github:hyprwm/Hyprland"; hyprcontrib.url = "github:hyprwm/contrib"; flake-utils.url = "github:numtide/flake-utils"; codeium = { url = "github:jcdickinson/codeium.nvim"; inputs.nixpkgs.follows = "nixpkgs"; }; }; outputs = inputs@{ nixpkgs, home-manager, devenv, hyprland, hyprcontrib, codeium, ... }: { nixosConfigurations = { ritchie = nixpkgs.lib.nixosSystem { # My work machine system = "x86_64-linux"; specialArgs.inputs = inputs; modules = [ ./system/ritchie/ritchie.nix hyprland.nixosModules.default { programs.hyprland = { enable = true; enableNvidiaPatches = true; xwayland = { enable = true; }; }; } home-manager.nixosModules.home-manager { home-manager = { useGlobalPkgs = true; useUserPackages = true; users.tsv = import users/tsv/ritchie.nix; users.foxsoft = import users/foxsoft/home.nix; users.root = import users/root/home.nix; }; } ]; }; thompson = nixpkgs.lib.nixosSystem { # My personal laptop system = "x86_64-linux"; specialArgs.inputs = inputs; modules = [ ./system/thompson/thompson.nix hyprland.nixosModules.default { programs.hyprland.enable = true; } home-manager.nixosModules.home-manager { home-manager = { useGlobalPkgs = true; useUserPackages = true; users.tsv = import users/tsv/thompson.nix; }; } ]; }; miyamoto = nixpkgs.lib.nixosSystem { # Kid's game and music box system = "x86_64-linux"; specialArgs.inputs = inputs; modules = [ ./system/miyamoto/miyamoto.nix ]; }; kernighan = nixpkgs.lib.nixosSystem { # Pi home server system = "aarch64-linux"; specialArgs.inputs = inputs; modules = [ ./system/kernighan/kernighan.nix ]; }; eno = nixpkgs.lib.nixosSystem { # Music player/alarm clock system = "aarch64-linux"; specialArgs.inputs = inputs; modules = [ ./system/eno/eno.nix ]; }; }; }; }