# ./generated/hosts/traveldroid/traveldroid.nix # ./generated/hosts/traveldroid/traveldroid.nix { inputs, ... }: let # Import all reusable modules under ./generated/modules modulesDir = ../../modules; # adjust path relative to this host file importedModules = builtins.attrValues (import modulesDir { inherit inputs; }); in { # Define the NixOS configuration for this host flake.nixosConfigurations.traveldroid = inputs.nixpkgs.lib.nixosSystem { system = "x86_64-linux"; specialArgs = { inherit inputs; }; modules = [ inputs.home-manager.nixosModules.home-manager inputs.stylix.nixosModules.stylix ] ++ importedModules ++ [ ./hardware-configuration.nix # Host-specific settings ({ config, ... }: { networking.hostName = "traveldroid"; system.stateVersion = "25.11"; boot.loader.grub = { enable = true; efiSupport = true; device = "nodev"; useOSProber = true; }; boot.efi.canTouchEfiVariables = true; boot.kernelParams = [ "systemd.mask=dev-tpm0.device" "systemd.mask=dev-tpmrm0.device" ]; # Optional: TPM/other features # systemd.tpm2.enable = false; # User-defined modules / system features mySystem = { system.core.enable = true; # Hardware toggles hardware.nvidia.enable = false; # Desktop environment modules desktop = { hyprland.enable = true; noctalia.enable = true; stylix.enable = true; }; }; }) ]; }; }