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

View file

@ -3,6 +3,7 @@
inputs = { inputs = {
cardano-node.url = "github:input-output-hk/cardano-node/?ref=1.35.7"; 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"; daedalus.url = "github:input-output-hk/daedalus/?ref=5.2.0";
iohkNix.url = "github:input-output-hk/iohk-nix/?ref=df1da282f996ec46b33379407df99613a1fbafdd"; iohkNix.url = "github:input-output-hk/iohk-nix/?ref=df1da282f996ec46b33379407df99613a1fbafdd";
nix.url = "github:NixOS/nix/?ref=2.24.3"; nix.url = "github:NixOS/nix/?ref=2.24.3";

View file

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

View file

@ -1,5 +1,6 @@
{ {
self, self,
colmena,
daedalus, daedalus,
nix, nix,
nixpkgs, nixpkgs,
@ -15,34 +16,36 @@ in {
devShell = devShell =
pkgs.callPackage pkgs.callPackage
./shell.nix { ./shell.nix {
inherit (colmena.packages."${pkgs.system}") colmena;
inherit (nix.packages."${pkgs.system}") nix; inherit (nix.packages."${pkgs.system}") nix;
inherit deploymentName; inherit deploymentName;
inherit nix_path; 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> {}, pkgs ? import <nixpkgs> {},
colmena,
deploymentName, deploymentName,
mkShell, mkShell,
nix, nix,
@ -9,6 +10,7 @@ with pkgs;
mkShell { mkShell {
buildInputs = [ buildInputs = [
alejandra # The Uncompromising Nix Code Formatter alejandra # The Uncompromising Nix Code Formatter
colmena # Simple, stateless NixOS deployment tool
nix # Powerful package manager, makes packaging reliable & reproducible nix # Powerful package manager, makes packaging reliable & reproducible
nixops_unstable_minimal # work around for issue #127423 nixops_unstable_minimal # work around for issue #127423
tea # Gitea official CLI client tea # Gitea official CLI client