From fa75b28efef79a68106c5dcc1f1e7bfdeff0ef5a Mon Sep 17 00:00:00 2001 From: Mihai Moldovan Date: Tue, 29 Sep 2020 18:30:16 +0200 Subject: [PATCH] [PATCH] Set the default disttype to RPM. On "foreign" systems, including Debian, libsolv tries to be smart and default to the native packaging system type. We need to explicitly override it to use RPM for dnf to work. Gbp-Pq: Name 0003-Set-the-default-disttype-to-RPM.patch --- libdnf/dnf-sack.cpp | 1 + tests/hawkey/test_iutil.cpp | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/libdnf/dnf-sack.cpp b/libdnf/dnf-sack.cpp index 6a43f01..36f4a92 100644 --- a/libdnf/dnf-sack.cpp +++ b/libdnf/dnf-sack.cpp @@ -186,6 +186,7 @@ dnf_sack_init(DnfSack *sack) DnfSackPrivate *priv = GET_PRIVATE(sack); priv->pool = pool_create(); pool_set_flag(priv->pool, POOL_FLAG_WHATPROVIDESWITHDISABLED, 1); + pool_setdisttype(priv->pool, DISTTYPE_RPM); priv->running_kernel_id = -1; priv->running_kernel_fn = running_kernel; priv->considered_uptodate = TRUE; diff --git a/tests/hawkey/test_iutil.cpp b/tests/hawkey/test_iutil.cpp index 8d00cc9..0ca1280 100644 --- a/tests/hawkey/test_iutil.cpp +++ b/tests/hawkey/test_iutil.cpp @@ -150,6 +150,13 @@ END_TEST START_TEST(test_version_split) { Pool *pool = pool_create(); + + /* + * On "foreign" systems, the disttype will + * not default to RPM. Set this explicitly. + */ + fail_if(-1 == pool_setdisttype(pool, DISTTYPE_RPM)); + char evr[] = "1:5.9.3-8"; char *epoch, *version, *release; -- 2.30.2