X7ROOT File Manager
Current Path:
/usr/lib/python3.6/site-packages/up2date_client
usr
/
lib
/
python3.6
/
site-packages
/
up2date_client
/
??
..
??
__init__.py
(0 B)
??
__pycache__
??
capabilities.py
(7.28 KB)
??
clientCaps.py
(2.16 KB)
??
clpwd.py
(3.56 KB)
??
config.py
(14.46 KB)
??
debUtils.py
(2.76 KB)
??
getMethod.py
(4.2 KB)
??
haltree.py
(4.53 KB)
??
hardware.py
(31.91 KB)
??
hardware_gudev.py
(12.91 KB)
??
hardware_hal.py
(11.33 KB)
??
hardware_udev.py
(12.99 KB)
??
pkgUtils.py
(295 B)
??
pkgplatform.py
(309 B)
??
pmPlugin.py
(2.79 KB)
??
rhnChannel.py
(4.91 KB)
??
rhnHardware.py
(328 B)
??
rhnPackageInfo.py
(2.34 KB)
??
rhncli.py
(9.12 KB)
??
rhnreg.py
(31.35 KB)
??
rhnreg_constants.py
(18.13 KB)
??
rhnserver.py
(9.31 KB)
??
rpcServer.py
(11.72 KB)
??
rpmUtils.py
(5.2 KB)
??
transaction.py
(4.09 KB)
??
tui.py
(43.7 KB)
??
up2dateAuth.py
(10.69 KB)
??
up2dateErrors.py
(10.26 KB)
??
up2dateLog.py
(2.06 KB)
??
up2dateUtils.py
(5.06 KB)
Editing: debUtils.py
# 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(key=lambda package: package['version']) return pkg_list def setDebugVerbosity(): pass
Upload File
Create Folder