El intendente está construyendo una mente colmena marítima – ButterWord

The Arlington, Virginia-based startup has raised $42 million to equip ships with sensors that blow the current AIS tech out of the water.

ButterWord
TIL: nixos-infect does strange things with dbus and systemd that cause problems while booting when deployed #NixOS with #Colmena. At least this gave me a chance to try nixos-anywhere 
A month ago I wanted to switch to #Helix and immersed myself in #HomeManager, #Flakes, #sops-nix, and #colmena. Today, after a long redesign of my #NixOS module structure, I successfully applied colmena to the first test node. Twelve more will follow. This OS is wild.

@skyfaller I can only speak about my combination of @forgejo deployed via #colmena on @nixos_org and it's been absolutely hassle free from the moment I set it up.

Upgrades have all been hands off, etc.

I'm sure this experience is replicable on other tool sets.

Ich muss mich echt mal darum kümmern zu analysieren warum meine per #colmena deployten proxmox lxcs ihre #NixOS Konfiguration nach einem Reboot verlieren und dann neu deployt werden müssen. Das ist doch etwas neevig...
@petafloppa hi, I use #colmena https://colmena.cli.rs/ it works very well, maintaining more than 20 configuration is painless.
Redirecting to the Latest Manual

Day two with #colmena.

I think it is growing on me. Tags are neat, so is the build log, and the spinner in non-verbose mode.

I've yet to figure out why the system derivation ends up being <hash>-nixos-system-<host>-24.11pre-git. I'd love if that 24.11pre-git part would be the git sha1 of nixpkgs, or even better, that of my infra repo, or something.

Applying the configuration seems to have worked too. This is encouraging. I can also have verbose build logs (yay), and can keep the result in .gcroots, which is also yay.

This wasn't too bad.

As an added benefit, it looks like colmena nodes can be functions that take a nodes attribute set, containing the configuration of all nodes, which means that on one host, I can grab stuff from anothre host's config.

This is going to be really powerful, and useful, and is a strong reason to migrate to #colmena.

Allright. Lets start with some #colmena adventures!

colmenaHive = colmena.lib.makeHive self.outputs.colmena; colmena = { meta = { nixpkgs = import nixpkgs { system = "x86_64-linux"; }; specialArgs = { inherit inputs; }; }; quickbeam = { ... }: { deployment = { targetHost = "quickbeam"; }; } // self.nixosConfigurations.quickbeam.config; };

Easy-peasy, I thought. But no.

error: … while evaluating attribute 'quickbeam' … while evaluating the attribute 'config.deployment' at /nix/store/lb6ypkpf38qsd0p4gc5nqvb97s2brh5h-source/lib/modules.nix:334:9: 333| options = checked options; 334| config = checked (removeAttrs config [ "_module" ]); | ^ 335| _module = checked (config._module); … while evaluating 'v.config' to select 'deployment' on it at /nix/store/x98bfc65z3r0ksz1nn0v0fn9fnbdlgbk-source/src/nix/hive/eval.nix:188:42: 187| toplevel = lib.mapAttrs (_: v: v.config.system.build.toplevel) nodes; 188| deploymentConfig = lib.mapAttrs (_: v: v.config.deployment) nodes; | ^ 189| deploymentConfigSelected = names: lib.filterAttrs (name: _: elem name names) deploymentConfig; (stack trace truncated; use '--show-trace' to show the full trace) error: The option `nixpkgs.pkgs' was accessed but has no value defined. Try setting the option.

Fun. Mind you, what I'm doing is probably Wrong. I get that. But as there's no official "zero to colmena with flakes" docs, doing things wrong first is my best option.

After a few nights and weekends of mashing keys, I have figured the right order to bring up a #nixos instance built for #proxmox, provision it with #colmena, shove secrets on it with #sops, bring up a docker container, and get it on my @tailscale #tailnet. I don’t know how many times I nearly gave up, but it paid off, and I’m thrilled.

Now to do it again.