diff options
-rw-r--r-- | gnu/packages/emacs-xyz.scm | 73 |
1 files changed, 36 insertions, 37 deletions
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 13035bcf4f..81df088ca8 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -19788,45 +19788,44 @@ It should enable you to implement low-level X11 applications.") ;; scroll-bar-mode, fringe-mode ;; x-display-pixel-width, x-display-pixel-height (arguments - `(#:emacs ,emacs - #:phases - (modify-phases %standard-phases - (add-after 'build 'install-xsession - (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (xsessions (string-append out "/share/xsessions")) - (bin (string-append out "/bin")) - (exwm-executable (string-append bin "/exwm"))) - ;; Add a .desktop file to xsessions - (mkdir-p xsessions) - (mkdir-p bin) - (make-desktop-entry-file - (string-append xsessions "/exwm.desktop") - #:name ,name - #:comment ,synopsis - #:exec exwm-executable - #:try-exec exwm-executable) - ;; Add a shell wrapper to bin - (with-output-to-file exwm-executable - (lambda _ - (format #t "#!~a ~@ + (list + #:emacs emacs + #:phases + #~(modify-phases %standard-phases + (add-after 'build 'install-xsession + (lambda* (#:key inputs #:allow-other-keys) + (let* ((xsessions (string-append #$output "/share/xsessions")) + (bin (string-append #$output "/bin")) + (exwm-executable (string-append bin "/exwm"))) + ;; Add a .desktop file to xsessions + (mkdir-p xsessions) + (mkdir-p bin) + (make-desktop-entry-file + (string-append xsessions "/exwm.desktop") + #:name #$name + #:comment #$synopsis + #:exec exwm-executable + #:try-exec exwm-executable) + ;; Add a shell wrapper to bin + (with-output-to-file exwm-executable + (lambda _ + (format #t "#!~a ~@ ~a +SI:localuser:$USER ~@ exec ~a --exit-with-session ~a \"$@\" --eval '~s' ~%" - (search-input-file inputs "/bin/sh") - (search-input-file inputs "/bin/xhost") - (search-input-file inputs "/bin/dbus-launch") - (search-input-file inputs "/bin/emacs") - '(cond - ((file-exists-p "~/.exwm") - (load-file "~/.exwm")) - ((not (featurep 'exwm)) - (require 'exwm) - (require 'exwm-config) - (exwm-config-default) - (message (concat "exwm configuration not found. " - "Falling back to default configuration..."))))))) - (chmod exwm-executable #o555) - #t)))))) + (search-input-file inputs "/bin/sh") + (search-input-file inputs "/bin/xhost") + (search-input-file inputs "/bin/dbus-launch") + (search-input-file inputs "/bin/emacs") + '(cond + ((file-exists-p "~/.exwm") + (load-file "~/.exwm")) + ((not (featurep 'exwm)) + (require 'exwm) + (require 'exwm-config) + (exwm-config-default) + (message (concat "exwm configuration not found. " + "Falling back to default configuration..."))))))) + (chmod exwm-executable #o555))))))) (home-page "https://github.com/ch11ng/exwm") (description "EXWM is a full-featured tiling X window manager for Emacs built on top |