Skip to content

Commit 7fab6f2

Browse files
committed
Packages (BSD): support mport
1 parent 7d406bb commit 7fab6f2

File tree

4 files changed

+14
-5
lines changed

4 files changed

+14
-5
lines changed

src/detection/packages/packages.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,17 +25,18 @@ typedef struct FFPackagesResult
2525
uint32_t nixUser;
2626
uint32_t opkg;
2727
uint32_t pacman;
28+
uint32_t pacstall;
2829
uint32_t paludis;
2930
uint32_t pkg;
3031
uint32_t pkgtool;
3132
uint32_t macports;
33+
uint32_t mport;
3234
uint32_t rpm;
3335
uint32_t scoop;
3436
uint32_t snap;
3537
uint32_t sorcery;
3638
uint32_t winget;
3739
uint32_t xbps;
38-
uint32_t pacstall;
3940

4041
uint32_t all; //Make sure this goes last
4142

src/detection/packages/packages_bsd.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ static uint32_t getSQLite3Int(const char* dbPath, const char* query, const char*
2121
void ffDetectPackagesImpl(FFPackagesResult* result, FFPackagesOptions* options)
2222
{
2323
if (!(options->disabled & FF_PACKAGES_FLAG_PKG_BIT))
24-
{
2524
result->pkg = getSQLite3Int(FASTFETCH_TARGET_DIR_ROOT "/var/db/pkg/local.sqlite", "SELECT count(*) FROM packages", "pkg");
26-
}
25+
if (!(options->disabled & FF_PACKAGES_FLAG_MPORT_BIT))
26+
result->mport = getSQLite3Int(FASTFETCH_TARGET_DIR_ROOT "/var/db/mport/master.db", "SELECT count(*) FROM packages", "mport");
2727
}

src/modules/packages/option.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ typedef enum FFPackagesFlags
3333
FF_PACKAGES_FLAG_GUIX_BIT = 1 << 23,
3434
FF_PACKAGES_FLAG_LINGLONG_BIT = 1 << 24,
3535
FF_PACKAGES_FLAG_PACSTALL_BIT = 1 << 25,
36+
FF_PACKAGES_FLAG_MPORT_BIT = 1 << 26,
3637
} FFPackagesFlags;
3738

3839
typedef struct FFPackagesOptions

src/modules/packages/packages.c

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
#include "modules/packages/packages.h"
55
#include "util/stringUtils.h"
66

7-
#define FF_PACKAGES_NUM_FORMAT_ARGS 38
7+
#define FF_PACKAGES_NUM_FORMAT_ARGS 39
88

99
void ffPrintPackages(FFPackagesOptions* options)
1010
{
@@ -73,6 +73,7 @@ void ffPrintPackages(FFPackagesOptions* options)
7373
FF_PRINT_PACKAGE_NAME(guixHome, "guix-home")
7474
FF_PRINT_PACKAGE(linglong)
7575
FF_PRINT_PACKAGE(pacstall)
76+
FF_PRINT_PACKAGE(mport)
7677

7778
putchar('\n');
7879
}
@@ -117,6 +118,7 @@ void ffPrintPackages(FFPackagesOptions* options)
117118
FF_FORMAT_ARG(counts.guixHome, "guix-home"),
118119
FF_FORMAT_ARG(counts.linglong, "linglong"),
119120
FF_FORMAT_ARG(counts.pacstall, "pacstall"),
121+
FF_FORMAT_ARG(counts.mport, "mport"),
120122
FF_FORMAT_ARG(nixAll, "nix-all"),
121123
FF_FORMAT_ARG(flatpakAll, "flatpak-all"),
122124
FF_FORMAT_ARG(brewAll, "brew-all"),
@@ -179,6 +181,7 @@ bool ffParsePackagesCommandOptions(FFPackagesOptions* options, const char* key,
179181
break;
180182
case 'M': if (false);
181183
FF_TEST_PACKAGE_NAME(MACPORTS)
184+
FF_TEST_PACKAGE_NAME(MPORT)
182185
break;
183186
case 'N': if (false);
184187
FF_TEST_PACKAGE_NAME(NIX)
@@ -279,7 +282,7 @@ void ffParsePackagesJsonObject(FFPackagesOptions* options, yyjson_val* module)
279282
case 'F': if (false);
280283
FF_TEST_PACKAGE_NAME(FLATPAK)
281284
break;
282-
case 'G': if (false);
285+
case 'G': if (false);
283286
FF_TEST_PACKAGE_NAME(GUIX)
284287
break;
285288
case 'L': if (false);
@@ -289,6 +292,7 @@ void ffParsePackagesJsonObject(FFPackagesOptions* options, yyjson_val* module)
289292
break;
290293
case 'M': if (false);
291294
FF_TEST_PACKAGE_NAME(MACPORTS)
295+
FF_TEST_PACKAGE_NAME(MPORT)
292296
break;
293297
case 'N': if (false);
294298
FF_TEST_PACKAGE_NAME(NIX)
@@ -353,6 +357,7 @@ void ffGeneratePackagesJsonConfig(FFPackagesOptions* options, yyjson_mut_doc* do
353357
FF_TEST_PACKAGE_NAME(LPKG)
354358
FF_TEST_PACKAGE_NAME(LPKGBUILD)
355359
FF_TEST_PACKAGE_NAME(MACPORTS)
360+
FF_TEST_PACKAGE_NAME(MPORT)
356361
FF_TEST_PACKAGE_NAME(NIX)
357362
FF_TEST_PACKAGE_NAME(OPKG)
358363
FF_TEST_PACKAGE_NAME(PACMAN)
@@ -418,6 +423,7 @@ void ffGeneratePackagesJsonResult(FF_MAYBE_UNUSED FFPackagesOptions* options, yy
418423
FF_APPEND_PACKAGE_COUNT(guixHome)
419424
FF_APPEND_PACKAGE_COUNT(linglong)
420425
FF_APPEND_PACKAGE_COUNT(pacstall)
426+
FF_APPEND_PACKAGE_COUNT(mport)
421427
yyjson_mut_obj_add_strbuf(doc, obj, "pacmanBranch", &counts.pacmanBranch);
422428
}
423429

@@ -458,6 +464,7 @@ void ffPrintPackagesHelpFormat(void)
458464
"Number of guix-home packages - guix-home",
459465
"Number of linglong packages - linglong",
460466
"Number of pacstall packages - pacstall",
467+
"Number of mport packages - mport",
461468
"Total number of all nix packages - nix-all",
462469
"Total number of all flatpak app packages - flatpak-all",
463470
"Total number of all brew packages - brew-all",

0 commit comments

Comments
 (0)