This commit is contained in:
Mars 2025-05-04 15:45:54 -04:00
parent a9655c7085
commit e83d659090
Signed by: pupbrained
GPG key ID: 0FF5B8826803F895
4 changed files with 11 additions and 12 deletions

27
src/os/haiku/package.cpp Normal file
View file

@ -0,0 +1,27 @@
#ifdef __HAIKU__
// clang-format off
#include "src/core/package.hpp"
#include <os/package/PackageDefs.h> // BPackageKit::BPackageInfoSet
#include <os/package/PackageInfoSet.h> // BPackageKit::BPackageInfo
#include <os/package/PackageRoster.h> // BPackageKit::BPackageRoster
#include "src/util/defs.hpp"
// clang-format on
namespace package {
fn GetPackageCount() -> Result<u64, DracError> {
BPackageKit::BPackageRoster roster;
BPackageKit::BPackageInfoSet packageList;
const status_t status = roster.GetActivePackages(BPackageKit::B_PACKAGE_INSTALLATION_LOCATION_SYSTEM, packageList);
if (status != B_OK)
return Err(DracError(DracErrorCode::ApiUnavailable, "Failed to get active package list"));
return static_cast<u64>(packageList.CountInfos());
}
} // namespace package
#endif // __HAIKU__