(define-module (home dwl wm) #:use-module (gnu packages wm) #:use-module (gnu packages xorg) #:use-module (ruther packages wayland) #:use-module (guix packages) #:use-module (guix gexp) #:use-module (guix utils) #:use-module (guix download) #:use-module (guix git-download)) (define-public waybar-mine (package (inherit waybar) (name "waybar-mine") (source (origin (inherit (package-source waybar)) (sha256 (base32 "0liiyz6212pmyhpsrb6773qf5b9b4kb76nggizygr9abfidbg5gw")) (patches (list (local-file "dwl-ipc-waybar.patch"))))))) (define-public (make-dwl-xwayland dwl) (package/inherit dwl (inputs (modify-inputs (package-inputs dwl) (append xcb-util-wm libx11 xorg-server-xwayland))) (arguments (substitute-keyword-arguments (package-arguments dwl) ((#:make-flags original-flags) #~(append '("XWAYLAND = -DXWAYLAND" "XLIBS = xcb xcb-icccm") #$original-flags)))))) (define-public dwl-mine (let ((base (make-dwl-xwayland dwl-0.7))) (package (inherit base) (name "dwl-mine") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/Rutherther/dwl") (commit "a8e46f319f574876ce697a7097eb47a2080b1a87"))) (sha256 (base32 "1jkyqwnc6x48bcjcyn1ha69vwql18ib1w47jx6bxz7wg7bvidm01")))) (arguments (substitute-keyword-arguments (package-arguments base) ((#:phases original-phases) #~(modify-phases #$original-phases (add-after 'unpack 'add-config (lambda _ (copy-file #$(local-file "config.h") "config.h")))))))))) ;; TODO wrapping with needed deps