!UKDpaKNNsBpOPfLWfX:zhaofeng.li

Colmena

280 Members
A simple, stateless NixOS deployment tool - https://github.com/zhaofengli/colmena96 Servers

Load older messages


SenderMessageTime
4 Aug 2025
@jonhermansen:matrix.orgjonhermansenAh, colmena.cli.rs is back!15:53:14
@dantefromhell:matrix.orgdantefromhell
In reply to @zsuper:matrix.org
and disko will still take care of formatting for you right? because thats the main part about minimal installers that im still uncomfortable with
yes. you can force this using nixos-anywheres --phases parameter. also rly helpful for testing 👍
18:46:43
5 Aug 2025
@sinan:sinanmohd.comsinan changed their profile picture.03:58:54
@sinan:sinanmohd.comsinan 03:58:56
6 Aug 2025
@freexploit:trafkin.com@freexploit:trafkin.comRedacted or Malformed Event14:38:37
@zsuper:matrix.orgzsuper actually yeah, im wondering the same thing. im using deploy-rs right now, but i like that colmena directly exposes the nixosConfigurations so i can debug them, unlike deploy-rs. however, i do really like the canary feature of deploy-rs, where it will magic rollback if the target becomes unreachable 18:25:27
@zsuper:matrix.orgzsuper * actually yeah, im wondering the same thing. im using deploy-rs right now, but i like that colmena directly exposes the nixosConfigurations so i can debug them, unlike deploy-rs. however, i do really like the canary feature of deploy-rs, where it will magic rollback if the target becomes unreachable. does colmena have something similar? 18:25:40
7 Aug 2025
@zsuper:matrix.orgzsuper

im thinking of making the switch to colmena soon, but seeing the use of the function colmena.lib.mkHive worries me. will i still be able to access the raw nixosConfiguration closure in the flake's outputs?

the reason i ask is because nixos-anywhere reads nixosConfigurations.<name> when remote installing to a new machine, and id like to write the spec for each node/machine once in the flake and then have its NixOS configuration attribute set accessible

06:15:10
@zsuper:matrix.orgzsuper

for example, with deploy-rs right now, i managed to write a helper function that allows me to define nodes like:

{
    deploy = {
      user = "root";
      sshUser = "root";
      nodes = self.armada.mkNodes {
        thinkpad = {
          hostname = "10.0.0.162";
          system = "x86_64-linux";
          modules = [
            ./modules/mc-server-host
            ./modules/cluster-server
            ./modules/starfish
          ];
        };
        t5 = {
          hostname = "10.0.0.249";
          system = "x86_64-linux";
          modules = [
            ./modules/cluster-agent
            ./modules/adguardhome
          ];
        };
        t4 = {
          hostname = "10.0.0.23";
          system = "x86_64-linux";
          modules = [
            ./modules/cluster-agent
          ];
        };
      };
    };

but this simply passes the inner arguments to lib.nixosSystem, which in turn gets passed to deploy.nodes.<name>.profiles.system.path. So this means I cannot access the "config" of thinkpad, for example

06:17:39
@zsuper:matrix.orgzsuperooh wait, colmena does have this exact feature!07:04:59
@zsuper:matrix.orgzsuperRTFM moment 😔07:05:09
8 Aug 2025
@kity:kity.wtfproblems changed their profile picture.02:30:14
@sinan:sinanmohd.comsinan changed their profile picture.06:11:32
@0x4a6f:nixos.dev0x4A6F joined the room.07:00:51
9 Aug 2025
@seapat:matrix.orgseapat set a profile picture.14:23:49
10 Aug 2025
@bonus:bonusplay.plBonus

I'm having trouble deploying from amd64 to an arm64 machine. Seems like colmena build --on kaldir --build-on-target ignores both --build-on-target and colmena.kaldir.deployment.buildOnTarget properties. Any hints what could cause this?

error: a 'aarch64-linux' with features {} is required to build '/nix/store/7qk9db8vr6hkav0q3hkdbd742dz70zd3-cabal2nix-arion-compose.drv', but I am a 'x86_64-linux' with features {benchmark, big-parallel, kvm, nixos-test, uid-range}

20:23:29
@zhaofeng:zhaofeng.liZhaofeng Liarion probably uses import-from-derivation (IFD), meaning that it triggers a build during evaluation20:25:43
@zhaofeng:zhaofeng.liZhaofeng Li and --build-on-target only sends the derivation to the remote machine after evaluation 20:26:22
@bonus:bonusplay.plBonus ah, seems correct. nix flake check also fails now. 20:27:02
12 Aug 2025
@disco_stick:matrix.orgseaweed salad Any tips getting --show-trace to work? 20:06:47
@disco_stick:matrix.orgseaweed salad sudo nix run "github:zhaofengli/colmena" -- --show-trace apply-local --show-trace build - v is the most recent version I've tried. Obviously tried it once in both positions too. 20:08:42
@zhaofeng:zhaofeng.liZhaofeng LiHmm, it should work. What are you getting right now?20:22:58
@disco_stick:matrix.orgseaweed saladI get the rest of the build output (from verbose), just none of the nix trace showing exactly why stylix isn't working20:42:54
@disco_stick:matrix.orgseaweed salad Sorry only have matrix on mobile right now so limited on what I can paste. 20:43:36
@disco_stick:matrix.orgseaweed salad Either way just figured out the module that was breaking so its kind of a moot point (for now). Stylix is a persistent headache when updating nixos versions. 20:46:14
@disco_stick:matrix.orgseaweed salad Still trying to make it to 25.05. Here's two runs with/without traces they are the same
https://plik.kernelpanic.cafe/#/?id=vWIBIUqJmF1Wbbb2
23:32:00
13 Aug 2025
@zhaofeng:zhaofeng.liZhaofeng Li Ah, it's a build-time error and --show-trace won't give you more information 00:46:37
@zhaofeng:zhaofeng.liZhaofeng LiIn this case, it actually looks like the nix store is corrupted:00:46:51
@zhaofeng:zhaofeng.liZhaofeng Li
 desk | /nix/store/xlrkz8l95f4vw9ahn0q47cz35mm4jpc1-shared-mime-info-2.4/bin/update-mime-database: error while loading shared libraries: /nix/store/y3nxdc2x8hwivppzgx5hkrhacsh87l21-glib-2.84.3/lib/libglib-2.0.so.0: file too short
00:47:02
@zhaofeng:zhaofeng.liZhaofeng Li try sudo nix-store --verify --check-contents --repair 00:47:52

Show newer messages


Back to Room ListRoom Version: 6