@@ -1,26 +1,30 @@
1−{ pkgs ? import <nixpkgs> { } }:
1+# Universal shell for PureScript repos
2+# { pkgs ? import <nixpkgs> { }
3+{ pkgs ? import (builtins.fetchGit {
4+ # https://github.com/NixOS/nixpkgs/releases/tag/20.09
5+ url = "https://github.com/nixos/nixpkgs/";
6+ ref = "refs/tags/20.09";
7+ rev = "cd63096d6d887d689543a0b97743d28995bc9bc3";
8+ }) {}
9+}:
210let
3− easy-ps = import
4− (pkgs.fetchFromGitHub {
5− owner = "justinwoo";
6− repo = "easy-purescript-nix";
7− rev = "0ba91d9aa9f7421f6bfe4895677159a8a999bf20";
8− sha256 = "1baq7mmd3vjas87f0gzlq83n2l1h3dlqajjqr7fgaazpa9xgzs7q";
9− }) {
10− inherit pkgs;
11− };
11+ easy-ps = import (builtins.fetchGit {
12+ url = "https://github.com/justinwoo/easy-purescript-nix.git";
13+ rev = "bbef4245cd6810ea84e97a47c801947bfec9fadc";
14+ }) { inherit pkgs; };
1215in
1316pkgs.mkShell {
14− buildInputs = [
15− easy-ps.purs-0_13_8
17+ nativeBuildInputs = [
18+ easy-ps.purs-0_14_3
1619 easy-ps.spago
17− pkgs.nodejs-13_x
20+ easy-ps.pulp
21+ easy-ps.psc-package
22+ pkgs.nodejs-14_x
1823 pkgs.nodePackages.bower
19− # pkgs.nodePackages.pulp
20− #
21− # The pulp nix derivation doesn't work, so to run pulp:
22− # $ npm install pulp
23− # $ node node_modules/pulp/index.js
2424 ];
2525 LC_ALL = "C.UTF-8"; # https://github.com/purescript/spago/issues/507
26+ # https://github.com/purescript/spago#install-autocompletions-for-bash
27+ shellHook = ''
28+ source <(spago --bash-completion-script `which spago`)
29+ '';
2630}