about summary refs log tree commit diff
path: root/release.nix
diff options
context:
space:
mode:
Diffstat (limited to 'release.nix')
-rw-r--r--release.nix18
1 files changed, 14 insertions, 4 deletions
diff --git a/release.nix b/release.nix
index 3f6e72c5..b81ca837 100644
--- a/release.nix
+++ b/release.nix
@@ -24,10 +24,20 @@ in with pkgsUpstream.lib; with builtins; {
     };
   in with releaseLib; mapTestOn (packagePlatforms releaseLib.pkgs);
 
-  channel = root.pkgs.mkChannel rec {
-    name = "vuizvui-channel-${version}";
-    version = "${toString vuizvui.revCount}.${vuizvui.shortRev}";
-    src = vuizvui;
+  channels = let
+    mkChannel = attrs: root.pkgs.mkChannel (rec {
+      name = "vuizvui-channel-${attrs.name or "generic"}-${version}";
+      version = "${toString vuizvui.revCount}.${vuizvui.shortRev}";
+      src = vuizvui;
+    } // removeAttrs attrs [ "name" ]);
+
+  in {
+    generic = mkChannel {};
+
+    machines = mapAttrsRecursiveCond (m: !(m ? build)) (path: attrs: mkChannel {
+      name = "machine-${last path}";
+      constituents = singleton attrs.build.config.system.build.toplevel;
+    }) (import ./machines { inherit system; });
   };
 
   manual = let