aboutsummaryrefslogtreecommitdiffstats
path: root/RepSys/rpm.py
blob: d448c5f414d4e9957f719a8a18864154ba8b6e8c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#!/usr/bin/python
from RepSys.util import execcmd

class SRPM:
    def __init__(self, filename):
        self.filename = filename
        self._getinfo()

    def _getinfo(self):
        cmdstr = "rpm -qp --qf '%%{name} %%{epoch} %%{release} %%{version}' %s"
        status, output = execcmd(cmdstr % self.filename)
        self.name, self.epoch, self.release, self.version = output.split()
        if self.epoch == "(none)":
            self.epoch = None

    def unpack(self, topdir):
        execcmd("rpm -i --define '_topdir %s' %s" % (topdir, self.filename))

# vim:et:ts=4:sw=4