summaryrefslogtreecommitdiff
path: root/gnu/packages/emacs.scm
diff options
context:
space:
mode:
authorFederico Beffa <beffa@fbengineering.ch>2015-12-26 11:02:01 +0100
committerFederico Beffa <beffa@fbengineering.ch>2016-02-03 10:48:36 +0100
commite5045f303a0214c2e436c128ce3d6c59cf276f2a (patch)
tree92a15969e303fe8d8b6eaf6ebe9fb9c09e04ce9e /gnu/packages/emacs.scm
parent58a7dc1340986f11ff54a970f613a03e8ebd741c (diff)
gnu: Add emacs-constants.
* gnu/packages/emacs.scm (emacs-constants): New variable. * gnu/packages/patches/emacs-constants-lisp-like.patch: New patch. * gnu-system.am (dist_patch_DATA): Add it.
Diffstat (limited to 'gnu/packages/emacs.scm')
-rw-r--r--gnu/packages/emacs.scm41
1 files changed, 41 insertions, 0 deletions
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 852945c135..50419c0537 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -26,6 +26,9 @@
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
+ #:use-module (guix gexp)
+ #:use-module (guix monads)
+ #:use-module (guix store)
#:use-module (guix build-system gnu)
#:use-module (guix build-system emacs)
#:use-module (guix build-system glib-or-gtk)
@@ -1297,3 +1300,41 @@ to a key in your preferred mode.")
"This package provides a set of Emacs functions to search definitions of
identifiers in the MIT-Scheme documentation.")
(license license:gpl2+)))
+
+;;; XXX: move this procedure to an utility module
+(define* (uncompressed-file-fetch url hash-algo hash
+ #:optional name
+ #:key (system (%current-system))
+ (guile (default-guile)))
+ (mlet %store-monad ((drv (url-fetch url hash-algo hash name
+ #:system system
+ #:guile guile)))
+ (gexp->derivation (or name (basename url))
+ #~(begin
+ (mkdir #$output)
+ (setenv "PATH"
+ (string-append #$gzip "/bin"))
+ (chdir #$output)
+ (copy-file #$drv (basename #$url))))))
+
+(define-public emacs-constants
+ (package
+ (name "emacs-constants")
+ (version "2.2")
+ (source
+ (origin
+ (file-name (string-append name "-" version ".el"))
+ (method uncompressed-file-fetch)
+ (uri "https://staff.fnwi.uva.nl/c.dominik/Tools/constants/constants.el")
+ (patches
+ (list (search-patch "emacs-constants-lisp-like.patch")))
+ (sha256
+ (base32
+ "14q094aphsjhq8gklv7i5a7byl0ygz63cv3n6b5p8ji2jy0mnnw3"))))
+ (build-system emacs-build-system)
+ (home-page "https://staff.fnwi.uva.nl/c.dominik/Tools/constants")
+ (synopsis "Enter definition of constants into an Emacs buffer")
+ (description
+ "This package provides functions for inserting the definition of natural
+constants and units into an Emacs buffer.")
+ (license license:gpl2+)))