| 22 Jun 2023 |
@palo:xaos.space | The only solution I found so far is, a cache server that also creates the builds. | 08:21:33 |
@palo:xaos.space | (and use the buildOnTarget option) | 08:21:59 |
@palo:xaos.space | Or I push always all closures on a differnt build server. | 08:23:37 |
@palo:xaos.space | Hmm that is good enough for me. | 08:23:50 |
@palo:xaos.space | Thanks for your input @wa | 08:23:56 |
@palo:xaos.space | * Thanks for your input @[Wanja Hentze] | 08:24:12 |
| 23 Jun 2023 |
bl1nk | Redacted or Malformed Event | 07:47:54 |
bl1nk | Alright, next try to get this formatted correctly...
I recently updated to colmena 0.4.0 and cannot deploy from my Mac anymore:
~/.co/nixpkgs main ▷ nix develop -c colmena apply --on elara
[INFO ] Using flake: git+file:///Users/markuscisler/.config/nixpkgs
[INFO ] Enumerating nodes...
error:
… while calling the 'attrNames' builtin
at «string»:1:209:
1| with builtins; let assets = getFlake "path:/tmp/nix-shell.9futSw/colmena-assets-0CsIT0?lastModified=1687506045&narHash=sha256-6Mfqk77CvYUqLBAWSiOuxaeT%2Bi2EF06vZHsFgILLuFU%3D"; hive = assets.processFlake; in attrNames hive.nodes
| ^
… while evaluating the attribute 'nodes'
at /nix/store/vfamvq9dh5qiz0b3f6pbkkf77kqkmpr8-source/eval.nix:186:3:
185|
186| nodes = listToAttrs (map (name: { inherit name; value = evalNode name (configsFor name); }) nodeNames);
| ^
187| toplevel = lib.mapAttrs (_: v: v.config.system.build.toplevel) nodes;
(stack trace truncated; use '--show-trace' to show the full trace)
error: attribute 'currentSystem' missing
at /nix/store/b90clwdlidf3s95m73jsby3ikfa56h91-source/pkgs/top-level/impure.nix:17:43:
16| # (build, in GNU Autotools parlance) platform.
17| localSystem ? { system = args.system or builtins.currentSystem; }
| ^
18|
[ERROR] -----
[ERROR] Operation failed with error: Child process exited with error code: 1
Hint: Backtrace available - Use `RUST_BACKTRACE=1` environment variable to display a backtrace
The relevant parts from my flake.nix are:
colmena = {
meta = {
specialArgs = { inherit inputs; };
nixpkgs = import inputs.nixpkgs-stable { };
nodeNixpkgs = {
kerala = import inputs.nixpkgs-2305 { };
};
};
defaults = import ./nixos/remote-defaults;
elara = { name, nodes, ... }: {
deployment = {
buildOnTarget = true;
#targetHost = "192.168.10.2";
targetHost = "100.66.68.66";
};
nixpkgs.system = "x86_64-linux";
imports = [ ./machines/elara.nix ];
};
};
Any hints on what is going on here?
| 07:51:59 |
Zhaofeng Li | Change nixpkgs = import inputs.nixpkgs-stable { }; to nixpkgs = import inputs.nixpkgs-stable { system = "x86_64-linux"; }; and similarly for nodeNixpkgs.kerala below | 07:55:26 |
Zhaofeng Li | The reason is that with Colmena 0.4.0, flake evaluation is now actually pure so things like builtins.currentSystem aren't available anymore | 07:56:06 |
bl1nk | Can I still override the system for aarch64 machines using nixpkgs.system in the node block? | 07:56:35 |
Zhaofeng Li | Yes, that'll still work | 07:56:51 |
bl1nk | Thanks! | 07:59:50 |
bl1nk | (For the record: that solved my problem) | 08:03:47 |
| bl1nk changed their profile picture. | 21:49:19 |
| 26 Jun 2023 |
| Janik (they/them) changed their profile picture. | 21:38:10 |
| 27 Jun 2023 |
| Matan (ixxie) joined the room. | 11:55:44 |
Matan (ixxie) | Hello folks; I just heard about Colmena today over at #nixops:nixos.org. I'm currently trying to evaluate whether its the right fit for my usecase (deploying a small number of VPS servers with the hopes of eventually scaling up).
What was the motivation of Colmena? I see its stateless, like Morph, which is a big plus for me. But what advantages does it have over Morph and NixOps?
| 11:57:59 |
Matan (ixxie) | * Hello folks!
I just heard about Colmena today over at #nixops:nixos.org. I'm currently trying to evaluate whether its the right fit for my usecase (deploying a small number of VPS servers with the hopes of eventually scaling up).
What was the motivation of Colmena? I see its stateless, like Morph, which is a big plus for me. But what advantages does it have over Morph and NixOps?
| 11:58:07 |
Linux Hackerman | fancy clock animations! | 11:58:57 |
Linux Hackerman | Also parallel deployment, I think morph does things sequentially | 11:59:09 |
Wanja Hentze | for us, streaming evaluation | 12:07:13 |
Wanja Hentze | morph (and iirc deplo-rs too) has no such feature so evaluation is entirely single-threaded | 12:07:38 |
Wanja Hentze | evaluating the entire deployment takes many minutes then | 12:07:48 |
Matan (ixxie) | Thanks Linux Hackerman and Wanja Hentze | 12:30:09 |
Matan (ixxie) | It seems flake support is better also, or at least better documented | 12:30:22 |
Wanja Hentze | I wouldn't know 😎 | 12:57:29 |
| @hanleym:matrix.org joined the room. | 15:58:06 |
| 28 Jun 2023 |
| dfh joined the room. | 11:10:56 |
| guiguid joined the room. | 11:32:33 |