Merge pull request #719 from siduction/pep8-packages
Fixed pep8 whining in module packages
This commit is contained in:
commit
f93a7fbd28
@ -6,6 +6,7 @@
|
||||
# Copyright 2014, Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
|
||||
# Copyright 2015-2017, Teo Mrnjavac <teo@kde.org>
|
||||
# Copyright 2016-2017, Kyle Robbertze <kyle@aims.ac.za>
|
||||
# Copyright 2017, Alf Gaida <agaida@siduction.org>
|
||||
#
|
||||
# Calamares is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
@ -25,8 +26,10 @@ import libcalamares
|
||||
from libcalamares.utils import check_target_env_call, target_env_call
|
||||
from string import Template
|
||||
|
||||
|
||||
class PackageManager:
|
||||
""" Package manager class.
|
||||
"""
|
||||
Package manager class.
|
||||
|
||||
:param backend:
|
||||
"""
|
||||
@ -43,15 +46,19 @@ class PackageManager:
|
||||
for pkg in pkgs:
|
||||
check_target_env_call(["pkcon", "-py", "install", pkg])
|
||||
elif self.backend == "zypp":
|
||||
check_target_env_call(["zypper", "--non-interactive", "--quiet-install", "install",
|
||||
"--auto-agree-with-licenses", "install"] + pkgs)
|
||||
check_target_env_call(["zypper", "--non-interactive",
|
||||
"--quiet-install", "install",
|
||||
"--auto-agree-with-licenses",
|
||||
"install"] + pkgs)
|
||||
elif self.backend == "yum":
|
||||
check_target_env_call(["yum", "install", "-y"] + pkgs)
|
||||
elif self.backend == "dnf":
|
||||
check_target_env_call(["dnf", "install", "-y"] + pkgs)
|
||||
elif self.backend == "urpmi":
|
||||
check_target_env_call(["urpmi", "--download-all", "--no-suggests", "--no-verify-rpm",
|
||||
"--fastunsafe", "--ignoresize", "--nolock", "--auto"] + pkgs)
|
||||
check_target_env_call(["urpmi", "--download-all", "--no-suggests",
|
||||
"--no-verify-rpm", "--fastunsafe",
|
||||
"--ignoresize", "--nolock",
|
||||
"--auto"] + pkgs)
|
||||
elif self.backend == "apt":
|
||||
check_target_env_call(["apt-get", "-q", "-y", "install"] + pkgs)
|
||||
elif self.backend == "pacman":
|
||||
@ -60,7 +67,8 @@ class PackageManager:
|
||||
else:
|
||||
pacman_flags = "-Sy"
|
||||
|
||||
check_target_env_call(["pacman", pacman_flags, "--noconfirm"] + pkgs)
|
||||
check_target_env_call(["pacman", pacman_flags,
|
||||
"--noconfirm"] + pkgs)
|
||||
elif self.backend == "portage":
|
||||
check_target_env_call(["emerge", "-v"] + pkgs)
|
||||
elif self.backend == "entropy":
|
||||
@ -75,17 +83,23 @@ class PackageManager:
|
||||
for pkg in pkgs:
|
||||
check_target_env_call(["pkcon", "-py", "remove", pkg])
|
||||
elif self.backend == "zypp":
|
||||
check_target_env_call(["zypper", "--non-interactive", "remove"] + pkgs)
|
||||
check_target_env_call(["zypper", "--non-interactive",
|
||||
"remove"] + pkgs)
|
||||
elif self.backend == "yum":
|
||||
check_target_env_call(["yum", "--disablerepo=*", "-C", "-y", "remove"] + pkgs)
|
||||
check_target_env_call(["yum", "--disablerepo=*", "-C", "-y",
|
||||
"remove"] + pkgs)
|
||||
elif self.backend == "dnf":
|
||||
# ignore the error code for now because dnf thinks removing a nonexistent package is an error
|
||||
target_env_call(["dnf", "--disablerepo=*", "-C", "-y", "remove"] + pkgs)
|
||||
# ignore the error code for now because dnf thinks removing a
|
||||
# nonexistent package is an error
|
||||
target_env_call(["dnf", "--disablerepo=*", "-C", "-y",
|
||||
"remove"] + pkgs)
|
||||
elif self.backend == "urpmi":
|
||||
check_target_env_call(["urpme", "--auto"] + pkgs)
|
||||
elif self.backend == "apt":
|
||||
check_target_env_call(["apt-get", "--purge", "-q", "-y", "remove"] + pkgs)
|
||||
check_target_env_call(["apt-get", "--purge", "-q", "-y", "autoremove"])
|
||||
check_target_env_call(["apt-get", "--purge", "-q", "-y",
|
||||
"remove"] + pkgs)
|
||||
check_target_env_call(["apt-get", "--purge", "-q", "-y",
|
||||
"autoremove"])
|
||||
elif self.backend == "pacman":
|
||||
check_target_env_call(["pacman", "-Rs", "--noconfirm"] + pkgs)
|
||||
elif self.backend == "portage":
|
||||
@ -120,7 +134,7 @@ def subst_locale(list):
|
||||
locale = libcalamares.globalstorage.value("locale")
|
||||
if locale:
|
||||
for e in list:
|
||||
if locale != "en":
|
||||
if locale != "en":
|
||||
entry = Template(e)
|
||||
ret.append(entry.safe_substitute(LOCALE=locale))
|
||||
elif 'LOCALE' not in e:
|
||||
@ -129,8 +143,10 @@ def subst_locale(list):
|
||||
ret = list
|
||||
return ret
|
||||
|
||||
|
||||
def run_operations(pkgman, entry):
|
||||
""" Call package manager with given parameters.
|
||||
"""
|
||||
Call package manager with given parameters.
|
||||
|
||||
:param pkgman:
|
||||
:param entry:
|
||||
@ -146,21 +162,25 @@ def run_operations(pkgman, entry):
|
||||
else:
|
||||
pkgman.install(entry[key])
|
||||
elif key == "try_install":
|
||||
# we make a separate package manager call for each package so a single
|
||||
# failing package won't stop all of them
|
||||
# we make a separate package manager call for each package so a
|
||||
# single failing package won't stop all of them
|
||||
for package in entry[key]:
|
||||
if isinstance(package, str):
|
||||
try:
|
||||
pkgman.install([package])
|
||||
except subprocess.CalledProcessError:
|
||||
libcalamares.utils.debug("WARNING: could not install package {}".format(package))
|
||||
warn_text = "WARNING: could not install package "
|
||||
warn_text += package
|
||||
libcalamares.utils.debug(warn_text)
|
||||
else:
|
||||
try:
|
||||
pkgman.run(package["pre-script"])
|
||||
pkgman.install([package["package"]])
|
||||
pkgman.run(package["post-script"])
|
||||
except subprocess.CalledProcessError:
|
||||
libcalamares.utils.debug("WARNING: could not install packages {}".format(package["package"]))
|
||||
warn_text = "WARNING: could not install packages "
|
||||
warn_text += package["package"]
|
||||
libcalamares.utils.debug(warn_text)
|
||||
elif key == "remove":
|
||||
pkgman.remove(entry[key])
|
||||
elif key == "try_remove":
|
||||
@ -168,20 +188,24 @@ def run_operations(pkgman, entry):
|
||||
try:
|
||||
pkgman.remove([package])
|
||||
except subprocess.CalledProcessError:
|
||||
libcalamares.utils.debug("WARNING: could not remove package {}".format(package))
|
||||
warn_text = "WARNING: could not remove package "
|
||||
warn_text += package
|
||||
libcalamares.utils.debug(warn_text)
|
||||
elif key == "localInstall":
|
||||
pkgman.install(entry[key], from_local=True)
|
||||
|
||||
|
||||
def run():
|
||||
""" Calls routine with detected package manager to install locale packages
|
||||
"""
|
||||
Calls routine with detected package manager to install locale packages
|
||||
or remove drivers not needed on the installed system.
|
||||
|
||||
:return:
|
||||
"""
|
||||
backend = libcalamares.job.configuration.get("backend")
|
||||
|
||||
if backend not in ("packagekit", "zypp", "yum", "dnf", "urpmi", "apt", "pacman", "portage", "entropy"):
|
||||
if backend not in ("packagekit", "zypp", "yum", "dnf", "urpmi", "apt",
|
||||
"pacman", "portage", "entropy"):
|
||||
return "Bad backend", "backend=\"{}\"".format(backend)
|
||||
|
||||
pkgman = PackageManager(backend)
|
||||
@ -195,6 +219,7 @@ def run():
|
||||
run_operations(pkgman, entry)
|
||||
|
||||
if libcalamares.globalstorage.contains("packageOperations"):
|
||||
run_operations(pkgman, libcalamares.globalstorage.value("packageOperations"))
|
||||
run_operations(pkgman,
|
||||
libcalamares.globalstorage.value("packageOperations"))
|
||||
|
||||
return None
|
||||
|
Loading…
Reference in New Issue
Block a user