cabal2nix 1.26 → 1.27
raw patch · 5 files changed
+11/−12 lines, 5 files
Files
- README.md +4/−4
- cabal2nix.cabal +5/−5
- src/Cabal2Nix/Flags.hs +0/−2
- src/Cabal2Nix/Normalize.hs +1/−1
- src/Cabal2Nix/PostProcess.hs +1/−0
README.md view
@@ -116,14 +116,14 @@ is no proper Cabal file for them, or because their builds are so complicated that the `cabal.nix` build doesn't suffice to do the trick. The list of bad packages is hard-coded into- [`hackage4nix.hs`](https://github.com/haskell4nix/cabal2nix/blob/master/src/Hackage4Nix.hs),+ [`hackage4nix.hs`](http://github.com/NixOS/cabal2nix/blob/master/src/Hackage4Nix.hs), in the functions `badPackagePaths` and `patchedPackages`. Any package list in there is going to be ignored by `hackage4nix`. * "Patched packages" cannot be generated automatically, because their build instructions need patches that `cabal2nix` doesn't (yet) know about. There is a hard-coded list of patched packages in- [`hackage4nix`](https://github.com/haskell4nix/cabal2nix/blob/master/src/Hackage4Nix.hs).+ [`hackage4nix`](http://github.com/NixOS/cabal2nix/blob/master/src/Hackage4Nix.hs). Furthermore, all build expressions that define any of the attributes (pre|post)Configure@@ -131,11 +131,11 @@ patchPhase are considered "patched". That list of attributes is hard-coded in- [`hackage4nix.hs`](https://github.com/haskell4nix/cabal2nix/blob/master/src/Hackage4Nix.hs)+ [`hackage4nix.hs`](http://github.com/NixOS/cabal2nix/blob/master/src/Hackage4Nix.hs) in the function `regenerateDerivation`. The complete list of Haskell packages available in Nix is generated by-the tool [`package-list`](https://github.com/haskell4nix/package-list),+the tool [`package-list`](http://github.com/peti/package-list), and published at <http://cryp.to/haskell-in-nixpkgs.txt>. Hackage picks it up from there and generates links on each package's homepage to the corresponding page in Hydra automatically. See [ticket
cabal2nix.cabal view
@@ -1,11 +1,11 @@ Name: cabal2nix-Version: 1.26+Version: 1.27 Copyright: Peter Simons, Andres Loeh License: BSD3 License-File: LICENSE Author: Peter Simons <simons@cryp.to>, Andres Loeh <mail@andres-loeh.de> Maintainer: Nix Developers <nix-dev@lists.science.uu.nl>-Homepage: http://github.com/haskell4nix/cabal2nix+Homepage: http://github.com/NixOS/cabal2nix Category: Distribution Synopsis: Convert Cabal files into Nix build instructions Cabal-Version: >= 1.8@@ -31,8 +31,8 @@ . The only required argument is the path to the cabal file. For example: .- > cabal2nix http://hackage.haskell.org/packages/archive/cabal2nix/1.26/cabal2nix.cabal- > cabal2nix cabal://cabal2nix-1.26+ > cabal2nix http://hackage.haskell.org/packages/archive/cabal2nix/1.27/cabal2nix.cabal+ > cabal2nix cabal://cabal2nix-1.27 . If the @--sha256@ option has not been specified, cabal2nix calls @nix-prefetch-url@ to determine the hash automatically. This causes@@ -40,7 +40,7 @@ Source-Repository head Type: git- Location: git://github.com/haskell4nix/cabal2nix.git+ Location: git://github.com/NixOS/cabal2nix.git Executable cabal2nix main-is: Cabal2Nix.hs
src/Cabal2Nix/Flags.hs view
@@ -5,8 +5,6 @@ configureCabalFlags :: PackageIdentifier -> FlagAssignment configureCabalFlags (PackageIdentifier (PackageName name) _)- | name == "hmatrix" = [enable "vector"]- | name == "pandoc" = [enable "highlighting", enable "threaded"] | name == "xmobar" = [enable "with_xft"] | otherwise = []
src/Cabal2Nix/Normalize.hs view
@@ -10,7 +10,7 @@ normalize :: Derivation -> Derivation normalize deriv@(MkDerivation {..}) = deriv- { buildDepends = normalizeNixNames (filter (`notElem` (pname : corePackages)) $ ("Cabal" : buildDepends))+ { buildDepends = normalizeNixNames (filter (`notElem` (pname : corePackages)) $ buildDepends) , buildTools = normalizeNixBuildTools (filter (`notElem` coreBuildTools) $ buildTools) , extraLibs = normalizeNixLibs extraLibs , pkgConfDeps = normalizeNixLibs pkgConfDeps
src/Cabal2Nix/PostProcess.hs view
@@ -19,6 +19,7 @@ | pname == "haddock" = deriv { buildTools = "alex":"happy":buildTools } | pname == "happy" = deriv { buildTools = "perl":buildTools } | pname == "haskell-src" = deriv { buildTools = "happy":buildTools }+ | pname == "haskell-src-meta" = deriv { buildDepends = "uniplate":buildDepends } | pname == "hmatrix" = deriv { extraLibs = "gsl":"liblapack":"blas":extraLibs } | pname == "idris" = deriv { buildTools = "happy":buildTools } | pname == "OpenAL" = deriv { extraLibs = "openal":extraLibs }