def prepare(self, task_manager: TaskManager, root_password: Optional[str], internet_available: bool): create_config = CreateConfigFile(taskman=task_manager, configman=self.configman, i18n=self.i18n, task_icon_path=get_icon_path(), logger=self.logger) create_config.start() task_manager.register_task('snap_cats', self.i18n['task.download_categories'], get_icon_path()) category_downloader = CategoriesDownloader( id_='snap', manager=self, http_client=self.http_client, logger=self.logger, url_categories_file=URL_CATEGORIES_FILE, categories_path=CATEGORIES_FILE_PATH, internet_connection=internet_available, internet_checker=self.context.internet_checker, after=lambda: self._finish_category_task(task_manager)) category_downloader.before = lambda: self._start_category_task( task_manager, create_config, category_downloader) category_downloader.start()
def _start_category_task(self, task_man: TaskManager): if task_man: task_man.register_task( 'snap_cats', self.i18n['task.download_categories'].format('Snap'), get_icon_path()) task_man.update_progress('snap_cats', 50, None)
def read_settings(self, task_man: TaskManager = None) -> dict: try: if task_man: task_man.register_task('web_down_sets', self.i18n['web.task.download_settings'], get_icon_path()) task_man.update_progress('web_down_sets', 10, None) res = self.http_client.get(URL_ENVIRONMENT_SETTINGS) if not res: self.logger.warning( 'Could not retrieve the environments settings from the cloud' ) self._finish_task_download_settings(task_man) return try: self._finish_task_download_settings(task_man) return yaml.safe_load(res.content) except yaml.YAMLError: self.logger.error( 'Could not parse environment settings: {}'.format( res.text)) self._finish_task_download_settings(task_man) return except requests.exceptions.ConnectionError: self._finish_task_download_settings(task_man) return
def prepare(self, task_manager: TaskManager, root_password: str, internet_available: bool): task_id = 'flatpak' task_manager.register_task(task_id, self.i18n['flatpak.task.read_config'], get_icon_path()) task_manager.update_progress(task_id, 10, None) Thread(target=read_config, args=(True, ), daemon=True).start() task_manager.update_progress(task_id, 100, None) task_manager.finish_task(task_id)