add script and result 02EKIM
This commit is contained in:
Executable
+119
@@ -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
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user