404

[ Avaa Bypassed ]




Upload:

Command:

elspacio@3.142.174.58: ~ $
# Client code for Update Agent
# Copyright (c) 2011--2016 Red Hat, Inc.  Distributed under GPLv2.
#
# Author: Simon Lukasik
#         Lukas Durfina
#

import os
import apt
import gettext
t = gettext.translation('rhn-client-tools', fallback=True)
# Python 3 translations don't have a ugettext method
if not hasattr(t, 'ugettext'):
    t.ugettext = t.gettext
_ = t.ugettext


# FIXME: After Debian bug 187019 is resolved
def verifyPackages(packages):
    cache = apt.Cache()
    missing_packages = []
    for package in packages:
        pkg = cache[package[0]]
        if pkg == None or not pkg.is_installed:
            missing_packages.append(package)

    return [], missing_packages

def parseVRE(version):
    epoch = ''
    release = 'X'
    if version.find(':') != -1:
        epoch, version = version.split(':')
    if version.find('-') != -1:
        tmp = version.split('-')
        version = '-'.join(tmp[:-1])
        release = tmp[-1]
    return version, release, epoch

def installTime(pkg_name, pkg_arch):
    dir = '/var/lib/dpkg/info'
    files = [ '%s.list' % pkg_name,
              '%s:%s.list' % (pkg_name, pkg_arch) ]
    # In edge cases, pkg_name can include the arch but the .list file does not
    if ':' in pkg_name:
        files.append('%s.list' % (pkg_name[:pkg_name.index(':')]))
    for f in files:
        path = os.path.join(dir,f)
        if os.path.isfile(path):
            return os.path.getmtime(path)
    return 0

#FIXME: Using Apt cache might not be an ultimate solution.
# It could be better to parse /var/lib/dpkg/status manually.
# Apt cache might not contain all the packages.
def getInstalledPackageList(msgCallback = None, progressCallback = None,
                            getArch=None, getInfo = None):
    """ Return list of packages. Package is dict with following keys:
        name, epoch, version, release and optionaly arch.
    """
    if msgCallback != None:
        msgCallback(_("Getting list of packages installed on the system"))
    cache = apt.Cache()

    total = 0
    for pkg in cache:
        if pkg.installed != None:
            total += 1

    count = 0
    pkg_list = []
    for pkg in cache:
        if pkg.installed == None:
            continue
        version, release, epoch = parseVRE(pkg.installed.version)
        package = {
            'name': pkg.name,
            'epoch': epoch,
            'version': version,
            'release': release,
            'arch': pkg.installed.architecture + '-deb',
            'installtime': installTime(pkg.name, pkg.installed.architecture)
            }
        pkg_list.append(package)

        if progressCallback != None:
            progressCallback(count, total)
        count = count + 1

    pkg_list.sort()
    return pkg_list

def setDebugVerbosity():
    pass

Filemanager

Name Type Size Permission Actions
__pycache__ Folder 0755
__init__.py File 0 B 0644
capabilities.py File 7.28 KB 0644
cldetect.py File 2.97 KB 0644
clientCaps.py File 2.16 KB 0644
clpwd.py File 3.56 KB 0644
config.py File 12.5 KB 0644
debUtils.py File 2.73 KB 0644
getMethod.py File 4.2 KB 0644
haltree.py File 4.53 KB 0644
hardware.py File 31.91 KB 0644
hardware_gudev.py File 12.89 KB 0644
hardware_hal.py File 11.32 KB 0644
hardware_udev.py File 12.99 KB 0644
pkgUtils.py File 295 B 0644
pkgplatform.py File 309 B 0644
pmPlugin.py File 2.79 KB 0644
rhnChannel.py File 4.4 KB 0644
rhnHardware.py File 328 B 0644
rhnPackageInfo.py File 2.21 KB 0644
rhncli.py File 9.12 KB 0644
rhnreg.py File 32.72 KB 0644
rhnreg_constants.py File 18.13 KB 0644
rhnserver.py File 8.66 KB 0644
rpcServer.py File 10.96 KB 0644
rpmUtils.py File 5.2 KB 0644
transaction.py File 4.09 KB 0644
tui.py File 43.7 KB 0644
up2dateAuth.py File 9.29 KB 0644
up2dateErrors.py File 10.26 KB 0644
up2dateLog.py File 2.06 KB 0644
up2dateUtils.py File 5.06 KB 0644