packages feed

cpkg 0.2.3.9 → 0.2.4.0

raw patch · 11 files changed

+38/−96 lines, 11 filesdep −tar

Dependencies removed: tar

Files

CHANGELOG.md view
@@ -1,5 +1,9 @@ # cpkg +## 0.2.4.0++  * Use [`libarchive`](http://hackage.haskell.org/package/libarchive) exclusively+ ## 0.2.3.8    * Support `.zst` via [zstd](http://hackage.haskell.org/package/zstd) library
cpkg.cabal view
@@ -1,6 +1,6 @@ cabal-version:      1.18 name:               cpkg-version:            0.2.3.9+version:            0.2.4.0 license:            BSD3 license-file:       LICENSE copyright:          Copyright: (c) 2018-2019 Vanessa McHale@@ -82,7 +82,6 @@         zlib -any,         bzlib -any,         lzma -any,-        tar -any,         zip-archive -any,         prettyprinter -any,         http-client -any,
dhall/cpkg-prelude.dhall view
@@ -395,8 +395,7 @@          let modifyArgs = maybeAppend Text maybeHost -        in  [ mkExe filename-            , call+        in  [ call                 (   defaultCall                   ⫽ { program = "./${filename}"                     , arguments =@@ -516,7 +515,6 @@       , installCommand = defaultInstall       , pkgBuildDeps = [] : List types.Dep       , pkgDeps = [] : List types.Dep-      , pkgStream = True       }  let simplePackage =@@ -710,8 +708,7 @@  let autogenConfigure =         λ(cfg : types.BuildVars)-      →   [ mkExe "autogen.sh"-          , call+      →   [ call               (   defaultCall                 ⫽ { program = "./autogen.sh"                   , environment =
pkgs/pkg-set.dhall view
@@ -15,7 +15,7 @@       ../dhall/cpkg-types.dhall sha256:caef717db41539eb7ded38d8cd676ba998bd387171ba3fd2db7fea9e8ee8f361  let prelude =-      ../dhall/cpkg-prelude.dhall sha256:a8dc1bfd659bb1d87a35bf6da3ed28b6ef8e268b216c42e40a0e4f2607e6a38e+      ../dhall/cpkg-prelude.dhall sha256:4eae9adcc22ceda96091f3fa560aa095dbf8de05f7cf0387061042a9f31d10ee  let gpgPackage =         λ(x : { name : Text, version : List Natural })@@ -243,20 +243,14 @@                let modifyArgs = prelude.maybeAppend Text maybeHost -              in    prelude.mkExes-                      [ "configure"-                      , "scripts/mkinstalldirs"-                      , "scripts/rellns-sh"-                      ]-                  # [ prelude.createDir "build"-                    , prelude.call-                        { program = "../configure"-                        , arguments =-                            modifyArgs [ "--prefix=${cfg.installDir}" ]-                        , environment = prelude.configSome ([] : List Text) cfg-                        , procDir = buildDir-                        }-                    ]+              in  [ prelude.createDir "build"+                  , prelude.call+                      { program = "../configure"+                      , arguments = modifyArgs [ "--prefix=${cfg.installDir}" ]+                      , environment = prelude.configSome ([] : List Text) cfg+                      , procDir = buildDir+                      }+                  ]        let glibcBuild =               λ(cfg : types.BuildVars)@@ -303,7 +297,6 @@               "https://gmplib.org/download/gmp/gmp-${prelude.showVersion                                                        v}.tar.lz"           , pkgBuildDeps = [ prelude.unbounded "m4" ]-          , pkgStream = False           }  let harfbuzz =@@ -448,8 +441,7 @@ let perl5 =       let perlConfigure =               λ(cfg : types.BuildVars)-            → [ prelude.mkExe "Configure"-              , prelude.call+            → [ prelude.call                   (   prelude.defaultCall                     ⫽ { program = "sh"                       , arguments =@@ -548,7 +540,6 @@                 [ { file = "share/man/man1/sed.1", section = 1 } ]           , configureCommand =               prelude.configureWithFlags [ "--disable-dependency-tracking" ]-          , pkgStream = False           }  let tar = λ(v : List Natural) → prelude.makeGnuExe { name = "tar", version = v }@@ -643,8 +634,7 @@                 λ(cfg : types.BuildVars)               → let host = prelude.mkCCVar cfg -                in  [ prelude.mkExe "configure"-                    , prelude.call+                in  [ prelude.call                         (   prelude.defaultCall                           ⫽ { program = "sh"                             , arguments =@@ -679,7 +669,6 @@                 [ "bin/gettext", "bin/msgfmt", "bin/autopoint" ]           , configureCommand =               prelude.configureWithFlags [ "--disable-dependency-tracking" ]-          , pkgStream = False           }  let gzip =@@ -714,9 +703,7 @@                       { name = "p11-kit", lower = [ 0, 23, 1 ] }                   ]               , configureCommand =-                    λ(cfg : types.BuildVars)-                  →   prelude.mkExes [ "src/gen-mech-list.sh" ]-                    # prelude.configureLinkExtraLibs [ "nettle", "hogweed" ] cfg+                  prelude.configureLinkExtraLibs [ "nettle", "hogweed" ]               }  let lapack =@@ -805,7 +792,6 @@               →   prelude.installWithBinaries [ "bin/patch" ] cfg                 # prelude.symlinkManpages                     [ { file = "share/man/man1/patch.1", section = 1 } ]-          , pkgStream = False           }  let m4 =@@ -821,7 +807,6 @@               prelude.installWithManpages                 [ { file = "share/man/man1/m4.1", section = 1 } ]           , pkgBuildDeps = [ prelude.unbounded "patch" ]-          , pkgStream = False           }  let nginx =@@ -1144,7 +1129,7 @@ let gdb =         λ(v : List Natural)       →   prelude.makeGnuExe { name = "gdb", version = v }-        ⫽ { pkgStream = False, pkgBuildDeps = [ prelude.unbounded "texinfo" ] }+        ⫽ { pkgBuildDeps = [ prelude.unbounded "texinfo" ] }  let libtool =         λ(v : List Natural)@@ -1154,7 +1139,6 @@                                                              v}.tar.xz"           , pkgBuildDeps =               [ prelude.lowerBound { name = "m4", lower = [ 1, 4, 16 ] } ]-          , pkgStream = False           }  let pkg-config =@@ -1295,8 +1279,7 @@        let gtkConfig =               λ(cfg : types.BuildVars)-            → [ prelude.mkExe "configure"-              , prelude.call+            → [ prelude.call                   (   prelude.defaultCall                     ⫽ { program = "./configure"                       , arguments = [ "--prefix=${cfg.installDir}" ]@@ -1495,7 +1478,6 @@                     λ(cfg : types.BuildVars)                   → [ prelude.patch                         ./patches/intltool.patch sha256:e33e9b3e43d80a17475e36c05ed4e649fa5d610991044749e6321dff555cc8e5 as Text-                    , prelude.mkExe "configure"                     , prelude.call                         (   prelude.defaultCall                           ⫽ { program = "./configure"@@ -1600,9 +1582,7 @@ let ninja =       let ninjaConfigure =               λ(cfg : types.BuildVars)-            → [ prelude.mkExe "configure.py"-              , prelude.mkExe "src/inline.sh"-              , prelude.call+            → [ prelude.call                   (   prelude.defaultCall                     ⫽ { program = "./configure.py"                       , arguments = [ "--bootstrap" ]@@ -2566,8 +2546,7 @@        let gtkConfig =               λ(cfg : types.BuildVars)-            → [ prelude.mkExe "configure"-              , prelude.call+            → [ prelude.call                   (   prelude.defaultCall                     ⫽ { program = "./configure"                       , arguments = [ "--prefix=${cfg.installDir}" ]@@ -2700,7 +2679,6 @@                   "https://sqlite.org/${Natural/show                                           x.year}/sqlite-autoconf-${versionString}000.tar.gz"               , pkgSubdir = "sqlite-autoconf-${versionString}000"-              , pkgStream = False               }  let ragel =@@ -2746,9 +2724,7 @@         in    mkGnomeSimple "pygtk" x             ⫽ { pkgUrl =                   "http://ftp.gnome.org/pub/gnome/sources/pygtk/${versionString}/pygtk-${fullVersion}.tar.bz2"-              , configureCommand =-                    λ(cfg : types.BuildVars)-                  → prelude.mkExes [ "py-compile" ] # prelude.preloadCfg cfg+              , configureCommand = prelude.preloadCfg               , pkgDeps =                   [ prelude.lowerBound { name = "glib", lower = [ 2, 8, 0 ] }                   , prelude.lowerBound@@ -2909,7 +2885,6 @@               , prelude.unbounded "json-glib"               ]           , configureCommand = prelude.preloadCfg-          , pkgStream = False           }  let libexif =@@ -3382,7 +3357,6 @@                                                                v}.tar.gz"           , installCommand = prelude.installWithBinaries [ "bin/fossil" ]           , pkgDeps = [ prelude.unbounded "zlib", prelude.unbounded "openssl" ]-          , pkgStream = False           }  let libcroco =@@ -3580,7 +3554,6 @@                                                            v}.tar.xz"           , configureCommand =               prelude.configureWithFlags [ "--disable-dependency-tracking" ]-          , pkgStream = False           }  let node =@@ -3597,7 +3570,6 @@                     # [ prelude.mkExe                           "${cfg.installDir}/lib/node_modules/npm/bin/npm-cli.js"                       ]-              , pkgStream = False               }  let glu =@@ -3687,7 +3659,6 @@                       "https://dl.bintray.com/boostorg/release/${prelude.showVersion                                                                    v}/source/boost_${versionString}.tar.bz2"                   , pkgSubdir = "boost_${versionString}"-                  , pkgStream = False                   , configureCommand = boostConfigure                   , buildCommand = prelude.doNothing                   , installCommand = boostInstall@@ -3713,7 +3684,6 @@             ⫽ { pkgUrl =                   "http://releases.llvm.org/${versionString}/cfe-${versionString}.src.tar.xz"               , pkgSubdir = "cfe-${versionString}.src"-              , pkgStream = False               , buildCommand = slowBuild               , pkgDeps = [ prelude.unbounded "llvm" ]               , installCommand =@@ -3733,7 +3703,6 @@             ⫽ { pkgUrl =                   "http://releases.llvm.org/${versionString}/llvm-${versionString}.src.tar.xz"               , pkgSubdir = "llvm-${versionString}.src"-              , pkgStream = False               , buildCommand = slowBuild               } @@ -3749,7 +3718,6 @@                 "Configure"                 ([] : List Text)                 ([] : List Text)-          , pkgStream = False           }  let pdfgrep =@@ -3806,7 +3774,6 @@                   , prelude.unbounded "sed"                   , prelude.unbounded "libtool"                   ]-              , pkgStream = False               }  let ruby =@@ -3821,7 +3788,6 @@                   "https://cache.ruby-lang.org/pub/ruby/${versionString}/ruby-${fullVersion}.tar.gz"               , installCommand =                   prelude.installWithBinaries [ "bin/ruby", "bin/gem" ]-              , pkgStream = False               , pkgDeps =                   [ prelude.unbounded "readline", prelude.unbounded "openssl" ]               }@@ -3935,7 +3901,6 @@                       }                   ]                 # prelude.defaultConfigure cfg-          , pkgStream = False           }  let cimg =@@ -3986,7 +3951,6 @@               , prelude.unbounded "libvpx"               , prelude.unbounded "fdk-aac"               ]-          , pkgStream = False           }  let libsndfile =@@ -4069,7 +4033,7 @@        in    prelude.simplePackage { name = "mercury", version = [ 14, 1, 1 ] }           ⫽ mercuryCommon-          ⫽ { pkgBuildDeps = [ prelude.unbounded "flex" ], pkgStream = False }+          ⫽ { pkgBuildDeps = [ prelude.unbounded "flex" ] }  let qt =         λ(x : { version : List Natural, patch : Natural })@@ -4102,7 +4066,6 @@                   , prelude.unbounded "giflib"                   , prelude.unbounded "glib"                   ]-              , pkgStream = False               }  let lz4 =@@ -4246,7 +4209,6 @@             ⫽ { pkgUrl =                   "https://cran.r-project.org/src/base/R-3/R-${versionString}.tar.gz"               , pkgSubdir = "R-${versionString}"-              , pkgStream = False               , pkgDeps =                   [ prelude.unbounded "readline"                   , prelude.unbounded "libXt"@@ -4319,7 +4281,6 @@                             }                         )                     ]-              , pkgStream = False               }  let librsvg =@@ -4373,7 +4334,6 @@                   , buildCommand = atsBuild                   , installCommand =                       prelude.installWithBinaries [ "bin/patsopt" ]-                  , pkgStream = False                   }  let libiconv =@@ -4403,7 +4363,6 @@         ⫽ { pkgUrl =               "https://www.alsa-project.org/files/pub/lib/alsa-lib-${prelude.showVersion                                                                        v}.tar.bz2"-          , pkgStream = False           }  let bash-completion =@@ -4434,7 +4393,6 @@                   "configure"                   ([] : List Text)                   ([] : List Text)-            , pkgStream = False             , pkgBuildDeps =                 [ prelude.unbounded "coreutils"                 , prelude.unbounded "sed"@@ -4459,7 +4417,6 @@         ⫽ { pkgUrl =               "https://ftp.gnu.org/pub/gnu/findutils/findutils-${prelude.showVersion                                                                    v}.tar.xz"-          , pkgStream = False           }  let ghc =@@ -4470,7 +4427,6 @@             ⫽ { pkgUrl =                   "https://downloads.haskell.org/~ghc/${versionString}/ghc-${versionString}-x86_64-deb9-linux.tar.xz"               , buildCommand = prelude.doNothing-              , pkgStream = False               }  let cmark =@@ -4574,7 +4530,6 @@                   "https://github.com/webmproject/libvpx/archive/v${versionString}/libvpx-${versionString}.tar.gz"               , pkgBuildDeps =                   [ prelude.unbounded "nasm", prelude.unbounded "perl" ]-              , pkgStream = False               }  let fdk-aac =@@ -4599,7 +4554,6 @@                   , prelude.unbounded "coreutils"                   ]               , pkgSubdir = "swipl-${versionString}"-              , pkgStream = False               }  let exiftool =@@ -4663,7 +4617,6 @@         ⫽ { pkgUrl =               "https://www-eu.apache.org/dist/apr/apr-${prelude.showVersion                                                           v}.tar.bz2"-          , pkgStream = False           }  let apr-util =@@ -4678,7 +4631,6 @@               → prelude.configureWithFlags                   [ "--with-apr=${concat cfg.linkDirs}/../" ]                   cfg-          , pkgStream = False           }  let libsass =@@ -4712,7 +4664,6 @@                       }                   ]                 # prelude.defaultConfigure cfg-          , pkgStream = False           }  in  [ alsa-lib [ 1, 1, 9 ]@@ -4941,7 +4892,7 @@     , pycairo [ 1, 18, 1 ]     , pygobject { version = [ 2, 28 ], patch = 7 }     , pygtk { version = [ 2, 24 ], patch = 0 }-    , python [ 2, 7, 16 ]+    , python [ 2, 7, 17 ]     , python [ 3, 8, 1 ]     , qrencode [ 4, 0, 2 ]     , qt { version = [ 5, 13 ], patch = 0 }@@ -4975,7 +4926,7 @@     , util-macros [ 1, 19, 2 ]     , vala { version = [ 0, 45 ], patch = 3 }     , valgrind [ 3, 15, 0 ]-    , vim [ 8, 1 ]+    , vim [ 8, 2 ]     , wayland [ 1, 17, 0 ]     , wget [ 1, 20, 3 ]     , which [ 2, 21 ]
src/Package/C/Build.hs view
@@ -111,7 +111,7 @@ fetchCPkg :: CPkg           -> FilePath -- ^ Directory for intermediate build files           -> PkgM ()-fetchCPkg cpkg = fetchUrl (pkgUrl cpkg) (pkgName cpkg) (pkgStream cpkg)+fetchCPkg cpkg = fetchUrl (pkgUrl cpkg) (pkgName cpkg)  buildCPkg :: CPkg           -> Maybe TargetTriple
src/Package/C/Db/Register.hs view
@@ -213,7 +213,7 @@               -> Bool -- ^ Was this package manually installed?               -> BuildVars               -> BuildCfg-pkgToBuildCfg (CPkg n v _ _ _ bds ds cCmd bCmd iCmd) host glob usr bVar =+pkgToBuildCfg (CPkg n v _ _ bds ds cCmd bCmd iCmd) host glob usr bVar =     BuildCfg n v (go <$> bds) (go <$> ds) host glob (cCmd bVar) (bCmd bVar) (iCmd bVar) usr -- TODO: fix pinned build deps &c.     where placeholderVersion = Version [0,1,0,0]           go (Dep n' _) = (n', placeholderVersion)
src/Package/C/Dhall/Type.hs view
@@ -55,7 +55,6 @@                  , pkgVersion       :: [ Natural ]                  , pkgUrl           :: T.Text                  , pkgSubdir        :: T.Text-                 , pkgStream        :: Bool -- ^ Use @tar@ package to stream                  , pkgBuildDeps     :: [ Dep ] -- TODO: depend on target?                  , pkgDeps          :: [ Dep ]                  , configureCommand :: BuildVars -> [ Command ]@@ -76,4 +75,4 @@ prettyBldDeps = preDeps "build dependencies:"  instance Pretty CPkg where-    pretty (CPkg nam v url _ _ bds ds _ _ _) = pretty nam <##> indent 4 ("url:" <+> pretty url <##> "version:" <+> pretty (Version v) <> prettyDeps ds <> prettyBldDeps bds)+    pretty (CPkg nam v url _ bds ds _ _ _) = pretty nam <##> indent 4 ("url:" <+> pretty url <##> "version:" <+> pretty (Version v) <> prettyDeps ds <> prettyBldDeps bds)
src/Package/C/Fetch.hs view
@@ -36,10 +36,9 @@  fetchUrl :: String -- ^ URL          -> String -- ^ Package name-         -> Bool -- ^ Stream using @tar@ package?          -> FilePath -- ^ Directory to unpack to          -> PkgM ()-fetchUrl url name libArch dirName = do+fetchUrl url name dirName = do          let tarballName = fromJust (asFilename url)         tarballDir <- (</> tarballName) <$> cacheDir@@ -72,4 +71,4 @@          putNormal ("Unpacking " ++ name) -        liftIO $ unpackResponse compression libArch dirName response+        liftIO $ unpackResponse compression dirName response
src/Package/C/PackageSet.hs view
@@ -24,7 +24,7 @@  defaultPackageSetDhall :: Maybe String -> IO PackageSetDhall defaultPackageSetDhall (Just pkSet) = input auto (T.pack pkSet)-defaultPackageSetDhall Nothing      = input auto "https://raw.githubusercontent.com/vmchale/cpkg/22671be2cdb048ab407ff24ca24923c2f03ab60a/pkgs/pkg-set.dhall sha256:36616ae1a3e6affbebf83d056297ffd6cc4fefc4fdc3895052b6b551e9d3113f"+defaultPackageSetDhall Nothing      = input auto "https://raw.githubusercontent.com/vmchale/cpkg/6635d6c4dd9da9bbe09f1dd0f94b485ba9015c74/pkgs/pkg-set.dhall sha256:cba9042d6520714c9c57cdfe4baf8d4618c15ff5938ce9a4e223bcb9d4f14725"  displayPackageSet :: Maybe String -> IO () displayPackageSet = putDoc . pretty <=< defaultPackageSetDhall
src/Package/C/Type.hs view
@@ -49,7 +49,6 @@                  , pkgVersion       :: Version                  , pkgUrl           :: String                  , pkgSubdir        :: String-                 , pkgStream        :: Bool -- ^ Use @tar@ package to stream                  , pkgBuildDeps     :: [ Dep ]                  , pkgDeps          :: [ Dep ]                  , configureCommand :: BuildVars -> [ Command ]@@ -75,8 +74,8 @@ buildVarsToDhallBuildVars (BuildVars dir' cd tgt' cross incls prelds shr lds bins os' arch' sta nproc) = Dhall.BuildVars (T.pack dir') (T.pack cd) tgt' cross (T.pack <$> incls) (T.pack <$> prelds) (T.pack <$> shr) (T.pack <$> lds) (T.pack <$> bins) os' arch' sta (fromIntegral nproc)  cPkgDhallToCPkg :: Dhall.CPkg -> CPkg-cPkgDhallToCPkg (Dhall.CPkg n v url subdir stream bldDeps deps cfgCmd buildCmd installCmd) =-    CPkg (T.unpack n) (Version v) (T.unpack url) (T.unpack subdir) stream bldDeps deps configure build install+cPkgDhallToCPkg (Dhall.CPkg n v url subdir bldDeps deps cfgCmd buildCmd installCmd) =+    CPkg (T.unpack n) (Version v) (T.unpack url) (T.unpack subdir) bldDeps deps configure build install      where configure cfg = commandDhallToCommand <$> cfgCmd (buildVarsToDhallBuildVars cfg)           build cfg = commandDhallToCommand <$> buildCmd (buildVarsToDhallBuildVars cfg)
src/Package/C/Unpack.hs view
@@ -4,7 +4,6 @@                         ) where  import qualified Codec.Archive               as Archive-import qualified Codec.Archive.Tar           as Tar import           Codec.Archive.Zip           (ZipOption (..), extractFilesFromArchive, toArchive) import qualified Codec.Compression.BZip      as Bzip import qualified Codec.Compression.GZip      as Gzip@@ -39,16 +38,11 @@      where showError = error . show -tarResponse :: TarCompress -> FilePath -> BSL.ByteString -> IO ()-tarResponse compressScheme dirName =-    Tar.unpack dirName . Tar.read . getCompressor compressScheme- zipResponse :: FilePath -> BSL.ByteString -> IO () zipResponse dirName response = withCurrentDirectory dirName $ do     let options = OptDestination dirName     extractFilesFromArchive [options] (toArchive response) -unpackResponse :: Compression -> Bool -> FilePath -> BSL.ByteString -> IO ()-unpackResponse (Tar tarCmp) True fp response  = tarResponse tarCmp fp response-unpackResponse (Tar tarCmp) False fp response = archiveResponse tarCmp fp response-unpackResponse Zip _ fp response              = zipResponse fp response+unpackResponse :: Compression -> FilePath -> BSL.ByteString -> IO ()+unpackResponse (Tar tarCmp) fp response = archiveResponse tarCmp fp response+unpackResponse Zip fp response          = zipResponse fp response