[api] refactoring: caching directory for root user is now /var/cache/bauh

This commit is contained in:
Vinicius Moreira
2021-11-24 10:34:04 -03:00
parent f78498c1ec
commit aa889dcd51
18 changed files with 49 additions and 42 deletions

View File

@@ -2,7 +2,7 @@ import os
from pathlib import Path
from typing import Optional
from bauh.api.paths import CONFIG_PATH, CACHE_PATH, TEMP_DIR
from bauh.api.paths import CONFIG_PATH, TEMP_DIR, CACHE_PATH
from bauh.commons import resource
ROOT_DIR = os.path.dirname(os.path.abspath(__file__))
@@ -14,13 +14,13 @@ CONFIG_DIR = '{}/appimage'.format(CONFIG_PATH)
UPDATES_IGNORED_FILE = '{}/updates_ignored.txt'.format(CONFIG_DIR)
SYMLINKS_DIR = '{}/.local/bin'.format(str(Path.home()))
URL_COMPRESSED_DATABASES = 'https://raw.githubusercontent.com/vinifmor/bauh-files/master/appimage/dbs.tar.gz'
APPIMAGE_CACHE_PATH = '{}/appimage'.format(CACHE_PATH)
DATABASE_APPS_FILE = '{}/apps.db'.format(APPIMAGE_CACHE_PATH)
DATABASE_RELEASES_FILE = '{}/releases.db'.format(APPIMAGE_CACHE_PATH)
DATABASES_TS_FILE = '{}/dbs.ts'.format(APPIMAGE_CACHE_PATH)
APPIMAGE_CACHE_PATH = f'{CACHE_PATH}/appimage'
DATABASE_APPS_FILE = f'{APPIMAGE_CACHE_PATH}/apps.db'
DATABASE_RELEASES_FILE = f'{APPIMAGE_CACHE_PATH}/releases.db'
DATABASES_TS_FILE = f'{APPIMAGE_CACHE_PATH}/dbs.ts'
DESKTOP_ENTRIES_PATH = '{}/.local/share/applications'.format(str(Path.home()))
SUGGESTIONS_CACHED_FILE = '{}/suggestions.txt'.format(APPIMAGE_CACHE_PATH)
SUGGESTIONS_CACHED_TS_FILE = '{}/suggestions.ts'.format(APPIMAGE_CACHE_PATH)
SUGGESTIONS_CACHED_FILE = f'{APPIMAGE_CACHE_PATH}/suggestions.txt'
SUGGESTIONS_CACHED_TS_FILE = f'{APPIMAGE_CACHE_PATH}/suggestions.ts'
DOWNLOAD_DIR = f'{TEMP_DIR}/appimage/download'

View File

@@ -722,7 +722,7 @@ class AppImageManager(SoftwareManager):
return updates
def list_warnings(self, internet_available: bool) -> List[str]:
dbfiles = glob.glob('{}/*.db'.format(APPIMAGE_CACHE_PATH))
dbfiles = glob.glob(f'{APPIMAGE_CACHE_PATH}/*.db')
if not dbfiles or len({f for f in (DATABASE_APPS_FILE, DATABASE_RELEASES_FILE) if f in dbfiles}) != 2:
return [self.i18n['appimage.warning.missing_db_files'].format(appimage=bold('AppImage'))]

View File

@@ -24,7 +24,7 @@ from bauh.view.util.translation import I18n
class DatabaseUpdater(Thread):
COMPRESS_FILE_PATH = '{}/db.tar.gz'.format(APPIMAGE_CACHE_PATH)
COMPRESS_FILE_PATH = f'{APPIMAGE_CACHE_PATH}/db.tar.gz'
def __init__(self, i18n: I18n, http_client: HttpClient, logger: logging.Logger, taskman: TaskManager,
watcher: Optional[ProcessWatcher] = None, appimage_config: Optional[dict] = None, create_config: Optional[CreateConfigFile] = None):
@@ -52,10 +52,10 @@ class DatabaseUpdater(Thread):
self.logger.info("No expiration time configured for the AppImage database")
return True
files = {*glob.glob('{}/*'.format(APPIMAGE_CACHE_PATH))}
files = {*glob.glob(f'{APPIMAGE_CACHE_PATH}/*')}
if not files:
self.logger.warning('No database files on {}'.format(APPIMAGE_CACHE_PATH))
self.logger.warning(f'No database files on {APPIMAGE_CACHE_PATH}')
return True
if DATABASES_TS_FILE not in files:
@@ -113,7 +113,7 @@ class DatabaseUpdater(Thread):
self.logger.info("Database file saved at {}".format(self.COMPRESS_FILE_PATH))
self._update_task_progress(50, self.i18n['appimage.update_database.deleting_old'])
old_db_files = glob.glob(APPIMAGE_CACHE_PATH + '/*.db')
old_db_files = glob.glob(f'{APPIMAGE_CACHE_PATH}/*.db')
if old_db_files:
self.logger.info('Deleting old database files')