Fix susano-minimal build, switch to unstable nixpkgs

This commit is contained in:
Alexander
2026-02-05 15:39:22 +01:00
parent d8d0a9cd2c
commit b665767f35
4 changed files with 88 additions and 43 deletions
+3 -2
View File
@@ -119,11 +119,11 @@
### ###
# Proxmox Homelab Machine # Proxmox Homelab Machine
### ###
susano-minimal = mkComputer susano-minimal = mkUnstableComputer
./machines/susano/minimal ./machines/susano/minimal
[] []
"susano"; "susano";
susano = mkComputer susano = mkUnstableComputer
./machines/susano/main ./machines/susano/main
[ [
sops-nix.nixosModules.sops sops-nix.nixosModules.sops
@@ -250,6 +250,7 @@
"x86_64-linux" = { "x86_64-linux" = {
default = upkgs.mkShell { default = upkgs.mkShell {
buildInputs = with upkgs; [ buildInputs = with upkgs; [
opencode
]; ];
shellHook = '' shellHook = ''
+28 -14
View File
@@ -1,16 +1,23 @@
{
{ config, pkgs, extraHomeModules, inputs, lib, username, ... }: config,
pkgs,
extraHomeModules,
inputs,
lib,
username,
...
}:
let let
flakeInputs = lib.filterAttrs (_: lib.isType "flake") inputs; flakeInputs = lib.filterAttrs (_: lib.isType "flake") inputs;
in { in
imports = {
[ imports = [
../../minimal.nix ../../minimal.nix
../hardware-configuration.nix ../hardware-configuration.nix
../disko-config.nix ../disko-config.nix
]; ];
nixpkgs = { nixpkgs = {
# You can add overlays here # You can add overlays here
@@ -33,13 +40,16 @@ in {
nix-path = config.nix.nixPath; nix-path = config.nix.nixPath;
# Allow user to reubild nixos without sudo # Allow user to reubild nixos without sudo
trusted-users = [ "root" username ]; trusted-users = [
"root"
username
];
}; };
# Opinionated: disable channels # Opinionated: disable channels
channel.enable = false; channel.enable = false;
# Opinionated: make flake registry and nix path match flake inputs # Opinionated: make flake registry and nix path match flake inputs
registry = lib.mapAttrs (_: flake: {inherit flake;}) flakeInputs; registry = lib.mapAttrs (_: flake: { inherit flake; }) flakeInputs;
nixPath = lib.mapAttrsToList (n: _: "${n}=flake:${n}") flakeInputs; nixPath = lib.mapAttrsToList (n: _: "${n}=flake:${n}") flakeInputs;
}; };
@@ -74,7 +84,10 @@ in {
isNormalUser = true; isNormalUser = true;
description = "NixOS Proxmox Builder"; description = "NixOS Proxmox Builder";
hashedPassword = "$6$00vM.zXgahhw6KQO$BpCilKSdUNDlIaOlGrWJAdzh7KCIYoW3uoC1VV9I0eaJyui7J0Yv6BCajGwrn0JwrgWmvOfEMPeyGs4/wWD9q."; hashedPassword = "$6$00vM.zXgahhw6KQO$BpCilKSdUNDlIaOlGrWJAdzh7KCIYoW3uoC1VV9I0eaJyui7J0Yv6BCajGwrn0JwrgWmvOfEMPeyGs4/wWD9q.";
extraGroups = [ "networkmanager" "wheel" ]; extraGroups = [
"networkmanager"
"wheel"
];
packages = with pkgs; [ packages = with pkgs; [
]; ];
openssh.authorizedKeys.keys = [ openssh.authorizedKeys.keys = [
@@ -112,12 +125,13 @@ in {
useGlobalPkgs = true; useGlobalPkgs = true;
useUserPackages = true; useUserPackages = true;
backupFileExtension = "backup"; backupFileExtension = "backup";
extraSpecialArgs = { inherit inputs; }; extraSpecialArgs = { inherit inputs username; };
users."${username}" = { users."${username}" = {
imports = [ imports = [
./home.nix ./home.nix
] ++ extraHomeModules; ]
++ extraHomeModules;
}; };
}; };
+29 -14
View File
@@ -1,16 +1,24 @@
{ config, pkgs, extraHomeModules, inputs, lib, username, ... }: {
config,
pkgs,
extraHomeModules,
inputs,
lib,
username,
...
}:
let let
flakeInputs = lib.filterAttrs (_: lib.isType "flake") inputs; flakeInputs = lib.filterAttrs (_: lib.isType "flake") inputs;
in { in
imports = {
[ imports = [
../../minimal.nix ../../minimal.nix
../hardware-configuration.nix ../hardware-configuration.nix
../disko-config.nix ../disko-config.nix
./sops.nix ./sops.nix
]; ];
nixpkgs = { nixpkgs = {
# You can add overlays here # You can add overlays here
@@ -42,13 +50,16 @@ in {
nix-path = config.nix.nixPath; nix-path = config.nix.nixPath;
# Allow user to reubild nixos without sudo # Allow user to reubild nixos without sudo
trusted-users = [ "root" username ]; trusted-users = [
"root"
username
];
}; };
# Opinionated: disable channels # Opinionated: disable channels
channel.enable = false; channel.enable = false;
# Opinionated: make flake registry and nix path match flake inputs # Opinionated: make flake registry and nix path match flake inputs
registry = lib.mapAttrs (_: flake: {inherit flake;}) flakeInputs; registry = lib.mapAttrs (_: flake: { inherit flake; }) flakeInputs;
nixPath = lib.mapAttrsToList (n: _: "${n}=flake:${n}") flakeInputs; nixPath = lib.mapAttrsToList (n: _: "${n}=flake:${n}") flakeInputs;
}; };
@@ -83,7 +94,10 @@ in {
isNormalUser = true; isNormalUser = true;
description = "NixOS Proxmox Homelab"; description = "NixOS Proxmox Homelab";
hashedPassword = "$6$7LSgOtcEozV0gkN9$pCltKL683UqJ3M7C4ZIgZsytAGtQS375g64ckuJQPFtUjxiGCxehJtkP91Pba.rIZNe3eZqnJfIQNwnJWmyVJ0"; hashedPassword = "$6$7LSgOtcEozV0gkN9$pCltKL683UqJ3M7C4ZIgZsytAGtQS375g64ckuJQPFtUjxiGCxehJtkP91Pba.rIZNe3eZqnJfIQNwnJWmyVJ0";
extraGroups = [ "networkmanager" "wheel" ]; extraGroups = [
"networkmanager"
"wheel"
];
packages = with pkgs; [ packages = with pkgs; [
]; ];
openssh.authorizedKeys.keys = [ openssh.authorizedKeys.keys = [
@@ -119,12 +133,13 @@ in {
useGlobalPkgs = true; useGlobalPkgs = true;
useUserPackages = true; useUserPackages = true;
backupFileExtension = "backup"; backupFileExtension = "backup";
extraSpecialArgs = { inherit inputs; }; extraSpecialArgs = { inherit inputs username; };
users."${username}" = { users."${username}" = {
imports = [ imports = [
./home.nix ./home.nix
] ++ extraHomeModules; ]
++ extraHomeModules;
}; };
}; };
+28 -13
View File
@@ -1,15 +1,23 @@
{ config, pkgs, extraHomeModules, inputs, lib, username, ... }: {
config,
pkgs,
extraHomeModules,
inputs,
lib,
username,
...
}:
let let
flakeInputs = lib.filterAttrs (_: lib.isType "flake") inputs; flakeInputs = lib.filterAttrs (_: lib.isType "flake") inputs;
in { in
imports = {
[ imports = [
../../minimal.nix ../../minimal.nix
../hardware-configuration.nix ../hardware-configuration.nix
../disko-config.nix ../disko-config.nix
]; ];
nixpkgs = { nixpkgs = {
# You can add overlays here # You can add overlays here
@@ -41,13 +49,16 @@ in {
nix-path = config.nix.nixPath; nix-path = config.nix.nixPath;
# Allow user to reubild nixos without sudo # Allow user to reubild nixos without sudo
trusted-users = [ "root" username ]; trusted-users = [
"root"
username
];
}; };
# Opinionated: disable channels # Opinionated: disable channels
channel.enable = false; channel.enable = false;
# Opinionated: make flake registry and nix path match flake inputs # Opinionated: make flake registry and nix path match flake inputs
registry = lib.mapAttrs (_: flake: {inherit flake;}) flakeInputs; registry = lib.mkForce (lib.mapAttrs (_: flake: { inherit flake; }) flakeInputs);
nixPath = lib.mapAttrsToList (n: _: "${n}=flake:${n}") flakeInputs; nixPath = lib.mapAttrsToList (n: _: "${n}=flake:${n}") flakeInputs;
}; };
@@ -82,7 +93,10 @@ in {
isNormalUser = true; isNormalUser = true;
description = "NixOS Proxmox Homelab"; description = "NixOS Proxmox Homelab";
hashedPassword = "$6$7LSgOtcEozV0gkN9$pCltKL683UqJ3M7C4ZIgZsytAGtQS375g64ckuJQPFtUjxiGCxehJtkP91Pba.rIZNe3eZqnJfIQNwnJWmyVJ0"; hashedPassword = "$6$7LSgOtcEozV0gkN9$pCltKL683UqJ3M7C4ZIgZsytAGtQS375g64ckuJQPFtUjxiGCxehJtkP91Pba.rIZNe3eZqnJfIQNwnJWmyVJ0";
extraGroups = [ "networkmanager" "wheel" ]; extraGroups = [
"networkmanager"
"wheel"
];
packages = with pkgs; [ packages = with pkgs; [
]; ];
openssh.authorizedKeys.keys = [ openssh.authorizedKeys.keys = [
@@ -118,12 +132,13 @@ in {
useGlobalPkgs = true; useGlobalPkgs = true;
useUserPackages = true; useUserPackages = true;
backupFileExtension = "backup"; backupFileExtension = "backup";
extraSpecialArgs = { inherit inputs; }; extraSpecialArgs = { inherit inputs username; };
users."${username}" = { users."${username}" = {
imports = [ imports = [
./home.nix ./home.nix
] ++ extraHomeModules; ]
++ extraHomeModules;
}; };
}; };