From 232d644c184de97d053e74db08df928727a52629 Mon Sep 17 00:00:00 2001 From: Francisco-Galindo Date: Mon, 8 Sep 2025 19:04:50 -0600 Subject: [PATCH] gnu: Add dmenu-wayland. * gnu/packages/suckless.scm (dmenu-wayland): New variable. Merges: https://codeberg.org/guix/guix/pulls/2589 Change-Id: Ifb224b937831e5c2ece8a494d6bfd5d2e4554e16 Reviewed-by: Andreas Enge Reviewed-by: Rutherther Modified-by: Sharlatan Hellseher Signed-off-by: Sharlatan Hellseher --- gnu/packages/suckless.scm | 53 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) diff --git a/gnu/packages/suckless.scm b/gnu/packages/suckless.scm index 5cc1140675..9f50321aff 100644 --- a/gnu/packages/suckless.scm +++ b/gnu/packages/suckless.scm @@ -38,13 +38,16 @@ (define-module (gnu packages suckless) #:use-module (gnu packages) #:use-module (gnu packages base) + #:use-module (gnu packages bash) #:use-module (gnu packages crypto) #:use-module (gnu packages compression) #:use-module (gnu packages cups) #:use-module (gnu packages fonts) #:use-module (gnu packages fontutils) + #:use-module (gnu packages freedesktop) #:use-module (gnu packages gawk) #:use-module (gnu packages gcc) + #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gtk) #:use-module (gnu packages image) @@ -57,9 +60,11 @@ #:use-module (gnu packages shells) #:use-module (gnu packages webkit) #:use-module (gnu packages xorg) + #:use-module (gnu packages xdisorg) #:use-module (guix build-system cargo) #:use-module (guix build-system glib-or-gtk) #:use-module (guix build-system gnu) + #:use-module (guix build-system meson) #:use-module (guix download) #:use-module (guix gexp) #:use-module (guix git-download) @@ -311,6 +316,54 @@ optimising the environment for the application in use and the task performed.") numbers of user-defined menu items efficiently.") (license license:x11))) +(define-public dmenu-wayland + ;; No fresh release since 20219. + (let ((commit "a380201dff5bfac2dace553d7eaedb6cea6855f9") + (revision "0")) + (package + (name "dmenu-wayland") + (version (git-version "0.1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/nyyManni/dmenu-wayland") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1d920lzgchqgp9j72hg61qnwr5cbf3knwrn1kwxlqq4id59nz8bn")))) + (build-system meson-build-system) + (arguments + (list + #:configure-flags + ;; Fix GCC 14 build + #~(list "-Dc_args=-Wno-format") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'fix-hardcoded-paths + (lambda* _ + (substitute* "dmenu-wl_run" + (("dmenu-wl_path") + (string-append #$output "/bin/dmenu-wl_path")) + (("dmenu-wl ") + (string-append #$output "/bin/dmenu-wl ")))))))) + (native-inputs + (list pkg-config)) + (inputs + (list bash-minimal + cairo + pango + glib + libxkbcommon + wayland + wayland-protocols)) + (home-page "https://github.com/nyyManni/dmenu-wayland") + (synopsis "Dynamic menu for wayland") + (description + "This package implements a functionality to display newline-separated +input stdin as a menubar for Wayland and @code{wlroots}.") + (license license:expat)))) + (define-public spoon (package (name "spoon")