refactor(deploy-rpi5): switch to nixos-hardware module
This commit is contained in:
parent
a48005eec4
commit
7501370ae9
3 changed files with 30 additions and 67 deletions
|
|
@ -1,20 +1,6 @@
|
|||
{ config, lib, ... }:
|
||||
{
|
||||
options.aether.deploy.rpi5 = {
|
||||
_internal.kernelPackages = lib.mkOption {
|
||||
type = lib.types.raw;
|
||||
description = ''
|
||||
Kernel package to use for Raspberry Pi 5 support.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
config =
|
||||
let cfg = config.aether.deploy.rpi5;
|
||||
in {
|
||||
nixpkgs.system = "aarch64-linux";
|
||||
boot.kernelPackages = cfg._internal.kernelPackages;
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = false;
|
||||
};
|
||||
nixpkgs.system = "aarch64-linux";
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = false;
|
||||
}
|
||||
|
|
|
|||
60
flake.lock
generated
60
flake.lock
generated
|
|
@ -23,20 +23,6 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat": {
|
||||
"locked": {
|
||||
"lastModified": 1696426674,
|
||||
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||
"revCount": 57,
|
||||
"type": "tarball",
|
||||
"url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
|
||||
}
|
||||
},
|
||||
"forgejo-tokyo-night": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
|
|
@ -72,13 +58,28 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixos-hardware": {
|
||||
"locked": {
|
||||
"lastModified": 1743420942,
|
||||
"narHash": "sha256-b/exDDQSLmENZZgbAEI3qi9yHkuXAXCPbormD8CSJXo=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixos-hardware",
|
||||
"rev": "de6fc5551121c59c01e2a3d45b277a6d05077bc4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"repo": "nixos-hardware",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1743448293,
|
||||
"narHash": "sha256-bmEPmSjJakAp/JojZRrUvNcDX2R5/nuX6bm+seVaGhs=",
|
||||
"lastModified": 1743583204,
|
||||
"narHash": "sha256-F7n4+KOIfWrwoQjXrL2wD9RhFYLs2/GGe/MQY1sSdlE=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "77b584d61ff80b4cef9245829a6f1dfad5afdfa3",
|
||||
"rev": "2c8d3f48d33929642c1c12cd243df4cc7d2ce434",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -92,29 +93,8 @@
|
|||
"inputs": {
|
||||
"agenix": "agenix",
|
||||
"forgejo-tokyo-night": "forgejo-tokyo-night",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"rpi5-kernel": "rpi5-kernel"
|
||||
}
|
||||
},
|
||||
"rpi5-kernel": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1704485878,
|
||||
"narHash": "sha256-i7UH31IZyil99EUB5qnQJAiszFkea1B1yZf5pQEDIYg=",
|
||||
"owner": "vriska",
|
||||
"repo": "nix-rpi5",
|
||||
"rev": "ac9942532e1dc2f825ad2aa3a6d31bfbd3b42eed",
|
||||
"type": "gitlab"
|
||||
},
|
||||
"original": {
|
||||
"owner": "vriska",
|
||||
"repo": "nix-rpi5",
|
||||
"type": "gitlab"
|
||||
"nixos-hardware": "nixos-hardware",
|
||||
"nixpkgs": "nixpkgs"
|
||||
}
|
||||
},
|
||||
"systems": {
|
||||
|
|
|
|||
17
flake.nix
17
flake.nix
|
|
@ -3,9 +3,7 @@ description = "Aether - web server configuration";
|
|||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
|
||||
rpi5-kernel.url = "gitlab:vriska/nix-rpi5";
|
||||
rpi5-kernel.inputs.nixpkgs.follows = "nixpkgs";
|
||||
nixos-hardware.url = "github:NixOS/nixos-hardware";
|
||||
|
||||
agenix.url = "github:ryantm/agenix";
|
||||
agenix.inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
|
@ -15,7 +13,7 @@ inputs = {
|
|||
forgejo-tokyo-night.flake = false;
|
||||
};
|
||||
|
||||
outputs = inputs@{ self, nixpkgs, agenix, rpi5-kernel, ... }:
|
||||
outputs = inputs@{ self, nixpkgs, nixos-hardware, agenix, ... }:
|
||||
let
|
||||
inherit (nixpkgs) lib;
|
||||
|
||||
|
|
@ -23,8 +21,7 @@ outputs = inputs@{ self, nixpkgs, agenix, rpi5-kernel, ... }:
|
|||
# (Mostly used for injecting flake inputs)
|
||||
extraConfig = {
|
||||
deploy-rpi5 = {
|
||||
aether.deploy.rpi5._internal.kernelPackages = lib.mkDefault
|
||||
rpi5-kernel.legacyPackages.aarch64-linux.linuxPackages_rpi5;
|
||||
imports = [ nixos-hardware.nixosModules.raspberry-pi-5 ];
|
||||
};
|
||||
};
|
||||
|
||||
|
|
@ -47,11 +44,11 @@ outputs = inputs@{ self, nixpkgs, agenix, rpi5-kernel, ... }:
|
|||
(name: ./deploy/${lib.removePrefix "deploy-" name});
|
||||
|
||||
modulesWithCfg = builtins.mapAttrs (k: v: {
|
||||
imports = [ v ];
|
||||
} // extraConfig.${k} or {}) modules;
|
||||
imports = [ v (extraConfig.${k} or {}) ];
|
||||
}) modules;
|
||||
deploymentsWithCfg = builtins.mapAttrs (k: v: {
|
||||
imports = [ v ];
|
||||
} // extraConfig.${k} or {}) deployments;
|
||||
imports = [ v (extraConfig.${k} or {}) ];
|
||||
}) deployments;
|
||||
in {
|
||||
nixosModules =
|
||||
modulesWithCfg // deploymentsWithCfg // {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue