guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

01/02: gnu: Update wlroots to 0.17.1.


From: guix-commits
Subject: 01/02: gnu: Update wlroots to 0.17.1.
Date: Mon, 19 Feb 2024 22:23:13 -0500 (EST)

podiki pushed a commit to branch master
in repository guix.

commit b4148713d18c4b6c37639653de5191eb7f1ca4cc
Author: Ahmad Draidi <a.r.draidi@redscript.org>
AuthorDate: Sun Feb 4 17:54:42 2024 +0400

    gnu: Update wlroots to 0.17.1.
    
    Keep the older version as wlroots-0.16 since a few packages break without 
it.
    
    * gnu/packages/wm.scm (wlroots): Update to 0.17.1.
    [source]: Add patch.
    [propagated-inputs]: Add libdisplay-info.
    * gnu/packages/patches/wlroots-hwdata-fallback.patch: New file.
    * gnu/local.mk (dist_patch_DATA): Register it.
    * gnu/packages/wm.scm (wlroots-0.16): New variable.
    * gnu/packages/wm.scm (cage)[inputs]: Replace wlroots with wlroots-0.16.
    * gnu/packages/wm.scm (fnott)[inputs]: Likewise.
    * gnu/packages/wm.scm (dwl)[inputs]: Likewise.
    * gnu/packages/wm.scm (sway)[inputs]: Likewise.
    * gnu/packages/wm.scm (cagebreak)[inputs]: Likewise.
    * gnu/packages/wm.scm (hikari)[inputs]: Likewise.
    * gnu/packages/wm.scm (river)[native-inputs]: Likewise.
    
    Change-Id: Ib3d3938d6486fb1674380811a6dc0a512c991ac7
    Signed-off-by: John Kehayias <john.kehayias@protonmail.com>
---
 gnu/local.mk                                       |  1 +
 gnu/packages/patches/wlroots-hwdata-fallback.patch | 46 ++++++++++++++++++++++
 gnu/packages/wm.scm                                | 37 +++++++++++++----
 gnu/packages/zig-xyz.scm                           |  2 +-
 4 files changed, 77 insertions(+), 9 deletions(-)

diff --git a/gnu/local.mk b/gnu/local.mk
index 58011d1149..bed0c181e4 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -2176,6 +2176,7 @@ dist_patch_DATA =                                         
\
   %D%/packages/patches/webrtc-audio-processing-big-endian.patch        \
   %D%/packages/patches/webrtc-for-telegram-desktop-unbundle-libsrtp.patch \
   %D%/packages/patches/websocketpp-fix-for-cmake-3.15.patch    \
+  %D%/packages/patches/wlroots-hwdata-fallback.patch           \
   %D%/packages/patches/wmctrl-64-fix.patch                     \
   %D%/packages/patches/wmfire-update-for-new-gdk-versions.patch        \
   %D%/packages/patches/wordnet-CVE-2008-2149.patch                     \
diff --git a/gnu/packages/patches/wlroots-hwdata-fallback.patch 
b/gnu/packages/patches/wlroots-hwdata-fallback.patch
new file mode 100644
index 0000000000..6468c7cbf3
--- /dev/null
+++ b/gnu/packages/patches/wlroots-hwdata-fallback.patch
@@ -0,0 +1,46 @@
+backend/drm: add hardcoded hwdata path fallback
+
+Add hardcoded fallback "/usr/share/hwdata/pnp.ids" as a
+temporary solution to get things working in Guix until
+hwdata ships with pkg-config file.
+
+diff --git a/backend/drm/meson.build b/backend/drm/meson.build
+index 6fcb2c15..ed95360a 100644
+--- a/backend/drm/meson.build
++++ b/backend/drm/meson.build
+@@ -1,8 +1,7 @@
+ hwdata = dependency(
+       'hwdata',
+-      required: 'drm' in backends,
++      required: false,
+       native: true,
+-      not_found_message: 'Required for the DRM backend.',
+ )
+ 
+ libdisplay_info = dependency(
+@@ -19,15 +18,21 @@ libliftoff = dependency(
+       required: false,
+ )
+ 
+-if not (hwdata.found() and libdisplay_info.found() and features['session'])
++if hwdata.found()
++      hwdata_dir = hwdata.get_variable(pkgconfig: 'pkgdatadir')
++      pnp_ids = files(hwdata_dir / 'pnp.ids')
++else
++      pnp_ids = files('/usr/share/hwdata/pnp.ids')
++endif
++
++if not (libdisplay_info.found() and features['session'])
+       subdir_done()
+ endif
+ 
+-hwdata_dir = hwdata.get_variable(pkgconfig: 'pkgdatadir')
+ pnpids_c = custom_target(
+       'pnpids.c',
+       output: 'pnpids.c',
+-      input: files(hwdata_dir / 'pnp.ids'),
++      input: pnp_ids,
+       feed: true,
+       capture: true,
+       command: files('gen_pnpids.sh'),
+
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index 9abf505caf..fdf846f982 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -67,6 +67,7 @@
 ;;; Copyright © 2023 Jaeme Sifat <jaeme@runbox.com>
 ;;; Copyright © 2023 Josselin Poiret <dev@jpoiret.xyz>
 ;;; Copyright © 2024 Timotej Lazar <timotej.lazar@araneo.si>
+;;; Copyright © 2024 Ahmad Draidi <a.r.draidi@redscript.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -208,7 +209,7 @@ the leaves of a full binary tree.")
        (sha256 (base32 
"11sg9x08zl2nr7a723h462knz5lf58sgvkhv1mgc9z3hhkhvbsja"))))
     (build-system meson-build-system)
     (native-inputs (list pkg-config scdoc))
-    (inputs (list wayland wlroots libxkbcommon))
+    (inputs (list wayland wlroots-0.16 libxkbcommon))
     (home-page "https://github.com/cage-kiosk/cage";)
     (synopsis "Wayland kiosk")
     (description "This package provides a Wayland @dfn{kiosk}, which runs a
@@ -1168,7 +1169,7 @@ the XDG Autostart specification.")
            tllist
            scdoc))
     (inputs
-     (list wlroots wayland fcft dbus libpng))
+     (list wlroots-0.16 wayland fcft dbus libpng))
     (home-page "https://codeberg.org/dnkl/fnott";)
     (synopsis "Keyboard driven and lightweight Wayland notification daemon")
     (description "Fnott is a keyboard driven and lightweight notification 
daemon
@@ -1570,7 +1571,7 @@ started automatically on the first call via D-Bus.")
     (native-inputs
      (list pkg-config))
     (inputs
-     (list wlroots))
+     (list wlroots-0.16))
     (home-page "https://github.com/djpohly/dwl";)
     (synopsis "Dynamic window manager for Wayland")
     (description
@@ -1676,7 +1677,7 @@ functionality to display information about the most 
commonly used services.")
 (define-public wlroots
   (package
     (name "wlroots")
-    (version "0.16.2")
+    (version "0.17.1")
     (source
      (origin
        (method git-fetch)
@@ -1685,7 +1686,9 @@ functionality to display information about the most 
commonly used services.")
              (commit version)))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "1m12nv6avgnz626h3giqp6gcx44w1wq6z0jy780mx8z255ic7q15"))))
+        (base32 "1hj4gq5vx8in65622yvjm8bwqkw2vpc556k9my997a0hn0ricj37"))
+         ;; This patch can be removed once hwdata in Guix supports pkg-config
+         (patches (search-patches "wlroots-hwdata-fallback.patch"))))
     (build-system meson-build-system)
     (arguments
      `(#:phases
@@ -1706,6 +1709,7 @@ functionality to display information about the most 
commonly used services.")
     (propagated-inputs
      (list ;; As required by wlroots.pc.
            eudev
+           libdisplay-info
            libinput-minimal
            libxkbcommon
            mesa
@@ -1731,6 +1735,23 @@ Wayland compositor")
 modules for building a Wayland compositor.")
     (license license:expat)))  ; MIT license
 
+(define-public wlroots-0.16
+  (package
+    (inherit wlroots)
+    (name "wlroots-0.16")
+    (version "0.16.2")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://gitlab.freedesktop.org/wlroots/wlroots";)
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1m12nv6avgnz626h3giqp6gcx44w1wq6z0jy780mx8z255ic7q15"))))
+    (propagated-inputs (modify-inputs (package-propagated-inputs wlroots)
+                         (delete libdisplay-info)))))
+
 (define-public sway
   (package
     (name "sway")
@@ -1775,7 +1796,7 @@ modules for building a Wayland compositor.")
                   pcre2
                   swaybg
                   wayland
-                  wlroots))
+                  wlroots-0.16))
     (native-inputs
      (cons* linux-pam mesa pkg-config scdoc wayland-protocols
             (if (%current-target-system)
@@ -2967,7 +2988,7 @@ shows a notification for the user on the screen.")
                 (("/etc/") (string-append #$output "/etc/"))
                 (("/usr/share/") (string-append #$output "/usr/share/"))))))))
     (native-inputs (list pkg-config scdoc))
-    (inputs (list libevdev pango wlroots))
+    (inputs (list libevdev pango wlroots-0.16))
     (home-page "https://github.com/project-repo/cagebreak";)
     (synopsis "Tiling wayland compositor inspired by ratpoison")
     (description
@@ -3107,7 +3128,7 @@ session.  Nor does it depend on any UI toolkits such as 
Qt or GTK.")
            linux-pam
            pango
            wayland
-           wlroots))
+           wlroots-0.16))
     (arguments
      `(#:tests? #f                      ; no tests
        #:make-flags
diff --git a/gnu/packages/zig-xyz.scm b/gnu/packages/zig-xyz.scm
index f01c120cc3..fd194a6a4f 100644
--- a/gnu/packages/zig-xyz.scm
+++ b/gnu/packages/zig-xyz.scm
@@ -71,7 +71,7 @@
                          scdoc
                          wayland
                          wayland-protocols
-                         wlroots))
+                         wlroots-0.16))
     (home-page "https://github.com/riverwm/river";)
     (synopsis "Dynamic tiling Wayland compositor")
     (description



reply via email to

[Prev in Thread] Current Thread [Next in Thread]