From 4c7d365247aed343d65ebf7102135c7caba22560 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ertu=C4=9Frul=20Erata?= Date: Fri, 2 Oct 2015 23:16:46 +0300 Subject: [PATCH] add script and result 02EKIM --- find-packages-not-compiled-in-farm | 119 ++++++++++++++++++++++++++++ need_build | 121 +++++++++++++++++++++++++++++ 2 files changed, 240 insertions(+) create mode 100755 find-packages-not-compiled-in-farm create mode 100644 need_build diff --git a/find-packages-not-compiled-in-farm b/find-packages-not-compiled-in-farm new file mode 100755 index 0000000000..073de1d121 --- /dev/null +++ b/find-packages-not-compiled-in-farm @@ -0,0 +1,119 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +# +# find which packages were not compiled in farm +# usage: scriptname svnindex pisiindex +# + + +import os +import sys + +import urllib2 +import bz2 +import lzma + +import piksemel + +pisirepouri = "http://ciftlik.pisilinux.org/pisi-2.0/pisi-index.xml.xz" +svnrepouri = "https://github.com/pisilinux/main/raw/master/pisi-index.xml.xz" + +def getIndex(uri): + try: + if "://" in uri: + rawdata = urllib2.urlopen(uri).read() + else: + rawdata = open(uri, "r").read() + except IOError: + print "could not fetch %s" % uri + return None + + if uri.endswith("bz2"): + data = bz2.decompress(rawdata) + elif uri.endswith("xz") or uri.endswith("lzma"): + data = lzma.decompress(rawdata) + else: + data = rawdata + + return data + +def parseRepo(repoURI): + pkgdict = {} + + rawData = getIndex(repoURI) + doc = piksemel.parseString(rawData) + hasSpecFile = doc.getTag("SpecFile") + + if hasSpecFile: + for parent in doc.tags("SpecFile"): + pkgname = parent.getTag("Source").getTagData("Name") + srcname = pkgname + + partof = parent.getTag("Source").getTagData("PartOf") + + lastRelease = parent.getTag("History").tags("Update").next() + release = lastRelease.getAttribute("release") + + pkgdict[srcname] = [partof, release] + else: + for parent in doc.tags("Package"): + pkgname = parent.getTagData("Name") + srcname = parent.getTag("Source").getTagData("Name") + + partof = parent.getTagData("PartOf") + + lastRelease = parent.getTag("History").tags("Update").next() + release = lastRelease.getAttribute("release") + + pkgdict[srcname] = [partof, release] + + return pkgdict + +if __name__ == "__main__": + pkgmissing = [] + pkgdifferent = [] + + if len(sys.argv) > 1: + svnrepouri = sys.argv[1] + + if len(sys.argv) > 2: + pisirepouri = sys.argv[2] + + print + print "* working on %s" % svnrepouri + svnrepo = parseRepo(svnrepouri) + + print "* working on %s" % pisirepouri + pisirepo = parseRepo(pisirepouri) + + pkglist = svnrepo.keys() + pkglist.sort() + + for i in pkglist: + if not i in pisirepo: + partof = svnrepo[i][0] + pkgmissing.append("%s/%s" % (partof.replace(".", "/"), i)) + + elif svnrepo[i][1] != pisirepo[i][1]: + partof = svnrepo[i][0] + pkgdifferent.append("%s/%s" % (partof.replace(".", "/"), i)) + + pkgmissing.sort() + pkgdifferent.sort() + + if len(pkgmissing): + print + print "* Packages missing in %s" % pisirepouri + for p in pkgmissing: + print " %s" % p + + if len(pkgdifferent): + print + print "* Packages that needs compiling" + for p in pkgdifferent: + i = p.split("/")[-1] + print " %s (%s > %s)" % (p, svnrepo[i][1], pisirepo[i][1]) + + print + + diff --git a/need_build b/need_build new file mode 100644 index 0000000000..8c4f8f459f --- /dev/null +++ b/need_build @@ -0,0 +1,121 @@ + +* working on https://github.com/pisilinux/main/raw/master/pisi-index.xml.xz +* working on http://ciftlik.pisilinux.org/pisi-2.0/pisi-index.xml.xz + +* Packages missing in http://ciftlik.pisilinux.org/pisi-2.0/pisi-index.xml.xz + desktop/gnome/base/libgnome-keyring + desktop/kde/application/kblog + desktop/kde/application/kontactinterface + desktop/kde/application/konversation + desktop/kde/application/kross-interpreters + desktop/kde/application/kruler + desktop/kde/application/ktnef + desktop/kde/application/okular + desktop/kde/l10n/kde-l10n-ca + desktop/kde/l10n/kde-l10n-ca@valencia + desktop/kde/l10n/kde-l10n-cs + desktop/kde/l10n/kde-l10n-de + desktop/kde/l10n/kde-l10n-el + desktop/kde/l10n/kde-l10n-es + desktop/kde/l10n/kde-l10n-et + desktop/kde/l10n/kde-l10n-fa + desktop/kde/l10n/kde-l10n-fr + desktop/kde/l10n/kde-l10n-ga + desktop/kde/l10n/kde-l10n-gl + desktop/kde/l10n/kde-l10n-he + desktop/kde/l10n/kde-l10n-hi + desktop/kde/l10n/kde-l10n-hr + desktop/kde/l10n/kde-l10n-hu + desktop/kde/l10n/kde-l10n-ia + desktop/kde/l10n/kde-l10n-id + desktop/kde/l10n/kde-l10n-is + desktop/kde/l10n/kde-l10n-it + desktop/kde/l10n/kde-l10n-ja + desktop/kde/l10n/kde-l10n-kk + desktop/kde/l10n/kde-l10n-km + desktop/kde/l10n/kde-l10n-ko + desktop/kde/l10n/kde-l10n-lt + desktop/kde/l10n/kde-l10n-lv + desktop/kde/l10n/kde-l10n-mr + desktop/kde/l10n/kde-l10n-nb + desktop/kde/l10n/kde-l10n-nds + desktop/kde/l10n/kde-l10n-nl + desktop/kde/l10n/kde-l10n-nn + desktop/kde/l10n/kde-l10n-pa + desktop/kde/l10n/kde-l10n-pl + desktop/kde/l10n/kde-l10n-pt + desktop/kde/l10n/kde-l10n-pt_BR + desktop/kde/l10n/kde-l10n-ro + desktop/kde/l10n/kde-l10n-ru + desktop/kde/l10n/kde-l10n-sk + desktop/kde/l10n/kde-l10n-sl + desktop/kde/l10n/kde-l10n-sv + desktop/kde/l10n/kde-l10n-tr + desktop/kde/l10n/kde-l10n-ug + desktop/kde/l10n/kde-l10n-uk + desktop/kde/l10n/kde-l10n-wa + desktop/kde/l10n/kde-l10n-zh_CN + desktop/kde/l10n/kde-l10n-zh_TW + desktop/kde/sdk/kapptemplate + desktop/kde/sdk/kompare + desktop/kde/sdk/libkomparediff2 + desktop/kde/sdk/lokalize + desktop/kde/sdk/umbrello + desktop/toolkit/qscintilla2 + editor/geany + hardware/disk/gptfdisk + hardware/printer/cups-filters + kernel/drivers/module-fglrx + kernel/drivers/module-nvidia304 + kernel/drivers/module-nvidia340 + multimedia/editor/handbrake + multimedia/graphics/GraphicsMagick + multimedia/sound/knowthelist + multimedia/sound/sayonara + multimedia/sound/speech-dispatcher + multimedia/video/vokoscreen + programming/language/perl/perl-HTML-Form + programming/language/perl/perl-HTML-Format + programming/language/perl/perl-HTML-FormatText-WithLinks + programming/language/perl/perl-HTML-FormatText-WithLinks-AndTables + programming/language/perl/perl-HTML-Scrubber + programming/language/perl/perl-HTML-Template + programming/language/perl/perl-HTML-Template-Pro + programming/language/perl/perl-HTML-Tree + programming/language/perl/perl-HTTP-Body + programming/language/perl/perl-HTTP-Cookies + programming/language/perl/perl-HTTP-Server-Simple + programming/language/perl/perl-LWP-Protocol-https + programming/language/ruby/ruby-gtk2 + programming/library/yaml-cpp + programming/misc/dotconf + programming/misc/libdbusmenu + programming/misc/xerces-c + programming/misc/xsd + system/boot/efibootmgr + system/boot/efivar + unknown/filelight + unknown/kcalc + unknown/kcharselect + unknown/kpat + unknown/kshisen + unknown/ktimer + unknown/kwalletmanager + unknown/libkdegames + unknown/libkmahjongg + util/admin/pisido + x11/driver/xorg-video-i740 + x11/driver/xorg-video-sisimedia + x11/misc/xorg-font + +* Packages that needs compiling + desktop/kde/application/akonadi-search (2 > 1) + desktop/kde/application/dolphin-plugins (3 > 2) + desktop/kde/application/gpgmepp (2 > 1) + desktop/kde/application/kcalutils (2 > 1) + desktop/kde/application/kholidays (2 > 1) + desktop/kde/application/kmix (3 > 2) + multimedia/sound/jack-audio-connection-kit (1 > 5) + network/misc/libnl (5 > 4) + programming/misc/vigra (7 > 6) +