From fa1d6f4b9d892b5b29411031f3d9bca9a6dc8aa0 Mon Sep 17 00:00:00 2001
From: Jens Nolte <jens@nightmarestudio.de>
Date: Mon, 13 Jan 2020 23:11:31 +0100
Subject: [PATCH] Improve channel infrstructure and update channels

---
 nixos/channels/nixos-19.09/channel.json    | 7 ++++---
 nixos/channels/nixos-19.09/default.nix     | 7 ++++---
 nixos/channels/nixos-19.09/update          | 7 +++++--
 nixos/channels/nixos-unstable/channel.json | 7 ++++---
 nixos/channels/nixos-unstable/default.nix  | 7 ++++---
 nixos/channels/nixos-unstable/update       | 8 ++++++--
 nixos/default.nix                          | 2 +-
 7 files changed, 28 insertions(+), 17 deletions(-)

diff --git a/nixos/channels/nixos-19.09/channel.json b/nixos/channels/nixos-19.09/channel.json
index 8d34a51..b726c01 100644
--- a/nixos/channels/nixos-19.09/channel.json
+++ b/nixos/channels/nixos-19.09/channel.json
@@ -1,7 +1,8 @@
 {
+  "ref": "refs/heads/nixos-19.09",
   "url": "https://github.com/NixOS/nixpkgs-channels/",
-  "rev": "093faad9684796975520d9d88503e76ab539b8ef",
-  "date": "2019-12-03T20:28:01-05:00",
-  "sha256": "0v3an5f5anvqqfpihp9sgrhnzv68qvjihq16mjhfycglsz758z6p",
+  "rev": "ac218438bdb911f746da1ffcb70c16dddf60dc4f",
+  "date": "2020-01-08T14:25:34+00:00",
+  "sha256": "0cbx6ln0ba11fmdhd64kzb62ggis19klbgpb3px04gbmvqx4nl1g",
   "fetchSubmodules": false
 }
diff --git a/nixos/channels/nixos-19.09/default.nix b/nixos/channels/nixos-19.09/default.nix
index 5370bfc..000e694 100644
--- a/nixos/channels/nixos-19.09/default.nix
+++ b/nixos/channels/nixos-19.09/default.nix
@@ -1,3 +1,5 @@
+name:
+
 with builtins;
 
 let
@@ -5,7 +7,6 @@ let
   channelDef = fromJSON ( readFile ./channel.json );
 
 in fetchGit {
-  name = "nixpkgs-19.09";
-  ref = "nixos-19.09";
-  inherit (channelDef) url rev;
+  inherit name;
+  inherit (channelDef) url rev ref;
 }
diff --git a/nixos/channels/nixos-19.09/update b/nixos/channels/nixos-19.09/update
index 4f11e78..cf28ca8 100755
--- a/nixos/channels/nixos-19.09/update
+++ b/nixos/channels/nixos-19.09/update
@@ -1,4 +1,7 @@
 #!/usr/bin/env nix-shell
-#! nix-shell -i sh -p nix-prefetch-git
+#! nix-shell -i sh -p nix-prefetch-git jq
 
-nix-prefetch-git --rev refs/heads/nixos-19.09 --no-deepClone https://github.com/NixOS/nixpkgs-channels/ > channel.json
+url="https://github.com/NixOS/nixpkgs-channels/"
+ref="refs/heads/nixos-19.09"
+
+nix-prefetch-git --rev "$ref" --no-deepClone "$url" | jq --arg ref "$ref" '{ref: $ref} + .' > channel.json
diff --git a/nixos/channels/nixos-unstable/channel.json b/nixos/channels/nixos-unstable/channel.json
index 2cf445c..143828d 100644
--- a/nixos/channels/nixos-unstable/channel.json
+++ b/nixos/channels/nixos-unstable/channel.json
@@ -1,7 +1,8 @@
 {
+  "ref": "refs/heads/nixos-unstable",
   "url": "https://github.com/NixOS/nixpkgs-channels/",
-  "rev": "e89b21504f3e61e535229afa0b121defb52d2a50",
-  "date": "2019-11-19T07:59:43-05:00",
-  "sha256": "0jqcv3rfki3mwda00g66d27k6q2y7ca5mslrnshfpbdm7j8ya0kj",
+  "rev": "9beb0d1ac2ebd6063efbdc4d3631f8ce137bbf90",
+  "date": "2020-01-06T05:49:56-05:00",
+  "sha256": "1v95779di35qhrz70p2v27kmwm09h8pgh74i1wc72v0zp3bdrf50",
   "fetchSubmodules": false
 }
diff --git a/nixos/channels/nixos-unstable/default.nix b/nixos/channels/nixos-unstable/default.nix
index 405068d..000e694 100644
--- a/nixos/channels/nixos-unstable/default.nix
+++ b/nixos/channels/nixos-unstable/default.nix
@@ -1,3 +1,5 @@
+name:
+
 with builtins;
 
 let
@@ -5,7 +7,6 @@ let
   channelDef = fromJSON ( readFile ./channel.json );
 
 in fetchGit {
-  name = "nixpkgs-unstable";
-  ref = "nixos-unstable";
-  inherit (channelDef) url rev;
+  inherit name;
+  inherit (channelDef) url rev ref;
 }
diff --git a/nixos/channels/nixos-unstable/update b/nixos/channels/nixos-unstable/update
index 747d585..f7b1938 100755
--- a/nixos/channels/nixos-unstable/update
+++ b/nixos/channels/nixos-unstable/update
@@ -1,4 +1,8 @@
 #!/usr/bin/env nix-shell
-#! nix-shell -i sh -p nix-prefetch-git
+#! nix-shell -i sh -p nix-prefetch-git jq
+
+url="https://github.com/NixOS/nixpkgs-channels/"
+ref="refs/heads/nixos-19.09"
+
+nix-prefetch-git --rev "$ref" --no-deepClone "$url" | jq --arg ref "$ref" '{ref: $ref} + .' > channel.json
 
-nix-prefetch-git --rev refs/heads/nixos-unstable --no-deepClone https://github.com/NixOS/nixpkgs-channels/ > channel.json
diff --git a/nixos/default.nix b/nixos/default.nix
index c338ccc..471adb4 100644
--- a/nixos/default.nix
+++ b/nixos/default.nix
@@ -13,7 +13,7 @@ let
   # channelsDir :: path
   channelsDir = ./channels;
   # allChannels :: { *: path }
-  allChannels = with helpers; keysToAttrs (channelname: import (channelsDir + "/${channelname}")) (readFilterDir (filterAnd [(not filterDirHidden) filterDirDirs]) channelsDir);
+  allChannels = with helpers; keysToAttrs (channelname: import (channelsDir + "/${channelname}") channelname) (readFilterDir (filterAnd [(not filterDirHidden) filterDirDirs]) channelsDir);
   # getMachineChannel :: string -> path
   getMachineChannel = { name, path }:
     let
-- 
GitLab