File rpmcmp.py of Package rpmcmp

#!/usr/bin/python
#Seth Vidal - yadda yadda yadda GPL Yadda yadda yadda Use at own risk
import rpm
import sys

def usage():
    print """
    rpmvercmp epoch1, ver1, release1, epoch2, ver2, release2
    or just let it ask you.
    """

def vercmp((e1, v1, r1), (e2, v2, r2)):
   rc = rpm.labelCompare((e1, v1, r1), (e2, v2, r2))
   return rc


def askforstuff(thingname):
    thing = raw_input('%s :' % thingname)
    return thing

def main():
    if len(sys.argv) > 1 and sys.argv[1] in ['-h', '--help', '-help', '--usage']:
        usage()
        sys.exit(0)
    elif len(sys.argv) < 7:
        e1 = askforstuff('Epoch1')
        v1 = askforstuff('Version1')
        r1 = askforstuff('Release1')        
        e2 = askforstuff('Epoch2')
        v2 = askforstuff('Version2')
        r2 = askforstuff('Release2')
    else:
        (e1, v1, r1, e2, v2, r2) = sys.argv[1:]
    
    rc = vercmp((e1, v1, r1), (e2, v2, r2))
    if rc > 0:
        print "%s:%s-%s is newer" % (e1, v1, r1)
    elif rc == 0:
        print "These are Equal"
    elif rc < 0:
        print "%s:%s-%s is newer" % (e2, v2, r2)

if __name__ == "__main__":
    main()

        


    
openSUSE Build Service is sponsored by