mirror of
https://github.com/fastfetch-cli/fastfetch.git
synced 2026-09-12 10:22:12 +02:00
Packages (Linux): adds cards counting (NuTyX) (#2287)
* Packages:add cards counting (NuTyX) * package.c no need to add counts.catds * Sort packages print alphabetically * ditto * ditto * packages.c update FF_ARG and ffpackagesModule.info --------- Co-authored-by: Carter Li <CarterLi@users.noreply.github.com>
This commit is contained in:
@@ -10,6 +10,7 @@ typedef struct FFPackagesResult {
|
||||
uint32_t appimage;
|
||||
uint32_t brew;
|
||||
uint32_t brewCask;
|
||||
uint32_t cards;
|
||||
uint32_t choco;
|
||||
uint32_t dpkg;
|
||||
uint32_t emerge;
|
||||
|
||||
@@ -537,6 +537,9 @@ static void getPackageCounts(FFstrbuf* baseDir, FFPackagesResult* packageCounts,
|
||||
if (!(options->disabled & FF_PACKAGES_FLAG_MOSS_BIT)) {
|
||||
packageCounts->moss += getSQLite3Int(baseDir, "/.moss/db/state", "SELECT COUNT(*) FROM state_selections WHERE state_id = (SELECT MAX(id) FROM state)", "moss");
|
||||
}
|
||||
if (!(options->disabled & FF_PACKAGES_FLAG_CARDS_BIT)) {
|
||||
packageCounts->cards += getNumElements(baseDir, "/var/lib/pkg/DB", true);
|
||||
}
|
||||
}
|
||||
|
||||
static void getPackageCountsRegular(FFstrbuf* baseDir, FFPackagesResult* packageCounts, FFPackagesOptions* options) {
|
||||
|
||||
@@ -38,6 +38,7 @@ typedef enum FF_A_PACKED FFPackagesFlags {
|
||||
FF_PACKAGES_FLAG_KISS_BIT = 1ULL << 31,
|
||||
FF_PACKAGES_FLAG_MOSS_BIT = 1ULL << 32,
|
||||
FF_PACKAGES_FLAG_APPIMAGE_BIT = 1ULL << 33,
|
||||
FF_PACKAGES_FLAG_CARDS_BIT = 1ULL << 34,
|
||||
FF_PACKAGES_FLAG_FORCE_UNSIGNED = UINT64_MAX,
|
||||
} FFPackagesFlags;
|
||||
static_assert(sizeof(FFPackagesFlags) == sizeof(uint64_t), "");
|
||||
|
||||
@@ -61,6 +61,7 @@ bool ffPrintPackages(FFPackagesOptions* options) {
|
||||
FF_PRINT_PACKAGE_NAME(brew, "brew")
|
||||
FF_PRINT_PACKAGE_NAME(brewCask, "brew-cask")
|
||||
}
|
||||
FF_PRINT_PACKAGE(cards)
|
||||
FF_PRINT_PACKAGE(choco)
|
||||
FF_PRINT_PACKAGE(dpkg)
|
||||
FF_PRINT_PACKAGE(emerge)
|
||||
@@ -151,6 +152,7 @@ bool ffPrintPackages(FFPackagesOptions* options) {
|
||||
FF_ARG(counts.brew, "brew"),
|
||||
FF_ARG(brewAll, "brew-all"),
|
||||
FF_ARG(counts.brewCask, "brew-cask"),
|
||||
FF_ARG(counts.cards, "cards"),
|
||||
FF_ARG(counts.choco, "choco"),
|
||||
FF_ARG(counts.dpkg, "dpkg"),
|
||||
FF_ARG(counts.emerge, "emerge"),
|
||||
@@ -247,6 +249,7 @@ void ffParsePackagesJsonObject(FFPackagesOptions* options, yyjson_val* module) {
|
||||
case 'C':
|
||||
if (false)
|
||||
;
|
||||
FF_TEST_PACKAGE_NAME(CARDS)
|
||||
FF_TEST_PACKAGE_NAME(CHOCO)
|
||||
break;
|
||||
case 'D':
|
||||
@@ -371,6 +374,7 @@ void ffGeneratePackagesJsonConfig(FFPackagesOptions* options, yyjson_mut_doc* do
|
||||
FF_TEST_PACKAGE_NAME(APK)
|
||||
FF_TEST_PACKAGE_NAME(APPIMAGE)
|
||||
FF_TEST_PACKAGE_NAME(BREW)
|
||||
FF_TEST_PACKAGE_NAME(CARDS)
|
||||
FF_TEST_PACKAGE_NAME(CHOCO)
|
||||
FF_TEST_PACKAGE_NAME(DPKG)
|
||||
FF_TEST_PACKAGE_NAME(EMERGE)
|
||||
@@ -429,6 +433,7 @@ bool ffGeneratePackagesJsonResult(FF_A_UNUSED FFPackagesOptions* options, yyjson
|
||||
FF_APPEND_PACKAGE_COUNT(apk)
|
||||
FF_APPEND_PACKAGE_COUNT(brew)
|
||||
FF_APPEND_PACKAGE_COUNT(brewCask)
|
||||
FF_APPEND_PACKAGE_COUNT(cards)
|
||||
FF_APPEND_PACKAGE_COUNT(choco)
|
||||
FF_APPEND_PACKAGE_COUNT(dpkg)
|
||||
FF_APPEND_PACKAGE_COUNT(emerge)
|
||||
@@ -502,6 +507,7 @@ FFModuleBaseInfo ffPackagesModuleInfo = {
|
||||
{ "Number of brew packages", "brew" },
|
||||
{ "Total number of all brew packages", "brew-all" },
|
||||
{ "Number of brew-cask packages", "brew-cask" },
|
||||
{ "Number of cards packages", "cards" },
|
||||
{ "Number of choco packages", "choco" },
|
||||
{ "Number of dpkg packages", "dpkg" },
|
||||
{ "Number of emerge packages", "emerge" },
|
||||
|
||||
Reference in New Issue
Block a user