(define-module (ruther packages wayland) #:use-module (guix utils) #:use-module (guix packages) #:use-module (guix gexp) #:use-module (gnu packages) #:use-module (gnu packages xdisorg) #:use-module (gnu packages gl) #:use-module (gnu packages wm) #:use-module (gnu packages freedesktop) #:use-module (gnu packages pkg-config) #:use-module (gnu packages ghostscript) #:use-module (gnu packages gtk) #:use-module (gnu packages glib) #:use-module ((guix build-system meson) #:prefix meson:) #:use-module ((guix build-system python) #:prefix python:) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix download) #:use-module (guix git-download)) (define-public dmenu-wl (package (name "dmenu-wl") (version "2023.05.18") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/nyyManni/dmenu-wayland") (commit "a380201dff5bfac2dace553d7eaedb6cea6855f9"))) (sha256 (base32 "1d920lzgchqgp9j72hg61qnwr5cbf3knwrn1kwxlqq4id59nz8bn")))) (build-system meson:meson-build-system) (native-inputs (list pkg-config wayland)) (inputs (list cairo pango glib libxkbcommon wayland wayland-protocols)) (synopsis "Dmenu for wayland") (description "Dmenu for Wayland") (home-page "https://github.com/nyyManni/dmenu-wayland") (license #f))) (define-public libdrm-2.4.122 (package/inherit libdrm (name "libdrm-next") (version "2.4.122") (source (origin (method url-fetch) (uri (string-append "https://dri.freedesktop.org/libdrm/libdrm-" version ".tar.xz")) (sha256 (base32 "0lgjj9ign3cl27hzmqnxr7xwv21mm486pifc029wmzvxfydhgxfr")))))) (define-public mesa-libdrm-2.4.122 ((package-input-rewriting `((,libdrm . ,libdrm-2.4.122))) mesa)) (define-public wayland-1.23 (package (inherit wayland) (name "wayland") (version "1.23.0") (source (origin (method url-fetch) (uri (string-append "https://gitlab.freedesktop.org/" name "/" name "/-/releases/" version "/downloads/" name "-" version ".tar.xz")) (sha256 (base32 "1cjswi1d7hp6lhvcnrdrxry7qhjvdgrn5y3lb5mn4rry9mby3cq5")))))) (define-public wayland-protocols-1.35 (package/inherit wayland-protocols (name "wayland-protocols") (version "1.35") (source (origin (method url-fetch) (uri (string-append "https://gitlab.freedesktop.org/wayland/" name "/-/releases/" version "/downloads/" name "-" version ".tar.xz")) (sha256 (base32 "1awm7p1457zwzjhjdhg560hvg30ys8lqlmhw6hcwhg8k51m738ip")))) (inputs (modify-inputs (package-inputs wayland-protocols) (replace "wayland" wayland-1.23))))) (define-public wlroots-0.18 (package/inherit wlroots (name "wlroots") (version "0.18.0") (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 "13avi2805wrfkghgc7ar273p61svmm85k3g3hg9bf2gaxsz6f91f")) (patches (search-patches "wlroots-hwdata-fallback.patch")))) (native-inputs (modify-inputs (package-native-inputs wlroots) (replace "wayland" wayland-1.23))) (propagated-inputs (modify-inputs (package-propagated-inputs wlroots) (replace "mesa" mesa-libdrm-2.4.122) (replace "wayland" wayland-1.23) (replace "wayland-protocols" wayland-protocols-1.35) (append lcms))))) (define meson-1.5 (package/inherit meson (name "meson-next") (version "1.5.1") (source (origin (method url-fetch) (uri (string-append "https://github.com/mesonbuild/meson/" "releases/download/" version "/meson-" version ".tar.gz")) (sha256 (base32 "1vab706pw1q17vh9rbsmlirgiji3k6wljl735lxffp95vwx56zjn")))) (build-system python:python-build-system))) (define-public wlroots-0.19-dev (package/inherit wlroots-0.18 (name "wlroots-dev") (version "0.19.0-dev") (source (origin (method git-fetch) (uri (git-reference (url "https://gitlab.freedesktop.org/wlroots/wlroots") (commit "2c64f36e8886d1f26daeb2a4ee79f3f9dd3d4c85"))) (file-name (git-file-name name version)) (sha256 (base32 "0671bgkl66gdw4bsbdi8ddcb5qzm98ykxillza0k2j9nvzfywlbs")) (patches (cons (local-file "./patches/revert-reset-pressed-buttons-on-focus-change.patch") (search-patches "wlroots-hwdata-fallback.patch"))))) (arguments (substitute-keyword-arguments (package-arguments wlroots-0.18) ((#:meson meson #f) meson-1.5))))) (define-public dwl-0.7 (package/inherit dwl (name "dwl") (version "0.7") (source (origin (method git-fetch) (uri (git-reference (url "https://codeberg.org/dwl/dwl.git") (commit (string-append "v" version)))) (sha256 (base32 "0404awsx8v9fyk7p2bg3p937sc56ixf8ay465xgvjcnv78hh4apd")))) (native-inputs (modify-inputs (package-native-inputs dwl) (append wayland-1.23))) (inputs (list wlroots-0.18)))) (define-public dwl-0.6 (package/inherit dwl (version "0.6") (source (origin (method git-fetch) (uri (git-reference (url "https://codeberg.org/dwl/dwl.git") (commit (string-append "v" version)))) (sha256 (base32 "1j7lmp6k80g54hrsmwixh8ahpnbax4khgiybg8lhlvmq93618a3z")))) (inputs (list wlroots)))) (define-public dwl-0.8-dev (package/inherit dwl-0.7 (name "dwl-dev") (version "0.8-dev") (source (origin (method git-fetch) (uri (git-reference (url "https://codeberg.org/dwl/dwl.git") (commit "334bbe6f0f5e4f77789b42ac9e5607d5076aef1b"))) (sha256 (base32 "1wsql3zs0mjndxzhbx84nkimls66l6zql79rb74lghlkwaajzaq9")))) (inputs (list wlroots-0.19-dev)))) ;; TODO dwl 0.8 dev