Bug 1218422 - Can't build hyprland plugins due to improper header locations
Summary: Can't build hyprland plugins due to improper header locations
Status: NEW
Alias: None
Product: openSUSE Tumbleweed
Classification: openSUSE
Component: Development (show other bugs)
Version: Current
Hardware: Other openSUSE Tumbleweed
: P5 - None : Normal (vote)
Target Milestone: ---
Assignee: Florian
QA Contact: E-mail List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-12-27 20:27 UTC by John Doe
Modified: 2024-05-11 14:36 UTC (History)
3 users (show)

See Also:
Found By: ---
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description John Doe 2023-12-27 20:27:17 UTC
I cannot build the plugins for Hyprland due to the improper locations of headers. When building hyprbars for hyprland it expects <wlr/util/transform.h> but the full path of the file is /usr/include/hyprland/wlroots. I'm guessing it expects it to be /usr/include/hyprland/wlr with the pkgconfig parameter inclduing -I/usr/include/hyprland

What I did to fix this issue is create a symlink /usr/include/hyprland/wlr that points to /usr/include/hyprland/wlroots and add -I${includedir}/hyprland to the cflags in /usr/share/pkgconfig/hyprland.pc

After I do that the hyprbars plugin builds just fine.
Comment 1 John Doe 2023-12-27 20:37:16 UTC
This includes all the necessary changes to the Makefile and meson.build so that pkgconfig properly references all the headers needed to build hyprbars. This is not similar to Bug 1218411 because I updated "pkgconfig --cflags" with all the relevant development headers. I had to manually adjust /usr/share/pkgconfig/hyprland.pc with the proper location of the headers and symlink the needed directory as stated above in order to get it to build
Comment 2 John Doe 2023-12-27 20:56:30 UTC
upstream issue
Comment 3 John Doe 2023-12-27 20:58:47 UTC
Could be fixed though on openSUSE's end possibly in the meantime while waiting for upstream to fix it
Comment 4 John Doe 2023-12-27 21:37:09 UTC
Can confirm this is an opensuse issue. There is no wlr directory where it should be. On other distros like Fedora or Arch, there is a directory in /usr/include/hyprland/wlroots called "wlr" while the opensuse package of hyprland-devel does not have this. This causes the headers that are needed to build the plugin to be not found,

Link to show the files in the packages
https://archlinux.org/packages/extra/x86_64/hyprland/
https://packages.fedoraproject.org/pkgs/hyprland/hyprland-devel/fedora-rawhide.html#files
Comment 5 Michael K 2024-04-13 06:13:49 UTC
Me too.
hyprctl version doesn't show anything btw.:

Hyprland, built from branch  at commit  dirty ().
Date: 
Tag: 

flags: (if any)
Comment 6 Tom Mayr 2024-04-29 20:52:12 UTC
Same here for hyprland  0.39.1-52.3

hyprctl -j version
{
    "branch": "",
    "commit": "",
    "dirty": true,
    "commit_message": ""
    "commit_date": "",
    "tag": "",
    "commits": ,
    "flags": []
}