Bug 2385739
| Summary: | xdg-desktop-portal-hyprland: FTBFS in Fedora rawhide/f43 | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Fedora Release Engineering <releng> | ||||||||
| Component: | xdg-desktop-portal-hyprland | Assignee: | Orphan Owner <extras-orphan> | ||||||||
| Status: | CLOSED WONTFIX | QA Contact: | |||||||||
| Severity: | unspecified | Docs Contact: | |||||||||
| Priority: | unspecified | ||||||||||
| Version: | rawhide | CC: | awilliam, nighti, sandipan | ||||||||
| Target Milestone: | --- | ||||||||||
| Target Release: | --- | ||||||||||
| Hardware: | Unspecified | ||||||||||
| OS: | Unspecified | ||||||||||
| Whiteboard: | |||||||||||
| Fixed In Version: | Doc Type: | --- | |||||||||
| Doc Text: | Story Points: | --- | |||||||||
| Clone Of: | Environment: | ||||||||||
| Last Closed: | 2026-02-10 08:30:20 UTC | Type: | --- | ||||||||
| Regression: | --- | Mount Type: | --- | ||||||||
| Documentation: | --- | CRM: | |||||||||
| Verified Versions: | Category: | --- | |||||||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||||||
| Embargoed: | |||||||||||
| Bug Depends On: | |||||||||||
| Bug Blocks: | 2339432, 2384424 | ||||||||||
| Attachments: |
|
||||||||||
|
Description
Fedora Release Engineering
2025-07-31 12:48:22 UTC
Created attachment 2102099 [details]
build.log
Created attachment 2102100 [details]
root.log
file root.log too big, will only attach last 32768 bytes
Created attachment 2102101 [details]
state.log
The particular problem here seems to have been resolved by a new hyprlang build - hyprlang-0.6.4-3.fc43 . However, hyprland still fails to build on both F43 and F44, apparently due to changes in sdbus-cpp. F43 has sdbus-cpp 2.1.0, and the build fails with this as the first error:
FAILED: [code=1] CMakeFiles/xdg-desktop-portal-hyprland.dir/src/shared/Session.cpp.o
/usr/bin/g++ -DXDPH_VERSION=\"1.3.6\" -I/builddir/build/BUILD/xdg-desktop-portal-hyprland-1.3.6-build/xdg-desktop-portal-hyprland-1.3.6/. -I/builddir/build/BUILD/xdg-desktop-portal-hyprland-1.3.6-build/xdg-desktop-portal-hyprland-1.3.6/protocols -isystem /usr/include/pipewire-0.3 -isystem /usr/include/spa-0.2 -isystem /usr/include/libdrm -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -std=gnu++23 -O3 -Wall -Wextra -Wno-unused-parameter -Wno-unused-value -Wno-missing-field-initializers -Wno-narrowing -Wno-pointer-arith -fpermissive -Wno-address-of-temporary -D_REENTRANT -MD -MT CMakeFiles/xdg-desktop-portal-hyprland.dir/src/shared/Session.cpp.o -MF CMakeFiles/xdg-desktop-portal-hyprland.dir/src/shared/Session.cpp.o.d -o CMakeFiles/xdg-desktop-portal-hyprland.dir/src/shared/Session.cpp.o -c /builddir/build/BUILD/xdg-desktop-portal-hyprland-1.3.6-build/xdg-desktop-portal-hyprland-1.3.6/src/shared/Session.cpp
/builddir/build/BUILD/xdg-desktop-portal-hyprland-1.3.6-build/xdg-desktop-portal-hyprland-1.3.6/src/shared/Session.cpp: In function ‘std::unique_ptr<SDBusSession> createDBusSession(sdbus::ObjectPath)’:
/builddir/build/BUILD/xdg-desktop-portal-hyprland-1.3.6-build/xdg-desktop-portal-hyprland-1.3.6/src/shared/Session.cpp:39:23: error: ‘class sdbus::IObject’ has no member named ‘registerMethod’
39 | pSession->object->registerMethod("org.freedesktop.impl.portal.Session", "Close", "", "", [PSESSION](sdbus::MethodCall c) { onCloseSession(c, PSESSION); });
| ^~~~~~~~~~~~~~
/builddir/build/BUILD/xdg-desktop-portal-hyprland-1.3.6-build/xdg-desktop-portal-hyprland-1.3.6/src/shared/Session.cpp:41:23: error: ‘class sdbus::IObject’ has no member named ‘finishRegistration’
41 | pSession->object->finishRegistration();
| ^~~~~~~~~~~~~~~~~~
/builddir/build/BUILD/xdg-desktop-portal-hyprland-1.3.6-build/xdg-desktop-portal-hyprland-1.3.6/src/shared/Session.cpp: In function ‘std::unique_ptr<SDBusRequest> createDBusRequest(sdbus::ObjectPath)’:
/builddir/build/BUILD/xdg-desktop-portal-hyprland-1.3.6-build/xdg-desktop-portal-hyprland-1.3.6/src/shared/Session.cpp:54:23: error: ‘class sdbus::IObject’ has no member named ‘registerMethod’
54 | pRequest->object->registerMethod("org.freedesktop.impl.portal.Request", "Close", "", "", [PREQUEST](sdbus::MethodCall c) { onCloseRequest(c, PREQUEST); });
| ^~~~~~~~~~~~~~
/builddir/build/BUILD/xdg-desktop-portal-hyprland-1.3.6-build/xdg-desktop-portal-hyprland-1.3.6/src/shared/Session.cpp:56:23: error: ‘class sdbus::IObject’ has no member named ‘finishRegistration’
56 | pRequest->object->finishRegistration();
| ^~~~~~~~~~~~~~~~~~
See https://koji.fedoraproject.org/koji/taskinfo?taskID=139135541 for the full log.
On F44 sbus-cpp is now at 2.2.0 (which has an soname bump), and the first error in the build log is:
/builddir/build/BUILD/xdg-desktop-portal-hyprland-1.3.6-build/xdg-desktop-portal-hyprland-1.3.6/src/portals/GlobalShortcuts.cpp:138:58: error: no match for ‘operator=’ (operand types are ‘std::unordered_map<std::__cxx11::basic_string<char>, sdbus::Variant>::mapped_type’ {aka ‘sdbus::Variant’} and ‘const std::string’ {aka ‘const std::__cxx11::basic_string<char>’})
138 | shortcutData["description"] = PSHORTCUT->description;
| ^~~~~~~~~~~
/builddir/build/BUILD/xdg-desktop-portal-hyprland-1.3.6-build/xdg-desktop-portal-hyprland-1.3.6/src/portals/GlobalShortcuts.cpp:138:58: note: there are 2 candidates
In file included from /usr/include/sdbus-c++/ConvenienceApiClasses.h:32,
from /usr/include/sdbus-c++/IObject.h:30,
from /usr/include/sdbus-c++/sdbus-c++.h:28,
from /builddir/build/BUILD/xdg-desktop-portal-hyprland-1.3.6-build/xdg-desktop-portal-hyprland-1.3.6/src/portals/GlobalShortcuts.hpp:3,
from /builddir/build/BUILD/xdg-desktop-portal-hyprland-1.3.6-build/xdg-desktop-portal-hyprland-1.3.6/src/portals/GlobalShortcuts.cpp:1:
/usr/include/sdbus-c++/Types.h:56:11: note: candidate 1: ‘sdbus::Variant& sdbus::Variant::operator=(const sdbus::Variant&)’
56 | class Variant
| ^~~~~~~
/usr/include/sdbus-c++/Types.h:56:11: note: no known conversion for argument 1 from ‘const std::string’ {aka ‘const std::__cxx11::basic_string<char>’} to ‘const sdbus::Variant&’
/usr/include/sdbus-c++/Types.h:56:11: note: candidate 2: ‘sdbus::Variant& sdbus::Variant::operator=(sdbus::Variant&&)’
/usr/include/sdbus-c++/Types.h:56:11: note: no known conversion for argument 1 from ‘const std::string’ {aka ‘const std::__cxx11::basic_string<char>’} to ‘sdbus::Variant&&’
See https://koji.fedoraproject.org/koji/taskinfo?taskID=139135183 for the full logs.
The package is currently very outdated; it's 1.3.6, the latest release is 1.3.11. 1.3.11 does seem to look for a newer sdbus-cpp, so maybe it's intended to adjust to the upstream changes:
-- Checking for module 'sdbus-c++>=2.0.0'
However, building it (on F44) fails in a different way:
[3/36] cd /builddir/build/BUILD/xdg-desktop-portal-hyprland-1.3.11-build/xdg-desktop-portal-hyprland-1.3.11 && hyprwayland-scanner --client /usr/share/hyprland-protocols/protocols/hyprland-toplevel-mapping-v1.xml /builddir/build/BUILD/xdg-desktop-portal-hyprland-1.3.11-build/xdg-desktop-portal-hyprland-1.3.11/protocols/
FAILED: [code=1] /builddir/build/BUILD/xdg-desktop-portal-hyprland-1.3.11-build/xdg-desktop-portal-hyprland-1.3.11/protocols/hyprland-toplevel-mapping-v1.cpp /builddir/build/BUILD/xdg-desktop-portal-hyprland-1.3.11-build/xdg-desktop-portal-hyprland-1.3.11/protocols/hyprland-toplevel-mapping-v1.hpp
cd /builddir/build/BUILD/xdg-desktop-portal-hyprland-1.3.11-build/xdg-desktop-portal-hyprland-1.3.11 && hyprwayland-scanner --client /usr/share/hyprland-protocols/protocols/hyprland-toplevel-mapping-v1.xml /builddir/build/BUILD/xdg-desktop-portal-hyprland-1.3.11-build/xdg-desktop-portal-hyprland-1.3.11/protocols/
Couldn't load proto
I assume it needs other bits of the hyprland ecosystem to be updated too, probably hyprland-protocols . But I'm not actually interested in hyprland. The person this bug is assigned to seems to be the most recent person to take an interest in it; if they aren't interested in fixing this up any more, it will eventually get orphaned and retired. Also CCing Sandipan, who built hyprlang, as I guess they might be interested too. I hope I got the right account, there are two for Sandipan Roy, I'm aiming for https://fedoraproject.org/wiki/User:Bytehackr :D
This package has changed maintainer in Fedora. Reassigning to the new maintainer of this component. Automation has figured out the package is retired in rawhide. If you like it to be unretired, please open a ticket at https://pagure.io/releng/new_issue?template=package_unretirement |