mirror of
https://github.com/fastfetch-cli/fastfetch.git
synced 2026-10-30 09:33:39 +01:00
Packages (Linux): adds support for package detection for CRUX linux
This commit is contained in:
@@ -12,6 +12,7 @@ typedef struct FFPackagesResult {
|
||||
uint32_t brewCask;
|
||||
uint32_t cards;
|
||||
uint32_t choco;
|
||||
uint32_t crux;
|
||||
uint32_t dpkg;
|
||||
uint32_t emerge;
|
||||
uint32_t eopkg;
|
||||
|
||||
@@ -487,6 +487,9 @@ static void getPackageCounts(FFstrbuf* baseDir, FFPackagesResult* packageCounts,
|
||||
if (FF_PACKAGES_IS_ENABLED(options, APK)) {
|
||||
packageCounts->apk += getNumStrings(baseDir, "/lib/apk/db/installed", "C:Q", "apk");
|
||||
}
|
||||
if (FF_PACKAGES_IS_ENABLED(options, CRUX)) {
|
||||
packageCounts->crux += getNumStrings(baseDir, "/var/lib/pkg/db", "\n\n", "crux");
|
||||
}
|
||||
if (FF_PACKAGES_IS_ENABLED(options, DPKG)) {
|
||||
packageCounts->dpkg += getNumStrings(baseDir, "/var/lib/dpkg/status", "Status: install ok installed", "dpkg");
|
||||
}
|
||||
|
||||
@@ -41,6 +41,7 @@ typedef enum FFPackagesFlags: uint64_t {
|
||||
FF_PACKAGES_FLAG_CARDS_BIT = UINT64_C(1) << 34U,
|
||||
FF_PACKAGES_FLAG_PORG_BIT = UINT64_C(1) << 35U,
|
||||
FF_PACKAGES_FLAG_INSTALLRELEASE_BIT = UINT64_C(1) << 36U,
|
||||
FF_PACKAGES_FLAG_CRUX_BIT = UINT64_C(1) << 37U,
|
||||
} FFPackagesFlags;
|
||||
static_assert(sizeof(FFPackagesFlags) == sizeof(uint64_t), "");
|
||||
|
||||
|
||||
@@ -63,6 +63,7 @@ bool ffPrintPackages(FFPackagesOptions* options) {
|
||||
}
|
||||
FF_PRINT_PACKAGE(cards)
|
||||
FF_PRINT_PACKAGE(choco)
|
||||
FF_PRINT_PACKAGE(crux)
|
||||
FF_PRINT_PACKAGE(dpkg)
|
||||
FF_PRINT_PACKAGE(emerge)
|
||||
FF_PRINT_PACKAGE(eopkg)
|
||||
@@ -154,6 +155,7 @@ bool ffPrintPackages(FFPackagesOptions* options) {
|
||||
FF_ARG(counts.brewCask, "brew-cask"),
|
||||
FF_ARG(counts.cards, "cards"),
|
||||
FF_ARG(counts.choco, "choco"),
|
||||
FF_ARG(counts.choco, "crux"),
|
||||
FF_ARG(counts.dpkg, "dpkg"),
|
||||
FF_ARG(counts.emerge, "emerge"),
|
||||
FF_ARG(counts.eopkg, "eopkg"),
|
||||
@@ -257,6 +259,7 @@ void ffParsePackagesJsonObject(FFPackagesOptions* options, yyjson_val* module) {
|
||||
;
|
||||
FF_TEST_PACKAGE_NAME(CARDS)
|
||||
FF_TEST_PACKAGE_NAME(CHOCO)
|
||||
FF_TEST_PACKAGE_NAME(CRUX)
|
||||
break;
|
||||
case 'D':
|
||||
if (false)
|
||||
@@ -390,6 +393,7 @@ void ffGeneratePackagesJsonConfig(FFPackagesOptions* options, yyjson_mut_doc* do
|
||||
FF_TEST_PACKAGE_NAME(BREW)
|
||||
FF_TEST_PACKAGE_NAME(CARDS)
|
||||
FF_TEST_PACKAGE_NAME(CHOCO)
|
||||
FF_TEST_PACKAGE_NAME(CRUX)
|
||||
FF_TEST_PACKAGE_NAME(DPKG)
|
||||
FF_TEST_PACKAGE_NAME(EMERGE)
|
||||
FF_TEST_PACKAGE_NAME(EOPKG)
|
||||
@@ -451,6 +455,7 @@ bool ffGeneratePackagesJsonResult(FFPackagesOptions* options, yyjson_mut_doc* do
|
||||
FF_APPEND_PACKAGE_COUNT(brewCask)
|
||||
FF_APPEND_PACKAGE_COUNT(cards)
|
||||
FF_APPEND_PACKAGE_COUNT(choco)
|
||||
FF_APPEND_PACKAGE_COUNT(crux)
|
||||
FF_APPEND_PACKAGE_COUNT(dpkg)
|
||||
FF_APPEND_PACKAGE_COUNT(emerge)
|
||||
FF_APPEND_PACKAGE_COUNT(eopkg)
|
||||
@@ -549,6 +554,7 @@ FFModuleBaseInfo ffPackagesModuleInfo = {
|
||||
{ "Number of brew-cask packages", "brew-cask" },
|
||||
{ "Number of cards packages", "cards" },
|
||||
{ "Number of choco packages", "choco" },
|
||||
{ "Number of crux packages", "crux" },
|
||||
{ "Number of dpkg packages", "dpkg" },
|
||||
{ "Number of emerge packages", "emerge" },
|
||||
{ "Number of eopkg packages", "eopkg" },
|
||||
|
||||
Reference in New Issue
Block a user