master ohmu/fastfetch-openbsd / src / detection / packages / packages_sunos.c
ohmu  ·  2026-10-15
 1#include "packages.h"
 2#include <dirent.h>
 3
 4void ffDetectPackagesImpl(FFPackagesResult* result, FFPackagesOptions* options) {
 5    if (FF_PACKAGES_IS_ENABLED(options, PKG)) {
 6        yyjson_doc* doc = yyjson_read_file(FASTFETCH_TARGET_DIR_ROOT "/var/pkg/state/installed/catalog.attrs", YYJSON_READ_NOFLAG, nullptr, nullptr);
 7        if (doc) {
 8            yyjson_val* packageCount = yyjson_obj_get(yyjson_doc_get_root(doc), "package-count");
 9            if (packageCount) {
10                result->pkg = (uint32_t) yyjson_get_uint(packageCount);
11            }
12        }
13    }
14    if (FF_PACKAGES_IS_ENABLED(options, PKGSRC)) {
15        result->pkgsrc = ffPackagesGetNumElements(FASTFETCH_TARGET_DIR_ROOT "/usr/pkg/pkgdb", true);
16    }
17}