static PyObject* Archive_get_package(ArchiveObject* self) {
Pakfire pakfire = pakfire_archive_get_pakfire(self->archive);
- PakfireRepo repo = pakfire_repo_create(pakfire, "@dummy");
+ PakfireRepo repo = pakfire_get_repo(pakfire, "@dummy");
if (!repo)
return NULL;
PAKFIRE_EXPORT char* pakfire_archive_extraction_path(PakfireArchive archive, const char* target) {
char prefix[PATH_MAX];
- PakfireRepo repo = pakfire_repo_create(archive->pakfire, "@dummy");
+ PakfireRepo repo = pakfire_get_repo(archive->pakfire, "@dummy");
+ if (!repo)
+ return NULL;
// Read package metadata
PakfirePackage pkg = pakfire_archive_make_package(archive, repo);
return r;
}
- PakfireRepo repo = pakfire_repo_create(pakfire, "@dummy");
+ PakfireRepo repo = pakfire_get_repo(pakfire, "@dummy");
if (!repo)
goto ERROR;
static int pakfire_populate_pool(Pakfire pakfire) {
struct pakfire_db* db;
PakfireRepo repo = NULL;
+ PakfireRepo dummy = NULL;
int r;
// Initialize the pool
if (r)
goto ERROR;
+ // Create a dummy repository
+ dummy = pakfire_repo_create(pakfire, "@dummy");
+ if (!dummy)
+ goto ERROR;
+
+ // Disable the repository
+ pakfire_repo_set_enabled(dummy, 0);
+
// Create the system repository
repo = pakfire_repo_create(pakfire, "@system");
if (!repo)
goto ERROR;
ERROR:
- // Cleanup
if (db)
pakfire_db_unref(db);
-
if (repo)
pakfire_repo_unref(repo);
+ if (dummy)
+ pakfire_repo_unref(dummy);
return r;
}
int i;
FOR_REPOS(i, solv_repo) {
+ // Skip the dummy repository
+ if (strcmp(solv_repo->name, "@dummy") == 0)
+ continue;
+
PakfireRepo repo = pakfire_repo_create_from_repo(pakfire, solv_repo);
if (!repo) {
r = 1;
static int test_add_package(const struct test* t) {
struct pakfire_db* db;
- PakfireRepo repo = pakfire_repo_create(t->pakfire, "@dummy");
+ PakfireRepo repo = pakfire_get_repo(t->pakfire, "@dummy");
ASSERT(repo);
int r = pakfire_db_open(&db, t->pakfire, PAKFIRE_DB_READWRITE);