lkjsad
This commit is contained in:
13
flake.nix
13
flake.nix
@@ -205,11 +205,14 @@
|
||||
default = self.overlays.pbsdspkgs;
|
||||
};
|
||||
|
||||
packages = forAllSystems ({ pkgs, lib, ... }: let
|
||||
# TODO: by-name
|
||||
pbsdspkgs = lib.filterAttrs (name: value: lib.isDerivation value) (self.overlays.pbsdspkgs pkgs null).pbsds;
|
||||
in
|
||||
pbsdspkgs // { });
|
||||
packages = forAllSystems (
|
||||
{ pkgs, lib, ... }:
|
||||
let
|
||||
# TODO: by-name
|
||||
pbsdspkgs = lib.filterAttrs (_: lib.isDerivation) (self.overlays.pbsdspkgs pkgs null).pbsds;
|
||||
in
|
||||
pbsdspkgs // { }
|
||||
);
|
||||
|
||||
homeModules.jump = ./users/pbsds/modules/jump.nix;
|
||||
homeModules.micro = ./users/pbsds/modules/micro.nix;
|
||||
|
||||
@@ -5,19 +5,22 @@ let
|
||||
mkModule = extra-modules: domain: system: inputs: stateVersion: modules: hostname: ({ lib, ... }: {
|
||||
system.stateVersion = lib.mkDefault stateVersion; # TODO: home-manager
|
||||
|
||||
nixpkgs.hostPlatform = system;
|
||||
#nixpkgs.buildPlatform = buildSystem; # cross
|
||||
|
||||
imports = [
|
||||
./../profiles/base
|
||||
./nixos/${hostname}/configuration.nix
|
||||
inputs.home-manager.nixosModules.default
|
||||
#inputs.nix-index-database.nixosModules.nix-index # TODO: fix?
|
||||
] ++ modules ++ extra-modules;
|
||||
#++ inputs.flake-programs-sqlite.nixosModules.programs-sqlite; # TODO: make work
|
||||
|
||||
]
|
||||
++ modules
|
||||
++ extra-modules
|
||||
#++ inputs.flake-programs-sqlite.nixosModules.programs-sqlite # TODO: make work
|
||||
;
|
||||
|
||||
home-manager.useGlobalPkgs = true; # go brrr, reuse overrides
|
||||
home-manager.extraSpecialArgs = {
|
||||
inherit inputs;
|
||||
};
|
||||
home-manager.extraSpecialArgs = { inherit inputs; };
|
||||
home-manager.sharedModules = [
|
||||
inputs.sops-nix.homeManagerModules.sops
|
||||
inputs.nix-index-database.hmModules.nix-index
|
||||
@@ -54,55 +57,43 @@ let
|
||||
inherit inputs;
|
||||
};
|
||||
modules = [
|
||||
# TODO: specify this in mkModule?
|
||||
{
|
||||
nixpkgs.hostPlatform = system;
|
||||
#nixpkgs.buildPlatform = system;
|
||||
}
|
||||
(mkModule extra-modules domain system inputs stateVersion modules hostname)
|
||||
];
|
||||
};
|
||||
# TODO: move this to a file or separate flake
|
||||
mkHosts = mk: let
|
||||
ls = imports: { inherit imports; };
|
||||
hw = input-views.inputs-edge.nixos-hardware.nixosModules;
|
||||
#vf = input-views.inputs-edge.nixos-vf2.nixosModules;
|
||||
amd = ls [ hw.common-pc hw.common-pc-ssd hw.common-cpu-amd ];
|
||||
intel = ls [ hw.common-pc hw.common-pc-ssd hw.common-cpu-intel ./../hardware/gpu/intel.nix ];
|
||||
intel-novga = ls [ hw.common-pc hw.common-pc-ssd hw.common-cpu-intel-cpu-only ];
|
||||
cuda = ls [ ./../hardware/gpu/cuda.nix hw.common-gpu-nvidia-nonprime ];
|
||||
cuda-prime = ls [ ./../hardware/gpu/cuda.nix hw.common-gpu-nvidia ];
|
||||
rocm = ls [ ./../hardware/gpu/rocm.nix hw.common-gpu-amd ];
|
||||
# nspawn = ls [ "${nixos-nspawn}/nspawn-image.nix" { boot.isContainer = true; } ];
|
||||
hidpi = ls [ hw.common-hidpi ./../profiles/hidpi.nix ];
|
||||
p1005 = ./../hardware/printer/hp-laserjet-p1005.nix;
|
||||
au = ./../profiles/auto-upgrade.nix;
|
||||
ts1 = ./../profiles/tailscale-inner.nix;
|
||||
ts2 = ./../profiles/tailscale-outer.nix;
|
||||
tse = ./../profiles/tailscale-exit-node.nix;
|
||||
#rb = ./../profiles/known-hosts; # TODO
|
||||
nixld = ./../profiles/nix-ld.nix;
|
||||
dns64 = { config, ... }: {
|
||||
networking.nameservers = [ "2001:700:1:11::2:51" ]; # dns64.uninett.no
|
||||
networking.networkmanager.enable = true;
|
||||
networking.networkmanager.insertNameservers = config.networking.nameservers; # https://github.com/NixOS/nixpkgs/issues/61230
|
||||
networking.resolvconf.enable = false;
|
||||
mkHosts = mk:
|
||||
let
|
||||
hw = input-views.inputs-edge.nixos-hardware.nixosModules;
|
||||
#vf = input-views.inputs-edge.nixos-vf2.nixosModules;
|
||||
# nspawn = ls [ "${nixos-nspawn}/nspawn-image.nix" { boot.isContainer = true; } ];
|
||||
p1005 = ./../hardware/printer/hp-laserjet-p1005.nix;
|
||||
au = ./../profiles/auto-upgrade.nix;
|
||||
ts1 = ./../profiles/tailscale-inner.nix;
|
||||
ts2 = ./../profiles/tailscale-outer.nix;
|
||||
tse = ./../profiles/tailscale-exit-node.nix;
|
||||
#rb = ./../profiles/known-hosts; # TODO
|
||||
nixld = ./../profiles/nix-ld.nix;
|
||||
dns64 = { config, ... }: {
|
||||
networking.nameservers = [ "2001:700:1:11::2:51" ]; # dns64.uninett.no
|
||||
networking.networkmanager.enable = true;
|
||||
networking.networkmanager.insertNameservers = config.networking.nameservers; # https://github.com/NixOS/nixpkgs/issues/61230
|
||||
networking.resolvconf.enable = false;
|
||||
};
|
||||
in builtins.mapAttrs (hostname: curried: curried hostname) {
|
||||
#hostname "domain" "system" inputs "state" [ modules ... ]
|
||||
# asgaut = mk "pbsds.net" "riscv64-linux" input-views.inputs-2405 "24.05" [ hw.starfive-visionfive-2 ];
|
||||
# noximilien = mk "pbsds.net" "x86_64-linux" input-views.inputs-250T "24.11" [ ts1 au tse ];
|
||||
noximilien = mk "pbsds.net" "x86_64-linux" input-views.inputs-241T "24.11" [ ts1 au tse ];
|
||||
nord = mk "pbsds.net" "x86_64-linux" input-views.inputs-2411 "24.11" [ ts1 au ];
|
||||
sopp = mk "pbsds.net" "x86_64-linux" input-views.inputs-edge "24.11" [ ts1 au nixld p1005 ];
|
||||
bjarte = mk "pbsds.net" "x86_64-linux" input-views.inputs-edge "24.11" [ ts1 nixld ];
|
||||
bolle = mk "pbsds.net" "x86_64-linux" input-views.inputs-2505 "24.11" [ ts2 au ];
|
||||
eple = mk "pbsds.net" "x86_64-linux" input-views.inputs-2505 "24.11" [ ts1 au tse dns64 ];
|
||||
garp = mk "pbsds.net" "x86_64-linux" input-views.inputs-2505 "24.11" [ ts2 au ];
|
||||
# hasselknippe= mk "pbsds.net" "aarch64-linux" input-views.inputs-2405 "24.05" [ ts1 hw.pine64-pinebook-pro ];
|
||||
#gomperud smattkuken skrytebiffen skalkesnerken balleby bingus skjrlaltatjlstad
|
||||
#bergjlot snortheimsmoen ditlefsen skrukkerud podebusk zmaragd makrell alfnes blix urke pytte uddu imdorf rosenqvist
|
||||
};
|
||||
in builtins.mapAttrs (hostname: curried: curried hostname) {
|
||||
#hostname "domain" "system" inputs "state" [ modules ... ]
|
||||
# asgaut = mk "pbsds.net" "riscv64-linux" input-views.inputs-2405 "24.05" [ hw.starfive-visionfive-2 ];
|
||||
# noximilien = mk "pbsds.net" "x86_64-linux" input-views.inputs-250T "24.11" [ au ts1 tse intel ];
|
||||
noximilien = mk "pbsds.net" "x86_64-linux" input-views.inputs-241T "24.11" [ au ts1 tse intel ];
|
||||
nord = mk "pbsds.net" "x86_64-linux" input-views.inputs-2411 "24.11" [ au ts1 intel-novga hw.common-gpu-intel-sandy-bridge rocm hidpi ];
|
||||
sopp = mk "pbsds.net" "x86_64-linux" input-views.inputs-edge "24.11" [ au ts1 nixld intel cuda p1005 ];
|
||||
bjarte = mk "pbsds.net" "x86_64-linux" input-views.inputs-edge "24.11" [ ts1 nixld intel hw.lenovo-thinkpad-x1-7th-gen ];
|
||||
bolle = mk "pbsds.net" "x86_64-linux" input-views.inputs-2505 "24.11" [ au ts2 intel ];
|
||||
eple = mk "pbsds.net" "x86_64-linux" input-views.inputs-2505 "24.11" [ au ts1 tse dns64 intel rocm ];
|
||||
garp = mk "pbsds.net" "x86_64-linux" input-views.inputs-2505 "24.11" [ au ts2 intel-novga cuda ];
|
||||
# hasselknippe= mk "pbsds.net" "aarch64-linux" input-views.inputs-2405 "24.05" [ ts1 hw.pine64-pinebook-pro ];
|
||||
#gomperud smattkuken skrytebiffen skalkesnerken balleby bingus skjrlaltatjlstad
|
||||
#bergjlot snortheimsmoen ditlefsen skrukkerud podebusk zmaragd makrell alfnes blix urke pytte uddu imdorf rosenqvist
|
||||
};
|
||||
|
||||
in
|
||||
rec {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
{ inputs, config, pkgs, lib, ... }:
|
||||
{
|
||||
# Bootloader
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
@@ -22,6 +22,12 @@
|
||||
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
inputs.nixos-hardware.nixosModules.lenovo-thinkpad-x1-7th-gen
|
||||
inputs.nixos-hardware.nixosModules.common-pc
|
||||
inputs.nixos-hardware.nixosModules.common-pc-ssd
|
||||
inputs.nixos-hardware.nixosModules.common-cpu-intel
|
||||
../../../hardware/gpu/intel.nix
|
||||
|
||||
../../../profiles/sshd/ts-only.nix
|
||||
#../../../profiles/no-suspend.nix
|
||||
../../../profiles/oci/podman.nix
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
{ inputs, config, pkgs, lib, ... }:
|
||||
{
|
||||
# Bootloader
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
@@ -11,6 +11,11 @@
|
||||
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
inputs.nixos-hardware.nixosModules.common-pc
|
||||
inputs.nixos-hardware.nixosModules.common-pc-ssd
|
||||
inputs.nixos-hardware.nixosModules.common-cpu-intel
|
||||
../../../hardware/gpu/intel.nix
|
||||
|
||||
../../../profiles/sshd
|
||||
../../../profiles/nix-cgroups.nix
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
{ inputs, config, pkgs, lib, ... }:
|
||||
{
|
||||
# Bootloader
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
@@ -13,6 +13,13 @@
|
||||
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
inputs.nixos-hardware.nixosModules.common-pc
|
||||
inputs.nixos-hardware.nixosModules.common-pc-ssd
|
||||
inputs.nixos-hardware.nixosModules.common-cpu-intel
|
||||
../../../hardware/gpu/intel.nix
|
||||
inputs.nixos-hardware.nixosModules.common-gpu-amd
|
||||
../../../hardware/gpu/rocm.nix
|
||||
|
||||
../../../profiles/sshd
|
||||
../../../profiles/nix-cgroups.nix
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
{ inputs, config, pkgs, lib, ... }:
|
||||
{
|
||||
# Bootloader.
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
@@ -22,6 +22,12 @@
|
||||
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
inputs.nixos-hardware.nixosModules.common-pc
|
||||
inputs.nixos-hardware.nixosModules.common-pc-ssd
|
||||
inputs.nixos-hardware.nixosModules.common-cpu-intel-cpu-only
|
||||
inputs.nixos-hardware.nixosModules.common-gpu-nvidia-nonprime
|
||||
../../../hardware/gpu/cuda.nix
|
||||
|
||||
../../../profiles/sshd
|
||||
../../../profiles/nix-cgroups.nix
|
||||
#../../../profiles/no-suspend.nix
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
{ inputs, config, pkgs, lib, ... }:
|
||||
{
|
||||
# Bootloader
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
@@ -21,6 +21,15 @@
|
||||
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
inputs.nixos-hardware.nixosModules.common-pc
|
||||
inputs.nixos-hardware.nixosModules.common-pc-ssd
|
||||
inputs.nixos-hardware.nixosModules.common-cpu-intel-cpu-only
|
||||
inputs.nixos-hardware.nixosModules.common-gpu-intel-sandy-bridge
|
||||
inputs.nixos-hardware.nixosModules.common-gpu-amd
|
||||
../../../hardware/gpu/rocm.nix
|
||||
inputs.nixos-hardware.nixosModules.common-hidpi
|
||||
../../../profiles/hidpi.nix
|
||||
|
||||
../../../profiles/sshd
|
||||
#../../../profiles/oci/podman.nix
|
||||
#../../../profiles/oci/docker.nix
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
{ inputs, config, pkgs, lib, ... }:
|
||||
{
|
||||
# Bootloader
|
||||
boot.loader.grub.enable = true;
|
||||
@@ -6,6 +6,11 @@
|
||||
boot.loader.grub.useOSProber = true;
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
inputs.nixos-hardware.nixosModules.common-pc
|
||||
inputs.nixos-hardware.nixosModules.common-pc-ssd
|
||||
inputs.nixos-hardware.nixosModules.common-cpu-intel
|
||||
../../../hardware/gpu/intel.nix
|
||||
|
||||
../../../profiles/sshd
|
||||
#../../../profiles/oci/podman.nix
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ config, pkgs, lib, modulesPath, ... }:
|
||||
{ inputs, config, pkgs, lib, modulesPath, ... }:
|
||||
|
||||
{
|
||||
# Bootloader
|
||||
@@ -44,6 +44,13 @@
|
||||
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
inputs.nixos-hardware.nixosModules.common-pc
|
||||
inputs.nixos-hardware.nixosModules.common-pc-ssd
|
||||
inputs.nixos-hardware.nixosModules.common-cpu-intel
|
||||
../../../hardware/gpu/intel.nix
|
||||
inputs.nixos-hardware.nixosModules.common-gpu-nvidia-nonprime
|
||||
../../../hardware/gpu/cuda.nix
|
||||
|
||||
../../../profiles/sshd
|
||||
../../../profiles/earlyoom.nix
|
||||
../../../profiles/no-suspend.nix
|
||||
|
||||
Reference in New Issue
Block a user