cabal2nix 2.15.3 → 2.15.4
raw patch · 8 files changed
+71/−9 lines, 8 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
- cabal2nix.cabal +1/−1
- hackage2nix/Main.hs +1/−0
- src/Cabal2nix.hs +2/−0
- src/Distribution/Nixpkgs/Haskell/FromCabal.hs +6/−7
- src/Distribution/Nixpkgs/Haskell/FromCabal/Name.hs +4/−0
- src/Distribution/Nixpkgs/Haskell/FromCabal/PostProcess.hs +2/−1
- test/golden-test-cases/BioHMM.cabal +40/−0
- test/golden-test-cases/BioHMM.nix.golden +15/−0
cabal2nix.cabal view
@@ -1,5 +1,5 @@ name: cabal2nix-version: 2.15.3+version: 2.15.4 synopsis: Convert Cabal files into Nix build instructions. description: Convert Cabal files into Nix build instructions. Users of Nix can install the latest
hackage2nix/Main.hs view
@@ -78,6 +78,7 @@ . Map.delete "som" -- TODO: https://github.com/NixOS/cabal2nix/issues/164 . Map.delete "type" -- TODO: https://github.com/NixOS/cabal2nix/issues/163 . Map.delete "control-invariants" -- TODO: depends on "assert"+ . Map.delete "ConcurrentUtils" -- TODO: depends on "assert" . Map.delete "with" -- TODO: https://github.com/NixOS/cabal2nix/issues/164 . Map.delete "telega" -- TODO: depends on "with" . over (at "hermes") (fmap (set (contains "1.3.4.3") False)) -- TODO: https://github.com/haskell/hackage-server/issues/436
src/Cabal2nix.hs view
@@ -40,6 +40,8 @@ import qualified Text.PrettyPrint.ANSI.Leijen as P2 import Text.PrettyPrint.HughesPJClass ( Doc, Pretty(..), text, vcat, hcat, semi, render, prettyShow ) +{-# ANN module ("HLint: ignore Use Just" :: String) #-}+ data Options = Options { optSha256 :: Maybe String , optMaintainer :: [String]
src/Distribution/Nixpkgs/Haskell/FromCabal.hs view
@@ -8,7 +8,6 @@ ) where import Control.Lens-import Data.Char ( isSpace ) import Data.Maybe import Data.Set ( Set ) import qualified Data.Set as Set@@ -108,11 +107,11 @@ else "") & metaSection .~ ( Nix.nullMeta #if MIN_VERSION_Cabal(3,2,0)- & Nix.homepage .~ strip isSpace (fromShortText homepage)- & Nix.description .~ fromShortText synopsis+ & Nix.homepage .~ stripRedundanceSpaces (fromShortText homepage)+ & Nix.description .~ stripRedundanceSpaces (fromShortText synopsis) #else- & Nix.homepage .~ strip isSpace homepage- & Nix.description .~ synopsis+ & Nix.homepage .~ stripRedundanceSpaces homepage+ & Nix.description .~ stripRedundanceSpaces synopsis #endif & Nix.license .~ nixLicense & Nix.platforms .~ Nix.allKnownPlatforms@@ -179,5 +178,5 @@ bindNull :: Identifier -> Binding bindNull i = binding # (i, path # ["null"]) -strip :: (Char -> Bool) -> String -> String-strip p = reverse . dropWhile p . reverse . dropWhile p+stripRedundanceSpaces :: String -> String+stripRedundanceSpaces = unwords . words
src/Distribution/Nixpkgs/Haskell/FromCabal/Name.hs view
@@ -99,12 +99,14 @@ libNixName "libpcre2-8" = libNixName "libpcre2" libNixName "libqrencode" = return "qrencode" libNixName "libR" = return "R"+libNixName "libsecp256k1" = return "secp256k1" libNixName "libsoup-gnome-2.4" = return "libsoup" libNixName "libsystemd" = return "systemd" libNixName "libudev" = return "systemd" libNixName "libxml-2.0" = return "libxml2" libNixName "libzip" = return "libzip" libNixName "libzmq" = return "zeromq"+libNixName "liquid" = return "liquid-dsp" libNixName "m" = [] -- in stdenv libNixName "magic" = return "file" libNixName "MagickWand" = return "imagemagick"@@ -143,6 +145,7 @@ libNixName "sctp" = return "lksctp-tools" -- This is linux-specific, we should create a common attribute if we ever add sctp support for other systems. libNixName "sdl2" = return "SDL2" libNixName "sndfile" = return "libsndfile"+libNixName "SoapySDR" = return "soapysdr" libNixName "sodium" = return "libsodium" libNixName "sqlite3" = return "sqlite" libNixName "ssh2" = return "libssh2"@@ -153,6 +156,7 @@ libNixName "systemd-journal" = return "systemd" libNixName "tag_c" = return "taglib" libNixName "taglib_c" = return "taglib"+libNixName "tdjson" = return "tdlib" libNixName "tensorflow" = return "libtensorflow" libNixName "udev" = return "systemd"; libNixName "uuid" = return "libossp_uuid";
src/Distribution/Nixpkgs/Haskell/FromCabal/PostProcess.hs view
@@ -73,7 +73,8 @@ hooks :: [(Dependency, Derivation -> Derivation)] hooks = [ ("Agda < 2.5", set (executableDepends . tool . contains (pkg "emacs")) True . set phaseOverrides agdaPostInstall)- , ("Agda >= 2.5", set (executableDepends . tool . contains (pkg "emacs")) True . set phaseOverrides agda25PostInstall)+ , ("Agda >= 2.5 && < 2.6", set (executableDepends . tool . contains (pkg "emacs")) True . set phaseOverrides agda25PostInstall)+ , ("Agda >= 2.6", set (executableDepends . tool . contains (pkg "emacs")) True) , ("alex < 3.1.5", set (testDepends . tool . contains (pkg "perl")) True) , ("alex", set (executableDepends . tool . contains (self "happy")) True) , ("alsa-core", over (metaSection . platforms) (Set.filter (\(Platform _ os) -> os == Linux)))
+ test/golden-test-cases/BioHMM.cabal view
@@ -0,0 +1,40 @@+name: BioHMM+version: 1.2.0+synopsis: Libary for Hidden Markov Models in HMMER3 format. +description: Libary containing parsing and visualisation functions and datastructures for Hidden Markov Models in HMMER3 format. +license: GPL-3+license-file: LICENSE+author: Florian Eggenhofer+maintainer: egg@informatik.uni-freiburg.de+-- copyright: +category: Bioinformatics+build-type: Simple+cabal-version: >=1.8++extra-source-files:+ README.md changelog++source-repository head+ type: git+ location: https://github.com/eggzilla/BioHMM++source-repository this+ type: git+ location: https://github.com/eggzilla/BioHMM/tree/1.2.0+ tag: 1.2.0++library+ -- Modules exported by the library.+ exposed-modules: Bio.HMMData+ Bio.HMMParser+ Bio.HMMDraw+ Bio.HMMCompareResult++ -- compiler-options:+ ghc-options: -Wall -fno-warn-unused-do-bind++ -- Other library packages from which modules are imported.+ build-depends: base >=4.5 && <5, parsec>=3.1.9, diagrams-lib>=1.3, text, vector, ParsecTools, diagrams-cairo>=1.3, filepath, colour, directory, either-unwrap, SVGFonts >= 1.6, StockholmAlignment>=1.1.0+ + -- Directories containing source files.+ hs-source-dirs: src
+ test/golden-test-cases/BioHMM.nix.golden view
@@ -0,0 +1,15 @@+{ mkDerivation, base, colour, diagrams-cairo, diagrams-lib+, directory, either-unwrap, filepath, parsec, ParsecTools, stdenv+, StockholmAlignment, SVGFonts, text, vector+}:+mkDerivation {+ pname = "BioHMM";+ version = "1.2.0";+ sha256 = "deadbeef";+ libraryHaskellDepends = [+ base colour diagrams-cairo diagrams-lib directory either-unwrap+ filepath parsec ParsecTools StockholmAlignment SVGFonts text vector+ ];+ description = "Libary for Hidden Markov Models in HMMER3 format";+ license = stdenv.lib.licenses.gpl3;+}