diff --git a/nixos/layers/dev-haskell.nix b/nixos/layers/dev-haskell.nix index 8bfe8a6102f1587853143d052d8a79aa82dac349..a83aaac6d08016f99e79eb53d546dcb2cb0c0530 100644 --- a/nixos/layers/dev-haskell.nix +++ b/nixos/layers/dev-haskell.nix @@ -1,18 +1,8 @@ { pkgs, ... }: -let - all-hies-repo = pkgs.fetchFromGitHub { - owner = "infinisil"; - repo = "all-hies"; - rev = "0cba12ce4df375766dd183b4beebdee7d8e36e12"; - sha256 = "1f91nrksr2x0zi2kbsy6qf4fmb1ybpx9p55rijhhs05rssk4b0nq"; - }; - all-hies = import all-hies-repo {}; - -in { environment.systemPackages = with pkgs; [ stack - all-hies.latest + haskell-ide-engine ]; } diff --git a/nixos/pkgs/default.nix b/nixos/pkgs/default.nix index e0de960eb8b79db333ef21fb47441b1cb8442cfc..3fba7c2c940f3855f3edc3269205c253f1814964 100644 --- a/nixos/pkgs/default.nix +++ b/nixos/pkgs/default.nix @@ -8,6 +8,7 @@ let # e.g.: #mypkg = haskell.packages.ghc865.callPackage ./mypkg { }; dotnet-sdk = callPackage ./dotnet-sdk { }; + haskell-ide-engine = (import ./haskell-ide-engine { inherit pkgs; }).haskell-ide-engine; }; in newpkgs diff --git a/nixos/pkgs/haskell-ide-engine/all-hies.json b/nixos/pkgs/haskell-ide-engine/all-hies.json new file mode 100644 index 0000000000000000000000000000000000000000..0ce99b32a141c795f3872a925deef26ec2b60a9a --- /dev/null +++ b/nixos/pkgs/haskell-ide-engine/all-hies.json @@ -0,0 +1,6 @@ +{ + "owner": "Infinisil", + "repo": "all-hies", + "rev": "c4fad117eb79305f5b8bc77a6a28562a5f8d2ca3", + "sha256": "19spg5xnb1gdnxal4vp402dknfhbva5jj5yq34qyzvksyn16c3dp" +} \ No newline at end of file diff --git a/nixos/pkgs/haskell-ide-engine/default.nix b/nixos/pkgs/haskell-ide-engine/default.nix new file mode 100644 index 0000000000000000000000000000000000000000..cad40387d2775895fc7dd967f81fd40c4ab689e2 --- /dev/null +++ b/nixos/pkgs/haskell-ide-engine/default.nix @@ -0,0 +1,9 @@ +{ pkgs, ... }: + +let + all-hies-repo = pkgs.fetchFromGitHub (builtins.fromJSON (builtins.readFile ./all-hies.json)); + all-hies = import all-hies-repo {}; +in +{ + haskell-ide-engine = all-hies.latest; +} \ No newline at end of file diff --git a/nixos/pkgs/haskell-ide-engine/update b/nixos/pkgs/haskell-ide-engine/update new file mode 100755 index 0000000000000000000000000000000000000000..2dbc7aa12caca6ea161ce30559afd88f67aeeb39 --- /dev/null +++ b/nixos/pkgs/haskell-ide-engine/update @@ -0,0 +1,4 @@ +#!/usr/bin/env nix-shell +#!nix-shell -i zsh -p zsh nix-prefetch-github + +nix-prefetch-github Infinisil all-hies > all-hies.json