Provide apk count to package format string

This commit is contained in:
Linus Dierheimer
2022-08-18 22:02:21 +02:00
parent c74b34aa39
commit 112e83b7c3
3 changed files with 19 additions and 18 deletions
+1 -1
View File
@@ -303,4 +303,4 @@
#--lib-egl /usr/lib/libEGL.so
#--lib-glx /usr/lib/libGLX.so
#--lib-osmesa /usr/lib/libOSMesa.so
#--lib-opencl /usr/lib/libOpenCL.so
#--lib-opencl /usr/lib/libOpenCL.so
+3 -3
View File
@@ -107,7 +107,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} (xbps), {8} (nix-user), {9} (nix-default), {10} (flatpak), {11} (snap), {12} (apk)", 12,
constructAndPrintCommandHelpFormat("packages", "{2} (pacman){?3}[{3}]{?}, {4} (dpkg), {5} (rpm), {6} (emerge), {7} (xbps), {8} (nix-system), {9} (nix-user), {10} (nix-default), {11} (apk), {12} (flatpak), {13} (snap)", 13,
"Number of all packages",
"Number of pacman packages",
"Pacman branch on manjaro",
@@ -118,9 +118,9 @@ static inline void printCommandHelp(const char* command)
"Number of nix-system packages",
"Number of nix-user packages",
"Number of nix-default packages",
"Number of apk packages",
"Number of flatpak packages",
"Number of snap packages",
"Number of apk packages"
"Number of snap packages"
);
}
else if(strcasecmp(command, "shell-format") == 0)
+15 -14
View File
@@ -12,7 +12,7 @@
#include <sys/stat.h>
#define FF_PACKAGES_MODULE_NAME "Packages"
#define FF_PACKAGES_NUM_FORMAT_ARGS 12
#define FF_PACKAGES_NUM_FORMAT_ARGS 13
typedef struct PackageCounts
{
@@ -23,9 +23,9 @@ typedef struct PackageCounts
uint32_t xbps;
uint32_t nixSystem;
uint32_t nixDefault;
uint32_t apk;
uint32_t flatpak;
uint32_t snap;
uint32_t apk;
FFstrbuf pacmanBranch;
} PackageCounts;
@@ -249,11 +249,6 @@ static void getPackageCounts(const FFinstance* instance, FFstrbuf* baseDir, Pack
packageCounts->xbps += getXBPS(baseDir);
ffStrbufSubstrBefore(baseDir, baseDirLength);
//flatpak
ffStrbufAppendS(baseDir, "/var/lib/flatpak/app");
packageCounts->flatpak += getNumElements(baseDir->chars, DT_DIR);
ffStrbufSubstrBefore(baseDir, baseDirLength);
//nix system
ffStrbufAppendS(baseDir, "/run/current-system");
packageCounts->nixSystem += getNixPackages(baseDir->chars);
@@ -264,6 +259,16 @@ static void getPackageCounts(const FFinstance* instance, FFstrbuf* baseDir, Pack
packageCounts->nixDefault += getNixPackages(baseDir->chars);
ffStrbufSubstrBefore(baseDir, baseDirLength);
//apk
ffStrbufAppendS(baseDir, "/lib/apk/db/installed");
packageCounts->apk += getNumStrings(baseDir->chars, "C:Q");
ffStrbufSubstrBefore(baseDir, baseDirLength);
//flatpak
ffStrbufAppendS(baseDir, "/var/lib/flatpak/app");
packageCounts->flatpak += getNumElements(baseDir->chars, DT_DIR);
ffStrbufSubstrBefore(baseDir, baseDirLength);
//snap
ffStrbufAppendS(baseDir, "/snap");
uint32_t snap = getNumElements(baseDir->chars, DT_DIR);
@@ -271,11 +276,6 @@ static void getPackageCounts(const FFinstance* instance, FFstrbuf* baseDir, Pack
packageCounts->snap += (snap - 1); //Accounting for the /snap/bin folder
ffStrbufSubstrBefore(baseDir, baseDirLength);
//apk
ffStrbufAppendS(baseDir, "/lib/apk/db/installed");
packageCounts->apk += getNumStrings(baseDir->chars, "C:Q");
ffStrbufSubstrBefore(baseDir, baseDirLength);
//pacman branch
ffStrbufAppendS(baseDir, "/etc/pacman-mirrors.conf");
if(ffParsePropFile(baseDir->chars, "Branch =", &packageCounts->pacmanBranch) && packageCounts->pacmanBranch.length == 0)
@@ -343,7 +343,7 @@ void ffPrintPackages(FFinstance* instance)
ffStrbufDestroy(&baseDir);
uint32_t all = counts.pacman + counts.dpkg + counts.rpm + counts.emerge + counts.xbps + counts.nixSystem + nixUser + counts.nixDefault + counts.flatpak + counts.snap + counts.apk;
uint32_t all = counts.pacman + counts.dpkg + counts.rpm + counts.emerge + counts.xbps + counts.nixSystem + nixUser + counts.nixDefault + counts.apk + counts.flatpak + counts.snap;
if(all == 0)
{
ffPrintError(instance, FF_PACKAGES_MODULE_NAME, 0, &instance->config.packages, "No packages from known package managers found");
@@ -397,9 +397,9 @@ void ffPrintPackages(FFinstance* instance)
printf(", ");
}
FF_PRINT_PACKAGE(apk)
FF_PRINT_PACKAGE(flatpak)
FF_PRINT_PACKAGE(snap)
FF_PRINT_PACKAGE(apk)
//Fix linter warning of unused value of all
(void) all;
@@ -421,6 +421,7 @@ void ffPrintPackages(FFinstance* instance)
{FF_FORMAT_ARG_TYPE_UINT, &counts.nixSystem},
{FF_FORMAT_ARG_TYPE_UINT, &nixUser},
{FF_FORMAT_ARG_TYPE_UINT, &counts.nixDefault},
{FF_FORMAT_ARG_TYPE_UINT, &counts.apk},
{FF_FORMAT_ARG_TYPE_UINT, &counts.flatpak},
{FF_FORMAT_ARG_TYPE_UINT, &counts.snap}
});