Toggle diff (789 lines)
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 3a026bec9a..643a2a1d41 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
- (url "https://gitlab.com/jaor/geiser/")
- (file-name (git-file-name name version))
- "0fb2h984hn7bnyiziplp7kgk29zdzc9yainsv0k1li436irlp9dd"))))
+ (url "https://gitlab.com/jaor/geiser/")
+ (file-name (git-file-name name version))
+ "0fb2h984hn7bnyiziplp7kgk29zdzc9yainsv0k1li436irlp9dd"))))
(build-system gnu-build-system)
@@ -240,8 +240,8 @@ when typing parentheses directly or commenting out code line by line.")
- (url "https://github.com/magit/git-modes")
+ (url "https://github.com/magit/git-modes")
(file-name (git-file-name name version))
@@ -662,11 +662,11 @@ for editing Racket's Scribble documentation syntax in Emacs.")
(base32 "0q2pb3w8s833fjhkzicciw2php4lsnismad1dnwgp2lcway757ra"))))
(build-system gnu-build-system)
- `(("autoconf" ,autoconf)
- ("emacs-minimal" ,emacs-minimal)))
+ `(("autoconf" ,autoconf)
+ ("emacs-minimal" ,emacs-minimal)))
`(("emacs-bui" ,emacs-bui)
("emacs-dash" ,emacs-dash)
@@ -3750,12 +3750,12 @@ languages.")
(modify-phases %standard-phases
(add-after 'unpack 'configure
- (lambda* (#:key inputs #:allow-other-keys)
- (chmod "irony.el" #o644)
- (emacs-substitute-variables "irony.el"
- ("irony-server-install-prefix"
- (assoc-ref inputs "server")))
+ (lambda* (#:key inputs #:allow-other-keys)
+ (chmod "irony.el" #o644)
+ (emacs-substitute-variables "irony.el"
+ ("irony-server-install-prefix"
+ (assoc-ref inputs "server")))
(synopsis "C/C++/ObjC Code completion and syntax checks for Emacs")
(description "Irony-mode provides Clang-assisted syntax checking and
completion for C, C++, and ObjC in GNU Emacs. Using @code{libclang} it can
@@ -3767,20 +3767,20 @@ described on the homepage.")
(define-public emacs-irony-mode-server
(package (inherit emacs-irony-mode)
- (name "emacs-irony-mode-server")
- (modify-phases %standard-phases
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (string-append "-DCMAKE_INSTALL_PREFIX=" out)) #t))))))
- (build-system cmake-build-system)
- (synopsis "Server for the Emacs @dfn{irony mode}")))
+ (name "emacs-irony-mode-server")
+ (modify-phases %standard-phases
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (string-append "-DCMAKE_INSTALL_PREFIX=" out)) #t))))))
+ (build-system cmake-build-system)
+ (synopsis "Server for the Emacs @dfn{irony mode}")))
(define-public emacs-company-irony
@@ -4838,22 +4838,22 @@ to their corresponding tangled blocks.")
(let ((commit "1f1185bf667a38d3d0d180ce85fd4c131818aae2")
- (name "emacs-atom-one-dark-theme")
- (version (git-version "0.4.0" revision commit))
- (url "https://github.com/jonathanchu/atom-one-dark-theme.git")
- "1alma16hg3mfjly8a9s3mrswkjjx4lrpdnf43869hn2ibkn7zx9z"))
- (file-name (git-file-name name version))))
- (build-system emacs-build-system)
- (home-page "https://github.com/jonathanchu/atom-one-dark-theme")
- (synopsis "Atom One Dark color theme for Emacs")
- (description "An Emacs port of the Atom One Dark theme from Atom.io.")
- (license license:gpl3+))))
+ (name "emacs-atom-one-dark-theme")
+ (version (git-version "0.4.0" revision commit))
+ (url "https://github.com/jonathanchu/atom-one-dark-theme.git")
+ "1alma16hg3mfjly8a9s3mrswkjjx4lrpdnf43869hn2ibkn7zx9z"))
+ (file-name (git-file-name name version))))
+ (build-system emacs-build-system)
+ (home-page "https://github.com/jonathanchu/atom-one-dark-theme")
+ (synopsis "Atom One Dark color theme for Emacs")
+ (description "An Emacs port of the Atom One Dark theme from Atom.io.")
+ (license license:gpl3+))))
(define-public emacs-zenburn-theme
@@ -4907,8 +4907,8 @@ variants.")
- (url "https://github.com/bbatsov/solarized-emacs/")
- (commit (string-append "v" version))))
+ (url "https://github.com/bbatsov/solarized-emacs/")
+ (commit (string-append "v" version))))
(file-name (git-file-name name version))
@@ -5040,7 +5040,7 @@ orange and red as accent colors.")
"This program is an implementation of 2048 for Emacs.
The goal of this game is to create a tile with value 2048. The size of the
board and goal value can be customized.")
- (license license:gpl3+)))
+ (license license:gpl3+)))
(define-public emacs-base16-theme
@@ -5434,8 +5434,8 @@ fully-functional one.")
- (url "https://github.com/abo-abo/hydra")
+ (url "https://github.com/abo-abo/hydra")
(file-name (git-file-name name version))
@@ -6032,8 +6032,8 @@ possible to query other endpoints like DBPedia.")
- (url "https://github.com/technomancy/better-defaults")
+ (url "https://github.com/technomancy/better-defaults")
(file-name (git-file-name name version))
@@ -6692,7 +6692,7 @@ indentation guides in Emacs:
;; Move .info file at the root so that it can installed by the
(rename-file "docs/_build/texinfo/Elpy.info" "Elpy.info")
(add-after 'build-doc 'install-manpage
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
@@ -6894,7 +6894,7 @@ Emacs completion function instead.")
"Ido-ubiquitous enables ido-style completion for almost every function
that uses the standard completion function completing-read.")
- (license license:gpl3+)))
+ (license license:gpl3+)))
(define-public emacs-yaml-mode
@@ -8063,8 +8063,8 @@ passive voice.")
"0hx72fq10772bbyqrj7mhhp02k26cccjxdadiqm1ykainhfmn1x0"))
@@ -8150,8 +8150,8 @@ files that you would find in @file{contrib/} from the git repository.")))
- (url "https://github.com/lewang/flx.git")
- (commit (string-append "v" version))))
+ (url "https://github.com/lewang/flx.git")
+ (commit (string-append "v" version))))
"0sjybrcnb2sl33swy3q664vqrparajcl0m455gciiih2j87hwadc"))
@@ -8175,8 +8175,8 @@ Flx has support for ido (interactively do things) through flx-ido.")
- (url "https://github.com/n3mo/cyberpunk-theme.el/")
+ (url "https://github.com/n3mo/cyberpunk-theme.el/")
"05mfgr9aj7knn7niadv9p6z3qrfpq2lbbi2wxxx62xywim9maw2y"))
@@ -8250,8 +8250,8 @@ by zenburn, sinburn and similar themes, but slowly diverging from them.")
- (url "https://github.com/auto-complete/auto-complete.git")
- (commit (string-append "v" version))))
+ (url "https://github.com/auto-complete/auto-complete.git")
+ (commit (string-append "v" version))))
"04i9b11iksg6acn885wl3qgi5xpsm3yszlqmd2x21yhprndlz7gb"))
@@ -8547,7 +8547,7 @@ mode-line.")
(home-page "https://gitlab.com/wavexx/mu4e-jump-to-list.el")
(synopsis "Select and view mailing lists in mu4e")
- "@code{mu4e-jump-to-list} allows you to select and view mailing lists
+ "@code{mu4e-jump-to-list} allows you to select and view mailing lists
automatically using existing List-ID headers in your mu database. Just press
\"l\" in the headers view and any mailing list you've subscribed to will be
automatically discovered and presented in recency order.")
@@ -8574,7 +8574,7 @@ automatically discovered and presented in recency order.")
(home-page "https://github.com/seanfarley/mu4e-patch")
(synopsis "Colorize patch-like emails in mu4e")
- "Extension for mu4e to colorize patch-like emails with diff-mode.
+ "Extension for mu4e to colorize patch-like emails with diff-mode.
This is based on Frank Terbeck's @code{gnus-article-treat-patch.el} but has
been adapted to work with mu4e.")
(license license:gpl3+))))
@@ -8587,8 +8587,8 @@ been adapted to work with mu4e.")
- (url "https://github.com/akatov/pretty-mode/")
+ (url "https://github.com/akatov/pretty-mode/")
(file-name (git-file-name name version))
@@ -9628,6 +9628,79 @@ It should enable you to implement low-level X11 applications.")
(license license:gpl3+)))
+(define-public emacs-exwm-next
+ (name "emacs-exwm-next")
+ (synopsis "Emacs X window manager")
+ (uri (string-append "https://elpa.gnu.org/packages/exwm-"
+ "05w1v3wrp1lzz20zd9lcvr5nhk809kgy6svvkbs15xhnr6x55ad5"))))
+ (build-system emacs-build-system)
+ `(("emacs-xelb" ,emacs-xelb)))
+ ("emacs-next" ,emacs-next)
+ ;; The following functions and variables needed by emacs-exwm are
+ ;; not included in emacs-minimal:
+ ;; scroll-bar-mode, fringe-mode
+ ;; x-display-pixel-width, x-display-pixel-height
+ (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
+ (string-append xsessions "/exwm.desktop")
+ (format #t "[Desktop Entry]~@
+ Type=Application~%" ,name ,synopsis exwm-executable)))
+ ;; Add a shell wrapper to bin
+ (with-output-to-file exwm-executable
+ ~a +SI:localuser:$USER ~@
+ exec ~a --exit-with-session ~a \"$@\" --eval '~s' ~%"
+ (string-append (assoc-ref inputs "bash") "/bin/sh")
+ (string-append (assoc-ref inputs "xhost") "/bin/xhost")
+ (string-append (assoc-ref inputs "dbus") "/bin/dbus-launch")
+ (string-append (assoc-ref inputs "emacs-next") "/bin/emacs")
+ ((file-exists-p "~/.exwm")
+ ((not (featurep 'exwm))
+ (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
+ (license license:gpl3+)))
(define-public emacs-switch-window
(name "emacs-switch-window")
@@ -9962,7 +10035,7 @@ Emacs.")
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(source-directory (string-append
- (getenv "TMPDIR") "/source")))
+ (getenv "TMPDIR") "/source")))
(substitute* "bin/ert-runner"
(("ERT_RUNNER=\"\\$\\(dirname \\$\\(dirname \\$0\\)\\)")
(string-append "ERT_RUNNER=\"" out
@@ -10993,38 +11066,38 @@ messaging service.")
(define-public emacs-bash-completion
- (name "emacs-bash-completion")
- (url "https://github.com/szermatt/emacs-bash-completion.git")
- (file-name (git-file-name name version))
- (base32 "1a1wxcqzh0javjmxwi3lng5i99xiylm8lm04kv4q1lh9bli6vmv0"))))
- (inputs `(("bash" ,bash)))
- (build-system emacs-build-system)
- (modify-phases %standard-phases
- (add-after 'unpack 'make-git-checkout-writable
- (for-each make-file-writable (find-files "."))
- (add-before 'install 'configure
- (lambda* (#:key inputs #:allow-other-keys)
- (let ((bash (assoc-ref inputs "bash")))
- (emacs-substitute-variables "bash-completion.el"
- ("bash-completion-prog" (string-append bash "/bin/bash"))))
- (home-page "https://github.com/szermatt/emacs-bash-completion")
- (synopsis "Bash completion for the shell buffer")
- "@code{bash-completion} defines dynamic completion hooks for shell-mode
+ (name "emacs-bash-completion")
+ (url "https://github.com/szermatt/emacs-bash-completion.git")
+ (file-name (git-file-name name version))
+ (base32 "1a1wxcqzh0javjmxwi3lng5i99xiylm8lm04kv4q1lh9bli6vmv0"))))
+ (inputs `(("bash" ,bash)))
+ (build-system emacs-build-system)
+ (modify-phases %standard-phases
+ (add-after 'unpack 'make-git-checkout-writable
+ (for-each make-file-writable (find-files "."))
+ (add-before 'install 'configure
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((bash (assoc-ref inputs "bash")))
+ (emacs-substitute-variables "bash-completion.el"
+ ("bash-completion-prog" (string-append bash "/bin/bash"))))
+ (home-page "https://github.com/szermatt/emacs-bash-completion")
+ (synopsis "Bash completion for the shell buffer")
+ "@code{bash-completion} defines dynamic completion hooks for shell-mode
and shell-command prompts that are based on Bash completion.")
- (license license:gpl2+)))
+ (license license:gpl2+)))
(define-public emacs-easy-kill
@@ -11332,8 +11405,8 @@ supports multiple backends such as @code{vlc}, @code{mpg123},
- (url "https://github.com/Groovy-Emacs-Modes/groovy-emacs-modes")
+ (url "https://github.com/Groovy-Emacs-Modes/groovy-emacs-modes")
(file-name (git-file-name name version))
@@ -11973,28 +12046,28 @@ match and total match information in the mode-line in various search modes.")
(define-public emacs-finalize
- (name "emacs-finalize")
- (url "https://github.com/skeeto/elisp-finalize.git")
- (file-name (git-file-name name version))
+ (name "emacs-finalize")
+ (url "https://github.com/skeeto/elisp-finalize.git")
+ (file-name (git-file-name name version))
(base32 "1gvlm4i62af5jscwz0jccc8ra0grprxpg2rlq91d5nn8dn5lpy79"))))
- (build-system emacs-build-system)
- `(("emacs-cl-generic" ,emacs-cl-generic)))
- (home-page "https://github.com/skeeto/elisp-finalize")
- (synopsis "Finalizers for Emacs Lisp")
- "This package will allows to immediately run a callback (a finalizer)
+ (build-system emacs-build-system)
+ `(("emacs-cl-generic" ,emacs-cl-generic)))
+ (home-page "https://github.com/skeeto/elisp-finalize")
+ (synopsis "Finalizers for Emacs Lisp")
+ "This package will allows to immediately run a callback (a finalizer)
after its registered lisp object has been garbage collected. This allows for
extra resources, such as buffers and processes, to be cleaned up after the
- (license license:unlicense)))
+ (license license:unlicense)))
(define-public emacs-emacsql
@@ -12798,8 +12871,8 @@ region instead.")
- (url "https://github.com/Malabarba/validate.el")
+ (url "https://github.com/Malabarba/validate.el")
(file-name (git-file-name name version))
@@ -13172,8 +13245,8 @@ confused by comments or @code{foo-bar} matching @code{foo}.")
- (url "https://github.com/phillord/m-buffer-el")
- (commit (string-append "v" version))))
+ (url "https://github.com/phillord/m-buffer-el")
+ (commit (string-append "v" version))))
(file-name (git-file-name name version))
@@ -13500,8 +13573,8 @@ grouping buffers by their projectile root directory.")
- (url "https://github.com/istib/helm-mode-manager")
+ (url "https://github.com/istib/helm-mode-manager")
(file-name (git-file-name name version))
@@ -14191,8 +14264,8 @@ split to display more windows and more buffers, the buffer exits
- (url "https://github.com/rswgnu/rsw-elisp")
+ (url "https://github.com/rswgnu/rsw-elisp")
(file-name (git-file-name name version))
@@ -14411,8 +14484,8 @@ compilation/grep buffers. Works with @code{wgrep}, @code{ack}, @code{ag},
- (url "https://github.com/alezost/shift-number.el")
- (commit (string-append "v" version))))
+ (url "https://github.com/alezost/shift-number.el")
+ (commit (string-append "v" version))))
(file-name (git-file-name name version))
@@ -15518,7 +15591,7 @@ type @code{C-h b}, or any incomplete key sequence plus @code{C-h}, to run
@code{helm-descbinds}. The bindings are presented in a similar way as
@code{describe-bindings} does, but you can use completion to find the command
you searched for and execute it, or view its documentation.")
- (license license:gpl3+))))
+ (license license:gpl3+))))
(define-public emacs-helm-emms
(let ((commit "b785cb845a98a643eba9d5d53c9c0b4e6810a3cd"))
@@ -17176,27 +17249,27 @@ or a window into some windows according to a layout recipe.")
(define-public emacs-e2wm
- (home-page "https://github.com/kiwanami/emacs-window-manager")
- (commit (string-append "v" version))))
- "12midsrx07pdrsr1qbl2rpi7xyhxqx08bkz7n7gf8vsmqkpfp56s"))
- (file-name (git-file-name name version))))
- (build-system emacs-build-system)
- `(("emacs-window-layout" ,emacs-window-layout)))
- (synopsis "Equilibrium Emacs Window Manager")
- (description "E2WM is a window manager for Emacs. It enables to
+ (home-page "https://github.com/kiwanami/emacs-window-manager")
+ (commit (string-append "v" version))))
+ "12midsrx07pdrsr1qbl2rpi7xyhxqx08bkz7n7gf8vsmqkpfp56s"))
+ (file-name (git-file-name name version))))
+ (build-system emacs-build-system)
+ `(("emacs-window-layout" ,emacs-window-layout)))
+ (synopsis "Equilibrium Emacs Window Manager")
+ (description "E2WM is a window manager for Emacs. It enables to
customize the place of pop-up window, how the windows are split, how the
buffers are located in the windows, keybinds to manipulate windows and
buffers, etc. It also has plug-ins to help your Emacs life.")
- (license license:gpl3+)))
+ (license license:gpl3+)))
(define-public emacs-ctable
(let ((commit "b8830d1ca95abb100a81bc32011bd17d5ecba000"))
@@ -17930,13 +18003,13 @@ processes for Emacs")
"13gs8g05xj7np3i2q3bbxg6zgdiazzn1spxii4x0cyd4pg83c0i1"))))
(build-system emacs-build-system)
- `(("emacs-dash" ,emacs-dash)
- ("emacs-ace-window" ,emacs-ace-window)
- ("emacs-pfuture" ,emacs-pfuture)
- ("emacs-hydra" ,emacs-hydra)
- ("emacs-ht" ,emacs-ht)))
+ `(("emacs-dash" ,emacs-dash)
+ ("emacs-ace-window" ,emacs-ace-window)
+ ("emacs-pfuture" ,emacs-pfuture)
+ ("emacs-hydra" ,emacs-hydra)
+ ("emacs-ht" ,emacs-ht)))
`(("emacs-buttercup" ,emacs-buttercup)
("emacs-el-mock" ,emacs-el-mock)))
@@ -17986,7 +18059,7 @@ processes for Emacs")
(let ((out (assoc-ref outputs "out")))
(with-directory-excursion "../.." ;treemacs root
(copy-recursively "icons/default"
- (string-append out "/share/" ,name "/images"))
+ (string-append out "/share/" ,name "/images"))
(string-append out "/share/" ,name "/scripts"))
@@ -18029,13 +18102,13 @@ processes for Emacs")
"0hcnvbyaqyypgby1bfj4zbrbq97amk8hfx0sj4w73rl46yf4jk3j"))))
(build-system emacs-build-system)
- `(("emacs-lsp-mode" ,emacs-lsp-mode)
- ("emacs-markdown-mode" ,emacs-markdown-mode)
- ("emacs-dash" ,emacs-dash)
- ("emacs-request" ,emacs-request)
- ("emacs-treemacs" ,emacs-treemacs)))
+ `(("emacs-lsp-mode" ,emacs-lsp-mode)
+ ("emacs-markdown-mode" ,emacs-markdown-mode)
+ ("emacs-dash" ,emacs-dash)
+ ("emacs-request" ,emacs-request)
+ ("emacs-treemacs" ,emacs-treemacs)))
(home-page "https://github.com/emacs-lsp/lsp-java/")
(synopsis "Java support for lsp-mode")
(description "Emacs Java IDE using Eclipse JDT Language Server.")
@@ -19410,26 +19483,26 @@ and article extracts for Wikipedia.")
(define-public emacs-webfeeder
- (name "emacs-webfeeder")
+ (name "emacs-webfeeder")
"https://elpa.gnu.org/packages/webfeeder-"
- "06y5vxw9m6pmbrzb8v2i3w9dnhgqxz06vyx1knmgi9cczlrj4a64"))))
- (build-system emacs-build-system)
- (home-page "https://gitlab.com/Ambrevar/emacs-webfeeder")
- (synopsis "Build RSS and Atom webfeeds from HTML files")
- "Webfeeder is an Emacs library to generate RSS and Atom feeds from HTML
+ "06y5vxw9m6pmbrzb8v2i3w9dnhgqxz06vyx1knmgi9cczlrj4a64"))))
+ (build-system emacs-build-system)
+ (home-page "https://gitlab.com/Ambrevar/emacs-webfeeder")
+ (synopsis "Build RSS and Atom webfeeds from HTML files")
+ "Webfeeder is an Emacs library to generate RSS and Atom feeds from HTML
files. The various elements of the HTML input are parsed with customizable
functions (e.g. @code{webfeeder-title-function}).")
- (license license:gpl3+)))
+ (license license:gpl3+)))
(define-public emacs-evil-numbers
(let ((commit "6ea1c8c3a9b37bed63d48f1128e9a4910e68187e"))
@@ -19594,8 +19667,8 @@ text-property translator.")
- (url "https://github.com/weirdNox/org-noter.git")
+ (url "https://github.com/weirdNox/org-noter.git")
(file-name (git-file-name name version))
@@ -19994,30 +20067,30 @@ contains a track position, playback will start at the specified position.")
(define-public emacs-org-jira
- (name "emacs-org-jira")
- (url "https://github.com/ahungry/org-jira.git")
- (file-name (git-file-name name version))
- "1l80r2a9zzbfk2c78i40h0ww79vm9v4j6xi2h5i4w9kqh10rs6h2"))))
- (build-system emacs-build-system)
- `(("emacs-request" ,emacs-request)
- ("emacs-dash" ,emacs-dash)
- ("emacs-org" ,emacs-org)))
- (home-page "https://github.com/ahungry/org-jira")
- (synopsis "Syncing between Jira and Org-mode")
- "This package provides an extension to org-mode for syncing issues with
+ (name "emacs-org-jira")
+ (url "https://github.com/ahungry/org-jira.git")
+ (file-name (git-file-name name version))
+ "1l80r2a9zzbfk2c78i40h0ww79vm9v4j6xi2h5i4w9kqh10rs6h2"))))
+ (build-system emacs-build-system)
+ `(("emacs-request" ,emacs-request)
+ ("emacs-dash" ,emacs-dash)
+ ("emacs-org" ,emacs-org)))
+ (home-page "https://github.com/ahungry/org-jira")
+ (synopsis "Syncing between Jira and Org-mode")
+ "This package provides an extension to org-mode for syncing issues with
- (license license:gpl3+)))
+ (license license:gpl3+)))
(define-public emacs-systemd-mode
@@ -20522,8 +20595,8 @@ fish-completion. It can be used in both Eshell and M-x shell.")
;; Get the current version from `telega-version` in telega.el.
;; or by running M-x telega-version.
(let ((commit "ae09592498ce380e57fbb76725fd4c89ae248864")
(version (git-version version revision commit))
@@ -21136,8 +21209,8 @@ pattern guessed from thing under current cursor position.
(define-public emacs-metal-mercury-mode
(let ((commit "99e2d8fb7177cae3bfa2dec2910fc28216d5f5a8")
(name "emacs-metal-mercury-mode")
(version (git-version version revision commit))