about summary refs log tree commit diff
path: root/third_party/overlays/dhall/default.nix
diff options
context:
space:
mode:
authorProfpatsch <mail@profpatsch.de>2021-04-18T08·29+0200
committerProfpatsch <mail@profpatsch.de>2022-02-27T17·21+0000
commit723c21ddb671aa4648559109c2d7ea3c23d9a9c9 (patch)
treebc2f743ad2c56ec0dcfa19832e3f9e4226c6d096 /third_party/overlays/dhall/default.nix
parent4d5459ef9344d277198fa3c14a04206ff4c417d9 (diff)
fix(third_party/nixpkgs): always use easy-dhall-nix tools r/3873
Using the dhall executables from nixpkgs is basically always a
mistake, they have to be built and are regularly broken.

We don’t want to care about that, but just use the official statically
built binary releases.

Change-Id: Ia6d9254076ca21f55e020ae81548e80d6be8281d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3041
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
Reviewed-by: zseri <zseri.devel@ytrizja.de>
Diffstat (limited to 'third_party/overlays/dhall/default.nix')
-rw-r--r--third_party/overlays/dhall/default.nix27
1 files changed, 27 insertions, 0 deletions
diff --git a/third_party/overlays/dhall/default.nix b/third_party/overlays/dhall/default.nix
new file mode 100644
index 0000000000..74d2a999b9
--- /dev/null
+++ b/third_party/overlays/dhall/default.nix
@@ -0,0 +1,27 @@
+{ ... }:
+
+pkgs: _:
+
+let
+  # binary releases of dhall tools, since the build in nixpkgs is
+  # broken most of the time. The binaries are also fully static
+  # builds, instead of the half-static crap that nixpkgs produces.
+  easy-dhall-nix =
+    import
+      (builtins.fetchTarball {
+        url = "https://github.com/justinwoo/easy-dhall-nix/archive/eae7f64c4d6c70681e5a56c84198236930ba425e.tar.gz";
+        sha256 = "1y2x15v8a679vlpxazjpibfwajp6zph60f8wjcm4xflbvazk0dx7";
+      })
+      { inherit pkgs; };
+in
+{
+  dhall = easy-dhall-nix.dhall-simple;
+  dhall-bash = easy-dhall-nix.dhall-bash-simple;
+  dhall-docs = easy-dhall-nix.dhall-docs-simple;
+  dhall-json = easy-dhall-nix.dhall-json-simple;
+  dhall-lsp-server = easy-dhall-nix.dhall-lsp-simple;
+  dhall-nix = easy-dhall-nix.dhall-nix-simple;
+  # not yet in dhall-simple
+  # dhall-nixpkgs = easy-dhall-nix.dhall-nixpkgs-simple;
+  dhall-yaml = easy-dhall-nix.dhall-yaml-simple;
+}