chore(nix): add colmena

This commit is contained in:
Serĉanto de Scio 2024-08-23 17:50:00 +10:00
parent 88e4b1cb70
commit 1b000bd9b7
Signed by: sercanto
GPG key ID: A4122FF3971B6865
19 changed files with 155 additions and 63 deletions

View file

@ -800,6 +800,28 @@
"type": "github"
}
},
"colmena": {
"inputs": {
"flake-compat": "flake-compat_12",
"flake-utils": "flake-utils_23",
"nixpkgs": "nixpkgs_29",
"stable": "stable"
},
"locked": {
"lastModified": 1684127108,
"narHash": "sha256-01bfuSY4gnshhtqA1EJCw2CMsKkAx+dHS+sEpQ2+EAQ=",
"owner": "zhaofengli",
"repo": "colmena",
"rev": "5fdd743a11e7291bd8ac1e169d62ba6156c99be4",
"type": "github"
},
"original": {
"owner": "zhaofengli",
"ref": "v0.4.0",
"repo": "colmena",
"type": "github"
}
},
"customConfig": {
"locked": {
"lastModified": 1630400035,
@ -1438,6 +1460,22 @@
}
},
"flake-compat_13": {
"flake": false,
"locked": {
"lastModified": 1650374568,
"narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "b4a34015c698c7793d592d66adbab377907a2be8",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"flake-compat_14": {
"flake": false,
"locked": {
"lastModified": 1696426674,
@ -1833,6 +1871,21 @@
}
},
"flake-utils_23": {
"locked": {
"lastModified": 1659877975,
"narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_24": {
"locked": {
"lastModified": 1653893745,
"narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=",
@ -1847,7 +1900,7 @@
"type": "github"
}
},
"flake-utils_24": {
"flake-utils_25": {
"locked": {
"lastModified": 1659877975,
"narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=",
@ -1862,7 +1915,7 @@
"type": "github"
}
},
"flake-utils_25": {
"flake-utils_26": {
"locked": {
"lastModified": 1653893745,
"narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=",
@ -2231,7 +2284,7 @@
},
"gomod2nix_7": {
"inputs": {
"nixpkgs": "nixpkgs_29",
"nixpkgs": "nixpkgs_30",
"utils": "utils_12"
},
"locked": {
@ -2976,7 +3029,7 @@
},
"iohkNix_6": {
"inputs": {
"nixpkgs": "nixpkgs_33"
"nixpkgs": "nixpkgs_34"
},
"locked": {
"lastModified": 1629993366,
@ -3396,7 +3449,7 @@
},
"n2c_7": {
"inputs": {
"flake-utils": "flake-utils_25",
"flake-utils": "flake-utils_26",
"nixpkgs": [
"daedalus",
"tullia",
@ -3678,7 +3731,7 @@
},
"nix-nomad_7": {
"inputs": {
"flake-compat": "flake-compat_12",
"flake-compat": "flake-compat_13",
"flake-utils": [
"daedalus",
"tullia",
@ -3894,8 +3947,8 @@
},
"nix2container_8": {
"inputs": {
"flake-utils": "flake-utils_23",
"nixpkgs": "nixpkgs_30"
"flake-utils": "flake-utils_24",
"nixpkgs": "nixpkgs_31"
},
"locked": {
"lastModified": 1658567952,
@ -3971,11 +4024,11 @@
},
"nix_4": {
"inputs": {
"flake-compat": "flake-compat_13",
"flake-compat": "flake-compat_14",
"flake-parts": "flake-parts",
"git-hooks-nix": "git-hooks-nix",
"libgit2": "libgit2",
"nixpkgs": "nixpkgs_34",
"nixpkgs": "nixpkgs_35",
"nixpkgs-23-11": "nixpkgs-23-11",
"nixpkgs-regression": "nixpkgs-regression_4"
},
@ -5150,11 +5203,11 @@
},
"nixpkgs_29": {
"locked": {
"lastModified": 1653581809,
"narHash": "sha256-Uvka0V5MTGbeOfWte25+tfRL3moECDh1VwokWSZUdoY=",
"lastModified": 1683408522,
"narHash": "sha256-9kcPh6Uxo17a3kK3XCHhcWiV1Yu1kYj22RHiymUhMkU=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "83658b28fe638a170a19b8933aa008b30640fbd1",
"rev": "897876e4c484f1e8f92009fd11b7d988a121a4e7",
"type": "github"
},
"original": {
@ -5181,6 +5234,22 @@
}
},
"nixpkgs_30": {
"locked": {
"lastModified": 1653581809,
"narHash": "sha256-Uvka0V5MTGbeOfWte25+tfRL3moECDh1VwokWSZUdoY=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "83658b28fe638a170a19b8933aa008b30640fbd1",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_31": {
"locked": {
"lastModified": 1654807842,
"narHash": "sha256-ADymZpr6LuTEBXcy6RtFHcUZdjKTBRTMYwu19WOx17E=",
@ -5195,7 +5264,7 @@
"type": "github"
}
},
"nixpkgs_31": {
"nixpkgs_32": {
"locked": {
"lastModified": 1653920503,
"narHash": "sha256-BBeCZwZImtjP3oYy4WogkQYy5OxNyfNciVSc1AfZgLQ=",
@ -5211,7 +5280,7 @@
"type": "github"
}
},
"nixpkgs_32": {
"nixpkgs_33": {
"locked": {
"lastModified": 1665087388,
"narHash": "sha256-FZFPuW9NWHJteATOf79rZfwfRn5fE0wi9kRzvGfDHPA=",
@ -5227,7 +5296,7 @@
"type": "github"
}
},
"nixpkgs_33": {
"nixpkgs_34": {
"locked": {
"lastModified": 1691003216,
"narHash": "sha256-Qq/MPkhS12Bl0X060pPvX3v9ac3f2rRQfHjjozPh/Qs=",
@ -5241,7 +5310,7 @@
"type": "indirect"
}
},
"nixpkgs_34": {
"nixpkgs_35": {
"locked": {
"lastModified": 1723688146,
"narHash": "sha256-sqLwJcHYeWLOeP/XoLwAtYjr01TISlkOfz+NG82pbdg=",
@ -5257,7 +5326,7 @@
"type": "github"
}
},
"nixpkgs_35": {
"nixpkgs_36": {
"locked": {
"lastModified": 1724098845,
"narHash": "sha256-D5HwjQw/02fuXbR4LCTo64koglP2j99hkDR79/3yLOE=",
@ -5735,14 +5804,31 @@
"root": {
"inputs": {
"cardano-node": "cardano-node",
"colmena": "colmena",
"daedalus": "daedalus",
"iohkNix": "iohkNix_6",
"nix": "nix_4",
"nixpkgs": "nixpkgs_35",
"nixpkgs": "nixpkgs_36",
"nixpkgsUnstable": "nixpkgsUnstable",
"utils": "utils_13"
}
},
"stable": {
"locked": {
"lastModified": 1669735802,
"narHash": "sha256-qtG/o/i5ZWZLmXw108N2aPiVsxOcidpHJYNkT45ry9Q=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "731cc710aeebecbf45a258e977e8b68350549522",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-22.11",
"repo": "nixpkgs",
"type": "github"
}
},
"stackage": {
"flake": false,
"locked": {
@ -6122,7 +6208,7 @@
"blank": "blank_7",
"devshell": "devshell_7",
"dmerge": "dmerge_7",
"flake-utils": "flake-utils_24",
"flake-utils": "flake-utils_25",
"makes": [
"daedalus",
"tullia",
@ -6138,7 +6224,7 @@
],
"n2c": "n2c_7",
"nixago": "nixago_7",
"nixpkgs": "nixpkgs_32",
"nixpkgs": "nixpkgs_33",
"yants": "yants_7"
},
"locked": {
@ -6320,7 +6406,7 @@
"inputs": {
"nix-nomad": "nix-nomad_7",
"nix2container": "nix2container_8",
"nixpkgs": "nixpkgs_31",
"nixpkgs": "nixpkgs_32",
"std": "std_7"
},
"locked": {

View file

@ -3,6 +3,7 @@
inputs = {
cardano-node.url = "github:input-output-hk/cardano-node/?ref=1.35.7";
colmena.url = github:zhaofengli/colmena/?ref=v0.4.0;
daedalus.url = "github:input-output-hk/daedalus/?ref=5.2.0";
iohkNix.url = "github:input-output-hk/iohk-nix/?ref=df1da282f996ec46b33379407df99613a1fbafdd";
nix.url = "github:NixOS/nix/?ref=2.24.3";

View file

@ -5,23 +5,23 @@
...
}: {
imports = [
../hardware/system76_thelioMira.nix # Include results of the hardware scan.
../profiles/cron-craige.nix # Provide Craige's cron jobs
../profiles/desktopCraige.nix # Craige's desktop tools and apps
../profiles/haskell-dev.nix # Haskell dev environment
../profiles/host_common.nix # Common host configuration options
../profiles/iog.nix # IOHK environment
../profiles/keyboard.nix
../profiles/neomutt.nix # Neomutt email
../profiles/nix-community.nix # Nix community aarch64 tooling
../profiles/nixpkgs-dev.nix # Nix pkgs dev tools
../profiles/openssh.nix # Enable and configure openssh
../profiles/pantheon.nix # Enable and configure the pantheon desktop
../profiles/pipewire.nix # Enable and pipewire audio system
../profiles/xmonad.nix # Xmonad desktop environment
../profiles/yubikey.nix # Yubikey tooling
../secrets/craige.nix # Ssshhhhh!
../secrets/root.nix # Ssshhhhh!
../../hardware/system76_thelioMira.nix # Include results of the hardware scan.
../../profiles/cron-craige.nix # Provide Craige's cron jobs
../../profiles/desktopCraige.nix # Craige's desktop tools and apps
../../profiles/haskell-dev.nix # Haskell dev environment
../../profiles/host_common.nix # Common host configuration options
../../profiles/iog.nix # IOHK environment
../../profiles/keyboard.nix
../../profiles/neomutt.nix # Neomutt email
../../profiles/nix-community.nix # Nix community aarch64 tooling
../../profiles/nixpkgs-dev.nix # Nix pkgs dev tools
../../profiles/openssh.nix # Enable and configure openssh
../../profiles/pantheon.nix # Enable and configure the pantheon desktop
../../profiles/pipewire.nix # Enable and pipewire audio system
../../profiles/xmonad.nix # Xmonad desktop environment
../../profiles/yubikey.nix # Yubikey tooling
../../secrets/craige.nix # Ssshhhhh!
../../secrets/root.nix # Ssshhhhh!
];
deployment.targetHost = "10.42.0.11";

View file

@ -1,5 +1,6 @@
{
self,
colmena,
daedalus,
nix,
nixpkgs,
@ -15,34 +16,36 @@ in {
devShell =
pkgs.callPackage
./shell.nix {
inherit (colmena.packages."${pkgs.system}") colmena;
inherit (nix.packages."${pkgs.system}") nix;
inherit deploymentName;
inherit nix_path;
};
nixopsConfigurations."${pkgs.system}".default = {
inherit (inputs) nixpkgs;
network = {
description = "mio-ops nodes";
enableRollback = true;
storage.legacy = {databasefile = "~/.nixops/deployments.nixops";};
};
defaults = {};
airgead = import hosts/airgead.nix;
brighde = import hosts/brighde.nix;
ceilidh = import hosts/ceilidh.nix;
cuallaidh = import hosts/cuallaidh.nix;
dhu = import hosts/dhu.nix;
dionach = import hosts/dionach.nix;
iolear-beag = import hosts/iolear-beag.nix;
doilidh = import hosts/doilidh.nix;
eamhair = import hosts/eamhair.nix;
ceitidh = import hosts/ceitidh.nix;
paidh-uachdar = import hosts/paidh-uachdar.nix;
sanganto = import hosts/sanganto.nix;
sercanto = import hosts/sercanto.nix;
sithlainnir = import hosts/sithlainnir.nix;
teintidh = import hosts/teintidh.nix;
};
}))
// {
colmena = {
meta = {
description = "mio-ops deployment";
name = "deploymentName";
nixpkgs = import nixpkgs {
system = "x86_64-linux";
overlays = [];
};
};
airgead = {imports = [hosts/airgead];};
brighde = {imports = [hosts/brighde];};
ceilidh = {imports = [hosts/ceilidh];};
ceitidh = {imports = [hosts/ceitidh];};
cuallaidh = {imports = [hosts/cuallaidh];};
dhu = {imports = [hosts/dhu];};
dionach = {imports = [hosts/dionach];};
doilidh = {imports = [hosts/doilidh];};
eamhair = {imports = [hosts/eamhair];};
iolear-beag = {imports = [hosts/iolear-beag];};
paidh-uachdar = {imports = [hosts/paidh-uachdar];};
sanganto = {imports = [hosts/sanganto];};
sercanto = {imports = [hosts/sercanto];};
sithlainnir = {imports = [hosts/sithlainnir];};
teintidh = {imports = [hosts/teintidh];};
};
}

View file

@ -1,5 +1,6 @@
{
pkgs ? import <nixpkgs> {},
colmena,
deploymentName,
mkShell,
nix,
@ -9,6 +10,7 @@ with pkgs;
mkShell {
buildInputs = [
alejandra # The Uncompromising Nix Code Formatter
colmena # Simple, stateless NixOS deployment tool
nix # Powerful package manager, makes packaging reliable & reproducible
nixops_unstable_minimal # work around for issue #127423
tea # Gitea official CLI client