Configure for two machines
This commit is contained in:
63
flake.nix
63
flake.nix
@@ -54,37 +54,42 @@
|
||||
system = "x86_64-linux";
|
||||
pkgs = nixpkgs.legacyPackages.${system};
|
||||
pkgs-unstable = nixpkgs-unstable.legacyPackages.${system};
|
||||
|
||||
mkHost = hostname: nixpkgs.lib.nixosSystem {
|
||||
modules = [
|
||||
./hosts/${hostname}/hardware-configuration.nix
|
||||
./hosts/${hostname}/disko.nix
|
||||
./system
|
||||
home-manager.nixosModules.home-manager
|
||||
{
|
||||
powerManagement.enable = true;
|
||||
system.stateVersion = "25.11";
|
||||
home-manager = {
|
||||
users.chris = import ./home;
|
||||
extraSpecialArgs = {
|
||||
inherit inputs;
|
||||
inherit pkgs-unstable;
|
||||
inherit try-cli;
|
||||
inherit voxtype;
|
||||
inherit walker;
|
||||
inherit impermanence;
|
||||
inherit hostname;
|
||||
};
|
||||
};
|
||||
}
|
||||
];
|
||||
specialArgs = {
|
||||
inherit inputs;
|
||||
inherit pkgs-unstable;
|
||||
inherit impermanence;
|
||||
inherit disko;
|
||||
inherit hostname;
|
||||
};
|
||||
};
|
||||
in {
|
||||
nixosConfigurations = {
|
||||
stationette = nixpkgs.lib.nixosSystem {
|
||||
modules = [
|
||||
./hardware-configuration.nix
|
||||
./hardware
|
||||
./system
|
||||
home-manager.nixosModules.home-manager
|
||||
{
|
||||
powerManagement.enable = true;
|
||||
system.stateVersion = "25.11";
|
||||
home-manager = {
|
||||
users.chris = import ./home;
|
||||
extraSpecialArgs = {
|
||||
inherit inputs;
|
||||
inherit pkgs-unstable;
|
||||
inherit try-cli;
|
||||
inherit voxtype;
|
||||
inherit walker;
|
||||
inherit impermanence;
|
||||
};
|
||||
};
|
||||
}
|
||||
];
|
||||
specialArgs = {
|
||||
inherit inputs;
|
||||
inherit pkgs-unstable;
|
||||
inherit impermanence;
|
||||
inherit disko;
|
||||
};
|
||||
};
|
||||
stationette = mkHost "stationette";
|
||||
station = mkHost "station";
|
||||
};
|
||||
|
||||
# Standalone home-manager configuration entrypoint
|
||||
|
||||
15
hosts/station/hardware-configuration.nix
Normal file
15
hosts/station/hardware-configuration.nix
Normal file
@@ -0,0 +1,15 @@
|
||||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||
|
||||
fileSystems."/persist" = {
|
||||
device = "/dev/disk/by-partlabel/disk-station-root";
|
||||
neededForBoot = true;
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=persist" ];
|
||||
};
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
{ pkgs, ... }:
|
||||
{ pkgs, hostname, ... }:
|
||||
|
||||
{
|
||||
boot = {
|
||||
@@ -48,7 +48,7 @@
|
||||
"splash"
|
||||
];
|
||||
bootspec.enable = true;
|
||||
resumeDevice = "/dev/disk/by-partlabel/disk-stationette-root";
|
||||
resumeDevice = "/dev/disk/by-partlabel/disk-${hostname}-root";
|
||||
};
|
||||
|
||||
systemd = {
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
{ ... }:
|
||||
{ hostname, ... }:
|
||||
|
||||
{
|
||||
networking = {
|
||||
hostName = "stationette";
|
||||
hostName = hostname;
|
||||
networkmanager.enable = true;
|
||||
wireless = {
|
||||
iwd.enable = true;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ pkgs, pkgs-unstable, ... }:
|
||||
{ pkgs, pkgs-unstable, hostname, ... }:
|
||||
|
||||
{
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
withUWSM = true;
|
||||
};
|
||||
steam = {
|
||||
enable = true;
|
||||
enable = hostname == "station";
|
||||
remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play
|
||||
dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server
|
||||
localNetworkGameTransfers.openFirewall = true; # Open ports in the firewall for Steam Local Network Game Transfers
|
||||
|
||||
Reference in New Issue
Block a user