GNU bug report logs - #59434
[PATCH] gnu: Add hyprland.

Previous Next

Package: guix-patches;

Reported by: Adam Faiz <adam.faiz <at> disroot.org>

Date: Mon, 21 Nov 2022 05:54:02 UTC

Severity: normal

Tags: patch

Done: John Kehayias <john.kehayias <at> protonmail.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 59434 in the body.
You can then email your comments to 59434 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#59434; Package guix-patches. (Mon, 21 Nov 2022 05:54:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Adam Faiz <adam.faiz <at> disroot.org>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Mon, 21 Nov 2022 05:54:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Adam Faiz <adam.faiz <at> disroot.org>
To: guix-patches <at> gnu.org
Subject: [PATCH] gnu: Add hyprland.
Date: Mon, 21 Nov 2022 13:53:44 +0800
From a8f78a0b951cce3ab4c03b3f1e61b1b95d93c723 Mon Sep 17 00:00:00 2001
From: AwesomeAdam54321 <adam.faiz <at> disroot.org>
Date: Mon, 21 Nov 2022 13:29:16 +0800
Subject: [PATCH] gnu: Add hyprland.

* gnu/packages/wm.scm (hyprland): New variable.
---
 gnu/packages/wm.scm | 44 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 44 insertions(+)

diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index c87a616ed9..c2b567bd62 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -107,6 +107,7 @@ (define-module (gnu packages wm)
   #:use-module (gnu packages freedesktop)
   #:use-module (gnu packages fribidi)
   #:use-module (gnu packages gawk)
+  #:use-module (gnu packages gcc)
   #:use-module (gnu packages gl)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gperf)
@@ -2723,6 +2724,49 @@ (define-public hikari
 capabilities.  It is heavily inspired by the Calm Window manager(cwm).")
     (license license:bsd-2)))

+(define-public hyprland
+  (package
+    (name "hyprland")
+    (version "0.18.0beta")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/hyprwm/Hyprland")
+             (commit (string-append "v"version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1sbf12mqvgqpjfw4bni4p2gk2djnh49fwzki4dnsyq4ykcp7x6hb"))
+       (modules '((guix build utils)))
+       (snippet
+        #~(begin
+            ;; Unbundle dependencies and add it to the dependency list
+            (delete-file-recursively "subprojects")
+            (substitute* "CMakeLists.txt"
+              ((".*subprojects/wlroots/.*") "")
+              (("libinput)") "libinput wlroots)"))))))
+    (build-system cmake-build-system)
+    (native-inputs
+     (list pkg-config gcc-12))
+    (inputs
+     (list wayland
+           wayland-protocols
+           cairo
+           pango
+           libdrm
+           egl-wayland
+           libxkbcommon
+           libinput
+           wlroots))
+    (home-page "https://www.hyprland.org/")
+    (synopsis "Dynamic tiling Wayland compositor based on wlroots")
+    (description
+     "Hyprland is a dynamic tiling Wayland compositor based on wlroots
+that doesn't sacrifice on its looks. It supports multiple layouts,
+fancy effects, has a very flexible IPC model allowing for a lot of
+customization, and more. ")
+    (license license:bsd-3)))
+
 (define-public devour
   (package
     (name "devour")
-- 
2.38.1




Information forwarded to guix-patches <at> gnu.org:
bug#59434; Package guix-patches. (Tue, 27 Dec 2022 18:21:02 GMT) Full text and rfc822 format available.

Message #8 received at 59434 <at> debbugs.gnu.org (full text, mbox):

From: Ricardo Wurmus <rekado <at> elephly.net>
To: 59434 <at> debbugs.gnu.org
Subject: [PATCH] gnu: Add hyprland.
Date: Tue, 27 Dec 2022 19:19:39 +0100
Hi Adam,

thank you for the patch.  Unfortunately, this package does not build:

--8<---------------cut here---------------start------------->8---
/gnu/store/shhxkiy9qr695h8k64g9m6a03msaw2yk-gcc-12.2.0/bin/c++ -DGIT_BRANCH=\"\" -DGIT_COMMIT_HASH=\"\" -DGIT_COMMIT_MESSAGE=\"\" -DGIT_DIRTY=\"dirty\" -isystem /gnu/store/6gq2n65ixpn6drd5wai2h7g5wjm6bp2b-cairo-1.16.0/include/cairo -isystem /gnu/store/c1nvl9hcgl09nysmy1qqsz5ljiarxdjs-libdrm-2.4.107/include/libdrm -isystem /gnu/store/vk23fcm4livzrnb3kzhxs6yjds8f355c-pango-1.48.10/include/pango-1.0 -isystem /gnu/store/j8x167zaka2h6pxk7wiq5zkg67hzf8a2-pixman-0.40.0/include/pixman-1 -isystem /gnu/store/p7iq81hxxyk9zy7a9dngbf16zm8d4klx-libpng-1.6.37/include/libpng16 -isystem /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/include/glib-2.0 -isystem /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/glib-2.0/include -isystem /gnu/store/ak70pk2hjks17cx7zjdmdmzpcpiy9gpi-freetype-2.10.4/include/freetype2 -isystem /gnu/store/f6ibajh7x233cvr30c2p314l2absk36h-harfbuzz-2.8.2/include/harfbuzz -isystem /gnu/store/v5x6f3dml69pmn4pfkl51j6y03v6rlsg-fribidi-1.0.9/include/fribidi -isystem /gnu/store/5583c2za2jsn9g6az79rnksgvigwnsk7-util-linux-2.37.2-lib/include/libmount -isystem /gnu/store/5583c2za2jsn9g6az79rnksgvigwnsk7-util-linux-2.37.2-lib/include/blkid -isystem /gnu/store/v3hqc5i1jqi0s04zxvi465bihrgb1sq1-elogind-246.10/include/elogind -O2 -g -DNDEBUG -O3 -std=c++23 -DWLR_USE_UNSTABLE -Wall -Wextra -Wno-unused-parameter -Wno-unused-value -Wno-missing-field-initializers -Wno-narrowing -pthread -MD -MT CMakeFiles/Hyprland.dir/src/debug/HyprCtl.cpp.o -MF CMakeFiles/Hyprland.dir/src/debug/HyprCtl.cpp.o.d -o CMakeFiles/Hyprland.dir/src/debug/HyprCtl.cpp.o -c /tmp/guix-build-hyprland-0.18.0beta.drv-0/source/src/debug/HyprCtl.cpp
In file included from /tmp/guix-build-hyprland-0.18.0beta.drv-0/source/src/defines.hpp:1,
                 from /tmp/guix-build-hyprland-0.18.0beta.drv-0/source/src/Window.hpp:3,
                 from /tmp/guix-build-hyprland-0.18.0beta.drv-0/source/src/Window.cpp:1:
/tmp/guix-build-hyprland-0.18.0beta.drv-0/source/src/includes.hpp:40:10: fatal error: wlr/render/allocator.h: No such file or directory
   40 | #include <wlr/render/allocator.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/Hyprland.dir/build.make:93: CMakeFiles/Hyprland.dir/src/Window.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
In file included from /tmp/guix-build-hyprland-0.18.0beta.drv-0/source/src/defines.hpp:1,
                 from /tmp/guix-build-hyprland-0.18.0beta.drv-0/source/src/Compositor.hpp:7,
                 from /tmp/guix-build-hyprland-0.18.0beta.drv-0/source/src/Compositor.cpp:1:
/tmp/guix-build-hyprland-0.18.0beta.drv-0/source/src/includes.hpp:40:10: fatal error: wlr/render/allocator.h: No such file or directory
   40 | #include <wlr/render/allocator.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/Hyprland.dir/build.make:79: CMakeFiles/Hyprland.dir/src/Compositor.cpp.o] Error 1
In file included from /tmp/guix-build-hyprland-0.18.0beta.drv-0/source/src/config/../defines.hpp:1,
                 from /tmp/guix-build-hyprland-0.18.0beta.drv-0/source/src/config/ConfigManager.hpp:8,
                 from /tmp/guix-build-hyprland-0.18.0beta.drv-0/source/src/config/ConfigManager.cpp:1:
/tmp/guix-build-hyprland-0.18.0beta.drv-0/source/src/config/../includes.hpp:40:10: fatal error: wlr/render/allocator.h: No such file or directory
   40 | #include <wlr/render/allocator.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/Hyprland.dir/build.make:107: CMakeFiles/Hyprland.dir/src/config/ConfigManager.cpp.o] Error 1
In file included from /tmp/guix-build-hyprland-0.18.0beta.drv-0/source/src/debug/../defines.hpp:1,
                 from /tmp/guix-build-hyprland-0.18.0beta.drv-0/source/src/debug/../Compositor.hpp:7,
                 from /tmp/guix-build-hyprland-0.18.0beta.drv-0/source/src/debug/HyprCtl.hpp:3,
                 from /tmp/guix-build-hyprland-0.18.0beta.drv-0/source/src/debug/HyprCtl.cpp:1:
/tmp/guix-build-hyprland-0.18.0beta.drv-0/source/src/debug/../includes.hpp:40:10: fatal error: wlr/render/allocator.h: No such file or directory
   40 | #include <wlr/render/allocator.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/Hyprland.dir/build.make:121: CMakeFiles/Hyprland.dir/src/debug/HyprCtl.cpp.o] Error 1
make[2]: Leaving directory '/tmp/guix-build-hyprland-0.18.0beta.drv-0/build'
make[1]: *** [CMakeFiles/Makefile2:86: CMakeFiles/Hyprland.dir/all] Error 2
make[1]: Leaving directory '/tmp/guix-build-hyprland-0.18.0beta.drv-0/build'
make: *** [Makefile:114: all] Error 2
--8<---------------cut here---------------end--------------->8---

wlroots does not provide this file.

-- 
Ricardo




Added blocking bug(s) 59433 Request was from Ricardo Wurmus <rekado <at> elephly.net> to control <at> debbugs.gnu.org. (Tue, 27 Dec 2022 18:44:02 GMT) Full text and rfc822 format available.

Information forwarded to guix-patches <at> gnu.org:
bug#59434; Package guix-patches. (Sat, 07 Jan 2023 07:38:03 GMT) Full text and rfc822 format available.

Message #13 received at 59434 <at> debbugs.gnu.org (full text, mbox):

From: Léonard <Leonard.Gomez <at> protonmail.com>
To: "59434 <at> debbugs.gnu.org" <59434 <at> debbugs.gnu.org>
Subject: Solution
Date: Fri, 06 Jan 2023 16:01:28 +0000
[Message part 1 (text/plain, inline)]
This is because wlroots has migrated to gitlab and the github repo has been archived. The guix wlroots package still uses the github repo as you can see on line 1546 of ./gnu/packages/wm.scm.

Since hyprland is made to be built with the latest wlroots version it fails to build with the old github version. Possible solutions would be to use the bundled wlroots or update the wlroots package in wm.scm to the new source.

I would send a patch if I could but I'm not familiar enough with guix and guile to do so.

- Léonard Gomez
[Message part 2 (text/html, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#59434; Package guix-patches. (Thu, 25 Apr 2024 15:32:07 GMT) Full text and rfc822 format available.

Message #16 received at 59434 <at> debbugs.gnu.org (full text, mbox):

From: Graguton <graguton <at> gmail.com>
To: 59434 <at> debbugs.gnu.org
Subject: hyprland
Date: Thu, 25 Apr 2024 03:51:10 -0400
[Message part 1 (text/plain, inline)]
It appears that 59434 has been fixed and will no longer block this patch,
although it is now out of date. This is my first time commenting or using
guix so I am not familiar enough to complete this myself. There appears to
be an up to date version at
https://github.com/rakino/Rosenthal/blob/trunk/rosenthal/packages/wm.scm
but it is implemented differently and I do not have the experience to know
why.

Thanks, Ethan
[Message part 2 (text/html, inline)]

Reply sent to John Kehayias <john.kehayias <at> protonmail.com>:
You have taken responsibility. (Wed, 01 Jan 2025 20:12:02 GMT) Full text and rfc822 format available.

Notification sent to Adam Faiz <adam.faiz <at> disroot.org>:
bug acknowledged by developer. (Wed, 01 Jan 2025 20:12:02 GMT) Full text and rfc822 format available.

Message #21 received at 59434-done <at> debbugs.gnu.org (full text, mbox):

From: John Kehayias <john.kehayias <at> protonmail.com>
To: Graguton <graguton <at> gmail.com>, Adam Faiz <adam.faiz <at> disroot.org>,
 Léonard <Leonard.Gomez <at> protonmail.com>,
 Ricardo Wurmus <rekado <at> elephly.net>
Cc: 59434-done <at> debbugs.gnu.org
Subject: Re: [bug#59434] hyprland
Date: Wed, 01 Jan 2025 20:11:04 +0000
On Thu, Apr 25, 2024 at 03:51 AM, Graguton wrote:

> It appears that 59434 has been fixed and will no longer block this patch, although it is now out of date. This is my first time commenting or using guix
> so I am not familiar enough to complete this myself. There appears to be an up to date version at
> https://github.com/rakino/Rosenthal/blob/trunk/rosenthal/packages/wm.scm but it is implemented differently and I do not have the experience to
> know why.
>
> Thanks, Ethan

Following up on this old patch as hyprland was added to Guix some weeks
ago,  yay!

John

PS: Ethan and Léonard, your emails did not go to anyone since you only
sent it to the debbugs number. Unfortunately that is not an email list,
alias, for forward to anyone. In the future, please look to "wide reply"
or reply all via mumi, emacs debbugs, or getting emails from the debbugs
website. (A common and annoying gotcha.)





bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Thu, 30 Jan 2025 12:24:10 GMT) Full text and rfc822 format available.

This bug report was last modified 98 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.