diff options
author | Pierre Neidhardt <ambrevar@gmail.com> | 2018-06-06 11:38:42 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2018-06-08 17:04:23 +0200 |
commit | a62d872fdf8f59c01e54badeeec1cd00ce64ab96 (patch) | |
tree | 0caec5c844fd70f8b78312648e9e4cf3c87f8cd6 | |
parent | 3cacfa9e1b1e01390628761a4b5fb7463cec8b71 (diff) | |
download | guix-a62d872fdf8f59c01e54badeeec1cd00ce64ab96.tar guix-a62d872fdf8f59c01e54badeeec1cd00ce64ab96.tar.gz |
gnu: Add emacs-gif-screencast.
* gnu/packages/emacs.scm (emacs-gif-screencast): New variable.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
-rw-r--r-- | gnu/packages/emacs.scm | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index e90660a236..3c54910973 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -10813,3 +10813,53 @@ The package @code{emacs-bash-completion} is an optional dependency: if available @code{fish-completion-complete} can be configured to fall back on bash to further try completing. See @code{fish-completion-fallback-on-bash-p}.") (license license:gpl3+))) + +(define-public emacs-gif-screencast + (let ((commit "825e606950ec842304bf75cf85baef707b853b03")) + (package + (name "emacs-gif-screencast") + (version (git-version "20180309" "1" commit)) + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/Ambrevar/emacs-gif-screencast/archive/" + commit + ".tar.gz")) + (sha256 + (base32 + "1f83sdx4qj4g6byvbdq7aayissbcy5lqm43djp8h0lq455nf7jkc")))) + (build-system emacs-build-system) + (inputs + `(("scrot" ,scrot) + ("imagemagick" ,imagemagick) + ("gifsicle" ,gifsicle))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((scrot (assoc-ref inputs "scrot")) + (imagemagick (assoc-ref inputs "imagemagick")) + (gifsicle (assoc-ref inputs "gifsicle"))) + ;; Specify the absolute file names of the various + ;; programs so that everything works out-of-the-box. + (emacs-substitute-variables + "gif-screencast.el" + ("gif-screencast-program" + (string-append scrot "/bin/scrot")) + ("gif-screencast-convert-program" + (string-append imagemagick "/bin/convert")) + ("gif-screencast-cropping-program" + (string-append imagemagick "/bin/mogrify")) + ("gif-screencast-optimize-program" + (string-append imagemagick "/bin/gifsicle"))))))))) + (home-page + "https://github.com/Ambrevar/emacs-gif-screencast") + (synopsis "One-frame-per-action GIF recording") + (description + "Call @code{gif-screencast} to start a recording. +A screenshot is taken for every user action. Call +@code{gif-screencast-stop} (<f9> by default) to finish recording and create +the GIF result.") + (license license:gpl3+)))) |