[ghc] convert hackage-status.sh to hackage-fedora.py which reads package list straight from pkgdb

Jens Petersen petersen at fedoraproject.org
Wed Dec 8 07:47:36 UTC 2010


commit eed0f8bfc5e8c8e3677fece39616b24e121eea69
Author: Jens Petersen <petersen at redhat.com>
Date:   Wed Dec 8 17:47:26 2010 +1000

    convert hackage-status.sh to hackage-fedora.py which reads package list straight from pkgdb

 hackage-fedora.py |   24 ++++++++++++++++++++++++
 hackage-status.sh |   21 ---------------------
 2 files changed, 24 insertions(+), 21 deletions(-)
---
diff --git a/hackage-fedora.py b/hackage-fedora.py
new file mode 100755
index 0000000..66546e4
--- /dev/null
+++ b/hackage-fedora.py
@@ -0,0 +1,24 @@
+#!/usr/bin/python
+
+# generates a Fedora distro package status file for hackage.haskell.org
+
+from fedora.client import PackageDB
+import koji
+
+pkgdb = PackageDB()
+p = pkgdb.user_packages('haskell-sig')
+
+# exclude packages not in Hackage
+packages = [pkg['name'] for pkg in p.pkgs if pkg['name'] not in ['cabal2spec','emacs-haskell-mode','ghc','ghc-gtk2hs','ghc-rpm-macros','haddock','haskell-platform','hugs98']]
+
+session = koji.ClientSession('http://koji.fedoraproject.org/kojihub')
+
+for pkg in packages:
+    latest = session.getLatestBuilds('dist-rawhide', package=pkg)
+    if latest:
+        ver = latest[0]['version']
+        name = pkg.replace('ghc-','',1)
+        print "(\"%s\",\"%s\",Just \"https://admin.fedoraproject.org/pkgdb/acls/name/%s\")" % (name,ver,pkg)
+
+# todo
+## sort output


More information about the scm-commits mailing list