add script and result 02EKIM

This commit is contained in:
Ertuğrul Erata
2015-10-02 23:16:46 +03:00
parent 18aeda3780
commit 4c7d365247
2 changed files with 240 additions and 0 deletions
+119
View File
@@ -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
+121
View File
@@ -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)