V Thu, Apr 10, 2025 at 12:30:48PM +0200, Marek Blaha napsal(a):
> Hi,
> 
> I'm working with Jonathan on releasing version 2 of the sdbus-cpp
> library to Fedora. To do this properly, I planned to create a side
> tag, build the updated library and dependent packages which I maintain
> there, then notify fedora-devel about the SONAME bump and ask
> maintainers of dependent packages to update their code accordingly.
> Here is the PR with sdbus-cpp update -
> https://src.fedoraproject.org/rpms/sdbus-cpp/pull-request/3 .
> 
> That was the plan - but I’ve run into an issue because dnf5 depends on
> sdbus-cpp, and I haven't been able to successfully build dnf5 in the
> side tag:
> 
> - My first attempt included only sdbus-cpp-2.1.0-1.fc43 in the side
> tag. This failed early with:
>    "FAILED: BuildrootError: could not init mock buildroot, mock exited
> with status 30"  (see
> https://koji.fedoraproject.org/koji/taskinfo?taskID=131320002). The
> problem seems to be that mock tries to install dnf5 into the
> buildroot, but dnf5 requires libsdbus-c++.so.1()(64bit), which isn’t
> available anymore due to the SONAME bump.
> 
> - Then (perhaps naively), I tried tagging the older sdbus-cpp-1 into
> the side tag to get the buildroot working. This allowed
> initialization, but it meant the outdated version of sdbus-cpp was
> used when building dnf5, rather than the intended sdbus-cpp-2.1.0. See
> the cancelled build
> https://koji.fedoraproject.org/koji/taskinfo?taskID=131320572 .
> 
> So my question is:
> Is there a recommended way to initialize a side-tag buildroot without
> pulling in dnf5? Or is there a better approach to rebuilding dnf5 and
> its updated dependencies within a side tag?
>
It looks you are rebasing sdbus-cpp.

Then either bundle the old library into the rebased package at build time.
I.e. in sdbus-cpp.spec do:
    
    BuildRequires: sdbus-cpp
    install %{_libdir}/libsdbus-c++.so.1.so %{buildroot}%{_libdir}

Or create a new compatibility sdbus-cpp1 package by copying it from the old
sdbus-cpp.spec and then rebase sdbus-cpp. Compatibility packages are exempt
from package reviews.

That latter approach is better if you expect that porting dependent packages
will take nontrivial time.

-- Petr

Attachment: signature.asc
Description: PGP signature

-- 
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue

Reply via email to