{ 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/hyprland.nix # Kernels & RAM #./common/kernel.zen.nix #./commmon/swappiness # Common ./common/amd.nix #./common/bluetooth.nix ./common/CUPS.nix #./common/hyprland.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/terminal.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/hyprland.nix # Kernels & RAM ./common/kernel.zen.nix #./commmon/swappiness # Common #./common/amd.nix #./common/bluetooth.nix ./common/CUPS.nix #./common/hyprland.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/terminal.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/gnomekeyring.nix ./users/leeuwarden/home-manager.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/hyprland.nix # Kernels & RAM #./common/kernel.zen.nix #./commmon/swappiness # Common ./common/amd.nix #./common/bluetooth.nix ./common/CUPS.nix #./common/hyprland.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/terminal.nix ./common/unfree.nix ./common/waydroid.nix ./common/x11.nix # Host Specific ./hosts/remote/tuisto/default.nix ./hosts/remote/tuisto/hardware-configuration.nix ./hosts/remote/tuisto/packages.nix # User Specific ./users/admin/home-manager.nix #./users/admin/hd.nix #./users/admin/syncthing.nix home-manager.nixosModules.home-manager { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.users.admin = import ./hosts/remote/tuisto/home.nix; } #hyprland.nixosModules.default #{programs.hyprland.enable = true;} ]; }; 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/hyprland.nix # Kernels & RAM #./common/kernel.zen.nix #./commmon/swappiness # Common ./common/amd.nix ./common/bluetooth.nix ./common/CUPS.nix #./common/hyprland.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/terminal.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;} ]; }; }; }; }