1212#include <sys/stat.h>
1313
1414#define FF_PACKAGES_MODULE_NAME "Packages"
15- #define FF_PACKAGES_NUM_FORMAT_ARGS 12
15+ #define FF_PACKAGES_NUM_FORMAT_ARGS 13
1616
1717typedef struct PackageCounts
1818{
@@ -23,9 +23,9 @@ typedef struct PackageCounts
2323 uint32_t xbps ;
2424 uint32_t nixSystem ;
2525 uint32_t nixDefault ;
26+ uint32_t apk ;
2627 uint32_t flatpak ;
2728 uint32_t snap ;
28- uint32_t apk ;
2929
3030 FFstrbuf pacmanBranch ;
3131} PackageCounts ;
@@ -249,11 +249,6 @@ static void getPackageCounts(const FFinstance* instance, FFstrbuf* baseDir, Pack
249249 packageCounts -> xbps += getXBPS (baseDir );
250250 ffStrbufSubstrBefore (baseDir , baseDirLength );
251251
252- //flatpak
253- ffStrbufAppendS (baseDir , "/var/lib/flatpak/app" );
254- packageCounts -> flatpak += getNumElements (baseDir -> chars , DT_DIR );
255- ffStrbufSubstrBefore (baseDir , baseDirLength );
256-
257252 //nix system
258253 ffStrbufAppendS (baseDir , "/run/current-system" );
259254 packageCounts -> nixSystem += getNixPackages (baseDir -> chars );
@@ -264,18 +259,23 @@ static void getPackageCounts(const FFinstance* instance, FFstrbuf* baseDir, Pack
264259 packageCounts -> nixDefault += getNixPackages (baseDir -> chars );
265260 ffStrbufSubstrBefore (baseDir , baseDirLength );
266261
262+ //apk
263+ ffStrbufAppendS (baseDir , "/lib/apk/db/installed" );
264+ packageCounts -> apk += getNumStrings (baseDir -> chars , "C:Q" );
265+ ffStrbufSubstrBefore (baseDir , baseDirLength );
266+
267+ //flatpak
268+ ffStrbufAppendS (baseDir , "/var/lib/flatpak/app" );
269+ packageCounts -> flatpak += getNumElements (baseDir -> chars , DT_DIR );
270+ ffStrbufSubstrBefore (baseDir , baseDirLength );
271+
267272 //snap
268273 ffStrbufAppendS (baseDir , "/snap" );
269274 uint32_t snap = getNumElements (baseDir -> chars , DT_DIR );
270275 if (snap > 0 )
271276 packageCounts -> snap += (snap - 1 ); //Accounting for the /snap/bin folder
272277 ffStrbufSubstrBefore (baseDir , baseDirLength );
273278
274- //apk
275- ffStrbufAppendS (baseDir , "/lib/apk/db/installed" );
276- packageCounts -> apk += getNumStrings (baseDir -> chars , "C:Q" );
277- ffStrbufSubstrBefore (baseDir , baseDirLength );
278-
279279 //pacman branch
280280 ffStrbufAppendS (baseDir , "/etc/pacman-mirrors.conf" );
281281 if (ffParsePropFile (baseDir -> chars , "Branch =" , & packageCounts -> pacmanBranch ) && packageCounts -> pacmanBranch .length == 0 )
@@ -343,7 +343,7 @@ void ffPrintPackages(FFinstance* instance)
343343
344344 ffStrbufDestroy (& baseDir );
345345
346- uint32_t all = counts .pacman + counts .dpkg + counts .rpm + counts .emerge + counts .xbps + counts .nixSystem + nixUser + counts .nixDefault + counts .flatpak + counts .snap + counts .apk ;
346+ uint32_t all = counts .pacman + counts .dpkg + counts .rpm + counts .emerge + counts .xbps + counts .nixSystem + nixUser + counts .nixDefault + counts .apk + counts .flatpak + counts .snap ;
347347 if (all == 0 )
348348 {
349349 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)
397397 printf (", " );
398398 }
399399
400+ FF_PRINT_PACKAGE (apk )
400401 FF_PRINT_PACKAGE (flatpak )
401402 FF_PRINT_PACKAGE (snap )
402- FF_PRINT_PACKAGE (apk )
403403
404404 //Fix linter warning of unused value of all
405405 (void ) all ;
@@ -421,6 +421,7 @@ void ffPrintPackages(FFinstance* instance)
421421 {FF_FORMAT_ARG_TYPE_UINT , & counts .nixSystem },
422422 {FF_FORMAT_ARG_TYPE_UINT , & nixUser },
423423 {FF_FORMAT_ARG_TYPE_UINT , & counts .nixDefault },
424+ {FF_FORMAT_ARG_TYPE_UINT , & counts .apk },
424425 {FF_FORMAT_ARG_TYPE_UINT , & counts .flatpak },
425426 {FF_FORMAT_ARG_TYPE_UINT , & counts .snap }
426427 });
0 commit comments