Добавлено обновление кэша layman

parent 97dabdb849
commit fd272937ce

@ -779,6 +779,22 @@ class Builder(Update):
self._startEmerging(emerge)
return True
def update_layman(self, builder_path):
"""
Обновить базу layman
:param builder_path:
:return:
"""
cmd = "/usr/bin/layman"
cmd_path = self.get_prog_path(cmd)
logfile = self._get_log_file()
if not cmd_path:
raise BuilderError(_("Failed to find the %s command") % cmd)
layman = self.chrootize(builder_path, CommandExecutor(cmd_path, ["-f"],
logfile=logfile))
layman.execute()
return layman.success()
def syncLaymanRepository(self, repname):
"""
Обновить репозиторий через layman

@ -25,7 +25,7 @@ from ..datavars import BuilderError
from os import path
from calculate.lib.utils.git import GitError
from calculate.lib.utils.portage import (EmergeLogNamedTask,
PackageList, EmergeLog)
PackageList, EmergeLog, isPkgInstalled)
from calculate.install.distr import DistributiveError
from calculate.update.update_tasks import EmergeMark
@ -152,6 +152,13 @@ class ClBuilderUpdateAction(Action):
'condition': lambda Get: Get(
'cl_builder_binary_set') == "on"
},
{'name': 'update_layman',
'message': __("Updating layman cache"),
'method': "Builder.update_layman(cl_builder_path)",
'condition': lambda Get: isPkgInstalled(
"app-portage/layman", prefix=Get('cl_chroot_path')),
'essential': False,
},
{'name': 'sync_other_reps',
'foreach': 'builder.cl_builder_other_rep_name',
'message': __(

Loading…
Cancel
Save