haskell: have a dedicated file for non Hackage packages

We had a few "overrides" in configuration-common.nix that were really
extensions. They introduced packages that weren't in hackage-packages.nix.

The advantage of having a dedicated file for these packages is that we can still
place Nix-specific overrides to these packages in configuration-nix.nix. We
weren't able do this before because configuration-nix.nix extended only the
packages from hackage-packages.nix.
This commit is contained in:
Bas van Dijk 2018-08-25 15:24:41 +02:00 committed by Silvan Mosberger
parent 0c25079958
commit 7b49b870cb
No known key found for this signature in database
GPG Key ID: 9424360B4B85C9E7
3 changed files with 18 additions and 10 deletions

View File

@ -704,12 +704,6 @@ self: super: {
then appendConfigureFlag super.gtk "-fhave-quartz-gtk"
else super.gtk;
# vaultenv is not available from Hackage.
vaultenv = self.callPackage ../tools/haskell/vaultenv { };
# futhark is not available from Hackage.
futhark = self.callPackage ../compilers/futhark { };
# https://github.com/Philonous/hs-stun/pull/1
# Remove if a version > 0.1.0.1 ever gets released.
stunclient = overrideCabal super.stunclient (drv: {
@ -950,9 +944,6 @@ self: super: {
# Tries to read a file it is not allowed to in the test suite
load-env = dontCheck super.load-env;
# Add support for https://github.com/haskell-hvr/multi-ghc-travis.
multi-ghc-travis = self.callPackage ../tools/haskell/multi-ghc-travis {};
# https://github.com/yesodweb/Shelly.hs/issues/162
shelly = dontCheck super.shelly;

View File

@ -4,6 +4,7 @@
, packageSetConfig ? (self: super: {})
, overrides ? (self: super: {})
, initialPackages ? import ./initial-packages.nix
, nonHackagePackages ? import ./non-hackage-packages.nix
, configurationCommon ? import ./configuration-common.nix
, configurationNix ? import ./configuration-nix.nix
}:
@ -26,7 +27,9 @@ let
(extends packageSetConfig
(extends compilerConfig
(extends commonConfiguration
(extends nixConfiguration haskellPackages)))));
(extends nixConfiguration
(extends nonHackagePackages
haskellPackages))))));
in

View File

@ -0,0 +1,14 @@
# EXTRA HASKELL PACKAGES NOT ON HACKAGE
#
# This file should only contain packages that are not in ./hackage-packages.nix.
# Attributes in this set should be nothing more than a callPackage call.
# Overrides to these packages should go to either configuration-nix.nix,
# configuration-common.nix or to one of the compiler specific configuration
# files.
self: super: {
multi-ghc-travis = self.callPackage ../tools/haskell/multi-ghc-travis { };
vaultenv = self.callPackage ../tools/haskell/vaultenv { };
futhark = self.callPackage ../compilers/futhark { };
}