!UKDpaKNNsBpOPfLWfX:zhaofeng.li

Colmena

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

Load older messages


SenderMessageTime
11 Feb 2022
@zhaofeng:zhaofeng.liZhaofeng Li
In reply to @winterqt:nixos.dev
additionally: won't https://github.com/zhaofengli/colmena/blob/f674ddf1739aa79ac9dcad38771cc89c662eaa6a/src/nix/deployment/mod.rs#L539 always be false if the configuration was built on the target?
Yes indeed, if the user requests this check by setting deployment.replaceUnknownProfiles = false; (it defaults to true) then it expects the previous profile to be in the deployer's store.
21:04:37
@winterqt:nixos.devWinter (she/her)
In reply to @zhaofeng:zhaofeng.li
Import From Derivation is when you do import (some derivation) to use the results of a derivation during evaluation, meaning that the normally platform-agnostic evaluation process now requires building a derivation which is platform-specific. In order to build foreign derivations for IFD using configured builders, I normally pass --options builders to nix-instantiate.
i know what IFD is - but i'm confused on where IFDs are used in Colmena
21:22:12
@winterqt:nixos.devWinter (she/her)
In reply to @zhaofeng:zhaofeng.li
Yes indeed, if the user requests this check by setting deployment.replaceUnknownProfiles = false; (it defaults to true) then it expects the previous profile to be in the deployer's store.
got it, thanks
21:22:17
@linus.heckemann:matrix.mayflower.deLinux Hackerman is moving: @linus:schreibt.jetzt
In reply to @winterqt:nixos.dev
i know what IFD is - but i'm confused on where IFDs are used in Colmena
I don't think it is unless your deployment expression uses it.
21:26:58
@zhaofeng:zhaofeng.liZhaofeng Li
In reply to @winterqt:nixos.dev
i know what IFD is - but i'm confused on where IFDs are used in Colmena
No, it isn't used in Colmena, but user configurations may have IFD.
21:27:05
@zhaofeng:zhaofeng.liZhaofeng LiAnd stuff like mobile-nixos uses IFD as well21:27:32
12 Feb 2022
@github:maunium.net@github:maunium.net [zhaofengli/colmena] lheckemann closed issue #53: Cannot deploy to a host without internet 09:19:46
@grw00:matrix.orggrw00 joined the room.23:47:26
13 Feb 2022
@grw00:matrix.orggrw00 @buckley310:matrix.org: hey, your config looks great, i will try to upgrade my "legacy" niv+morph config to copy yours. one thing i can't see is how i actually use colmena to run a deploy.. any hints? :) 10:47:20
@linus.heckemann:matrix.mayflower.deLinux Hackerman is moving: @linus:schreibt.jetzt grw00: please don't call stable interfaces legacy, flakes is not stable by any means. 12:23:03
@linus.heckemann:matrix.mayflower.deLinux Hackerman is moving: @linus:schreibt.jetzt grw00: that said, colmena apply is the command for deploying. 12:23:17
@grw00:matrix.orggrw00i meant legacy in sense of.. hacked together config i have used for some years, not non-flake12:27:28
@grw00:matrix.orggrw00 anyway i think in the repo i refer to it's not so simple as colmena apply - error: Flake must define outputs.colmena 12:29:01
@schnecfk:ruhr-uni-bochum.deCRTified
In reply to @grw00:matrix.org
anyway i think in the repo i refer to it's not so simple as colmena apply - error: Flake must define outputs.colmena
Do you want to use a "shim" to populate outputs.colmena from outputs.nixosConfigurations?
13:31:39
@schnecfk:ruhr-uni-bochum.deCRTified(Oh, and are you on nix 2.6, 2.4 or older?)13:32:19
@grw00:matrix.orggrw002.613:41:31
@grw00:matrix.orggrw00
In reply to @schnecfk:ruhr-uni-bochum.de
Do you want to use a "shim" to populate outputs.colmena from outputs.nixosConfigurations?
yeah i thought maybe i had to do this, wasn't sure if it was necessary and i just didnt use right command
13:42:10
@schnecfk:ruhr-uni-bochum.deCRTified

iirc Buckley changed the approach for the shim, while I found the following solution.
In the flake.nix, I populate colmena from nixosConfigurations.

      colmena = {
        meta = {
          description = "My personal machines";
          nixpkgs = import nixpkgs {
            system = "x86_64-linux";
            overlays = [ nur.overlay ];
          };
        };

      } // builtins.mapAttrs (name: value: {
        nixpkgs.system = value.config.nixpkgs.system;
        imports = value._module.args.modules;
      }) (self.nixosConfigurations);

But to have the deployment options available (and not conflicting with colmena), I had to add:

        extraModules = [ colmena.nixosModules.deploymentOptions ];

in the nixpkgs.lib.nixosSystem call

13:44:22
@schnecfk:ruhr-uni-bochum.deCRTified extraModules is not part of value._module.args.modules, so you retain the ability to nixos-rebuild --flake .#hostname build, while also being able to deploy with colmena 13:45:16
@schnecfk:ruhr-uni-bochum.deCRTified *

iirc Buckley changed the approach for the shim, while I found the following solution.
In the flake.nix, I populate colmena from nixosConfigurations.

      colmena = {
        meta = {
          description = "My personal machines";
          nixpkgs = import nixpkgs {
            system = "x86_64-linux";
            overlays = [ nur.overlay ];
          };
        };

      } // builtins.mapAttrs (name: value: {
        nixpkgs.system = value.config.nixpkgs.system;
        imports = value._module.args.modules;
      }) (self.nixosConfigurations);

But to have the deployment options available (and not conflicting with colmena), I had to add this (note that you'd typically use the argument modules):

        extraModules = [ colmena.nixosModules.deploymentOptions ];

in the nixpkgs.lib.nixosSystem call

13:45:44
@grw00:matrix.orggrw00perfect- thanks !13:56:59
14 Feb 2022
@heph:matrix.orgheph joined the room.20:14:58
15 Feb 2022
@finn:sunbutt.faithfinn joined the room.20:41:24
@finn:sunbutt.faithfinn left the room.20:41:33
16 Feb 2022
@github:maunium.net@github:maunium.net [zhaofengli/colmena] zhaofengli synchronize pull request #58: streaming evaluator: respect eval-nodes-limit 09:10:45
@github:maunium.net@github:maunium.net [zhaofengli/colmena] zhaofengli merged pull request #58: streaming evaluator: respect eval-nodes-limit 09:10:54
@github:maunium.net@github:maunium.net [zhaofengli/colmena] zhaofengli merged pull request #51: eval.nix: Add "${name}-key.service" units for keys 18:23:29
@github:maunium.net@github:maunium.net [zhaofengli/colmena] zhaofengli closed issue #48: Add `${name}-key.service` unit files for `deployment.keys` entries 18:23:30
18 Feb 2022
@cw:kernelpanic.cafeChinchilla Washington changed their display name from Chuck Winter to Chuck Winter (vi/vim).04:12:20
@cw:kernelpanic.cafeChinchilla Washington changed their display name from Chuck Winter (vi/vim) to Chuck Winter.04:20:45

Show newer messages


Back to Room ListRoom Version: 6