You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
distros-overlay/sys-apps/calculate-update/files/calculate-update-3.2.0_alph...

154 lines
6.5 KiB

diff --git update/emerge_parser.py update/emerge_parser.py
index 597ba55..204e758 100644
--- update/emerge_parser.py
+++ update/emerge_parser.py
@@ -57,7 +57,8 @@ class CommandExecutor(object):
def __init__(self, cmd, params, env=None, cwd=None, logfile=None):
self.cwd = cwd
- self.env = env
+ self.env = env or dict(os.environ)
+ self.env.update({'EINFO_QUIET':'NO'})
self.cmd = cmd
self.params = params
self.child = None
diff --git update/update.py update/update.py
index ce66dd7..8e082fa 100644
--- update/update.py
+++ update/update.py
@@ -16,6 +16,7 @@
import sys
from os import path
+import os
from calculate.lib.utils.tools import AddonError
from calculate.lib.utils.colortext.palette import TextState
@@ -96,10 +97,6 @@ class Update:
needMeta = True
if needMeta:
dv.Set('cl_update_outdate_set', 'on', force=True)
- layman = Layman(dv.Get('cl_update_layman_installed'),
- dv.Get('cl_update_layman_make'))
- if name != "portage":
- layman.add(name, url, rpath)
return True
def syncRepositories(self, repname, clean_on_error=True):
@@ -124,15 +121,26 @@ class Update:
if e.addon:
self.printWARNING(str(e.addon))
self.printWARNING(str(e))
- self.printWARNING(_("Re-fetch {name} repository"
- ).format(name=repname))
+ self.printWARNING(
+ _("Re-fetch {name} repository").format(name=repname))
try:
+ rpath_new = "%s_new" % rpath
+ self._syncRepository(repname, url, rpath_new, revision,
+ branch)
removeDir(rpath)
- except OSError as e:
+ os.rename(rpath_new, rpath)
+ except OSError:
raise UpdateError(_("Permission denied to change "
"{repname} repository").format(
repname=repname))
- self._syncRepository(repname, url, rpath, revision, branch)
+ else:
+ if not self._syncRepository(repname, url, rpath, revision, branch):
+ return "skip"
+
+ layman = Layman(dv.Get('cl_update_layman_installed'),
+ dv.Get('cl_update_layman_make'))
+ if repname != "portage":
+ layman.add(repname, url, rpath)
return True
def syncLaymanRepository(self, repname):
@@ -352,13 +360,12 @@ class Update:
"""
# подробный список пакетов
_print = self.color_print
- highlight = TextState.Colors.WHITE
if self.clVars.Get('cl_verbose_set') == 'on':
self.printPre(str(emerge.install_packages))
else:
pkglist = emerge.install_packages.list
self.printSUCCESS(_print(
- _("List packages for installation")))
+ _("Listing packages for installation")))
self._display_pretty_package_list(pkglist)
if emerge.install_packages.remove_list:
self.printSUCCESS(_print(
@@ -367,8 +374,7 @@ class Update:
emerge.install_packages.remove_list, remove_list=True)
if str(emerge.download_size) != "0 kB":
self.printSUCCESS(_("{size} will be downloaded").format(
- size=_print.foreground(highlight)(
- str(emerge.download_size))))
+ size=str(emerge.download_size)))
def _display_remove_list(self, emerge):
"""
diff --git update/utils/cl_update.py update/utils/cl_update.py
index 033a3bd..533d1c1 100644
--- update/utils/cl_update.py
+++ update/utils/cl_update.py
@@ -102,7 +102,8 @@ class ClUpdateAction(Action):
'condition': need_upgrade('dev-lang/python$')
},
{'name': 'update:python_updater',
- 'message': __('Updating Python modules'),
+ 'message': __('Find & rebuild packages broken due '
+ 'to a Python upgrade'),
'method': 'Update.emergelike("python-updater")',
'condition': was_installed('dev-lang/python$',
log_names['python_updater']),
@@ -112,7 +113,7 @@ class ClUpdateAction(Action):
]
},
{'name': 'update:update_perl',
- 'group': __("Updating perl"),
+ 'group': __("Updating Perl"),
'tasks': [
{'name': 'update:update_perl_pkg',
'message': __('Updating {0}').format(pkg_color('dev-lang/perl')),
@@ -120,7 +121,8 @@ class ClUpdateAction(Action):
'condition': need_upgrade('dev-lang/perl$')
},
{'name': 'update:perl_cleaner',
- 'message': __('Updating Perl modules'),
+ 'message': __('Find & rebuild packages and Perl header files '
+ 'broken due to a perl upgrade'),
'method': 'Update.emergelike("perl-cleaner", "all")',
'condition': was_installed('dev-lang/perl$',
log_names['perl_cleaner']),
@@ -133,15 +135,14 @@ class ClUpdateAction(Action):
'group': __("Updating Calculate Utilities"),
'tasks': [
{'name': 'update:update_calculate_pkgs',
- 'message': __("Updating {0}").format(
- pkg_color("sys-apps/calculate-utilities")),
+ 'message': __("Calculating dependencies"),
'method': 'Update.emerge("-u","sys-apps/calculate-utilities")',
'condition': need_upgrade('sys-apps/calculate-utilities$')
},
]
},
{'name': 'update:update_world',
- 'group': __("Updating packages"),
+ 'group': __("Updating the list packages"),
'tasks': [
{'name': 'update:update_world',
'message': __("Calculating dependencies"),
@@ -153,7 +154,7 @@ class ClUpdateAction(Action):
'group': __("Cleaning system from needless packages"),
'tasks': [
{'name': 'update_other:update_depclean',
- 'message': __("Emerge depclean"),
+ 'message': __("Calculating dependencies"),
'method': 'Update.depclean()',
'condition': was_installed('.*', log_names['depclean']),
'decoration': 'Update.update_task("%s")' % log_names['depclean']