From e3f086545e7718c0dabfca343674bfa8ac561227 Mon Sep 17 00:00:00 2001 From: Tyagiquamar Date: Thu, 1 Oct 2026 01:24:19 +0530 Subject: [PATCH] feat(packages): add pkgsrc detection on macOS --- src/detection/packages/packages_apple.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/detection/packages/packages_apple.c b/src/detection/packages/packages_apple.c index 43de97df8f..78d16a020a 100644 --- a/src/detection/packages/packages_apple.c +++ b/src/detection/packages/packages_apple.c @@ -46,6 +46,20 @@ void ffDetectPackagesImpl(FFPackagesResult* result, FFPackagesOptions* options) result->macports = getMacPortsPackages(&baseDir); } + if (FF_PACKAGES_IS_ENABLED(options, PKGSRC)) { + const char* prefix = getenv("PKG_DBDIR"); + if (ffStrSet(prefix)) { + result->pkgsrc = ffPackagesGetNumElements(prefix, true); + } else { + result->pkgsrc = ffPackagesGetNumElements(FASTFETCH_TARGET_DIR_ROOT "/opt/pkg/pkgdb", true); + if (result->pkgsrc == 0) { + result->pkgsrc = ffPackagesGetNumElements(FASTFETCH_TARGET_DIR_ROOT "/usr/pkg/pkgdb", true); + if (result->pkgsrc == 0) { + result->pkgsrc = ffPackagesGetNumElements(FASTFETCH_TARGET_DIR_ROOT "/var/db/pkg", true); + } + } + } + } if (FF_PACKAGES_IS_ENABLED(options, NIX)) { ffStrbufSetS(&baseDir, FASTFETCH_TARGET_DIR_ROOT); result->nixDefault += ffPackagesGetNix(&baseDir, "/nix/var/nix/profiles/default"); @@ -54,3 +68,4 @@ void ffDetectPackagesImpl(FFPackagesResult* result, FFPackagesOptions* options) result->nixUser = ffPackagesGetNix(&baseDir, "/.nix-profile"); } } +