add prophecy and pxe boot installer thingy

This commit is contained in:
Shelvacu
2025-04-26 22:10:09 -07:00
committed by Shelvacu on fw
parent cfd2828dc2
commit 1b11e0b79f
3 changed files with 63 additions and 280 deletions

294
flake.lock generated
View File

@@ -34,54 +34,6 @@
"type": "github"
}
},
"determinate-nix": {
"inputs": {
"flake-compat": "flake-compat",
"flake-parts": "flake-parts",
"git-hooks-nix": "git-hooks-nix",
"nixpkgs": [
"nixpkgs"
],
"nixpkgs-23-11": "nixpkgs-23-11",
"nixpkgs-regression": "nixpkgs-regression"
},
"locked": {
"lastModified": 1744427264,
"narHash": "sha256-yzm5x2eFM1m3S47D/1k/dmMIV+457j3wOAeH6Uyte3E=",
"rev": "a706827799eef0e75a9b7fbed24b96696804f087",
"revCount": 20093,
"type": "tarball",
"url": "https://api.flakehub.com/f/pinned/DeterminateSystems/nix-src/3.3.1/01962812-e57c-7020-b84f-921e36b52cdf/source.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://flakehub.com/f/DeterminateSystems/nix-src/3.0.0"
}
},
"determinate-nix-unstable": {
"inputs": {
"flake-compat": "flake-compat_2",
"flake-parts": "flake-parts_2",
"git-hooks-nix": "git-hooks-nix_2",
"nixpkgs": [
"nixpkgs-unstable"
],
"nixpkgs-23-11": "nixpkgs-23-11_2",
"nixpkgs-regression": "nixpkgs-regression_2"
},
"locked": {
"lastModified": 1744427264,
"narHash": "sha256-yzm5x2eFM1m3S47D/1k/dmMIV+457j3wOAeH6Uyte3E=",
"rev": "a706827799eef0e75a9b7fbed24b96696804f087",
"revCount": 20093,
"type": "tarball",
"url": "https://api.flakehub.com/f/pinned/DeterminateSystems/nix-src/3.3.1/01962812-e57c-7020-b84f-921e36b52cdf/source.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://flakehub.com/f/DeterminateSystems/nix-src/3.0.0"
}
},
"devshell": {
"inputs": {
"nixpkgs": [
@@ -261,11 +213,11 @@
"flake-compat": {
"flake": false,
"locked": {
"lastModified": 1733328505,
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
"lastModified": 1696426674,
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
"type": "github"
},
"original": {
@@ -277,11 +229,11 @@
"flake-compat_2": {
"flake": false,
"locked": {
"lastModified": 1733328505,
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
"lastModified": 1696426674,
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
"type": "github"
},
"original": {
@@ -293,11 +245,11 @@
"flake-compat_3": {
"flake": false,
"locked": {
"lastModified": 1696426674,
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
"lastModified": 1673956053,
"narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
"rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
"type": "github"
},
"original": {
@@ -309,11 +261,11 @@
"flake-compat_4": {
"flake": false,
"locked": {
"lastModified": 1696426674,
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
"lastModified": 1673956053,
"narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
"rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
"type": "github"
},
"original": {
@@ -323,38 +275,6 @@
}
},
"flake-compat_5": {
"flake": false,
"locked": {
"lastModified": 1673956053,
"narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"flake-compat_6": {
"flake": false,
"locked": {
"lastModified": 1673956053,
"narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"flake-compat_7": {
"locked": {
"lastModified": 1688025799,
"narHash": "sha256-ktpB4dRtnksm9F5WawoIkEneh1nrEvuxb5lJFt1iOyw=",
@@ -369,7 +289,7 @@
"type": "github"
}
},
"flake-compat_8": {
"flake-compat_6": {
"locked": {
"lastModified": 1733328505,
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
@@ -384,48 +304,6 @@
}
},
"flake-parts": {
"inputs": {
"nixpkgs-lib": [
"determinate-nix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1733312601,
"narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-parts_2": {
"inputs": {
"nixpkgs-lib": [
"determinate-nix-unstable",
"nixpkgs"
]
},
"locked": {
"lastModified": 1733312601,
"narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-parts_3": {
"inputs": {
"nixpkgs-lib": [
"nixvim",
@@ -446,7 +324,7 @@
"type": "github"
}
},
"flake-parts_4": {
"flake-parts_2": {
"inputs": {
"nixpkgs-lib": [
"nixvim-unstable",
@@ -565,68 +443,6 @@
"type": "github"
}
},
"git-hooks-nix": {
"inputs": {
"flake-compat": [
"determinate-nix"
],
"gitignore": [
"determinate-nix"
],
"nixpkgs": [
"determinate-nix",
"nixpkgs"
],
"nixpkgs-stable": [
"determinate-nix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1734279981,
"narHash": "sha256-NdaCraHPp8iYMWzdXAt5Nv6sA3MUzlCiGiR586TCwo0=",
"owner": "cachix",
"repo": "git-hooks.nix",
"rev": "aa9f40c906904ebd83da78e7f328cd8aeaeae785",
"type": "github"
},
"original": {
"owner": "cachix",
"repo": "git-hooks.nix",
"type": "github"
}
},
"git-hooks-nix_2": {
"inputs": {
"flake-compat": [
"determinate-nix-unstable"
],
"gitignore": [
"determinate-nix-unstable"
],
"nixpkgs": [
"determinate-nix-unstable",
"nixpkgs"
],
"nixpkgs-stable": [
"determinate-nix-unstable",
"nixpkgs"
]
},
"locked": {
"lastModified": 1734279981,
"narHash": "sha256-NdaCraHPp8iYMWzdXAt5Nv6sA3MUzlCiGiR586TCwo0=",
"owner": "cachix",
"repo": "git-hooks.nix",
"rev": "aa9f40c906904ebd83da78e7f328cd8aeaeae785",
"type": "github"
},
"original": {
"owner": "cachix",
"repo": "git-hooks.nix",
"type": "github"
}
},
"gitignore": {
"inputs": {
"nixpkgs": [
@@ -1050,7 +866,7 @@
},
"nix-search-cli": {
"inputs": {
"flake-compat": "flake-compat_5",
"flake-compat": "flake-compat_3",
"flake-utils": [
"flake-utils"
],
@@ -1075,7 +891,7 @@
},
"nix-search-cli-unstable": {
"inputs": {
"flake-compat": "flake-compat_6",
"flake-compat": "flake-compat_4",
"flake-utils": [
"flake-utils"
],
@@ -1100,7 +916,7 @@
},
"nixos-apple-silicon-unstable": {
"inputs": {
"flake-compat": "flake-compat_7",
"flake-compat": "flake-compat_5",
"nixpkgs": [
"nixpkgs-unstable"
],
@@ -1150,38 +966,6 @@
"type": "indirect"
}
},
"nixpkgs-23-11": {
"locked": {
"lastModified": 1717159533,
"narHash": "sha256-oamiKNfr2MS6yH64rUn99mIZjc45nGJlj9eGth/3Xuw=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "a62e6edd6d5e1fa0329b8653c801147986f8d446",
"type": "github"
},
"original": {
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "a62e6edd6d5e1fa0329b8653c801147986f8d446",
"type": "github"
}
},
"nixpkgs-23-11_2": {
"locked": {
"lastModified": 1717159533,
"narHash": "sha256-oamiKNfr2MS6yH64rUn99mIZjc45nGJlj9eGth/3Xuw=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "a62e6edd6d5e1fa0329b8653c801147986f8d446",
"type": "github"
},
"original": {
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "a62e6edd6d5e1fa0329b8653c801147986f8d446",
"type": "github"
}
},
"nixpkgs-docs": {
"locked": {
"lastModified": 1705957679,
@@ -1214,38 +998,6 @@
"type": "github"
}
},
"nixpkgs-regression": {
"locked": {
"lastModified": 1643052045,
"narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2",
"type": "github"
},
"original": {
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2",
"type": "github"
}
},
"nixpkgs-regression_2": {
"locked": {
"lastModified": 1643052045,
"narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2",
"type": "github"
},
"original": {
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2",
"type": "github"
}
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1745088452,
@@ -1264,8 +1016,8 @@
"nixvim": {
"inputs": {
"devshell": "devshell",
"flake-compat": "flake-compat_8",
"flake-parts": "flake-parts_3",
"flake-compat": "flake-compat_6",
"flake-parts": "flake-parts",
"git-hooks": "git-hooks",
"home-manager": [
"home-manager"
@@ -1294,7 +1046,7 @@
},
"nixvim-unstable": {
"inputs": {
"flake-parts": "flake-parts_4",
"flake-parts": "flake-parts_2",
"nixpkgs": [
"nixpkgs-unstable"
],
@@ -1508,7 +1260,7 @@
},
"purescript-overlay": {
"inputs": {
"flake-compat": "flake-compat_3",
"flake-compat": "flake-compat",
"nixpkgs": [
"nix-inspect",
"nci",
@@ -1533,7 +1285,7 @@
},
"purescript-overlay_2": {
"inputs": {
"flake-compat": "flake-compat_4",
"flake-compat": "flake-compat_2",
"nixpkgs": [
"nix-inspect-unstable",
"nci",
@@ -1592,8 +1344,6 @@
},
"root": {
"inputs": {
"determinate-nix": "determinate-nix",
"determinate-nix-unstable": "determinate-nix-unstable",
"disko": "disko",
"disko-unstable": "disko-unstable",
"dns": "dns",

View File

@@ -97,14 +97,6 @@
url = "github:numtide/treefmt-nix";
inputs.nixpkgs.follows = "nixpkgs-unstable";
};
determinate-nix = {
url = "https://flakehub.com/f/DeterminateSystems/nix-src/3.0.0";
inputs.nixpkgs.follows = "nixpkgs";
};
determinate-nix-unstable = {
url = "https://flakehub.com/f/DeterminateSystems/nix-src/3.0.0";
inputs.nixpkgs.follows = "nixpkgs-unstable";
};
};
outputs =
@@ -241,6 +233,14 @@
};
lp0 = mkNixosConfig { module = ./lp0; };
shel-installer = mkNixosConfig { module = ./installer.nix; };
shel-installer-pxe = mkNixosConfig {
module = { modulesPath, ... }: {
imports = [
./installer.nix
(modulesPath + "/installer/netboot/netboot-minimal.nix")
];
};
};
fw = mkNixosConfig {
module = ./fw;
inp = [
@@ -262,6 +262,10 @@
module = ./toptop;
system = "x86_64-linux";
};
prophecy = mkNixosConfig {
module = ./prophecy;
system = "x86_64-linux";
};
};
nixOnDroidConfigurations.default = nix-on-droid.lib.nixOnDroidConfiguration {
@@ -332,6 +336,8 @@
shel-installer = toplevelOf "shel-installer";
toptop = toplevelOf "toptop";
tt = toptop;
prophecy = toplevelOf "prophecy";
prop = prophecy;
iso = self.nixosConfigurations.shel-installer.config.system.build.isoImage;
check-triple-dezert = self.checks.x86_64-linux.triple-dezert.driver;
check-trip = check-triple-dezert;
@@ -447,6 +453,7 @@
_plain = mkPlain pkgs-unstable;
plain = _plain.config.vacu.withAsserts _plain;
treefmtEval = inputs.treefmt-nix.lib.evalModule pkgs-unstable ./treefmt.nix;
pxe-build = self.nixosConfigurations.shel-installer-pxe.config.system.build;
in
{
formatter = treefmtEval.config.build.wrapper;
@@ -498,6 +505,8 @@
nix-inspect = inputs.nix-inspect.packages.${system}.default;
nix-search-cli = inputs.nix-search-cli.packages.${system}.default;
openterface-qt = pkgs.callPackage ./packages/openterface-qt.nix { };
pxe-kernel = pxe-build.kernel;
pxe-initrd = pxe-build.netbootRamdisk;
# rg-cubexx-v1-0-1 = pkgs.fetchurlWithWetransfer {
# url = "https://we.tl/t-nwhCNkgXwG";
# name = "cxm_rgcubexx-v1-0-1-en32gb-2401018_2024-10-19_0631.zip";

24
prophecy/default.nix Normal file
View File

@@ -0,0 +1,24 @@
{
...
}:
{
imports = [];
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
boot.loader.efi.efiSysMountPoint = "/boot/EFI";
fileSystems."/" = {
fsType = "xfs";
device = "todo";
};
vacu.hostName = "prophecy";
vacu.shortHostName = "prop";
vacu.shell.color = "blue";
vacu.verifySystem.expectedMac = "TODO";
vacu.systemKind = "server";
networking.networkmanager.enable = true;
services.openssh.enable = true;
system.stateVersion = "24.11";
}