;;; 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>
+;;; Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 David Thompson <davet@gnu.org>
;;; Copyright © 2016 Matthew Jordan <matthewjordandevops@yandex.com>
;;; Copyright © 2016, 2017 Roel Janssen <roel@gnu.org>
;;; Copyright © 2016, 2019 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2016, 2017, 2018, 2019, 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2016, 2017, 2018 Alex Vong <alexvong1995@gmail.com>
-;;; Copyright © 2016, 2017, 2018, 2019 Arun Isaac <arunisaac@systemreboot.net>
+;;; Copyright © 2016, 2017, 2018, 2019, 2020 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2017 Christopher Baines <mail@cbaines.net>
-;;; Copyright © 2017, 2018, 2019 Mathieu Othacehe <m.othacehe@gmail.com>
+;;; Copyright © 2017, 2018, 2019, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2017, 2018, 2019 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2017 Vasile Dumitrascu <va511e@yahoo.com>
;;; Copyright © 2017, 2018 Kyle Meyer <kyle@kyleam.com>
;;; Copyright © 2018 Thorsten Wilms <t_w_@freenet.de>
;;; Copyright © 2018, 2019 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2018, 2019, 2020 Brett Gilio <brettg@gnu.org>
-;;; Copyright © 2019 Dimakakos Dimos <bendersteed@teknik.io>
+;;; Copyright © 2019, 2020 Dimakakos Dimos <bendersteed@teknik.io>
;;; Copyright © 2019 Brian Leung <bkleung89@gmail.com>
;;; Copyright © 2019 mikadoZero <mikadozero@yandex.com>
;;; Copyright © 2019 Gabriel Hondet <gabrielhondet@gmail.com>
;;; Copyright © 2019 Leo Prikler <leo.prikler@student.tugraz.at>
;;; Copyright © 2019 David Wilson <david@daviwil.com>
;;; Copyright © 2020 Paul Garlick <pgarlick@tourbillion-technology.com>
+;;; Copyright © 2020 Robert Smith <robertsmith@posteo.net>
+;;; Copyright © 2020 Evan Straw <evan.straw99@gmail.com>
+;;; Copyright © 2020 Masaya Tojo <masaya@tojo.tokyo>
+;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net>
+;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
+;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
;;;
;;; This file is part of GNU Guix.
;;;
#:use-module (gnu packages package-management)
#:use-module (gnu packages perl)
#:use-module (gnu packages pdf)
+ #:use-module (gnu packages rust-apps)
#:use-module (gnu packages scheme)
#:use-module (gnu packages speech)
#:use-module (gnu packages xiph)
#:use-module (gnu packages video)
#:use-module (gnu packages haskell-xyz)
#:use-module (gnu packages wordnet)
+ #:use-module (gnu packages photo)
#:use-module (guix utils)
#:use-module (srfi srfi-1)
#:use-module (ice-9 match))
(define-public emacs-geiser
(package
(name "emacs-geiser")
- (version "0.10")
+ (version "0.11.2")
(source (origin
- (method url-fetch)
- (uri (string-append "mirror://savannah/geiser/" version
- "/geiser-" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.com/jaor/geiser/")
+ (commit version)))
+ (file-name (git-file-name name version))
(sha256
(base32
- "0pj3l7p8d60c9b4vfprnv6g5l61d74pls4b5dvd84cn4ky9mzwjv"))))
+ "1khi1bghsjx6cs5acizmlbw9z19s4qycnji9krdbn42cbpv0rysv"))))
(build-system gnu-build-system)
(arguments
'(#:phases
"geiser-autoloads.el"))
#t)))))
(inputs `(("guile" ,guile-2.2)))
- (native-inputs `(("emacs" ,emacs-minimal)))
+ (native-inputs
+ `(("emacs" ,emacs-minimal)
+ ("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("texinfo" ,texinfo)))
(home-page "https://nongnu.org/geiser/")
(synopsis "Collection of Emacs modes for Guile and Racket hacking")
(description
(let ((commit "c761d28d49e5238037512b898db0ec9b40d85770"))
(package
(name "emacs-magit")
- (version (git-version "2.90.1" "2" commit))
+ (version (git-version "2.90.1" "3" commit))
(source (origin
(method git-fetch)
(uri (git-reference
(guix build emacs-utils))
#:test-target "test"
#:tests? #f ; tests are not included in the release
-
#:make-flags
(list (string-append "PREFIX=" %output)
;; Don't put .el files in a sub-directory.
- (string-append "lispdir=" %output "/share/emacs/site-lisp")
- (string-append "DASH_DIR="
- (assoc-ref %build-inputs "dash")
- "/share/emacs/site-lisp/guix.d/dash-"
- ,(package-version emacs-dash))
- (string-append "WITH_EDITOR_DIR="
- (assoc-ref %build-inputs "with-editor")
- "/share/emacs/site-lisp/guix.d/with-editor-"
- ,(package-version emacs-with-editor))
- (string-append "TRANSIENT_DIR="
- (assoc-ref %build-inputs "transient")
- "/share/emacs/site-lisp/guix.d/transient-"
- ,(package-version emacs-transient)))
-
+ (string-append "lispdir=" %output "/share/emacs/site-lisp"))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch
(let ((commit "9e33ceee32f665db59909e1c00a667ccdd04178f"))
(package
(name "emacs-magit-svn")
- (version (git-version "2.2.1" "1" commit))
+ (version (git-version "2.2.1" "2" commit))
(source (origin
(method git-fetch)
(uri (git-reference
(sha256
(base32
"1mlqz8dh6jy5rv72lgkxv253dgh73fmbaidskicypapvbl3lr6xy"))))
- (build-system trivial-build-system)
- (native-inputs `(("emacs" ,emacs-minimal)))
+ (build-system emacs-build-system)
(propagated-inputs `(("dash" ,emacs-dash)
("with-editor" ,emacs-with-editor)
("magit" ,emacs-magit)
("transient" ,emacs-transient)))
- (arguments
- `(#:modules ((guix build utils)
- (guix build emacs-utils))
-
- #:builder
- (begin
- (use-modules (guix build utils)
- (guix build emacs-utils))
-
- (let ((emacs (string-append (assoc-ref %build-inputs "emacs")
- "/bin/emacs"))
- (magit (string-append (assoc-ref %build-inputs "magit")
- "/share/emacs/site-lisp"))
- (transient (string-append (assoc-ref %build-inputs "transient")
- "/share/emacs/site-lisp/guix.d/transient-"
- ,(package-version emacs-transient)))
- (dash (string-append (assoc-ref %build-inputs "dash")
- "/share/emacs/site-lisp/guix.d/dash-"
- ,(package-version emacs-dash)))
- (with-editor (string-append (assoc-ref %build-inputs "with-editor")
- "/share/emacs/site-lisp/guix.d/with-editor-"
- ,(package-version emacs-with-editor)))
- (source (assoc-ref %build-inputs "source"))
- (lisp-dir (string-append %output "/share/emacs/site-lisp")))
-
- (install-file (string-append source "/magit-svn.el")
- lisp-dir)
-
- (with-directory-excursion lisp-dir
- (parameterize ((%emacs emacs))
- (emacs-generate-autoloads ,name lisp-dir)
- (setenv "EMACSLOADPATH"
- (string-append ":" magit ":" transient
- ":" dash ":" with-editor))
- (emacs-batch-eval '(byte-compile-file "magit-svn.el"))))
- #t))))
(home-page "https://github.com/magit/magit-svn")
(synopsis "Git-SVN extension to Magit")
(description
(define-public emacs-xr
(package
(name "emacs-xr")
- (version "1.15")
+ (version "1.18")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/xr-" version ".tar"))
(sha256
- (base32 "0pxzr6n0qa29ly8j3cl46rv9a65ajfcgahrhdylg4yfb9gh1x4ly"))))
+ (base32 "1nq9pj47sxgpkw97c2xrkhgcwh3zsfd2a22qiqbl4i9zf2l9yy91"))))
(build-system emacs-build-system)
(home-page "https://elpa.gnu.org/packages/xr.html")
(synopsis "Convert string regexp to rx notation")
(define-public emacs-relint
(package
(name "emacs-relint")
- (version "1.13")
+ (version "1.15")
(source
(origin
(method url-fetch)
(uri (string-append
"https://elpa.gnu.org/packages/relint-" version ".tar"))
(sha256
- (base32 "1kzzlixhd6kp0mkmgn02b7pqv6m55g708xsys7vjskdxbfb6jjib"))))
+ (base32 "0sxmdsacj8my942k8j76m2y68nzab7190acv7cwgflc5n4f07yxa"))))
(build-system emacs-build-system)
(propagated-inputs `(("emacs-xr" ,emacs-xr)))
(home-page "https://github.com/mattiase/relint")
(arguments
`(#:emacs ,emacs
#:include '("\\.el$" "^images/" "^latex/" "\\.info$")
- #:exclude '("^tests/" "^latex/README")))
+ #:exclude '("^tests/" "^latex/README")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'install 'install-doc
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (etc-dir (string-append out "/share/" ,name "/"
+ ,version "/etc")))
+ (with-directory-excursion "doc"
+ (setenv "HOME" (getenv "TMPDIR")) ; for mktextfm
+ (invoke "pdftex" "tex-ref")
+ (install-file "tex-ref.pdf" (string-append etc-dir
+ "/refcards")))
+ #t))))))
(native-inputs
`(("perl" ,perl)))
+ (inputs
+ `(("texlive" ,(texlive-union (list texlive-amsfonts)))))
(home-page "https://www.gnu.org/software/auctex/")
(synopsis "Integrated environment for TeX")
(description
@code{tablist-mode} or @code{tablist-minor-mode} commands.")
(license license:gpl3+)))
+(define-public emacs-djvu
+ (package
+ (name "emacs-djvu")
+ (version "1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://elpa.gnu.org/packages/"
+ "djvu-" version ".el"))
+ (sha256
+ (base32 "0njgyx09q225hliacsnjk8wallg5i6xkz6bj501pb05nwqfbvfk7"))))
+ (build-system emacs-build-system)
+ (home-page "http://elpa.gnu.org/packages/djvu.html")
+ (synopsis "Edit and view Djvu files via djvused")
+ (description
+ "This package is a front end for the command-line program djvused from
+DjVuLibre, see @url{http://djvu.sourceforge.net/}. It assumes you have the
+programs @command{djvused}, @command{djview}, @command{ddjvu}, and
+@command{djvm} installed.")
+ (license license:gpl3+)))
+
(define-public emacs-pdf-tools
(package
(name "emacs-pdf-tools")
(base32
"0yz64c0z4ygi2k4af18k4r1ncgys18jb8icywkp2g5pgmpn5l7ps"))))
(build-system gnu-build-system)
- (arguments
- `(#:configure-flags
- (let ((guix (assoc-ref %build-inputs "guix"))
- (gcrypt (assoc-ref %build-inputs "guile-gcrypt"))
- (geiser (assoc-ref %build-inputs "geiser"))
- (dash (assoc-ref %build-inputs "dash"))
- (bui (assoc-ref %build-inputs "bui"))
- (magit-popup (assoc-ref %build-inputs "magit-popup"))
- (edit-indirect (assoc-ref %build-inputs "edit-indirect"))
- (site-lisp "/share/emacs/site-lisp")
- (site-scm "/share/guile/site")
- (site-go "/lib/guile")
- (guile-dir (lambda (dir)
- (car (find-files dir
- (lambda (file stat)
- (string-prefix?
- "2." (basename file)))
- #:directories? #t)))))
- (list (string-append "--with-guix-site-dir="
- (guile-dir (string-append guix site-scm)))
- (string-append "--with-guix-site-ccache-dir="
- (guile-dir (string-append guix site-go))
- "/site-ccache")
- (string-append "--with-guile-gcrypt-site-dir="
- (guile-dir (string-append gcrypt site-scm)))
- (string-append "--with-guile-gcrypt-site-ccache-dir="
- (guile-dir (string-append gcrypt site-go))
- "/site-ccache")
- (string-append "--with-geiser-lispdir=" geiser site-lisp)
- (string-append "--with-dash-lispdir="
- dash site-lisp "/guix.d/dash-"
- ,(package-version emacs-dash))
- (string-append "--with-bui-lispdir="
- bui site-lisp "/guix.d/bui-"
- ,(package-version emacs-bui))
- (string-append "--with-editindirect-lispdir="
- edit-indirect site-lisp "/guix.d/edit-indirect-"
- ,(package-version emacs-edit-indirect))
- (string-append "--with-popup-lispdir="
- magit-popup site-lisp "/guix.d/magit-popup-"
- ,(package-version emacs-magit-popup))))))
(native-inputs
`(("pkg-config" ,pkg-config)
("emacs" ,emacs-minimal)))
"This Emacs package allows managing multiple grep buffers.")
(license license:gpl3+)))
+(define-public emacs-rg
+ (package
+ (name "emacs-rg")
+ (version "1.8.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/dajva/rg.el.git")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0k7x5z7mh9flwih35cqy8chs54rack3nswdcpw5wcpgv6xim227y"))))
+ (build-system emacs-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'hardcode-rg-path
+ ;; Hardcode the path to ripgrep.
+ (lambda _
+ (let ((file "rg.el"))
+ (chmod file #o644)
+ (emacs-substitute-sexps file
+ ("(defcustom rg-executable" (which "rg")))))))))
+ (propagated-inputs
+ `(("emacs-s" ,emacs-s)
+ ("emacs-wgrep" ,emacs-wgrep)))
+ (inputs
+ `(("ripgrep" ,ripgrep)))
+ (home-page "https://rgel.readthedocs.io/en/latest/")
+ (synopsis "Search tool based on @code{ripgrep}")
+ (description
+ "@code{rg} is an Emacs search package based on the @code{ripgrep} command
+line tool. It allows one to interactively search based on the editing context
+then refine or modify the search results.")
+ (license license:gpl3+)))
+
(define-public emacs-inf-ruby
(package
(name "emacs-inf-ruby")
(out (assoc-ref outputs "out"))
(version ,(version-major+minor (package-version python))))
(with-directory-excursion
- (string-append out
- "/share/emacs/site-lisp/guix.d/"
- "flycheck-grammalecte-" ,version)
+ (string-append out "/share/emacs/site-lisp")
(symlink (string-append grammalecte "/lib/"
"python" version "/site-packages/"
"grammalecte")
(define-public emacs-debbugs
(package
(name "emacs-debbugs")
- (version "0.21")
+ (version "0.22")
(source (origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/debbugs-"
version ".tar"))
(sha256
(base32
- "1xx1wjfpsnwx2fpydqhwy9k1b5kjk8dqbkzf8lqaj9c4rvjbn50a"))))
+ "05ik9qv539b5c1nzxkk3lk23bqj4vqgmfmd8x367abhb7c9gix2z"))))
(build-system emacs-build-system)
(arguments '(#:include '("\\.el$" "\\.wsdl$" "\\.info$")))
(propagated-inputs
(define-public emacs-company
(package
(name "emacs-company")
- (version "0.9.11")
+ (version "0.9.12")
(source
(origin
(method git-fetch)
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "0x7ag716jp4xb7kmcmr8pqlxx1v0f2gkjx5gx34wxxqfrndwyx8i"))))
+ (base32 "0c31amc6gyfkmb1ii6mm56c75za1yxkj2iyhrjc45nn2mrh7yj7a"))))
(build-system emacs-build-system)
(arguments
`(#:phases
#t)))
#:tests? #t
#:test-command '("make" "test-batch")))
- (home-page "http://company-mode.github.io/")
+ (home-page "https://company-mode.github.io/")
(synopsis "Modular text completion framework")
(description
"Company is a modular completion mechanism. Modules for retrieving
(substitute* "mit-scheme-doc.el"
(("http://www\\.gnu\\.org/software/mit-scheme/documentation/mit-scheme-ref/")
(string-append "file:" doc-dir "/mit-scheme-ref/")))))))))
- (home-page "http://groups.csail.mit.edu/mac/users/gjs/6.945/dont-panic/")
+ (home-page "https://groups.csail.mit.edu/mac/users/gjs/6.945/dont-panic/")
(synopsis "MIT-Scheme documentation lookup for Emacs")
(description
"This package provides a set of Emacs functions to search definitions of
(package
(name "emacs-ffap-rfc-space")
(version "12")
- (home-page "http://user42.tuxfamily.org/ffap-rfc-space/index.html")
+ (home-page "https://user42.tuxfamily.org/ffap-rfc-space/index.html")
(source (origin
(method url-fetch)
(uri "http://download.tuxfamily.org/user42/ffap-rfc-space.el")
@code{org-mode} to be rendered as UTF-8 characters.")
(license license:gpl3+)))
+(define-public emacs-org-superstar
+ (package
+ (name "emacs-org-superstar")
+ (version "1.0.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/integral-dw/org-superstar-mode.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0q6180qwjpha10zsiw0ni6lanyjwlj8141a6qivfcs8nwczz7nvz"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-org" ,emacs-org)))
+ (home-page "https://github.com/integral-dw/org-superstar-mode")
+ (synopsis "Prettify headings and plain lists in Org mode")
+ (description "This package prettifies headings and plain lists in
+Org mode. It is a direct descendant of @code{org-bullets}, with most
+of the code base completely rewritten.
+
+Currently, this package prettifies Org heading lines by:
+@itemize
+@item replacing trailing bullets by UTF-8 bullets,
+@item hiding leading stars, customizing their look or removing them from vision,
+@item applying a custom face to the header bullet,
+@item applying a custom face to the leading bullets,
+@item using double-bullets for inline tasks,
+@item (optional) using special bullets for TODO keywords.
+@end itemize
+
+It also prettifies Org plain list bullets by:
+@itemize
+@item replacing each bullet type (*, + and -) with UTF-8 bullets,
+@item applying a custom face to item bullets.
+@end itemize
+
+Features degrade gracefully when viewed from terminal.")
+ (license license:gpl3+)))
+
(define-public emacs-org-pomodoro
;; Last release version was from 2016.
(let ((commit "aa07c11318f91219336197e62c47bc7a3d090479")
(define-public emacs-solarized-theme
(package
(name "emacs-solarized-theme")
- (version "1.2.2")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/bbatsov/solarized-emacs/")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0zcj9jf8nlsj9vms888z2vs76q54n8g8r9sh381xad3x8d6lrlb3"))))
+ (version "1.3.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/bbatsov/solarized-emacs/")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "15ql8xcixgm7mbs7rsbybwszanqibq057j5b5ds89a31dw7zxf1g"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-dash" ,emacs-dash)))
;; the Expat license.
(license license:gpl3+)))
+(define-public emacs-persp-mode
+ (package
+ (name "emacs-persp-mode")
+ (version "2.9.8")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Bad-ptr/persp-mode.el.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0b4y7a6j70s9lvr37riyy9k5kh3yvmx0m6nd9c0c8572ji4ij65g"))))
+ (build-system emacs-build-system)
+ (home-page "https://github.com/Bad-ptr/persp-mode.el")
+ (synopsis "Switch between named \"perspectives\" shared among frames")
+ (description
+ "This package extends @code{perspective.el} to enable perspectives that
+can be saved to and restored from a file.")
+ (license license:gpl2+)))
+
(define-public emacs-test-simple
(package
(name "emacs-test-simple")
(base32
"1zm1j4w0f3h01bmmpsv4j4mh6i13nnl8fcqlj2hsa1ncy1lgi8q7"))))
(build-system emacs-build-system)
- (home-page "http://jblevins.org/projects/markdown-mode/")
+ (home-page "https://jblevins.org/projects/markdown-mode/")
(synopsis "Emacs Major mode for Markdown files")
(description
"Markdown-mode is a major mode for editing Markdown-formatted text files
;; There hasn't been a tag or release since 2016, so we take the latest
;; commit.
(define-public emacs-sly
- (let ((commit "0a3b81770e46b93b9ffd8b9ac5254e0b88d1b13d")
- (revision "3"))
+ (let ((commit "86a63df73360be51529806c7ed9b775b3f02284d")
+ (revision "4"))
(package
(name "emacs-sly")
(version (git-version "1.0.0" revision commit))
(file-name (git-file-name name version))
(sha256
(base32
- "1q5ga4mxa0ffa4zb2y0zfwmgzjggx4fn1y4bl2x7ac6ynvb32zkj"))))
+ "0sx6fdckcfcld41db0695svvlvllnfaazwx513686gnykwfd209n"))))
(build-system emacs-build-system)
(native-inputs
`(("texinfo" ,texinfo)))
#:phases
;; The package provides autoloads.
(modify-phases %standard-phases
- (delete 'make-autoloads))))
+ (delete 'make-autoloads)
+ (delete 'enable-autoloads-compilation))))
(synopsis "Quicklisp support for SLY")
(description
"@command{sly-quicklisp} is an external contrib for SLY that provides a
(license license:gpl3+))))
(define-public emacs-sly-asdf
- (let ((commit "4e323bc28da2f07fd799b6a31b94fd93848b5f3c")
- (revision "2"))
+ (let ((commit "ad248056ded3099b0528b6111ba335e835d9e5a7")
+ (revision "3"))
(package
(name "emacs-sly-asdf")
(version (git-version "0.1.0" revision commit))
(file-name (git-file-name name version))
(sha256
(base32
- "16sc33jhc6ik4ilsyqc3cjpi6v0wdmwjlwrzjwd6yym11bscsmad"))))
+ "0lip0spmglny3y612pxn3rfnpdaj12c9f7ya7bprryg2gvcdippa"))))
(build-system emacs-build-system)
(propagated-inputs
- `(("emacs-sly" ,emacs-sly)))
+ `(("emacs-sly" ,emacs-sly)
+ ("emacs-popup" ,emacs-popup)))
(arguments
'(#:include (cons* "\\.lisp$" "\\.asd$" %default-include)))
(synopsis "ASDF contrib for SLY")
(propagated-inputs
`(("emacs-sly" ,emacs-sly)))
(arguments
- '(#:include (cons* "\\.lisp$" "\\.asd$" %default-include)))
+ '(#:include (cons* "\\.lisp$" "\\.asd$" %default-include)
+ #:phases (modify-phases %standard-phases
+ ;; Byte compilation of the autoload file fails.
+ (delete 'enable-autoloads-compilation))))
(synopsis "Named-readtables support for SLY")
(description
"@command{sly-named-readtables} is an external contrib for SLY that
#:phases
;; The package provides autoloads.
(modify-phases %standard-phases
- (delete 'make-autoloads))))
+ (delete 'make-autoloads)
+ (delete 'enable-autoloads-compilation))))
(synopsis "Expand Common Lisp macros inside source files with SLY")
(description
"@command{sly-macrostep} is a SLY contrib for expanding CL macros right
(license license:gpl3+)))
(define-public emacs-evil-collection
- (let ((commit "eb36c82a84d313e961777dc78fd4ff1d718efdf6")
+ (let ((commit "a478a95a8a3665e40bdae3bab2a0519db6c1f29c")
(revision "13"))
(package
(name "emacs-evil-collection")
(file-name (git-file-name name version))
(sha256
(base32
- "0wi84x9176y4xjl7zpn882achfamx3a2ixlj4nvflxfh6q1qg7bz"))))
+ "15ii5lw6hs4yyl22yyzfwzagdma2sman4rm5gq4m9773g4ava515"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-evil" ,emacs-evil)
(name "emacs-org")
;; emacs-org-contrib inherits from this package. Please update it as
;; well.
- (version "9.3.2")
+ (version "9.3.6")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/org-" version ".tar"))
(sha256
- (base32 "1275s3hzyka2wwxl6nc2sndnwyl7kbc1nnl0hrznxb3wpy2abfd6"))))
+ (base32 "0jwpgfzjvf1hd3mx582pw86hysdryaqzp69hk6azi9kmq4bzk87d"))))
(build-system emacs-build-system)
(home-page "https://orgmode.org/")
(synopsis "Outline-based notes management and organizer")
(package
(inherit emacs-org)
(name "emacs-org-contrib")
- (version "20200126")
+ (version "20200213")
(source
(origin
(method url-fetch)
(uri (string-append "https://orgmode.org/elpa/"
"org-plus-contrib-" version ".tar"))
(sha256
- (base32 "08yik0i8ya2x5j4vsnwxdcdlcxbiq58lvy30vcbdbf0hqrd40kjv"))))
+ (base32 "0g6rrrwplrifz4ip0jg638m4kvpvdg03hwnyghd813w0lm935mh5"))))
(arguments
`(#:modules ((guix build emacs-build-system)
(guix build utils)
(map basename (find-files out)))
(org+contrib-files
(map basename (find-files org)))
- (duplicates (lset-intersection
- string=? contrib-files org+contrib-files)))
+ (duplicates (lset-intersection string=?
+ contrib-files
+ org+contrib-files)))
(with-directory-excursion
- (string-append
- out "/share/emacs/site-lisp")
+ (string-append out "/share/emacs/site-lisp")
(for-each delete-file duplicates))
#t))))))
(propagated-inputs
(license license:gpl3+)))
(define-public emacs-yasnippet-snippets
- (let ((commit "885050d34737e2fb36a3e7759d60c09347bd4ce0")
- (revision "1"))
- (package
- (name "emacs-yasnippet-snippets")
- (version (string-append "1-" revision "." (string-take commit 8)))
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/AndreaCrotti/yasnippet-snippets")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1m935zgglw0iakzrixld5rcjz3wnj84f8wy2mvc3pggjri9l0qr9"))))
- (build-system trivial-build-system)
- (arguments
- `(#:modules ((ice-9 ftw)
- (ice-9 regex)
- (guix build utils))
- #:builder
- (begin
- (use-modules (ice-9 ftw)
- (ice-9 regex)
- (guix build utils))
- (with-directory-excursion (assoc-ref %build-inputs "source")
- (for-each (lambda (dir)
- (copy-recursively
- dir
- (string-append %output
- "/share/emacs/yasnippet-snippets/"
- dir)))
- (scandir "." (lambda (fname)
- (and (string-match "-mode$" fname)
- (directory-exists? fname))))))
- #t)))
- (home-page "https://github.com/AndreaCrotti/yasnippet-snippets")
- (synopsis "Collection of YASnippet snippets for many languages")
- (description
- "Provides Andrea Crotti's collection of YASnippet snippets. After installation,
+ (package
+ (name "emacs-yasnippet-snippets")
+ (version "0.20")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/AndreaCrotti/yasnippet-snippets")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "095w7cdmfwmmr6426mbq15n0a5izgbmv9408m9yh1pqz5x3v3vsx"))))
+ (build-system trivial-build-system)
+ (arguments
+ `(#:modules ((guix build utils))
+ #:builder
+ (begin
+ (use-modules (guix build utils))
+ (let* ((source (assoc-ref %build-inputs "source"))
+ (out (assoc-ref %outputs "out"))
+ (snippet-dir
+ (string-append out "/share/emacs/yasnippet-snippets/")))
+ (with-directory-excursion source
+ (mkdir-p snippet-dir)
+ (copy-recursively "snippets" snippet-dir)))
+ #t)))
+ (home-page "https://github.com/AndreaCrotti/yasnippet-snippets")
+ (synopsis "Collection of YASnippet snippets for many languages")
+ (description
+ "Provides Andrea Crotti's collection of YASnippet snippets. After installation,
the snippets will be in \"~/.guix-profile/share/emacs/yasnippet-snippets/\".
To make YASnippet aware of these snippets, add the above directory to
@code{yas-snippet-dirs}.")
- (license license:expat))))
+ (license license:gpl3+)))
(define-public emacs-helm-c-yasnippet
(let ((commit "65ca732b510bfc31636708aebcfe4d2d845b59b0")
(build-system gnu-build-system)
(native-inputs `(("emacs" ,emacs-minimal)))
(arguments
- (let ((elisp-dir (string-append "/share/emacs/site-lisp/guix.d"
- "/gnuplot-" version)))
+ (let ((elisp-dir "/share/emacs/site-lisp"))
`(#:modules ((guix build gnu-build-system)
(guix build utils)
(guix build emacs-utils))
(define-public emacs-which-key
(package
(name "emacs-which-key")
- (version "3.3.1")
+ (version "3.4.0")
(source
(origin
(method git-fetch)
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "1dh6kr00wmql46whjkvnl953zngiv5j99ypvr1b3cb2174623afb"))))
+ (base32 "1ahgb7dqdc75farkl0fg0a6hvx2067gdvjq99cd3z2dz56km0p05"))))
(build-system emacs-build-system)
(arguments
`(#:tests? #t
(license license:gpl3+)))
(define-public emacs-slack
- (let ((commit "10fbb81f567b44647ad125a48ecd72df106fb624")
- (revision "6"))
+ (let ((commit "b7b9eada0bf62d40dfe764b00f55913a2d3d742e")
+ (revision "7"))
(package
(name "emacs-slack")
(version (git-version "0.0.2" revision commit))
(file-name (git-file-name name commit))
(sha256
(base32
- "01ln9rbalgpxw6rbr4czhy6bd8wrrpyf0qgn2chcq3zmmrn4sy1z"))))
+ "0cqr7jnfxzb0z2wy79pdwpv9cvmawjif1kin3zbp8q7zhwrq09v0"))))
(build-system emacs-build-system)
(arguments
`(#:phases
(base32
"0vb338bhjpsnrf60qgxny4z5rjrnifahnrv9axd4shay89d894zq"))))
(build-system emacs-build-system)
+ ;; Byte compilation of the autoload file fails.
+ (arguments
+ `(#:phases (modify-phases %standard-phases
+ (delete 'enable-autoloads-compilation))))
(home-page "https://elpa.gnu.org/packages/seq.html")
(synopsis
"Forward @code{cl-generic} compatibility for Emacs before version 25")
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-parsebib" ,emacs-parsebib)))
- (home-page "http://joostkremers.github.io/ebib/")
+ (home-page "https://joostkremers.github.io/ebib/")
(synopsis "BibTeX database manager for Emacs")
(description
"Ebib is a BibTeX database manager that runs in GNU Emacs.
(license license:gpl3+)))
(define-public emacs-helm-bibtex
- (let ((commit "8ed898fb5a68f18e9bb9973832a5c1f8abcfc463")
- (revision "1"))
+ (let ((commit "d4471232be26793fbf56c0ac3690b5f537c378b9")
+ (revision "2"))
(package
(name "emacs-helm-bibtex")
(version (string-append "2.0.0" "-" revision "."
(file-name (git-file-name name version))
(sha256
(base32
- "14lyx0vbqr97p3anzrsp7m3q0kqclyjcdwplpraim403fcklzbnz"))))
+ "1bkzhic6qckb267025il1r3xcpz99kisphxiafni1pxvf9jafr0j"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-helm" ,emacs-helm)
(license license:gpl3+))))
(define-public emacs-racket-mode
- (let ((commit "2a9a102a097d04fbcd2a443fec84078036c2e277")
- (revision "4"))
+ (let ((commit "5f396fa91fc22310f5c519aa658436a1a5251846")
+ (revision "5"))
(package
(name "emacs-racket-mode")
(version (git-version "0.0.2" revision commit))
(file-name (git-file-name name version))
(sha256
(base32
- "1n71dxxh62jixq20b5haapv651dxc0zyrxpl1d0yqsg8ncp726bl"))))
+ "1214y08i0c51d1vzw9jzyf79vyfqizdy6m0980qs13qbdwsj32v0"))))
(build-system emacs-build-system)
(arguments
`(#:include '("\\.el$" "\\.rkt$")))
(propagated-inputs
`(("emacs-faceup" ,emacs-faceup)
("emacs-s" ,emacs-s)))
- (home-page "https://github.com/greghendershott/racket-mode")
- (synopsis "Major mode for Racket language")
+ (home-page "https://www.racket-mode.com/")
+ (synopsis "Major mode for the Racket language")
(description "@code{racket-mode} provides:
@itemize
(define-public emacs-sml-mode
(package
(name "emacs-sml-mode")
- (version "6.9")
+ (version "6.10")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/sml-mode-"
version ".el"))
(sha256
- (base32 "1bdg9ywpvj85hxqah9w1raxlcrhkyx67nw22jwd1bd5j0fhmgqij"))))
+ (base32 "01yf0s474r9xhj6nbs14ljn9ccxb5yy758i17c8nmgmqvm8fx7sb"))))
(build-system emacs-build-system)
(home-page "https://elpa.gnu.org/packages/sml-mode.html")
(synopsis "Major mode for editing (Standard) ML")
(revision "1"))
(package
(name "emacs-recent-addresses")
- (home-page "http://nschum.de/src/emacs/recent-addresses/")
+ (home-page "https://nschum.de/src/emacs/recent-addresses/")
(version (git-version "0.1" revision commit))
(source (origin
(method git-fetch)
(license license:gpl3+))))
(define-public emacs-tldr
- (let ((commit "398b197c8d2238628b07e1b32d0f373876279f4c"))
+ (let ((commit "7203d1be3dcbf12131846ffe06601933fa874d74"))
(package
(name "emacs-tldr")
- (version (git-version "0" "0" commit))
+ (version (git-version "0" "1" commit))
(home-page "https://github.com/kuanyui/tldr.el")
(source (origin
(method git-fetch)
(commit commit)))
(sha256
(base32
- "0iq7qlis6c6r2qkdpncrhh5vsihkhvy5x4y1y8cjb7zxkh62w33f"))
+ "1bw6la463l2yfm7rp76ga4makfy4kpxgwi7ni5gxk31w11g26ryk"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-request" ,emacs-request)))
(synopsis "Simplified and community-driven man pages for Emacs")
(description "@code{emacs-tldr} allows the user to access tldr pages
from within emacs. The @code{tldr} pages are a community effort to simplify
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((perl (assoc-ref inputs "perl"))
(dir (string-append (assoc-ref outputs "out")
- "/share/emacs/site-lisp/guix.d/edbi-"
- ,version)))
+ "/share/emacs/site-lisp")))
(substitute* (string-append dir "/edbi.el")
(("\"perl\"") (string-append "\"" perl "/bin/perl\"")))
(chmod (string-append dir "/edbi-bridge.pl") #o555)
(define-public emacs-amx
(package
(name "emacs-amx")
- (version "3.2")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/DarwinAwardWinner/amx")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0bb8y1dmzyqkrb4mg6zndcsxppby3glridv2aap2pv05gv8kx7mj"))))
+ (version "3.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/DarwinAwardWinner/amx")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0ikjzs119g57cwh2v3jmy63lggqc0ib99q5gsl93slkk4y2ihavw"))))
(build-system emacs-build-system)
- (propagated-inputs `(("emacs-s" ,emacs-s)))
+ (propagated-inputs
+ `(("emacs-s" ,emacs-s)))
(home-page "https://github.com/DarwinAwardWinner/amx")
- (synopsis "Alternative interface for M-x")
+ (synopsis "Alternative M-x interface for Emacs")
(description "Amx is an alternative interface for M-x in Emacs. It
provides several enhancements over the ordinary
@code{execute-extended-command}, such as prioritizing your most-used commands
in the completion list and showing keyboard shortcuts, and it supports several
-completion systems for selecting commands, such as ido and ivy.")
+completion systems for selecting commands, such as Ido and Ivy.")
(license license:gpl3+)))
(define-public emacs-lorem-ipsum
(define-public emacs-lsp-ui
(package
(name "emacs-lsp-ui")
- (version "6.0")
+ (version "6.2")
(source (origin
(method git-fetch)
(uri (git-reference
(file-name (git-file-name name version))
(sha256
(base32
- "1r4327fd8cvjxfwkddp5c4bdskyncbs4sx9m3z2w4d773y2jrakc"))))
+ "024753bi0p1jyjhw7wk8k6s16kbwab5ar4cfasvbn8g08acf293b"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-dash" ,emacs-dash)
(let ((commit "63cbf81f166fc71861d8e3d246df8e5ccedcb9bb"))
(package
(name "emacs-forge")
- (version (git-version "0.1.0" "2" commit))
+ (version (git-version "0.1.0" "3" commit))
(source
(origin
(method git-fetch)
(sha256
(base32
"1yf2xjx3459py6rji740jm8bmh2pv66ghnbjxsvjd4jf9kcdav83"))))
- (build-system gnu-build-system)
+ (build-system emacs-build-system)
(native-inputs
`(("texinfo" ,texinfo)
("emacs" ,emacs-minimal)))
("emacs-transient" ,emacs-transient)))
(arguments
`(#:tests? #f ;no tests
- #:modules ((srfi srfi-26)
- (guix build gnu-build-system)
- ((guix build emacs-build-system) #:prefix emacs:)
- (guix build utils)
- (guix build emacs-utils))
- #:imported-modules (,@%gnu-build-system-modules
- (guix build emacs-build-system)
- (guix build emacs-utils))
#:phases
(modify-phases %standard-phases
- (delete 'configure)
- (delete 'install)
- (add-after 'unpack 'delete-doc-targets
+ (add-after 'unpack 'build-info-manual
(lambda _
- (substitute* "./Makefile"
- (("lisp docs") "lisp"))))
- (add-after 'delete-doc-targets 'chdir-lisp
+ (invoke "make" "info")
+ ;; Move the info file to lisp so that it gets installed by the
+ ;; emacs-build-system.
+ (rename-file "docs/forge.info" "lisp/forge.info")))
+ (add-after 'build-info-manual 'chdir-lisp
(lambda _
- (chdir "lisp")))
- (add-after 'chdir-lisp 'emacs-install
- (assoc-ref emacs:%standard-phases 'install))
- (add-after 'emacs-install 'emacs-make-autoloads
- (assoc-ref emacs:%standard-phases 'make-autoloads))
- (add-after 'build 'install-elc
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (el-dir (string-append
- out "/share/emacs/site-lisp/guix.d/forge-"
- ,version)))
- (for-each (cut install-file <> el-dir)
- (find-files "." "\\.elc"))
- #t)))
- (add-after 'install-elc 'install-doc
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (info (string-append out "/share/info")))
- (with-directory-excursion "../docs"
- (invoke "makeinfo" "forge.texi")
- (install-file "forge.info" info)
- #t)))))))
+ (chdir "lisp")
+ #t)))))
(home-page "https://github.com/magit/forge/")
(synopsis "Access Git forges from Magit")
- (description
- "Work with Git forges, such as Github and Gitlab, from the comfort of
-Magit and the rest of Emacs.")
+ (description "Work with Git forges, such as Github and Gitlab, from the
+comfort of Magit and the rest of Emacs.")
(license license:gpl3+))))
(define-public emacs-matcha
`(("emacs-ivy" ,emacs-ivy)))
(home-page "https://github.com/redguardtoo/eacl")
(synopsis "Auto-complete lines by using @code{grep} on a project")
- (description "This package provides auto-completion cammands for single
+ (description "This package provides auto-completion commands for single
and multiple lines of code in a project.")
(license license:gpl3+)))
(base32
"1cgxv4aibkvv6lnssynn0438a615fz3zq8hg9sb0lhfgsr99pxln"))))
(build-system emacs-build-system)
- (home-page "http://nschum.de/src/emacs/rotate-text/")
+ (home-page "https://nschum.de/src/emacs/rotate-text/")
(synopsis "Cycle through words, symbols and patterns in Emacs")
(description "@code{rotate-text} allows you rotate to commonly
interchanged text with a single keystroke. For example, you can toggle
(define-public emacs-modus-themes
(package
(name "emacs-modus-themes")
- (version "0.4.0")
+ (version "0.6.0")
(source
(origin
(method git-fetch)
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "0c4y3y9mjf6x2b9087fk6nkxvgvm9f5l1p2vdwqny80vp4krsb8r"))))
+ (base32 "15z6qq0b0npp7hscmh04i3mi10bynzdy52fv2b160nji264zvcwa"))))
(build-system emacs-build-system)
(home-page "https://gitlab.com/protesilaos/modus-themes")
(synopsis "Emacs themes designed for colour-contrast accessibility")
color. Designed for 256-color terminals. Comes in light and dark!")
(license license:gpl3+))))
+(define-public emacs-spacemacs-theme
+ (let ((commit "e088bff4f190495615c29de93079aaa823e2300c")
+ (revision "0"))
+ (package
+ (name "emacs-spacemacs-theme")
+ (version (git-version "0" revision commit)) ;no release yet
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/nashamri/spacemacs-theme.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "09p5pzy3ibrl8dxmg10v8j16wxdn1fkdqpbi8l9pgfib2azmnvnc"))))
+ (build-system emacs-build-system)
+ (home-page "https://github.com/nashamri/spacemacs-theme")
+ (synopsis
+ "Light and dark theme for spacemacs that supports GUI and terminal")
+ (description
+ "Spacemacs theme is an Emacs color theme that started as
+a theme for Spacemacs. The theme comes with dark and light variants
+and it should work well with 256 color terminals.")
+ (license license:gpl3+))))
+
(define-public emacs-elixir-mode
(package
(name "emacs-elixir-mode")
"https://github.com/elixir-editors/emacs-elixir")
(synopsis "Major mode for editing Elixir files")
(description
- "Elixir-Mode Provides font-locking, indentation and navigation support
+ "Elixir-Mode provides font-locking, indentation and navigation support
for the Elixir programming language.")
(license license:gpl3+)))
such as:
@itemize
-- switch to last buffer,
-- toggle single window display,
-- toggle between horizontal and vertical splits,
-- move borders more naturally,
-- swap windows à-la @code{windmove}.
-@end itemize\n")
+@item switch to last buffer,
+@item toggle single window display,
+@item toggle between horizontal and vertical splits,
+@item move borders more naturally,
+@item swap windows à-la @code{windmove}.
+@end itemize")
(license license:gpl3+)))
(define-public emacs-flycheck-cpplint
sense in the @samp{To} and @samp{Cc} headers). When in the message body, this
executes a different function (default: @code{indent-relative}).")
(license license:gpl2+))))
+
+(define-public emacs-gnus-harvest
+ (let ((commit "feda071a87b799bd5d23cacde3ee71f0b166e75d")
+ (revision "0"))
+ (package
+ (name "emacs-gnus-harvest")
+ (version (git-version "1.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/jwiegley/gnus-harvest.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "08zb7vc3v3wdxkzgi902vlc5ybfvm8fxrvm5drnwfsjj9873pbcb"))))
+ (build-system emacs-build-system)
+ (inputs
+ `(("sqlite" ,sqlite)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'patch-exec-paths
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((sqlite (assoc-ref inputs "sqlite"))
+ (file "gnus-harvest.el"))
+ (make-file-writable file)
+ (emacs-substitute-variables file
+ ("gnus-harvest-sqlite-program"
+ (string-append sqlite "/bin/sqlite3"))))
+ #t)))))
+ (home-page "https://github.com/jwiegley/gnus-harvest")
+ (synopsis
+ "Harvest email addresses from read/written Gnus articles")
+ (description "@code{gnus-harvest} notices email address in every message
+or post you read or write, and collects them in a SQLite database, which can
+be easily and quickly queried to determine the completion list. It optionally
+uses BBDB and Message-X.")
+ (license license:gpl3+))))
+
+(define-public emacs-auto-dictionary-mode
+ (package
+ (name "emacs-auto-dictionary-mode")
+ (version "1.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/nschum/auto-dictionary-mode")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "191294k92qp8gmfypf0q8j8qrym96aqikzvyb9p03wqvbr3r1dsk"))))
+ (build-system emacs-build-system)
+ (home-page "http://nschum.de/src/emacs/auto-dictionary/")
+ (synopsis "Automatic dictionary switcher for Emacs spell checking")
+ (description "@code{auto-dictionary} is a minor mode that hooks into
+Flyspell's on-the-fly spell checking and extends these checks to also detect
+language. Auto-dictionary then sets @code{ispell-dictionary} to use the
+detected language.")
+ (license license:gpl2+)))
+
+(define-public emacs-persist
+ (package
+ (name "emacs-persist")
+ (version "0.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://elpa.gnu.org/packages/"
+ "persist-" version ".tar"))
+ (sha256
+ (base32 "0gpxy41qawzss2526j9a7lys60vqma1lvamn4bfabwza7gfhac0q"))))
+ (build-system emacs-build-system)
+ (home-page "http://elpa.gnu.org/packages/persist.html")
+ (synopsis "Persist variables between Emacs sessions")
+ (description
+ "This package provides variables which persist across sessions.
+Values are stored in a directory in @code{user-emacs-directory}, using
+one file per value. This makes it easy to delete or remove unused
+variables.")
+ (license license:gpl3+)))
+
+(define-public emacs-company-emoji
+ (package
+ (name "emacs-company-emoji")
+ (version "2.5.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/dunn/company-emoji/")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0r9zcbm3nb3zw5cwrkl098v5b49jbga5404bj7j55g6k4rwkjar2"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-company" ,emacs-company)))
+ (home-page "https://github.com/dunn/company-emoji/")
+ (synopsis "Company completion back-end for emoji")
+ (description
+ "This library is a Company back-end providing auto-completion for
+emoji.")
+ (license license:gpl3+)))
+
+(define-public emacs-exiftool
+ (package
+ (name "emacs-exiftool")
+ (version "0.3.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.systemreboot.net/exiftool.el/")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0bv58is66cz21yhc0qqkp1z4nk13zfi2l7i6pjbhyi0g1n88qqyv"))))
+ (build-system emacs-build-system)
+ (arguments
+ `(#:tests? #t
+ #:test-command '("make" "-C" "tests")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'configure
+ (lambda* (#:key inputs #:allow-other-keys)
+ (make-file-writable "exiftool.el")
+ (emacs-substitute-variables "exiftool.el"
+ ("exiftool-executable"
+ (string-append (assoc-ref inputs "perl-image-exiftool")
+ "/bin/exiftool")))
+ #t)))))
+ (inputs
+ `(("perl-image-exiftool" ,perl-image-exiftool)))
+ (home-page "https://git.systemreboot.net/exiftool.el/about/")
+ (synopsis "Elisp wrapper around ExifTool")
+ (description "@code{emacs-exiftool} is an Elisp wrapper around ExifTool.
+ExifTool supports reading and writing metadata in various formats including
+EXIF, XMP and IPTC.")
+ (license license:gpl3+)))
+
+(define-public emacs-password-generator
+ (package
+ (name "emacs-password-generator")
+ (version "1.01")
+ (home-page "https://github.com/zargener/emacs-password-genarator")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit "904cdb591a04305ba882ce19e1d117f5fa60f7d3")))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1qgvn79qz1h8ykm5i1qv2fja4v2y0g2i0n5sf7byhnqhqlwn63nv"))))
+ (build-system emacs-build-system)
+ (synopsis "Generate passwords inside Emacs")
+ (description "@code{emacs-password-generator} provides simple functions to
+generate random passwords and insert them into the current buffer. It also
+supports generation of phonetic and numeric passwords.")
+ (license license:artistic2.0)))
+
+(define-public emacs-csv
+ (package
+ (name "emacs-csv")
+ (version "2.1")
+ (home-page "https://gitlab.com/u11/csv.el")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "V" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1vmazjrfcsa9aa9aw8bq5sazdhqvhxyj837dyw5lmh8gk7z0xdaa"))))
+ (build-system emacs-build-system)
+ (synopsis "Elisp functions for reading and parsing CSV files")
+ (description "@code{csv.el} provides functions for reading and parsing CSV (Comma
+Separated Value) files. It follows the format as defined in RFC 4180 \"Common
+Format and MIME Type for CSV Files\" (@url{http://tools.ietf.org/html/rfc4180}).")
+ (license license:gpl3+)))
+
+(define-public emacs-org-journal
+ (package
+ (name "emacs-org-journal")
+ (version "2.0.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/bastibe/org-journal.git")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "18dqd0jy2x530lk0h4fcn9cld9qh4w7b3vxa60fpiia628vsv1dg"))))
+ (build-system emacs-build-system)
+ (home-page "https://github.com/bastibe/org-journal")
+ (synopsis "Simple Org mode journaling mode")
+ (description
+ "Org Journal is a set of functions to maintain a simple personal diary /
+journal using in Emacs, adapted from
+@url{https://www.emacswiki.org/emacs/PersonalDiary}. Convenient bindings
+allow the creation of journal records in the current daily, weekly, monthly or
+yearly file and search within all records or specified time intervals. All
+records can be browsed and searched from the Emacs Calendar for convenience.
+All entries in a specified TODO state will be carried over to the next day.")
+ (license license:bsd-3)))
+
+(define-public emacs-org-static-blog
+ (package
+ (name "emacs-org-static-blog")
+ (version "1.3.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/bastibe/org-static-blog")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "15iy3z8rglaqbx1fz14inh18ksgjsmq30b8hyv3lgjvcc9ssaiw0"))))
+ (build-system emacs-build-system)
+ (home-page "https://github.com/bastibe/org-static-blog")
+ (synopsis
+ "Simple Org mode based static blog generator")
+ (description
+ "@code{emacs-org-static-blog} is one more static blog generator, it
+focuses on being simple. All files are simple Org files in a directory. The
+only requirement is that every Org file must have a @samp{title} and
+a @samp{date} keywords, and optionally, a @samp{filetags} keyword.")
+ (license license:bsd-3)))
+
+(define-public emacs-ddskk
+ ;; XXX: Upstream adds code names to their release tags, so version and code
+ ;; name below need to be updated together.
+ (let ((version "16.3")
+ (code-name "Kutomatsunai"))
+ (package
+ (name "emacs-ddskk")
+ (version version)
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/skk-dev/ddskk")
+ (commit (string-append "ddskk-" version "_" code-name))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0ln4x8f35z5y3kf9m718g223bn3lzcmw40jfjg2j5yi24ydf1wm9"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:modules ((guix build gnu-build-system)
+ (guix build utils)
+ (guix build emacs-utils))
+ #:imported-modules (,@%gnu-build-system-modules
+ (guix build emacs-utils))
+ #:test-target "test"
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'configure
+ (lambda* (#:key outputs #:allow-other-keys)
+ (make-file-writable "SKK-MK")
+ (emacs-substitute-variables "SKK-MK"
+ ("PREFIX" (assoc-ref outputs "out"))
+ ("LISPDIR" '(expand-file-name "/share/emacs/site-lisp" PREFIX))
+ ("SKK_PREFIX" "")
+ ("SKK_INFODIR" '(expand-file-name "info" PREFIX)))
+ (for-each make-file-writable (find-files "./doc"))
+ #t)))))
+ (native-inputs
+ `(("emacs-minimal" ,emacs-minimal)))
+ (home-page "https://github.com/skk-dev/ddskk")
+ (synopsis "Simple Kana to Kanji conversion program")
+ (description
+ "Daredevil SKK is a version of @acronym{SKK, Simple Kana to Kanji
+conversion program}, a Japanese input method on Emacs.")
+ (license license:gpl2+))))