summaryrefslogtreecommitdiffstats
path: root/abs/mv-core/func/pacman.py
blob: c1d8d9da60e8d8934342db7330b211b2485c2ea1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#!/usr/bin/python


# other modules
import sub_process

# our modules
from modules import func_module

# =================================

class pacman(func_module.FuncModule):
    def __init__(self):
        self.methods = {
            "update_system"    : self.update_system,
            "pkgversion"            : self.pkgversion,
        }
        func_module.FuncModule.__init__(self)

    def update_system(self,flags):
        flags.replace(";","") # prevent stupidity
        cmd = sub_process.Popen("/usr/bin/update_system %s" % flags,stdout=sub_process.PIPE,shell=True)
        data = cmd.communicate()[0]
        results = []
        for x in data.split("\n"):
            results.append(x)
        return (cmd.returncode, results)

    def pkgversion(self,flags):
        flags.replace(";","") # prevent stupidity
        cmd = sub_process.Popen("/usr/bin/pacman -Q %s | grep -v error" % flags,stdout=sub_process.PIPE,shell=True)
        data = cmd.communicate()[0]
        results = []
        for x in data.split("\n"):
            results.append(x)
        return (cmd.returncode, results)


methods = pacman()
register_rpc = methods.register_rpc