From 71c2f02ba057ce4a14cfdb8b665fa17c70eaa664 Mon Sep 17 00:00:00 2001 From: SeerLite Date: Tue, 7 Mar 2023 00:44:58 -0300 Subject: [PATCH] gnu: i3-wm: Add missing inputs for i3-save-tree. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/wm.scm (i3-wm)[inputs]: Add perl, perl-anyevent-i3, perl-json-xs, perl-common-sense, and perl-types-serialiser. [arguments]: Add phase to wrap i3-save-tree to use perl inputs listed above. Signed-off-by: Ludovic Courtès --- gnu/packages/wm.scm | 25 ++++++++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index 729fc7a34a..e707a15785 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -338,12 +338,26 @@ (define-public i3-wm #~(modify-phases %standard-phases (add-after 'install 'patch-session-file (lambda _ - (let* ((i3 (string-append #$output "/bin/i3")) - (i3-with-shmlog (string-append #$output "/bin/i3-with-shmlog"))) + (let ((i3 (string-append #$output "/bin/i3")) + (i3-with-shmlog (string-append #$output "/bin/i3-with-shmlog"))) (substitute* (string-append #$output "/share/xsessions/i3.desktop") (("Exec=i3") (string-append "Exec=" i3))) (substitute* (string-append #$output "/share/xsessions/i3-with-shmlog.desktop") - (("Exec=i3-with-shmlog") (string-append "Exec=" i3-with-shmlog))))))))) + (("Exec=i3-with-shmlog") (string-append "Exec=" i3-with-shmlog)))))) + (add-after 'patch-session-file 'wrap-perl-bin + (lambda* (#:key inputs #:allow-other-keys) + (let* ((i3-save-tree (string-append #$output "/bin/i3-save-tree")) + (perl-lib-names '("perl-anyevent" + "perl-anyevent-i3" + "perl-json-xs" + "perl-common-sense" + "perl-types-serialiser")) + (perl-lib-paths + (map (lambda (name) + (string-append (assoc-ref inputs name) "/lib/perl5/site_perl")) + perl-lib-names))) + (wrap-program i3-save-tree + `("PERL5LIB" ":" prefix ,perl-lib-paths)))))))) (inputs (list libxcb xcb-util @@ -355,6 +369,11 @@ (define-public i3-wm libev yajl xmlto + perl + perl-anyevent-i3 + perl-json-xs + perl-common-sense + perl-types-serialiser perl-pod-simple libx11 pcre2