diff options
Diffstat (limited to 'gnu/packages/emacs-xyz.scm')
-rw-r--r-- | gnu/packages/emacs-xyz.scm | 306 |
1 files changed, 277 insertions, 29 deletions
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 2eb705dedd..9bf101ab31 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -5,7 +5,7 @@ ;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Alex Kost <alezost@gmail.com> ;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch> ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net> -;;; Copyright © 2016, 2017, 2018 Chris Marusich <cmmarusich@gmail.com> +;;; Copyright © 2016, 2017, 2018, 2019 Chris Marusich <cmmarusich@gmail.com> ;;; Copyright © 2015, 2016, 2018 Christopher Lemmer Webber <cwebber@dustycloud.org> ;;; Copyright © 2016 Adriano Peluso <catonano@gmail.com> ;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il> @@ -13,7 +13,7 @@ ;;; Copyright © 2016 Matthew Jordan <matthewjordandevops@yandex.com> ;;; Copyright © 2016, 2017 Roel Janssen <roel@gnu.org> ;;; Copyright © 2016, 2017 ng0 <ng0@n0.is> -;;; Copyright © 2016 Alex Griffin <a@ajgrf.com> +;;; Copyright © 2016, 2019 Alex Griffin <a@ajgrf.com> ;;; Copyright © 2016, 2017, 2018, 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2016, 2017, 2018 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2016, 2017, 2018, 2019 Arun Isaac <arunisaac@systemreboot.net> @@ -47,6 +47,8 @@ ;;; Copyright © 2019 mikadoZero <mikadozero@yandex.com> ;;; Copyright © 2019 Gabriel Hondet <gabrielhondet@gmail.com> ;;; Copyright © 2019 LaFreniere, Joseph <joseph@lafreniere.xyz> +;;; Copyright © 2019 Amar Singh <nly@disroot.org> +;;; Copyright © 2019 Baptiste Strazzulla <bstrazzull@hotmail.fr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -545,6 +547,35 @@ handful of functions that are not resource-specific.") for editing Racket's Scribble documentation syntax in Emacs.") (license license:gpl3+)))) +(define-public emacs-shroud + (package + (name "emacs-shroud") + (version "1.15.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/o-nly/emacs-shroud.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0wvm4lxqcc1p8v7rpqal3bnqgnpk1gs7v18i83f6cvi5d88jkgdg")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-bui" ,emacs-bui) + ("emacs-dash" ,emacs-dash) + ("emacs-f" ,emacs-f) + ("emacs-s" ,emacs-s) + ("gnupg" ,gnupg) + ("shroud" ,shroud))) + (home-page "https://github.com/o-nly/emacs-shroud") + (synopsis "Emacs interface to the Shroud password manager") + (description + "This package provides an Emacs interface to the Shroud password manager, +using the Buffers User Interface library. You can view, copy, and edit secrets +from within Emacs.") + (license license:gpl3+))) + (define-public emacs-unpackaged-el (let ((commit "f4df7f8dfea715e893b2223adda32545803f5cce") (revision "1")) @@ -560,12 +591,15 @@ for editing Racket's Scribble documentation syntax in Emacs.") (file-name (git-file-name name version)) (sha256 (base32 - "1yf3zrgqfhnr0az8gn1kqqwnhfi3nc0vbjkcagwcqwk3sp1jda86")))) + "1yf3zrgqfhnr0az8gn1kqqwnhfi3nc0vbjkcagwcqwk3sp1jda86")) + (patches + (search-patches "emacs-unpackaged-req.patch")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-dash" ,emacs-dash) ("emacs-org" ,emacs-org) ("emacs-s" ,emacs-s) + ("emacs-hydra" ,emacs-hydra) ("emacs-use-package" ,emacs-use-package))) (home-page "https://github.com/alphapapa/unpackaged.el") (synopsis "Useful snippets of Emacs Lisp code") @@ -4051,6 +4085,33 @@ transparent background. If you load it from a GUI, it will default to a dark background.") (license license:gpl3+))) +(define-public emacs-gruvbox-theme + (package + (name "emacs-gruvbox-theme") + (version "1.28.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/greduan/emacs-theme-gruvbox.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "00qq92gp1g55pzm97rh7k0dgxy44pxziridl8kqm4rbpi31r7k9p")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-autothemer" ,emacs-autothemer))) + (home-page "https://github.com/greduan/emacs-theme-gruvbox") + (synopsis "Gruvbox is a retro groove color scheme ported from Vim") + (description + "Gruvbox is heavily inspired by badwolf, jellybeans and solarized. + +Designed as a bright theme with pastel 'retro groove' colors and light/dark +mode switching in the way of solarized. The main focus when developing gruvbox +is to keep colors easily distinguishable, contrast enough and still pleasant +for the eyes.") + (license license:expat))) ; MIT license + (define-public emacs-2048-game (package (name "emacs-2048-game") @@ -4093,6 +4154,29 @@ of sixteen colors suitable for a wide range of applications. Base16 is not a single theme but a set of guidelines with numerous implementations.") (license license:expat))) +(define-public emacs-solaire-mode + (package + (name "emacs-solaire-mode") + (version "1.0.9") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/hlissner/emacs-solaire-mode.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "011m4r7s6i9lgjymh7jgq5jwwrpz4vmpvp3c8d4ix96v5hi04kzg")))) + (build-system emacs-build-system) + (home-page "https://github.com/hlissner/emacs-solaire-mode") + (synopsis "Change background of file-visiting buffers in Emacs") + (description + "@code{solaire-mode} is inspired by editors which visually distinguish +code-editing windows from sidebars, popups, terminals, ecetera. It changes the +background of file-visiting buffers (and certain aspects of the UI) to make +them easier to distinguish from other, less important buffers.") + (license license:expat))) + (define-public emacs-prescient (package (name "emacs-prescient") @@ -4213,16 +4297,17 @@ regexp that matches all known keywords.") (define-public emacs-perspective (package (name "emacs-perspective") - (version "1.12") + (version "2.2") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/nex3/perspective-el/" - "archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/nex3/perspective-el.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "078ahh0kmhdylq5ib9c81c76kz1n02xwc83pm729d00i84ibviic")))) + "0pd5sqrrz6y3md20yh6ffy32jdcgb1gc9b4j14pm6r54bqxik68h")))) (build-system emacs-build-system) (home-page "https://github.com/nex3/perspective-el") (synopsis "Switch between named \"perspectives\"") @@ -4305,19 +4390,17 @@ after buffer changes.") (define-public emacs-realgud (package (name "emacs-realgud") - (version "1.4.5") + (version "1.5.0") (source (origin - (method url-fetch) - (uri (string-append "https://elpa.gnu.org/packages/realgud-" - version ".tar")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/realgud/realgud/") + (commit version))) (sha256 (base32 - "108wgxg7fb4byaiasgvbxv2hq7b00biq9f0mh9hy6vw4160y5w24")) - (patches - ;; Patch awaiting inclusion upstream (see: - ;; https://github.com/realgud/realgud/pull/226). - (search-patches "emacs-realgud-fix-configure-ac.patch")))) + "0xnick9016wxrgi8v0lycvxhyz8l2k4nfvdpjc5yq476vwrjfzbz")) + (file-name (git-file-name name version)))) (build-system emacs-build-system) (arguments `(#:tests? #t @@ -4336,11 +4419,6 @@ after buffer changes.") (setenv "HOME" (getenv "TMPDIR")))) (add-before 'patch-el-files 'remove-realgud-pkg.el (lambda _ - ;; XXX: This file is auto-generated at some point and causes - ;; substitute* to crash during the `patch-el-files' phase with: - ;; ERROR: In procedure stat: No such file or directory: - ;; "./realgud-pkg.el" - (delete-file "./realgud-pkg.el") ;; FIXME: `patch-el-files' crashes on this file with error: ;; unable to locate "bashdb". (delete-file "./test/test-regexp-bashdb.el")))) @@ -5209,6 +5287,48 @@ If you want to mark a folder manually as a project just create an empty and RSS, with a user interface inspired by notmuch.") (license license:gpl3+))) +(define-public emacs-elfeed-org + (let ((commit "77b6bbf222487809813de260447d31c4c59902c9")) + (package + (name "emacs-elfeed-org") + (version (git-version "0.1" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/remyhonig/elfeed-org.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0a2ibka82xq1dhy2z7rd2y9zhcj8rna8357881yz49wf55ccgm53")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-elfeed" ,emacs-elfeed) + ("emacs-org" ,emacs-org) + ("emacs-dash" ,emacs-dash) + ("emacs-s" ,emacs-s))) + (native-inputs + `(("ert-runner" ,emacs-ert-runner) + ("emacs-xtest" ,emacs-xtest))) + (arguments + `(#:tests? #t + #:test-command '("ert-runner" "-L" "org-mode/lisp") + #:phases + (modify-phases %standard-phases + (add-before 'check 'chmod + (lambda _ + (chmod "test/fixture-mark-feed-ignore.org" #o644) + #t))))) + (home-page "https://github.com/remyhonig/elfeed-org") + (synopsis "Configure Elfeed with an Org-mode file") + (description + "@code{elfeed-org} lets you manage your Elfeed subscriptions +in Org-mode. Maintaining tags for all RSS feeds is cumbersome using +the regular flat list, where there is no hierarchy and tag names are +duplicated a lot. Org-mode makes the book keeping of tags and feeds +much easier.") + (license license:gpl3+)))) + (define-public emacs-el-x (package (name "emacs-el-x") @@ -7218,19 +7338,20 @@ performance-oriented and tidy.") (define-public emacs-default-encrypt (package (name "emacs-default-encrypt") - (version "4.3") + (version "4.4") (source (origin (method url-fetch) (uri (string-append - "https://www.informationelle-selbstbestimmung-im-internet.de" + "https://informationelle-selbstbestimmung-im-internet.de" "/emacs/jl-encrypt" version "/jl-encrypt.el")) (file-name (string-append "jl-encrypt-" version ".el")) (sha256 (base32 - "16i3rlfp3jxlqvndn8idylhmczync3gwmy8a019v29vyr48rnnr0")))) + "0w9ggz075j1zwg7d0rv9k8238g600p7czfnnsnawswi7yps2xk78")))) (build-system emacs-build-system) - (home-page "https://www.informationelle-selbstbestimmung-im-internet.de/Emacs.html") + (home-page + "https://informationelle-selbstbestimmung-im-internet.de/Emacs.html") (synopsis "Automatically encrypt or sign Gnus messages in Emacs") (description "DefaultEncrypt is designed to be used with Gnus in Emacs. It @@ -7242,6 +7363,41 @@ DefaultEncrypt, please refer to the home page or read the comments in the source file, @file{jl-encrypt.el}.") (license license:gpl3+))) +(define-public emacs-extend-smime + (package + (name "emacs-extend-smime") + (version "3.3") + (source + (origin + (method url-fetch) + (uri (string-append + "https://informationelle-selbstbestimmung-im-internet.de" + "/emacs/jl-smime" version "/jl-smime.el")) + (file-name (string-append "jl-smime-" version ".el")) + (sha256 + (base32 + "1iv8s2wjmv3v5qfwlcy9hvvrmxxvp3f8m1krlr789q7bbh35jynh")))) + (build-system emacs-build-system) + (home-page + "https://informationelle-selbstbestimmung-im-internet.de/Emacs.html") + (synopsis "Improved S/MIME support for Gnus in Emacs") + (propagated-inputs + `(("emacs-default-encrypt" ,emacs-default-encrypt))) + (description + ;; TRANSLATORS: ExtendSMIME, DefaultEncrypt, and emacs-default-encrypt + ;; should not be translated. The name "emacs-default-encrypt" refers to + ;; the Guix package that provides DefaultEncrypt. + "ExtendSMIME is designed to be used with Gnus in Emacs. It enhances +DefaultEncrypt (emacs-default-encrypt) to support S/MIME (Secure/Multipurpose +Internet Mail Extensions) via LDAP (Lightweight Directory Access Protocol). +Before a message (e.g., email) is sent, ExtendSMIME searches for missing +certificates via LDAP and imports them into @code{gpgsm}. When certificates +for all recipients are available, DefaultEncrypt automatically encrypts the +message. For details and instructions on how to use ExtendSMIME, please refer +to the home page or read the comments in the source file, +@file{jl-smime.el}.") + (license license:gpl3+))) + (define-public emacs-htmlize (package (name "emacs-htmlize") @@ -7960,6 +8116,27 @@ running tests easier.") (define-public ert-runner (deprecated-package "ert-runner" emacs-ert-runner)) +(define-public emacs-xtest + (package + (name "emacs-xtest") + (version "1.1.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/promethial/xtest.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1wqx6hlqcmqiljydih5fx89dw06g8w728pyn4iqsap8jwgjngb09")))) + (arguments + `(#:exclude '())) + (build-system emacs-build-system) + (home-page "https://github.com/promethial/xtest/") + (synopsis "Simple testing with Emacs") + (description "This package provides a simple testing library for Emacs.") + (license license:gpl3+))) + (define-public emacs-disable-mouse (package (name "emacs-disable-mouse") @@ -10602,6 +10779,28 @@ macro takes a first argument (whose value must be an alist) and a body.") your Emacs.") (license license:gpl2+)))) +(define-public emacs-restart-emacs + (let ((commit "9aa90d3df9e08bc420e1c9845ee3ff568e911bd9") + (revision "1")) + (package + (name "emacs-restart-emacs") + (version (git-version "0.1.1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/iqbalansari/restart-emacs.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "02x1a85k7r95z8091zgjiaj9nf0zvx1jy4xvl3hr12qbnrx1wfav")))) + (build-system emacs-build-system) + (home-page "https://github.com/iqbalansari/restart-emacs") + (synopsis "Restart Emacs from within Emacs") + (description "This package provides a simple command to restart Emacs from +within Emacs.") + (license license:gpl3+)))) + (define-public emacs-sourcemap (package (name "emacs-sourcemap") @@ -11559,6 +11758,29 @@ interactive behavior should be different.") decreasing the default font size in all GUI Emacs frames.") (license license:gpl3+)))) +(define-public emacs-mixed-pitch + (package + (name "emacs-mixed-pitch") + (version "1.0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/jabranham/mixed-pitch.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1458sy5b6bis1i0k23jdqk6hfqg0ghk637r3ajql2g19ym48rf58")))) + (build-system emacs-build-system) + (home-page "https://gitlab.com/jabranham/mixed-pitch") + (synopsis "Mix variable- and fixed-pitch fonts in the same Emacs buffer") + (description + "@code{mixed-pitch-mode} is a minor mode that enables mixing +variable-pitch and fixed-pitch fonts in the same buffer. The list +@code{mixed-pitch-fixed-pitch-faces} defines the faces that are kept +fixed-pitch,everything else becomes variable-pitch.") + (license license:gpl3+))) + (define-public emacs-visual-regexp (package (name "emacs-visual-regexp") @@ -12339,7 +12561,7 @@ autosuggestions with: (define-public emacs-desktop-environment (package (name "emacs-desktop-environment") - (version "0.2.1") + (version "0.2.2") (source (origin (method git-fetch) @@ -12349,7 +12571,7 @@ autosuggestions with: (file-name (git-file-name name version)) (sha256 (base32 - "0n5sa94dwhnkfp3x42pggsbr5db38m85hl8ddb3qs7yfdi9bjm52")))) + "14ija2rrz3zjhjbzxg84j5fq6xph4ah7w9bkqnq37by040cydvhw")))) (build-system emacs-build-system) (home-page "https://gitlab.petton.fr/DamienCassou/desktop-environment") (synopsis "Control your GNU/Linux desktop environment from Emacs") @@ -15833,3 +16055,29 @@ corresponding Evil keys.") (description "@code{xterm-color.el} is an ANSI control sequence to text-property translator.") (license license:bsd-2)))) + +(define-public emacs-org-noter + (package + (name "emacs-org-noter") + (version "1.3.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://stable.melpa.org/packages/org-noter-" + version + ".el")) + (sha256 + (base32 + "1hczwva73gsyanl1ldhdvql01gy0hy2g861yzkaklyb763sx58x4")))) + (build-system emacs-build-system) + (propagated-inputs `(("emacs-org" ,emacs-org))) + (home-page "https://github.com/weirdNox/org-noter") + (synopsis "Synchronized, Org-mode, document annotator") + (description + "This package lets you create notes that are kept in sync when you +scroll through the document, but that are external to it---the notes +themselves live in an Org-mode file. As such, this leverages the power of +Org-mode (the notes may have outlines, latex fragments, babel, etc...) while +acting like notes that are made @emph{in} the document.") + (license license:gpl3+))) |