From 7e94eb94c6194cf696c34b8e1ce688411b10c3d1 Mon Sep 17 00:00:00 2001 From: Anton-Latukha Date: Wed, 3 Jun 2020 20:32:35 +0300 Subject: [PATCH] default.nix: abstract the developPackage into value M default.nix --- default.nix | 73 +++++++++++++++++++++++++++++------------------------ 1 file changed, 40 insertions(+), 33 deletions(-) diff --git a/default.nix b/default.nix index ed2ff66..1c6326d 100644 --- a/default.nix +++ b/default.nix @@ -118,42 +118,49 @@ let haskellPackages = pkgs.haskell.packages.${compiler}.override overrideHaskellPackages; -in haskellPackages.developPackage { - name = "hnix"; - root = ./.; + # General description of package + package = haskellPackages.developPackage { + name = "hnix"; + root = ./.; - modifier = drv: pkgs.haskell.lib.overrideCabal drv (attrs: { - buildTools = (attrs.buildTools or []) ++ [ - haskellPackages.cabal-install - ]; + modifier = drv: pkgs.haskell.lib.overrideCabal drv (attrs: { + buildTools = (attrs.buildTools or []) ++ [ + haskellPackages.cabal-install + ]; - testHaskellDepends = attrs.testHaskellDepends ++ [ - pkgs.nix - haskellPackages.criterion - ]; + testHaskellDepends = attrs.testHaskellDepends ++ [ + pkgs.nix + haskellPackages.criterion + ]; - inherit doBenchmark; - inherit doCoverage; - inherit doHaddock; - inherit doCheck; - inherit enableLibraryProfiling; - inherit enableExecutableProfiling; - inherit enableSharedExecutables; - inherit enableSharedLibraries; - inherit enableStaticLibraries; - inherit enableDeadCodeElimination; - inherit allowInconsistentDependencies; + inherit doBenchmark; + inherit doCoverage; + inherit doHaddock; + inherit doCheck; + inherit enableLibraryProfiling; + inherit enableExecutableProfiling; + inherit enableSharedExecutables; + inherit enableSharedLibraries; + inherit enableStaticLibraries; + inherit enableDeadCodeElimination; + inherit allowInconsistentDependencies; - configureFlags = - pkgs.stdenv.lib.optional doTracing "--flags=tracing" - ++ pkgs.stdenv.lib.optional doOptimize "--flags=optimize" - ++ pkgs.stdenv.lib.optional doStrict "--ghc-options=-Werror"; + configureFlags = + pkgs.stdenv.lib.optional doTracing "--flags=tracing" + ++ pkgs.stdenv.lib.optional doOptimize "--flags=optimize" + ++ pkgs.stdenv.lib.optional doStrict "--ghc-options=-Werror"; + + passthru = { + nixpkgs = pkgs; + inherit haskellPackages; + }; + }); + + returnShellEnv = false; + }; + + composedPackage = package; + +in composedPackage - passthru = { - nixpkgs = pkgs; - inherit haskellPackages; - }; - }); - returnShellEnv = false; -}