{ description = "Zonsopkomst's NixOS Flake to Manage Multiple Machines"; inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; home-manager.url = "github:nix-community/home-manager"; home-manager.inputs.nixpkgs.follows = "nixpkgs"; hyprland.url = "github:hyprwm/Hyprland"; }; outputs = inputs@{ home-manager, hyprland, nixpkgs, ... }: { nixosConfigurations = { frija = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; modules = [ # Common Resources # Desktop ./desktop/gnome.nix ./display/gdm.nix #./desktop/kde.nix #./display/sddm.nix #./desktop/hyperland.nix # Modules ./common/amd.nix ./common/CUPS.nix ./common/pipewire.nix ./common/time.nix #./common/docker.nix ./common/flakeinit.nix #./common/flatpak.nix #./common/gaming.nix #./common/insecure.nix ./common/networking.nix ./common/unfree.nix #./common/waydroid.nix ./common/x11.nix # Host Specific ./hosts/local/frija/default.nix ./hosts/local/frija/hardware-configuration.nix ./hosts/local/frija/packages.nix # User Specific ./users/aspire/home-manager.nix #./users/aspire/syncthing.nix home-manager.nixosModules.home-manager { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.users.aspire = import ./hosts/local/frija/home.nix; } ]; }; tyr = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; modules = [ # Common Resources # Desktop #./desktop/gnome.nix #./display/gdm.nix ./desktop/kde.nix ./display/sddm.nix #./desktop/hyperland.nix # Modules #./common/amd.nix ./common/CUPS.nix ./common/pipewire.nix ./common/time.nix ./common/docker.nix ./common/flakeinit.nix ./common/flatpak.nix ./common/gaming.nix ./common/insecure.nix ./common/networking.nix ./common/unfree.nix #./common/waydroid.nix ./common/x11.nix # Host Specific ./hosts/local/tyr/default.nix ./hosts/local/tyr/hardware-configuration.nix ./hosts/local/tyr/packages.nix # User Specific ./users/leeuwarden/home-manager.nix ./users/leeuwarden/kdewallet.nix ./users/leeuwarden/syncthing.nix home-manager.nixosModules.home-manager { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.users.leeuwarden = import ./hosts/local/tyr/home.nix; } ]; }; tuisto = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; modules = [ # Common Resources # Desktop ./desktop/gnome.nix ./display/gdm.nix #./desktop/kde.nix #./display/sddm.nix #./desktop/hyperland.nix # Modules ./common/amd.nix ./common/CUPS.nix ./common/pipewire.nix ./common/time.nix ./common/docker.nix ./common/flakeinit.nix ./common/flatpak.nix ./common/gaming.nix ./common/insecure.nix ./common/networking.nix ./common/unfree.nix ./common/waydroid.nix ./common/x11.nix # Host Specific ./hosts/local/tuisto/default.nix ./hosts/local/tuisto/hardware-configuration.nix ./hosts/local/tuisto/packages.nix ./users/wagner/home-manager.nix # User Specific ./users/wagner/syncthing.nix home-manager.nixosModules.home-manager { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.users.wagner = import ./hosts/remote/tuisto/home.nix; } ]; }; weda = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; modules = [ # Common Resources # Desktop ./desktop/gnome.nix ./display/gdm.nix #./desktop/kde.nix #./display/sddm.nix #./desktop/hyperland.nix # Modules ./common/amd.nix ./common/CUPS.nix ./common/pipewire.nix ./common/time.nix ./common/docker.nix ./common/flakeinit.nix ./common/flatpak.nix ./common/gaming.nix ./common/insecure.nix ./common/networking.nix ./common/unfree.nix ./common/waydroid.nix ./common/x11.nix # Host Specific ./hosts/local/weda/default.nix ./hosts/local/weda/hardware-configuration.nix ./hosts/local/weda/packages.nix # User Specific ./users/zonsopkomst/home-manager.nix ./users/zonsopkomst/syncthing.nix home-manager.nixosModules.home-manager { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.users.zonsopkomst = import ./hosts/local/weda/home.nix; } hyprland.nixosModules.default {programs.hyprland.enable = true;} ]; }; }; }; }