summary refs log tree commit diff
diff options
context:
space:
mode:
author(cdep)illabout <cdep.illabout@gmail.com>2019-12-20 16:12:29 +0900
committerPeter Simons <simons@cryp.to>2019-12-27 20:37:13 +0100
commitb7a5df05c342896e69ab6b0ff202bcbbb4579b11 (patch)
treecf9370b2ba156431226dbbcc5d9c5ec5533ff5c4
parent54fad88234900e32d701189dab9e3458697a1da2 (diff)
downloadnixpkgs-b7a5df05c342896e69ab6b0ff202bcbbb4579b11.tar
nixpkgs-b7a5df05c342896e69ab6b0ff202bcbbb4579b11.tar.gz
nixpkgs-b7a5df05c342896e69ab6b0ff202bcbbb4579b11.tar.bz2
nixpkgs-b7a5df05c342896e69ab6b0ff202bcbbb4579b11.tar.lz
nixpkgs-b7a5df05c342896e69ab6b0ff202bcbbb4579b11.tar.xz
nixpkgs-b7a5df05c342896e69ab6b0ff202bcbbb4579b11.tar.zst
nixpkgs-b7a5df05c342896e69ab6b0ff202bcbbb4579b11.zip
spago: 0.12.1.0 -> 0.13.0
-rw-r--r--pkgs/development/haskell-modules/configuration-nix.nix10
-rw-r--r--pkgs/development/haskell-modules/non-hackage-packages.nix2
-rw-r--r--pkgs/development/tools/purescript/spago/default.nix57
-rw-r--r--pkgs/development/tools/purescript/spago/spago.nix47
-rwxr-xr-xpkgs/development/tools/purescript/spago/update.sh2
-rw-r--r--pkgs/top-level/all-packages.nix2
6 files changed, 65 insertions, 55 deletions
diff --git a/pkgs/development/haskell-modules/configuration-nix.nix b/pkgs/development/haskell-modules/configuration-nix.nix
index 472e4c66fc7..8a8f2860186 100644
--- a/pkgs/development/haskell-modules/configuration-nix.nix
+++ b/pkgs/development/haskell-modules/configuration-nix.nix
@@ -644,8 +644,8 @@ self: super: builtins.intersectAttrs super {
       # we can safely jailbreak spago and use the older directory package from
       # LTS-14.
       spagoWithOverrides = doJailbreak (super.spago.override {
-        # spago requires the latest version of dhall.
-        directory = self.dhall_1_28_0;
+        # spago requires dhall_1_27_0.
+        dhall = self.dhall_1_27_0;
       });
 
       docsSearchAppJsFile = pkgs.fetchurl {
@@ -683,13 +683,9 @@ self: super: builtins.intersectAttrs super {
         '';
       });
 
-      # Haddock generation is broken for spago.
-      # https://github.com/spacchetti/spago/issues/511
-      spagoWithoutHaddocks = dontHaddock spagoFixHpack;
-
       # Because of the problem above with pulling in hspec defaults to the
       # package.yaml file, the tests are disabled.
-      spagoWithoutChecks = dontCheck spagoWithoutHaddocks;
+      spagoWithoutChecks = dontCheck spagoFixHpack;
     in
     spagoWithoutChecks;
 }
diff --git a/pkgs/development/haskell-modules/non-hackage-packages.nix b/pkgs/development/haskell-modules/non-hackage-packages.nix
index c292eeec128..092af07637f 100644
--- a/pkgs/development/haskell-modules/non-hackage-packages.nix
+++ b/pkgs/development/haskell-modules/non-hackage-packages.nix
@@ -15,5 +15,5 @@ self: super: {
 
   # spago is not released to Hackage.
   # https://github.com/spacchetti/spago/issues/512
-  spago = self.callPackage ../tools/purescript/spago { };
+  spago = self.callPackage ../tools/purescript/spago/spago.nix { };
 }
diff --git a/pkgs/development/tools/purescript/spago/default.nix b/pkgs/development/tools/purescript/spago/default.nix
index 6879d6875cc..2fc5efedb20 100644
--- a/pkgs/development/tools/purescript/spago/default.nix
+++ b/pkgs/development/tools/purescript/spago/default.nix
@@ -1,47 +1,14 @@
-{ mkDerivation, aeson, aeson-pretty, ansi-terminal, async-pool
-, base, bower-json, bytestring, Cabal, containers, dhall, directory
-, either, exceptions, extra, fetchgit, file-embed, filepath, foldl
-, fsnotify, github, Glob, hpack, hspec, hspec-discover
-, hspec-megaparsec, http-client, http-conduit, lens-family-core
-, megaparsec, mtl, network-uri, open-browser, optparse-applicative
-, prettyprinter, process, QuickCheck, retry, rio, rio-orphans, safe
-, semver-range, stdenv, stm, tar, template-haskell, temporary, text
-, time, transformers, turtle, unliftio, unordered-containers
-, vector, versions, zlib
+{ haskellPackages
+, haskell
+, lib
 }:
-mkDerivation {
-  pname = "spago";
-  version = "0.12.1.0";
-  src = fetchgit {
-    url = "https://github.com/spacchetti/spago";
-    sha256 = "17xgp75yxangmb65sv3raysad31kmc109c4q4aj9dgcdqz23fcn2";
-    rev = "a4679880402ead320f8be2f091b25d30e27b62df";
-    fetchSubmodules = true;
-  };
-  isLibrary = true;
-  isExecutable = true;
-  libraryHaskellDepends = [
-    aeson aeson-pretty ansi-terminal async-pool base bower-json
-    bytestring Cabal containers dhall directory either exceptions
-    file-embed filepath foldl fsnotify github Glob http-client
-    http-conduit lens-family-core megaparsec mtl network-uri
-    open-browser prettyprinter process retry rio rio-orphans safe
-    semver-range stm tar template-haskell temporary text time
-    transformers turtle unliftio unordered-containers vector versions
-    zlib
-  ];
-  libraryToolDepends = [ hpack ];
-  executableHaskellDepends = [
-    aeson-pretty async-pool base bytestring containers dhall filepath
-    github lens-family-core megaparsec optparse-applicative process
-    retry stm temporary text time turtle vector
+
+haskell.lib.justStaticExecutables (haskell.lib.overrideCabal haskellPackages.spago (oldAttrs: {
+  maintainers = (oldAttrs.maintainers or []) ++ [
+    lib.maintainers.cdepillabout
   ];
-  testHaskellDepends = [
-    base containers directory extra hspec hspec-megaparsec megaparsec
-    process QuickCheck temporary text turtle versions
-  ];
-  testToolDepends = [ hspec-discover ];
-  prePatch = "hpack";
-  homepage = "https://github.com/spacchetti/spago#readme";
-  license = stdenv.lib.licenses.bsd3;
-}
+
+  passthru = (oldAttrs.passthru or {}) // {
+    updateScript = ./update.sh;
+  };
+}))
diff --git a/pkgs/development/tools/purescript/spago/spago.nix b/pkgs/development/tools/purescript/spago/spago.nix
new file mode 100644
index 00000000000..c85cff2f03a
--- /dev/null
+++ b/pkgs/development/tools/purescript/spago/spago.nix
@@ -0,0 +1,47 @@
+{ mkDerivation, aeson, aeson-pretty, ansi-terminal, async-pool
+, base, bower-json, bytestring, Cabal, containers, dhall, directory
+, either, exceptions, extra, fetchgit, file-embed, filepath, foldl
+, fsnotify, github, Glob, hpack, hspec, hspec-discover
+, hspec-megaparsec, http-client, http-conduit, lens-family-core
+, megaparsec, mtl, network-uri, open-browser, optparse-applicative
+, prettyprinter, process, QuickCheck, retry, rio, rio-orphans, safe
+, semver-range, stdenv, stm, tar, template-haskell, temporary, text
+, time, transformers, turtle, unliftio, unordered-containers
+, vector, versions, zlib
+}:
+mkDerivation {
+  pname = "spago";
+  version = "0.13.0";
+  src = fetchgit {
+    url = "https://github.com/spacchetti/spago.git";
+    sha256 = "158xq5zn32iwswxmpma92763hl6kzq7kb01cyvphmmlilx55b6yk";
+    rev = "426838670ba9de4593f4c533a6947efb2d8ad4ba";
+    fetchSubmodules = true;
+  };
+  isLibrary = true;
+  isExecutable = true;
+  libraryHaskellDepends = [
+    aeson aeson-pretty ansi-terminal async-pool base bower-json
+    bytestring Cabal containers dhall directory either exceptions
+    file-embed filepath foldl fsnotify github Glob http-client
+    http-conduit lens-family-core megaparsec mtl network-uri
+    open-browser prettyprinter process retry rio rio-orphans safe
+    semver-range stm tar template-haskell temporary text time
+    transformers turtle unliftio unordered-containers vector versions
+    zlib
+  ];
+  libraryToolDepends = [ hpack ];
+  executableHaskellDepends = [
+    aeson-pretty async-pool base bytestring containers dhall filepath
+    github lens-family-core megaparsec optparse-applicative process
+    retry stm temporary text time turtle vector
+  ];
+  testHaskellDepends = [
+    base containers directory extra hspec hspec-megaparsec megaparsec
+    process QuickCheck temporary text turtle versions
+  ];
+  testToolDepends = [ hspec-discover ];
+  prePatch = "hpack";
+  homepage = "https://github.com/spacchetti/spago#readme";
+  license = stdenv.lib.licenses.bsd3;
+}
diff --git a/pkgs/development/tools/purescript/spago/update.sh b/pkgs/development/tools/purescript/spago/update.sh
index df903abd598..00c9c6d85f1 100755
--- a/pkgs/development/tools/purescript/spago/update.sh
+++ b/pkgs/development/tools/purescript/spago/update.sh
@@ -14,7 +14,7 @@ set -eo pipefail
 script_dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
 
 # Spago derivation created with cabal2nix.
-spago_derivation_file="${script_dir}/default.nix"
+spago_derivation_file="${script_dir}/spago.nix"
 
 # This is the current revision of spago in Nixpkgs.
 old_version="$(sed -En 's/.*\bversion = "(.*?)".*/\1/p' "$spago_derivation_file")"
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index b68c58ce42e..84c3e3aef69 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -8154,7 +8154,7 @@ in
 
   purescript-psa = nodePackages.purescript-psa;
 
-  spago = haskell.lib.justStaticExecutables haskellPackages.spago;
+  spago = callPackage ../development/tools/purescript/spago { };
 
   pulp = nodePackages.pulp;