From 0e29814f1ef3b48e89cd2c9998a97e917beb7ea9 Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Fri, 18 Sep 2020 14:18:10 +0200 Subject: [PATCH] Add support for flake inputs with `type = "gitlab"` --- default.nix | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/default.nix b/default.nix index c047378..cc021b5 100644 --- a/default.nix +++ b/default.nix @@ -16,7 +16,7 @@ let fetchTree = info: if info.type == "github" then - { outPath = fetchTarball "https://api.github.com/repos/${info.owner}/${info.repo}/tarball/${info.rev}"; + { outPath = fetchTarball "https://api.${info.url or "github.com"}/repos/${info.owner}/${info.repo}/tarball/${info.rev}"; rev = info.rev; shortRev = builtins.substring 0 7 info.rev; lastModified = info.lastModified; @@ -44,6 +44,11 @@ let { outPath = fetchTarball info.url; narHash = info.narHash; } + else if info.type == "gitlab" then + { inherit (info) rev narHash lastModified; + outPath = fetchTarball "https://${info.url or "gitlab.com"}/${info.owner}/${info.repo}/-/archive/${info.rev}/${info.repo}-${info.rev}.tar.gz"; + shortRev = builtins.substring 0 7 info.rev; + } else # FIXME: add Mercurial, tarball inputs. throw "flake input has unsupported input type '${info.type}'";