diff --git a/presets/verbose b/presets/verbose index 5d8a675bb..78314b7b3 100644 --- a/presets/verbose +++ b/presets/verbose @@ -3,7 +3,7 @@ --kernel-format Sysname: {}; Release: {}; Version: {} --uptime-format Days: {}; Hours: {}; Minutes: {}; Seconds: {} --processes-format Count: {} ---packages-format All: {}; pacman: {}; pacman branch: {}; dpkg: {}; rpm: {}; emerge: {}; eopkg: {}; xbps: {}; apk: {}; flatpak: {}; snap: {}; brew: {}; brew-cask: {}; port: {}; scoop: {}; choco: {} +--packages-format All: {}; pacman: {}; pacman branch: {}; dpkg: {}; rpm: {}; emerge: {}; eopkg: {}; xbps: {}; apk: {}; flatpak-system: {}; flatpak-user: {}; snap: {}; brew: {}; brew-cask: {}; port: {}; scoop: {}; choco: {} --shell-format Process name: {}; Process path: {}; Process exe: {}; Process version: {}; User path: {}; User exe: {}; User version: {} --display-format Width: {}; Height: {}; Refresh rate: {}; ScaledWith: {}; ScaledHeight: {} --de-format Process name: {}; Pretty name: {}; Version: {} diff --git a/src/detection/packages/packages.h b/src/detection/packages/packages.h index 9665b5695..5d806a238 100644 --- a/src/detection/packages/packages.h +++ b/src/detection/packages/packages.h @@ -14,7 +14,8 @@ typedef struct FFPackagesResult uint32_t dpkg; uint32_t emerge; uint32_t eopkg; - uint32_t flatpak; + uint32_t flatpakSystem; + uint32_t flatpakUser; uint32_t nixDefault; uint32_t nixSystem; uint32_t nixUser; diff --git a/src/detection/packages/packages_linux.c b/src/detection/packages/packages_linux.c index c7363e7c1..29b1ea2f2 100644 --- a/src/detection/packages/packages_linux.c +++ b/src/detection/packages/packages_linux.c @@ -258,7 +258,7 @@ static void getPackageCounts(const FFinstance* instance, FFstrbuf* baseDir, FFPa packageCounts->dpkg += getNumStrings(baseDir, "/var/lib/dpkg/status", "Status: "); packageCounts->emerge += countFilesRecursive(baseDir, "/var/db/pkg", "SIZE"); packageCounts->eopkg += getNumElements(baseDir, "/var/lib/eopkg/package", DT_DIR); - packageCounts->flatpak += getNumElements(baseDir, "/var/lib/flatpak/app", DT_DIR); + packageCounts->flatpakSystem += getNumElements(baseDir, "/var/lib/flatpak/app", DT_DIR); packageCounts->nixDefault += getNixPackages(baseDir, "/nix/var/nix/profiles/default"); packageCounts->nixSystem += getNixPackages(baseDir, "/run/current-system"); packageCounts->pacman += getNumElements(baseDir, "/var/lib/pacman/local", DT_DIR); @@ -316,7 +316,7 @@ static void getPackageCountsBedrock(const FFinstance* instance, FFstrbuf* baseDi void ffDetectPackagesImpl(const FFinstance* instance, FFPackagesResult* result) { - FFstrbuf baseDir; + FF_STRBUF_AUTO_DESTROY baseDir; ffStrbufInitA(&baseDir, 512); ffStrbufAppendS(&baseDir, FASTFETCH_TARGET_DIR_ROOT); @@ -335,6 +335,5 @@ void ffDetectPackagesImpl(const FFinstance* instance, FFPackagesResult* result) ffStrbufSet(&baseDir, &instance->state.platform.homeDir); result->nixUser = getNixPackages(&baseDir, "/.nix-profile"); - - ffStrbufDestroy(&baseDir); + result->flatpakUser += getNumElements(&baseDir, "/.var/app", DT_DIR); } diff --git a/src/fastfetch.c b/src/fastfetch.c index c46d11c2b..1bb4cf430 100644 --- a/src/fastfetch.c +++ b/src/fastfetch.c @@ -137,7 +137,7 @@ static inline void printCommandHelp(const char* command) } else if(strcasecmp(command, "packages-format") == 0) { - constructAndPrintCommandHelpFormat("packages", "{2} (pacman){?3}[{3}]{?}, {4} (dpkg), {5} (rpm), {6} (emerge), {7} (eopkg), {8} (xbps), {9} (nix-system), {10} (nix-user), {11} (nix-default), {12} (apk), {13} (pkg), {14} (flatpak), {15} (snap), {16} (brew), {17} (brew-cask), {18} (port), {19} (scoop), {20} (choco)", 20, + constructAndPrintCommandHelpFormat("packages", "{2} (pacman){?3}[{3}]{?}, {4} (dpkg), {5} (rpm), {6} (emerge), {7} (eopkg), {8} (xbps), {9} (nix-system), {10} (nix-user), {11} (nix-default), {12} (apk), {13} (pkg), {14} (flatpak-system), {15} (flatpack-user), {16} (snap), {17} (brew), {18} (brew-cask), {19} (port), {20} (scoop), {21} (choco)", 21, "Number of all packages", "Number of pacman packages", "Pacman branch on manjaro", @@ -151,7 +151,8 @@ static inline void printCommandHelp(const char* command) "Number of nix-default packages", "Number of apk packages", "Number of pkg packages", - "Number of flatpak packages", + "Number of flatpak-system packages", + "Number of flatpak-user packages", "Number of snap packages", "Number of brew packages", "Number of brew-cask packages", diff --git a/src/modules/packages.c b/src/modules/packages.c index d22a2476f..a869fa678 100644 --- a/src/modules/packages.c +++ b/src/modules/packages.c @@ -3,7 +3,7 @@ #include "detection/packages/packages.h" #define FF_PACKAGES_MODULE_NAME "Packages" -#define FF_PACKAGES_NUM_FORMAT_ARGS 20 +#define FF_PACKAGES_NUM_FORMAT_ARGS 21 void ffPrintPackages(FFinstance* instance) { @@ -23,7 +23,7 @@ void ffPrintPackages(FFinstance* instance) #define FF_PRINT_PACKAGE_NAME(var, name) \ if(counts->var > 0) \ { \ - printf("%u ("name")", counts->var); \ + printf("%u (%s)", counts->var, (name)); \ if((all -= counts->var) > 0) \ printf(", "); \ }; @@ -49,7 +49,8 @@ void ffPrintPackages(FFinstance* instance) FF_PRINT_PACKAGE_NAME(nixDefault, "nix-default") FF_PRINT_PACKAGE(apk) FF_PRINT_PACKAGE(pkg) - FF_PRINT_PACKAGE(flatpak) + FF_PRINT_PACKAGE_NAME(flatpakSystem, counts->flatpakUser ? "flatpak-system" : "flatpak") + FF_PRINT_PACKAGE_NAME(flatpakUser, "flatpak-user") FF_PRINT_PACKAGE(snap) FF_PRINT_PACKAGE(brew) FF_PRINT_PACKAGE_NAME(brewCask, "brew-cask") @@ -78,7 +79,8 @@ void ffPrintPackages(FFinstance* instance) {FF_FORMAT_ARG_TYPE_UINT, &counts->nixDefault}, {FF_FORMAT_ARG_TYPE_UINT, &counts->apk}, {FF_FORMAT_ARG_TYPE_UINT, &counts->pkg}, - {FF_FORMAT_ARG_TYPE_UINT, &counts->flatpak}, + {FF_FORMAT_ARG_TYPE_UINT, &counts->flatpakSystem}, + {FF_FORMAT_ARG_TYPE_UINT, &counts->flatpakUser}, {FF_FORMAT_ARG_TYPE_UINT, &counts->snap}, {FF_FORMAT_ARG_TYPE_UINT, &counts->brew}, {FF_FORMAT_ARG_TYPE_UINT, &counts->brewCask},