Example #1
0
import subprocess

from devbot import distro
from devbot.plugins import interfaces
from devbot.plugins import debian

distro.register_package_manager("ubuntu", debian.PackageManager)


class DistroInfo(interfaces.DistroInfo):
    _OS_RELEASE_PATH = "/etc/os-release"

    def __init__(self):
        arch = self._get_architecture()

        self.name = "ubuntu"
        self.version = "unknown"
        self.gnome_version = "3.4"
        self.gstreamer_version = "1.0"
        self.valid = True
        self.supported = (arch in ["i386", "i686", "x86_64"])
        self.lib_dir = None

        if arch in ["i386", "i686"]:
            self.lib_dir = "lib/i386-linux-gnu"
        elif arch == "x86_64":
            self.lib_dir = "lib/x86_64-linux-gnu"

        os_info = {}

        try:
Example #2
0
                    result.append(dependency_name)
                    self._find_deps(dependency_name, result)

    def find_with_deps(self, package_names):
        result = []

        for package in package_names:
            if package is not None:
                self._find_deps(package, result)
                if package not in result:
                    result.append(package)

        return result


distro.register_package_manager("debian", PackageManager)


class DistroInfo(interfaces.DistroInfo):
    _DEBIAN_VERSION_PATH = "/etc/debian_version"

    def __init__(self):
        arch = self._get_architecture()

        self.name = "debian"
        self.version = "unknown"
        self.gnome_version = "3.4"
        self.gstreamer_version = "0.10"
        self.valid = True
        self.supported = (arch in ["i686", "x86_64"])
        self.lib_dir = None
Example #3
0
    def install_packages(self, packages):
        pass

    def remove_packages(self, packages):
        pass

    def update(self):
        pass

    def find_all(self):
        return []

    def find_with_deps(self, packages):
        return []

distro.register_package_manager("unknown", PackageManager)


class DistroInfo(interfaces.DistroInfo):
    def __init__(self):
        self.lib_dir = None
        self.name = "unknown"
        self.version = "unknown"
        self.gnome_version = "3.4"
        self.gstreamer_version = "0.10"
        self.valid = True
        self.supported = False

distro.register_distro_info(DistroInfo)
Example #4
0
        filtered = [cap for cap in capabilities.split(" ")
                    if not cap.startswith("rpmlib")]

        if capabilities and filtered:
            args = ["rpm", "-q",
                    "--queryformat=[%{NAME} ]",
                    "--whatprovides"]
            args.extend(filtered)

            deps_packages = subprocess.check_output(args).strip()
            for dep_package in deps_packages.split(" "):
                if dep_package not in result:
                    result.append(dep_package)
                    self._find_deps(dep_package, result)

distro.register_package_manager("fedora", PackageManager)


class DistroInfo(interfaces.DistroInfo):
    _FEDORA_RELEASE_PATH = "/etc/fedora-release"

    def __init__(self):
        arch = self._get_architecture()

        self.name = "fedora"
        self.version = "unknown"
        self.gnome_version = "3.6"
        self.gstreamer_version = "1.0"
        self.valid = True
        self.supported = (arch in ["i386", "i686", "x86_64"])
        self.lib_dir = None