packages feed

cabal2arch 0.6.1 → 0.7

raw patch · 2 files changed

+69/−70 lines, 2 filesdep ~Cabal

Dependency ranges changed: Cabal

Files

Main.hs view
@@ -5,7 +5,7 @@  -- | -- Module    : cabal2arch: convert cabal packages to Arch Linux PKGBUILD format--- Copyright : (c) Don Stewart, 2008+-- Copyright : (c) Don Stewart, 2008 .. 2010 -- License   : BSD3 -- -- Maintainer: Don Stewart <dons@galois.com>@@ -103,9 +103,8 @@    -- Create a package description with all configurations resolved.    let e_finalcabalsrc = finalizePackageDescription         []-        (Nothing :: Maybe (PackageIndex PackageIdentifier))-        buildOS -- linux/x86_64-        X86_64+        (const True)  -- could check against prefered pkgs....+        (Platform X86_64 buildOS) -- linux/x86_64         (CompilerId GHC (Version [6,10,3] []))          -- now constrain it to solve in the context of a modern ghc only@@ -213,80 +212,77 @@ -- -- http://haskell.org/haskellwiki/Libraries_released_with_GHC ----- TODO populate this based on a dynamic check.+-- And what Arch Linux thinks GHC provides: ----- Check the page too.+-- http://repos.archlinux.org/wsvn/packages/ghc/repos/extra-x86_64/PKGBUILD --+-- Note: we could just list these directly, and have yaourt solve them.+--+-- NEW POLICY:+--      We rely on all "provides" from the GHC library to be listed explicitly.+-- corePackages :: [Dependency] corePackages =     [-     Dependency (PackageName "Cabal")            (ThisVersion (Version  [1,6,0,1] []))-    ,Dependency (PackageName "HUnit")            (ThisVersion (Version  [1,2,0,3] []))-    ,Dependency (PackageName "QuickCheck")       (ThisVersion (Version  [1,2,0,0] []))-    ,Dependency (PackageName "array")            (ThisVersion (Version  [0,2,0,0] []))-    ,Dependency (PackageName "base")             (ThisVersion (Version  [4,1,0,0] []))-    ,Dependency (PackageName "bytestring")       (ThisVersion (Version  [0,9,1,4] []))-    ,Dependency (PackageName "containers")       (ThisVersion (Version  [0,2,0,0] []))-    ,Dependency (PackageName "directory")        (ThisVersion (Version  [1,0,0,2] [])) +-- Magic packages we have to remove+     Dependency (PackageName "base")             (ThisVersion (Version  [4,1,0,0] []))     ,Dependency (PackageName "dph-base")           (ThisVersion (Version [ 0,3 ] [] ))     ,Dependency (PackageName "dph-par" )           (ThisVersion (Version [ 0,3 ] [] ))     ,Dependency (PackageName "dph-prim-interface") (ThisVersion (Version [ 0,3 ] [] ))     ,Dependency (PackageName "dph-prim-par"   )    (ThisVersion (Version [ 0,3 ] [] ))     ,Dependency (PackageName "dph-prim-seq"   )    (ThisVersion (Version [ 0,3 ] [] ))     ,Dependency (PackageName "dph-seq"        )    (ThisVersion (Version [ 0,3 ] [] ))---- removed:---    ,Dependency (PackageName "editline")         (AnyVersion)-    ,Dependency (PackageName "filepath")         (ThisVersion (Version  [1,1,0,1] []))     ,Dependency (PackageName "ghc")              (AnyVersion)     ,Dependency (PackageName "ghc-prim")         (AnyVersion)-    ,Dependency (PackageName "haskell-src")      (ThisVersion (Version  [1,0,1,3] []))-    ,Dependency (PackageName "haskell98")        (ThisVersion (Version  [1,0,1,0] []))-    ,Dependency (PackageName "hpc")              (ThisVersion (Version  [0,5,0,2] []))-    ,Dependency (PackageName "html")             (ThisVersion (Version  [1,0,1,2] []))-    ,Dependency (PackageName "integer")          (ThisVersion (Version  [0,1,0,0] []))-    ,Dependency (PackageName "mtl")              (ThisVersion (Version  [1,1,0,2] []))-    ,Dependency (PackageName "network")          (ThisVersion (Version  [2,2,0,1] []))-    ,Dependency (PackageName "old-locale")       (ThisVersion (Version  [1,0,0,1] []))-    ,Dependency (PackageName "old-time")         (ThisVersion (Version  [1,0,0,1] []))-    ,Dependency (PackageName "packedstring")     (ThisVersion (Version  [0,1,0,1] []))-    ,Dependency (PackageName "parallel")         (ThisVersion (Version  [1,1,0,0] []))-    ,Dependency (PackageName "parsec")           (ThisVersion (Version  [2,1,0,0] []))-    ,Dependency (PackageName "pretty")           (ThisVersion (Version  [1,0,1,0] []))-    ,Dependency (PackageName "process")          (ThisVersion (Version  [1,0,1,0] []))-    ,Dependency (PackageName "random")           (ThisVersion (Version  [1,0,0,1] []))-    ,Dependency (PackageName "regex-base")       (ThisVersion (Version  [0,72,0,2] []))-    ,Dependency (PackageName "regex-compat")     (ThisVersion (Version  [0,71,0,1] []))-    ,Dependency (PackageName "regex-posix")      (ThisVersion (Version  [0,72,0,2] []))-    ,Dependency (PackageName "stm")              (ThisVersion (Version  [2,1,1,2] []))-    ,Dependency (PackageName "syb")              (ThisVersion (Version  [0,1,0,0] []))-    ,Dependency (PackageName "template-haskell") (ThisVersion (Version  [2,3,0,0] []))---     ,Dependency (PackageName "time")             (ThisVersion (Version  [1,1,2,2] []))-    ,Dependency (PackageName "unix")             (ThisVersion (Version  [2,3,1,0] []))-    ,Dependency (PackageName "xhtml")            (ThisVersion (Version  [3000,2,0,1] [])) +-- Official Provides: http://repos.archlinux.org/wsvn/packages/ghc/repos/extra-x86_64/PKGBUILD+--  ,Dependency (PackageName "array")            (ThisVersion (Version  [0,3,0,0] []))+--  ,Dependency (PackageName "bytestring")       (ThisVersion (Version  [0,9,1,5] []))+--  ,Dependency (PackageName "Cabal")            (ThisVersion (Version  [1,8,0,2] []))+--  ,Dependency (PackageName "containers")       (ThisVersion (Version  [0,3,0,0] []))+--  ,Dependency (PackageName "directory")        (ThisVersion (Version  [1,0,1,0] []))+--  ,Dependency (PackageName "extensible-exceptions")         (AnyVersion)+--  ,Dependency (PackageName "filepath")         (ThisVersion (Version  [1,1,0,3] []))+--  ,Dependency (PackageName "haskell98")        (ThisVersion (Version  [1,0,1,1] []))+--  ,Dependency (PackageName "hpc")              (ThisVersion (Version  [0,5,0,4] []))+--  ,Dependency (PackageName "old-locale")       (ThisVersion (Version  [1,0,0,2] []))+--  ,Dependency (PackageName "old-time")         (ThisVersion (Version  [1,0,0,1] []))+--  ,Dependency (PackageName "pretty")           (ThisVersion (Version  [1,0,1,1] []))+--  ,Dependency (PackageName "process")          (ThisVersion (Version  [1,0,1,2] []))+--  ,Dependency (PackageName "random")           (ThisVersion (Version  [1,0,0,2] []))+--  ,Dependency (PackageName "syb")              (ThisVersion (Version  [0,1,0,2] []))+--  ,Dependency (PackageName "template-haskell") (ThisVersion (Version  [2,4,0,0] []))+--  ,Dependency (PackageName "time")             (ThisVersion (Version  [1,1,4] []))+--  ,Dependency (PackageName "unix")             (ThisVersion (Version  [2,4,0,0] []))+--  utf8-string ++-- Removed in 6.12.x+--  ,Dependency (PackageName "html")             (ThisVersion (Version  [1,0,1,2] []))+--  ,Dependency (PackageName "integer")          (ThisVersion (Version  [0,1,0,0] []))+--  ,Dependency (PackageName "QuickCheck")       (ThisVersion (Version  [1,2,0,0] []))+--  ,Dependency (PackageName "haskell-src")      (ThisVersion (Version  [1,0,1,3] []))+--  ,Dependency (PackageName "parsec")           (ThisVersion (Version  [2,1,0,0] []))+--  ,Dependency (PackageName "packedstring")     (ThisVersion (Version  [0,1,0,1] []))+--  ,Dependency (PackageName "parallel")         (ThisVersion (Version  [1,1,0,0] []))+--  ,Dependency (PackageName "network")          (ThisVersion (Version  [2,2,0,1] []))+--  ,Dependency (PackageName "mtl")              (ThisVersion (Version  [1,1,0,2] []))+--  ,Dependency (PackageName "stm")              (ThisVersion (Version  [2,1,1,2] []))+--  ,Dependency (PackageName "HUnit")            (ThisVersion (Version  [1,2,0,3] []))+--  ,Dependency (PackageName "xhtml")            (ThisVersion (Version  [3000,2,0,1] []))+--  ,Dependency (PackageName "regex-base")       (ThisVersion (Version  [0,72,0,2] []))+--  ,Dependency (PackageName "regex-compat")     (ThisVersion (Version  [0,71,0,1] []))+--  ,Dependency (PackageName "regex-posix")      (ThisVersion (Version  [0,72,0,2] []))++-- Removed in 6.10.x+--  ,Dependency (PackageName "editline")         (AnyVersion) --   Dependency (PackageName "ALUT")             (ThisVersion (Version  [2,1,0,0] [])) --  ,Dependency (PackageName "cgi")              (ThisVersion (Version  [3001,1,5,1] []))---    ,Dependency (PackageName "extensible-exceptions")         (AnyVersion) --  ,Dependency (PackageName "fgl")              (ThisVersion (Version  [5,4,1,1] [])) -- gone --  ,Dependency (PackageName "GLUT")             (ThisVersion (Version  [2,1,1,1] []))---    ,Dependency (PackageName "OpenAL")           (ThisVersion (Version  [1,3,1,1] [])) -- gone---    ,Dependency (PackageName "readline")         (ThisVersion (Version  [1,0,1,0] []))--{--ALUT-2.1.0.0        cgi-3001.1.5.1       network-2.1.0.0       regex-base-0.72.0.1-Cabal-1.2.3.0       containers-0.1.0.1   old-locale-1.0.0.0    regex-compat-0.71.0.1-GLUT-2.1.1.1        directory-1.0.0.0    old-time-1.0.0.0      regex-posix-0.72.0.2-HUnit-1.2.0.0       fgl-5.4.1.1          packedstring-0.1.0.0  stm-2.1.1.0-OpenAL-1.3.1.1      filepath-1.1.0.0     parallel-1.0.0.0      template-haskell-2.2.0.0-OpenGL-2.2.1.1      haskell-src-1.0.1.1  parsec-2.1.0.0        time-1.1.2.0-QuickCheck-1.1.0.0  haskell98-1.0.1.0    pretty-1.0.0.0        unix-2.3.0.0-array-0.1.0.0       hpc-0.5.0.0          process-1.0.0.0       xhtml-3000.0.2.1-base-3.0.1.0        html-1.0.1.1         random-1.0.0.0-bytestring-0.9.0.1  mtl-1.1.0.0          readline-1.0.1.0--}+--  ,Dependency (PackageName "OpenAL")           (ThisVersion (Version  [1,3,1,1] [])) -- gone+--  ,Dependency (PackageName "readline")         (ThisVersion (Version  [1,0,1,0] []))      ] @@ -483,6 +479,9 @@  [ text "# Contributor:"     <+> text email  , text "# Package generated by cabal2arch" <+> disp version+ , text "# Note: we list all package dependencies."+ , text "# Your package tool should understand 'provides' syntax"+ , text "#"  , text "pkgname"     <=> text (arch_pkgname pkg)  , text "pkgrel"@@ -539,8 +538,8 @@     , arch_license =         ArchList . return $             case license cabal of-                GPL  -> GPL-                LGPL -> LGPL+                x@GPL {} -> x+                x@LGPL {} -> x                 l    -> UnknownLicense ("custom:"++ show l)      -- All Hackage packages depend on GHC at build time@@ -584,14 +583,14 @@             , "runhaskell Setup unregister --gen-script || return 1"             , "install -D -m744 register.sh   ${pkgdir}/usr/share/haskell/$pkgname/register.sh"             , "install    -m744 unregister.sh ${pkgdir}/usr/share/haskell/$pkgname/unregister.sh"-            , "install -d -m755 $pkgdir/usr/share/doc/ghc/libraries"-            , "ln -s /usr/share/doc/${pkgname}/html ${pkgdir}/usr/share/doc/ghc/libraries/" ++ (display name)+            , "install -d -m755 $pkgdir/usr/share/doc/ghc/html/libraries"+            , "ln -s /usr/share/doc/${pkgname}/html ${pkgdir}/usr/share/doc/ghc/html/libraries/" ++ (display name)             ]            else [])          ++          ["runhaskell Setup copy --destdir=${pkgdir} || return 1"]          ++-         (if not (null (licenseFile cabal)) && license cabal `notElem` [GPL,LGPL]+         (if not (null (licenseFile cabal)) && (case license cabal of GPL {} -> False; LGPL {} -> False; _ -> True)           then               [ "install -D -m644 " ++ licenseFile cabal ++ " ${pkgdir}/usr/share/licenses/$pkgname/LICENSE || return 1"               , "rm -f ${pkgdir}/usr/share/doc/${pkgname}/LICENSE"@@ -656,20 +655,20 @@     [ "HS_DIR=/usr/share/haskell/" ++ pkgname     , "post_install() {"     , "  ${HS_DIR}/register.sh"-    , "  (cd /usr/share/doc/ghc/libraries; ./gen_contents_index)"+    , "  (cd /usr/share/doc/ghc/html/libraries; ./gen_contents_index)"     , "}"     , "pre_upgrade() {"     , "  ${HS_DIR}/unregister.sh"     , "}"     , "post_upgrade() {"     , "  ${HS_DIR}/register.sh"-    , "  (cd /usr/share/doc/ghc/libraries; ./gen_contents_index)"+    , "  (cd /usr/share/doc/ghc/html/libraries; ./gen_contents_index)"     , "}"     , "pre_remove() {"     , "  ${HS_DIR}/unregister.sh"     , "}"     , "post_remove() {"-    , "  (cd /usr/share/doc/ghc/libraries; ./gen_contents_index)"+    , "  (cd /usr/share/doc/ghc/html/libraries; ./gen_contents_index)"     , "}"     , "op=$1"     , "shift"@@ -682,9 +681,9 @@ help :: IO a help = do  hPutStrLn stderr $ unlines-    [ "cabal2pkg: [-h|--help] [directory|url]"+    [ "cabal2arch: [-h|--help] [directory|url]"     , ""-    , "  Generate PKGBUILD to stdout for .cabal file in <directory> or at <url>"+    , "  Generate PKGBUILD for the .cabal file in <directory> or at <url>"     , ""     , "Usage:"     , "   -h    Display help message"
cabal2arch.cabal view
@@ -1,5 +1,5 @@ name:               cabal2arch-version:            0.6.1+version:            0.7 homepage:           http://code.haskell.org/~dons/code/cabal2arch synopsis:           Create Arch Linux packages from Cabal packages description:        Create Arch Linux packages from Cabal packages@@ -22,7 +22,7 @@         directory,         containers,         bytestring,-        Cabal   > 1.6,+        Cabal   > 1.8,         pureMD5 >= 0.2.1,         filepath,         archlinux > 0.1