[PATCH 0/3] Update labwc, wlroots, and shuffle some deps around

  • Done
  • quality assurance status badge
Details
2 participants
  • Ahmad Draidi
  • John Kehayias
Owner
unassigned
Submitted by
Ahmad Draidi
Severity
normal
A
A
Ahmad Draidi wrote on 30 Dec 2023 14:21
(address . guix-patches@gnu.org)(name . Ahmad Draidi)(address . a.r.draidi@redscript.org)
cover.1703942286.git.a.r.draidi@redscript.org
Hello Guix!

The notable change in this patch series is that it updates wlroots to 0.17 since
it's required by labwc 0.7, but also retains wlroots 0.16 as wlroots-0.16 and
switches wlroots users to it, since they don't support 0.17 yet.

Ahmad Draidi (3):
gnu: Add libdisplay-info.
gnu: Update wlroots to 0.17.1.
gnu: labwc: Update to 0.7.0.

gnu/local.mk | 1 +
gnu/packages/freedesktop.scm | 40 ++++++++++++++++
.../patches/wlroots-hwdata-fallback.patch | 46 +++++++++++++++++++
gnu/packages/wm.scm | 41 +++++++++++++----
gnu/packages/zig-xyz.scm | 2 +-
5 files changed, 119 insertions(+), 11 deletions(-)
create mode 100644 gnu/packages/patches/wlroots-hwdata-fallback.patch


base-commit: 4d8b93e865ba71d2baa606d11529c3ecb5f14aea
--
2.41.0
A
A
Ahmad Draidi wrote on 30 Dec 2023 14:28
[PATCH 1/3] gnu: Add libdisplay-info.
(address . 68146@debbugs.gnu.org)(name . Ahmad Draidi)(address . a.r.draidi@redscript.org)
955298d0cd8d6fb1ade9984cfe2dde234d64f6c9.1703942286.git.a.r.draidi@redscript.org
* gnu/packages/freedesktop.scm (libdisplay-info): New variable.

Change-Id: Id9d8a7c92f58a89310d52e62c335f932acb0adb3
---
gnu/packages/freedesktop.scm | 40 ++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)

Toggle diff (74 lines)
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index 648ebad408..9cf7804f10 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -33,6 +33,7 @@
;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2022 muradm <mail@muradm.net>
;;; Copyright © 2023 Alex Devaure <ajadevaure@gmail.com>
+;;; Copyright © 2023 Ahmad Draidi <a.r.draidi@redscript.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -97,6 +98,7 @@ (define-module (gnu packages freedesktop)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
+ #:use-module (gnu packages hardware)
#:use-module (gnu packages hunspell)
#:use-module (gnu packages ibus)
#:use-module (gnu packages image)
@@ -114,6 +116,7 @@ (define-module (gnu packages freedesktop)
#:use-module (gnu packages package-management)
#:use-module (gnu packages perl)
#:use-module (gnu packages perl-check)
+ #:use-module (gnu packages pciutils)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages polkit)
#:use-module (gnu packages python)
@@ -2102,6 +2105,43 @@ (define-public colord-gtk
that wish to perform colour calibration.")
(license license:lgpl2.1+)))
+(define-public libdisplay-info
+ ;; Latest commit passes tests while 0.1.1 doesn't
+ (let ((commit "ebee35935dad01478ae1ae5ead298c4cd8018ac2")
+ (revision "1"))
+ (package
+ (name "libdisplay-info")
+ (version (git-version "0.1.1" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.freedesktop.org/emersion/libdisplay-info")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1ly8acdjxn8l55y0wc07n7pb6rzh9dpr1vbsakdib2zrl0i5yh3a"))))
+ (build-system meson-build-system)
+ (arguments
+ (list
+ #:phases #~(modify-phases %standard-phases
+ (add-before 'configure 'fix-meson-file
+ (lambda* (#:key native-inputs inputs #:allow-other-keys)
+ (substitute* "meson.build"
+ (("/usr/share/hwdata/pnp.ids")
+ (string-append (assoc-ref (or native-inputs inputs)
+ "hwdata")
+ "/share/hwdata/pnp.ids"))))))))
+ (native-inputs (list edid-decode
+ `(,hwdata "pnp") pkg-config python-wrapper))
+ (home-page "https://gitlab.freedesktop.org/emersion/libdisplay-info")
+ (synopsis "EDID and DisplayID library")
+ (description
+ "libdisplay-info is an EDID and DisplayID library that provides a set of
+ high-level, easy-to-use, opinionated functions as well as low-level functions
+to access detailed information.")
+ (license license:expat))))
+
(define-public libfprint
(package
(name "libfprint")
--
2.41.0
A
A
Ahmad Draidi wrote on 30 Dec 2023 14:28
[PATCH 2/3] gnu: Update wlroots to 0.17.1.
(address . 68146@debbugs.gnu.org)(name . Ahmad Draidi)(address . a.r.draidi@redscript.org)
4d7939be4ca5c4d293590e74578a5765a5cdac06.1703942286.git.a.r.draidi@redscript.org
Also keep 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
---
gnu/local.mk | 1 +
.../patches/wlroots-hwdata-fallback.patch | 46 +++++++++++++++++++
gnu/packages/wm.scm | 37 +++++++++++----
gnu/packages/zig-xyz.scm | 2 +-
4 files changed, 77 insertions(+), 9 deletions(-)
create mode 100644 gnu/packages/patches/wlroots-hwdata-fallback.patch

Toggle diff (197 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index 2896395120..fe9577515d 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -2138,6 +2138,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 82ef67a2e4..8c228de1b5 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -65,6 +65,7 @@
;;; Copyright © 2023 Vessel Wave <vesselwave@disroot.org>
;;; Copyright © 2023 Nicolas Graves <ngraves@ngraves.fr>
;;; Copyright © 2023 Jaeme Sifat <jaeme@runbox.com>
+;;; Copyright © 2023 Ahmad Draidi <a.r.draidi@redscript.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -206,7 +207,7 @@ (define-public cage
(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
@@ -1166,7 +1167,7 @@ (define-public fnott
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
@@ -1568,7 +1569,7 @@ (define-public dwl
(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
@@ -1674,7 +1675,7 @@ (define-public polybar
(define-public wlroots
(package
(name "wlroots")
- (version "0.16.2")
+ (version "0.17.1")
(source
(origin
(method git-fetch)
@@ -1683,7 +1684,9 @@ (define-public wlroots
(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
@@ -1704,6 +1707,7 @@ (define-public wlroots
(propagated-inputs
(list ;; As required by wlroots.pc.
eudev
+ libdisplay-info
libinput-minimal
libxkbcommon
mesa
@@ -1729,6 +1733,23 @@ (define-public wlroots
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")
@@ -1773,7 +1794,7 @@ (define-public sway
pcre2
swaybg
wayland
- wlroots))
+ wlroots-0.16))
(native-inputs
(cons* linux-pam mesa pkg-config scdoc wayland-protocols
(if (%current-target-system)
@@ -2959,7 +2980,7 @@ (define-public cagebreak
(("/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
@@ -3056,7 +3077,7 @@ (define-public hikari
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 200b5c9940..75b60fcfa9 100644
--- a/gnu/packages/zig-xyz.scm
+++ b/gnu/packages/zig-xyz.scm
@@ -61,7 +61,7 @@ (define-public river
scdoc
wayland
wayland-protocols
- wlroots))
+ wlroots-0.16))
(home-page "https://github.com/riverwm/river")
(synopsis "Dynamic tiling Wayland compositor")
(description
--
2.41.0
A
A
Ahmad Draidi wrote on 30 Dec 2023 14:28
[PATCH 3/3] gnu: labwc: Update to 0.7.0.
(address . 68146@debbugs.gnu.org)(name . Ahmad Draidi)(address . a.r.draidi@redscript.org)
de05cb176863b317b4851787e9e5badb5a09e795.1703942286.git.a.r.draidi@redscript.org
* gnu/packages/wm.scm (labwc): Update to 0.7.0.

Change-Id: I35f7faf2ba3975481780b49d0dcdef6f39af46bc
---
gnu/packages/wm.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index 8c228de1b5..029346dc98 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -3016,7 +3016,7 @@ (define-public libucl
(define-public labwc
(package
(name "labwc")
- (version "0.6.5")
+ (version "0.7.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -3025,7 +3025,7 @@ (define-public labwc
(file-name (git-file-name name version))
(sha256
(base32
- "04401k1i6b9s2v6mbhw5llla8fdpkhmgz826iva246iqch9z20lx"))))
+ "17p3wcnggnd4v37z1dgv8nmc35nq4261s8sglr44bf71vjircggz"))))
(build-system meson-build-system)
(native-inputs
(list pkg-config gettext-minimal scdoc))
--
2.41.0
A
A
Ahmad Draidi wrote on 4 Feb 14:54 +0100
[PATCH v2 1/3] gnu: Add libdisplay-info.
(address . 68146@debbugs.gnu.org)(name . Ahmad Draidi)(address . a.r.draidi@redscript.org)
8ccce65087f8378fb064d1c5fb1394b743e06eaa.1707054720.git.a.r.draidi@redscript.org
* gnu/packages/freedesktop.scm (libdisplay-info): New variable.

Change-Id: Ifa03e4f21dd869c664c5bbf47af4ea1b7cf63d44
---
v2: Rebase

gnu/packages/freedesktop.scm | 40 ++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)

Toggle diff (76 lines)
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index 648ebad408..9ba444cb0a 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -33,6 +33,7 @@
;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2022 muradm <mail@muradm.net>
;;; Copyright © 2023 Alex Devaure <ajadevaure@gmail.com>
+;;; Copyright © 2024 Ahmad Draidi <a.r.draidi@redscript.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -97,6 +98,7 @@ (define-module (gnu packages freedesktop)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
+ #:use-module (gnu packages hardware)
#:use-module (gnu packages hunspell)
#:use-module (gnu packages ibus)
#:use-module (gnu packages image)
@@ -114,6 +116,7 @@ (define-module (gnu packages freedesktop)
#:use-module (gnu packages package-management)
#:use-module (gnu packages perl)
#:use-module (gnu packages perl-check)
+ #:use-module (gnu packages pciutils)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages polkit)
#:use-module (gnu packages python)
@@ -2102,6 +2105,43 @@ (define-public colord-gtk
that wish to perform colour calibration.")
(license license:lgpl2.1+)))
+(define-public libdisplay-info
+ ;; Latest commit passes tests while 0.1.1 doesn't
+ (let ((commit "ebee35935dad01478ae1ae5ead298c4cd8018ac2")
+ (revision "1"))
+ (package
+ (name "libdisplay-info")
+ (version (git-version "0.1.1" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.freedesktop.org/emersion/libdisplay-info")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1ly8acdjxn8l55y0wc07n7pb6rzh9dpr1vbsakdib2zrl0i5yh3a"))))
+ (build-system meson-build-system)
+ (arguments
+ (list
+ #:phases #~(modify-phases %standard-phases
+ (add-before 'configure 'fix-meson-file
+ (lambda* (#:key native-inputs inputs #:allow-other-keys)
+ (substitute* "meson.build"
+ (("/usr/share/hwdata/pnp.ids")
+ (string-append (assoc-ref (or native-inputs inputs)
+ "hwdata")
+ "/share/hwdata/pnp.ids"))))))))
+ (native-inputs (list edid-decode
+ `(,hwdata "pnp") pkg-config python-wrapper))
+ (home-page "https://gitlab.freedesktop.org/emersion/libdisplay-info")
+ (synopsis "EDID and DisplayID library")
+ (description
+ "libdisplay-info is an EDID and DisplayID library that provides a set of
+ high-level, easy-to-use, opinionated functions as well as low-level functions
+to access detailed information.")
+ (license license:expat))))
+
(define-public libfprint
(package
(name "libfprint")

base-commit: abeffc82379c4f9bd2e6226ea27453b22cb4e0c8
--
2.41.0
A
A
Ahmad Draidi wrote on 4 Feb 14:54 +0100
[PATCH v2 2/3] gnu: Update wlroots to 0.17.1.
(address . 68146@debbugs.gnu.org)(name . Ahmad Draidi)(address . a.r.draidi@redscript.org)
ef9fefc20f0c15b48edc6103b20545258c1b58c6.1707054720.git.a.r.draidi@redscript.org
Also keep 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
---
v2: Rebase and fix conflict

gnu/local.mk | 1 +
.../patches/wlroots-hwdata-fallback.patch | 46 +++++++++++++++++++
gnu/packages/wm.scm | 37 +++++++++++----
gnu/packages/zig-xyz.scm | 2 +-
4 files changed, 77 insertions(+), 9 deletions(-)
create mode 100644 gnu/packages/patches/wlroots-hwdata-fallback.patch

Toggle diff (197 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index fbdb285695..961dc6a456 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -2173,6 +2173,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 959928d8e2..78af2fb210 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -66,6 +66,7 @@
;;; Copyright © 2023 Nicolas Graves <ngraves@ngraves.fr>
;;; Copyright © 2023 Jaeme Sifat <jaeme@runbox.com>
;;; Copyright © 2023 Josselin Poiret <dev@jpoiret.xyz>
+;;; Copyright © 2024 Ahmad Draidi <a.r.draidi@redscript.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -207,7 +208,7 @@ (define-public cage
(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
@@ -1167,7 +1168,7 @@ (define-public fnott
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
@@ -1569,7 +1570,7 @@ (define-public dwl
(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
@@ -1675,7 +1676,7 @@ (define-public polybar
(define-public wlroots
(package
(name "wlroots")
- (version "0.16.2")
+ (version "0.17.1")
(source
(origin
(method git-fetch)
@@ -1684,7 +1685,9 @@ (define-public wlroots
(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
@@ -1705,6 +1708,7 @@ (define-public wlroots
(propagated-inputs
(list ;; As required by wlroots.pc.
eudev
+ libdisplay-info
libinput-minimal
libxkbcommon
mesa
@@ -1730,6 +1734,23 @@ (define-public wlroots
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")
@@ -1774,7 +1795,7 @@ (define-public sway
pcre2
swaybg
wayland
- wlroots))
+ wlroots-0.16))
(native-inputs
(cons* linux-pam mesa pkg-config scdoc wayland-protocols
(if (%current-target-system)
@@ -2966,7 +2987,7 @@ (define-public cagebreak
(("/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
@@ -3063,7 +3084,7 @@ (define-public hikari
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 200b5c9940..75b60fcfa9 100644
--- a/gnu/packages/zig-xyz.scm
+++ b/gnu/packages/zig-xyz.scm
@@ -61,7 +61,7 @@ (define-public river
scdoc
wayland
wayland-protocols
- wlroots))
+ wlroots-0.16))
(home-page "https://github.com/riverwm/river")
(synopsis "Dynamic tiling Wayland compositor")
(description
--
2.41.0
A
A
Ahmad Draidi wrote on 4 Feb 14:54 +0100
[PATCH v2 3/3] gnu: labwc: Update to 0.7.0.
(address . 68146@debbugs.gnu.org)(name . Ahmad Draidi)(address . a.r.draidi@redscript.org)
7e027496c1e725a7b004ed32b7b1f90fda162164.1707054720.git.a.r.draidi@redscript.org
* gnu/packages/wm.scm (labwc): Update to 0.7.0.

Change-Id: I35f7faf2ba3975481780b49d0dcdef6f39af46bc
---
v2: Rebase

gnu/packages/wm.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index 78af2fb210..85bb6de834 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -3023,7 +3023,7 @@ (define-public libucl
(define-public labwc
(package
(name "labwc")
- (version "0.6.5")
+ (version "0.7.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -3032,7 +3032,7 @@ (define-public labwc
(file-name (git-file-name name version))
(sha256
(base32
- "04401k1i6b9s2v6mbhw5llla8fdpkhmgz826iva246iqch9z20lx"))))
+ "17p3wcnggnd4v37z1dgv8nmc35nq4261s8sglr44bf71vjircggz"))))
(build-system meson-build-system)
(native-inputs
(list pkg-config gettext-minimal scdoc))
--
2.41.0
J
J
John Kehayias wrote on 20 Feb 04:27 +0100
(name . Ahmad Draidi)(address . a.r.draidi@redscript.org)
87zfvv95no.fsf@protonmail.com
Hi Ahmad,

On Sun, Feb 04, 2024 at 05:54 PM, Ahmad Draidi wrote:

Toggle quote (7 lines)
> * gnu/packages/wm.scm (labwc): Update to 0.7.0.
>
> Change-Id: I35f7faf2ba3975481780b49d0dcdef6f39af46bc
> ---
> v2: Rebase
>

Thanks! The first patch, for libdisplay-info was no longer needed as a
patch to add that was pushed in
b23fd4fb3e345d7c17b0e668bf790d310426f02b.

I pushed the second two patches starting at
b4148713d18c4b6c37639653de5191eb7f1ca4cc (very minor change in a commit
message) after checking wlroots and a couple of dependents build locally
though QA already looked good.

As an aside, we are closer now to adding hyprland which I have working
locally from another channel. On mesa-updates I will do the libdrm
update which is the only blocker besides adding some packages, I
believe. We'll also need a newer, pre-release, version of wlroots as
hyprland seems to track the latest commits.

Thanks again!
John

Toggle quote (25 lines)
> gnu/packages/wm.scm | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
> index 78af2fb210..85bb6de834 100644
> --- a/gnu/packages/wm.scm
> +++ b/gnu/packages/wm.scm
> @@ -3023,7 +3023,7 @@ (define-public libucl
> (define-public labwc
> (package
> (name "labwc")
> - (version "0.6.5")
> + (version "0.7.0")
> (source (origin
> (method git-fetch)
> (uri (git-reference
> @@ -3032,7 +3032,7 @@ (define-public labwc
> (file-name (git-file-name name version))
> (sha256
> (base32
> - "04401k1i6b9s2v6mbhw5llla8fdpkhmgz826iva246iqch9z20lx"))))
> + "17p3wcnggnd4v37z1dgv8nmc35nq4261s8sglr44bf71vjircggz"))))
> (build-system meson-build-system)
> (native-inputs
> (list pkg-config gettext-minimal scdoc))
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 68146@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 68146
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch