!UKDpaKNNsBpOPfLWfX:zhaofeng.li

Colmena

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

Load older messages


SenderMessageTime
27 May 2022
@hexa:lossy.networkhexaaccording to https://colmena.cli.rs/unstable/tutorial/index.html it can be … everything?15:05:15
@hexa:lossy.networkhexaalthough that may be something new from "unstable"15:05:25
@hexa:lossy.networkhexa
{
  meta = {
    # Override to pin the Nixpkgs version (recommended). This option
    # accepts one of the following:
    # - A path to a Nixpkgs checkout
    # - The Nixpkgs lambda (e.g., import <nixpkgs>)
    # - An initialized Nixpkgs attribute set
    nixpkgs = <nixpkgs>;
15:05:44
@hexa:lossy.networkhexafrom the 0.3 docs15:06:01
@linus:schreibt.jetzt@linus:schreibt.jetztoh, hm. Might have been broken accidentally?15:06:06
@linus:schreibt.jetzt@linus:schreibt.jetztIt definitely doesn't support passing a path when using flakes15:06:55
@linus:schreibt.jetzt@linus:schreibt.jetztTry using an imported nixpkgs anyway maybe15:07:31
@hexa:lossy.networkhexa passed nixpkgs = import defaultPkgs {}; 15:08:45
@hexa:lossy.networkhexa
error: attribute 'path' missing

       at /run/user/1000/.tmpsGzWiX:396:26:

          395|       else pkgs;
          396|     evalConfig = import (npkgs.path + "/nixos/lib/eval-config.nix");
             |                          ^
          397|     assertionModule = { config, ... }: {
(use '--show-trace' to show detailed location information)
15:08:50
@hexa:lossy.networkhexafails 8 lines down, progress 😄15:09:22
@hexa:lossy.networkhexa *
let
  # niv sources
  sources = import ../nix/sources.nix;

  defaultArch = "x86_64-linux";
  defaultPkgs = sources."nixos-22.05";

  lib = import (defaultPkgs + "/lib");

  machines = {
    "foo.example.com" = {
      system = "aarch64-linux";
    };
    "bar.example.com" = {
      packages = source."nixos-21.11";
    };
  };

  mkMachine = hostName: { system ? defaultArch, packages ? defaultPkgs, tags ? [] }:
    {
      imports = [
        (./machines + "/${hostName}")
      ];

      nixpkgs = {
        inherit system;
      };
    };
in
{
  meta = {
    nixpkgs = defaultPkgs;

    nodeNixpkgs = lib.mapAttrs
      (hostName: { packages? defaultPkgs, ... }: packages)
    machines;
  };
} // (lib.mapAttrs mkMachine machines)
15:10:00
@linus:schreibt.jetzt@linus:schreibt.jetztok, uh, I don't know. That should have a path attr!?15:19:20
@linus:schreibt.jetzt@linus:schreibt.jetztOh wait15:19:31
@linus:schreibt.jetzt@linus:schreibt.jetztthe same applies to nodeNixpkgs.15:19:36
@hexa:lossy.networkhexaoh, silly me.15:20:21
@hexa:lossy.networkhexayep, finally error messages that are reasonable15:21:39
@hexa:lossy.networkhexaoh yeah, the secrets migration is going to be great 😄15:29:15
@zhaofeng:zhaofeng.liZhaofeng Li
In reply to @blaggacao:matrix.org
In my opinion, maintaining legacy nix support in-tree is a bit of a stretch and reduces the ability to innovate. Maby there can be a 2-tree solution that is not 100% mutually compatible .
For swappable eval I'll think about it in a bit. However, support for normal Nix must be maintained in Colmena. It is flakes that is actually experimental.
18:17:23
@blaggacao:matrix.org@blaggacao:matrix.org There is a nice german word: "Deutungshoheit". 23:51:48
@blaggacao:matrix.org@blaggacao:matrix.orgAnd that thing is shifting, and can't be contained by formalities.23:52:08
@blaggacao:matrix.org@blaggacao:matrix.org(w.r.t. flakes 🙃)23:52:17
28 May 2022
@blaggacao:matrix.org@blaggacao:matrix.org Zhaofeng Li: I hope this PR is comparatively uncontroversial: https://github.com/zhaofengli/colmena/pull/89 -- it's pure (hopefully) side-effect free refactoring. 00:05:04
30 May 2022
@whentze:matrix.orgWanja HentzeStable Nix support is good for people migrating from nixops/morph if nothing else09:19:15
@whentze:matrix.orgWanja Hentze if this was dropped, migration would mean those would have to switch deployment tool and move to flakes mode in one swoop, there is no smooth incremental path 09:20:20
@whentze:matrix.orgWanja HentzeEven if you're a flake maximalist, I think there is merit in this. Declaring the existing stable way "legacy", not providing a smooth upgrade path and burning bridges is not how you get everyone to adopt it, that's how you get IPv6 :P10:03:47
@blaggacao:matrix.org@blaggacao:matrix.org To clarify, I don't think somebody implied to drop classical nix support. The suggestion had been to untangle the code path for maintainability. The custom eval I posted quite clearly shows what that can mean. 14:19:54
@blaggacao:matrix.org@blaggacao:matrix.org* To clarify, I don't think somebody implied to drop classical `nix` support. The suggestion had been to untangle the code path for maintainability. The custom eval I posted quite clearly shows what that can mean in practice.14:20:14
@blaggacao:matrix.org@blaggacao:matrix.org I have the impression, that actually the untangling would be probably contained to src/nix/hive as the nix eval interface of colmena. 14:24:37
@blaggacao:matrix.org@blaggacao:matrix.org* I have the impression, that actually the untangling would be contained to `src/nix/hive` as the `nix` eval interface of colmena.14:24:49
1 Jun 2022
@tiha889a:tu-dresden.de@tiha889a:tu-dresden.de joined the room.13:17:26

Show newer messages


Back to Room ListRoom Version: 6