From 85b14144a4add720e7767a98f9b419db698f0db2 Mon Sep 17 00:00:00 2001 From: Ivan Dmitrievich Yartsev Date: Thu, 4 Dec 2025 11:14:08 +0600 Subject: [PATCH 1/2] Test load of local pacman DB if global doesn't exist --- source/libublsettings-gtk3-packages.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/source/libublsettings-gtk3-packages.c b/source/libublsettings-gtk3-packages.c index c98a4b5..2d2bc82 100644 --- a/source/libublsettings-gtk3-packages.c +++ b/source/libublsettings-gtk3-packages.c @@ -10,8 +10,12 @@ struct packages { int _yon_packages_get_db(){ const char *root = "/"; const char *dbpath = "/var/lib/pacman"; + const char *dbpath_local = "/var/lib/pacman/local"; const char *config_path = "/etc/pacman.conf"; packages_struct.packages_handle = alpm_initialize(root,dbpath,NULL); + if (!packages_struct.packages_handle){ + packages_struct.packages_handle = alpm_initialize(root,dbpath_local,NULL); + } if (!packages_struct.packages_handle){ packages_struct.init_status=0; return 0; From 2921b36fedbcd2fb03194a7d6fb36bfd4edcba5d Mon Sep 17 00:00:00 2001 From: Ivan Dmitrievich Yartsev Date: Thu, 4 Dec 2025 11:39:26 +0600 Subject: [PATCH 2/2] Fixed packages checking if SyncDb doesn't exist --- source/libublsettings-gtk3-packages.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/source/libublsettings-gtk3-packages.c b/source/libublsettings-gtk3-packages.c index 2d2bc82..8a8743b 100644 --- a/source/libublsettings-gtk3-packages.c +++ b/source/libublsettings-gtk3-packages.c @@ -91,10 +91,11 @@ int yon_packages_init(){ int yon_packages_check_exist(const char *package_name){ - alpm_list_t *sync_db = alpm_get_syncdbs(packages_struct.packages_handle); + alpm_list_t *sync_db = _yon_packages_get_db_list(YON_PACKAGES_ALL); for (alpm_list_t *iter=sync_db;iter;iter=alpm_list_next(iter)){ alpm_db_t *database = iter->data; alpm_pkg_t *package = alpm_db_get_pkg(database,package_name); + if (package) return 1; } return 0;