diff --git a/CHANGELOG.md b/CHANGELOG.md index 47bf1806..088dccc6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -54,6 +54,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - General - useless code removed - refactorings related to String formatting + - refactoring related to shared information ## [0.9.21] 2021-11-20 diff --git a/bauh/api/abstract/context.py b/bauh/api/abstract/context.py index fdb91ed4..d327eed2 100644 --- a/bauh/api/abstract/context.py +++ b/bauh/api/abstract/context.py @@ -14,7 +14,7 @@ class ApplicationContext: def __init__(self, download_icons: bool, http_client: HttpClient, app_root_dir: str, i18n: I18n, cache_factory: MemoryCacheFactory, disk_loader_factory: DiskCacheLoaderFactory, logger: logging.Logger, file_downloader: FileDownloader, distro: str, app_name: str, - internet_checker: InternetChecker): + internet_checker: InternetChecker, root_user: bool): """ :param download_icons: if packages icons should be downloaded :param http_client: a shared instance of http client @@ -41,6 +41,7 @@ class ApplicationContext: self.default_categories = ('AudioVideo', 'Audio', 'Video', 'Development', 'Education', 'Game', 'Graphics', 'Network', 'Office', 'Science', 'Settings', 'System', 'Utility') self.app_name = app_name + self.root_user = root_user self.root_password = None self.internet_checker = internet_checker diff --git a/bauh/cli/app.py b/bauh/cli/app.py index 232e809a..d5ffd7fd 100644 --- a/bauh/cli/app.py +++ b/bauh/cli/app.py @@ -3,6 +3,7 @@ import os import urllib3 from bauh import ROOT_DIR +from bauh.api import user from bauh.api.abstract.context import ApplicationContext from bauh.api.http import HttpClient from bauh.cli import __app_name__, cli_args @@ -45,7 +46,8 @@ def main(): file_downloader=AdaptableFileDownloader(logger, bool(app_config['download']['multithreaded']), i18n, http_client, app_config['download']['multithreaded_client']), app_name=__app_name__, - internet_checker=InternetChecker(offline=False)) + internet_checker=InternetChecker(offline=False), + root_user=user.is_root()) managers = gems.load_managers(context=context, locale=i18n.current_key, config=app_config, default_locale=DEFAULT_I18N_KEY) diff --git a/bauh/manage.py b/bauh/manage.py index 2e7f3370..14458a17 100644 --- a/bauh/manage.py +++ b/bauh/manage.py @@ -5,6 +5,7 @@ from typing import Tuple from PyQt5.QtWidgets import QApplication, QWidget from bauh import ROOT_DIR, __app_name__ +from bauh.api import user from bauh.api.abstract.context import ApplicationContext from bauh.api.http import HttpClient from bauh.commons.internet import InternetChecker @@ -41,7 +42,8 @@ def new_manage_panel(app_args: Namespace, app_config: dict, logger: logging.Logg file_downloader=AdaptableFileDownloader(logger, bool(app_config['download']['multithreaded']), i18n, http_client, app_config['download']['multithreaded_client']), app_name=__app_name__, - internet_checker=InternetChecker(offline=app_args.offline)) + internet_checker=InternetChecker(offline=app_args.offline), + root_user=user.is_root()) managers = gems.load_managers(context=context, locale=i18n.current_key, config=app_config, default_locale=DEFAULT_I18N_KEY)