Advance forge rollout, Ethereum rails, and NBC sources
This commit is contained in:
parent
be26313225
commit
7d84510eac
88 changed files with 11230 additions and 302 deletions
59
flake.nix
59
flake.nix
|
|
@ -13,6 +13,10 @@
|
|||
nixosModules = rec {
|
||||
ec-node = import ./nix/modules/ec-node.nix;
|
||||
ec-runner = import ./nix/modules/ec-runner.nix;
|
||||
ec-netboot = import ./nix/modules/ec-netboot.nix;
|
||||
ec-ipxe-qemu = import ./nix/modules/ec-ipxe-qemu.nix;
|
||||
ec-op-stack = import ./nix/modules/ec-op-stack.nix;
|
||||
ec-publisher-guest = import ./nix/modules/ec-publisher-guest.nix;
|
||||
default = ec-node;
|
||||
};
|
||||
in
|
||||
|
|
@ -29,11 +33,35 @@
|
|||
./nix/nixos/ec-runner.nix
|
||||
] ++ extraModules;
|
||||
};
|
||||
mkPublisher = system: extraModules:
|
||||
nixpkgs.lib.nixosSystem {
|
||||
inherit system;
|
||||
specialArgs = { inherit self; };
|
||||
modules = [
|
||||
./nix/nixos/ec-runner.nix
|
||||
self.nixosModules.ec-publisher-guest
|
||||
] ++ extraModules;
|
||||
};
|
||||
in
|
||||
{
|
||||
# Base runner system (for normal installs).
|
||||
ec-runner-aarch64 = mkRunner "aarch64-linux" [ ];
|
||||
ec-runner-x86_64 = mkRunner "x86_64-linux" [ ];
|
||||
ec-publisher-x86_64 = mkPublisher "x86_64-linux" [ ];
|
||||
|
||||
# Sovereign forge host (git.every.channel) managed from every.channel.
|
||||
ecp-forge = nixpkgs.lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
specialArgs = { inherit self; };
|
||||
modules = [
|
||||
agenix.nixosModules.default
|
||||
self.nixosModules.ec-node
|
||||
self.nixosModules.ec-netboot
|
||||
self.nixosModules.ec-ipxe-qemu
|
||||
self.nixosModules.ec-op-stack
|
||||
./nix/nixos/ecp-forge.nix
|
||||
];
|
||||
};
|
||||
|
||||
# Netboot artifacts (iPXE/PXE).
|
||||
ec-runner-aarch64-netboot = mkRunner "aarch64-linux" [
|
||||
|
|
@ -86,6 +114,31 @@
|
|||
})
|
||||
];
|
||||
|
||||
ec-publisher-x86_64-netboot = mkPublisher "x86_64-linux" [
|
||||
({ modulesPath, ... }: {
|
||||
imports = [ (modulesPath + "/installer/netboot/netboot-minimal.nix") ];
|
||||
})
|
||||
({ ... }: {
|
||||
services.every-channel.runner.overlayRoot.enable = false;
|
||||
})
|
||||
({ config, pkgs, ... }: {
|
||||
system.build.netboot = pkgs.linkFarm "ec-publisher-netboot" [
|
||||
{
|
||||
name = "kernel";
|
||||
path = "${config.system.build.kernel}/${config.system.boot.loader.kernelFile}";
|
||||
}
|
||||
{
|
||||
name = "initrd";
|
||||
path = "${config.system.build.netbootRamdisk}/initrd";
|
||||
}
|
||||
{
|
||||
name = "netboot.ipxe";
|
||||
path = "${config.system.build.netbootIpxeScript}/netboot.ipxe";
|
||||
}
|
||||
];
|
||||
})
|
||||
];
|
||||
|
||||
# Installer ISO (primarily for x86_64 bring-up).
|
||||
ec-runner-x86_64-iso = mkRunner "x86_64-linux" [
|
||||
({ modulesPath, ... }: {
|
||||
|
|
@ -138,6 +191,8 @@
|
|||
packages = {
|
||||
agenix = agenixPkg;
|
||||
fj = pkgs.forgejo-cli;
|
||||
foundry = pkgs.foundry;
|
||||
solc = pkgs.solc;
|
||||
ec-node = pkgs.callPackage ./nix/pkgs/ec-node.nix { };
|
||||
ec-cli = pkgs.callPackage ./nix/pkgs/ec-cli.nix { };
|
||||
};
|
||||
|
|
@ -157,6 +212,8 @@
|
|||
nodePackages.wrangler
|
||||
agenixPkg
|
||||
forgejo-cli
|
||||
foundry
|
||||
solc
|
||||
uv
|
||||
git
|
||||
just
|
||||
|
|
@ -188,6 +245,8 @@
|
|||
ffmpeg
|
||||
agenixPkg
|
||||
forgejo-cli
|
||||
foundry
|
||||
solc
|
||||
git
|
||||
];
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue