summaryrefslogtreecommitdiff
path: root/gnu/packages/emacs.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/emacs.scm')
-rw-r--r--gnu/packages/emacs.scm205
1 files changed, 134 insertions, 71 deletions
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 9c799aeffe..02d597d82c 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -751,77 +751,91 @@ provides an optional IDE-like error list.")
;;;
(define-public emacs-w3m
- (package
- (name "emacs-w3m")
- (version "1.4.538+0.20141022")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://debian/pool/main/w/w3m-el/w3m-el_"
- version ".orig.tar.gz"))
- (sha256
- (base32
- "0zfxmq86pwk64yv0426gnjrvhjrgrjqn08sdcdhmmjmfpmqvm79y"))))
- (build-system gnu-build-system)
- (native-inputs `(("autoconf" ,autoconf)
- ("emacs" ,emacs-minimal)))
- (inputs `(("w3m" ,w3m)
- ("imagemagick" ,imagemagick)))
- (arguments
- `(#:modules ((guix build gnu-build-system)
- (guix build utils)
- (guix build emacs-utils))
- #:imported-modules (,@%gnu-build-system-modules
- (guix build emacs-utils))
- #:configure-flags
- (let ((out (assoc-ref %outputs "out")))
- (list (string-append "--with-lispdir="
- out "/share/emacs/site-lisp")
- (string-append "--with-icondir="
- out "/share/images/emacs-w3m")
- ;; Leave .el files uncompressed, otherwise GC can't
- ;; identify run-time dependencies. See
- ;; <http://lists.gnu.org/archive/html/guix-devel/2015-12/msg00208.html>
- "--without-compress-install"))
- #:tests? #f ; no check target
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'autoconf
- (lambda _
- (zero? (system* "autoconf"))))
- (add-before 'build 'patch-exec-paths
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out"))
- (w3m (assoc-ref inputs "w3m"))
- (imagemagick (assoc-ref inputs "imagemagick"))
- (coreutils (assoc-ref inputs "coreutils")))
- (emacs-substitute-variables "w3m.el"
- ("w3m-command" (string-append w3m "/bin/w3m"))
- ("w3m-touch-command"
- (string-append coreutils "/bin/touch"))
- ("w3m-image-viewer"
- (string-append imagemagick "/bin/display"))
- ("w3m-icon-directory"
- (string-append out "/share/images/emacs-w3m")))
- (emacs-substitute-variables "w3m-image.el"
- ("w3m-imagick-convert-program"
- (string-append imagemagick "/bin/convert"))
- ("w3m-imagick-identify-program"
- (string-append imagemagick "/bin/identify")))
- #t)))
- (replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (and (zero? (system* "make" "install" "install-icons"))
- (with-directory-excursion
- (string-append (assoc-ref outputs "out")
- "/share/emacs/site-lisp")
- (for-each delete-file '("ChangeLog" "ChangeLog.1"))
- (symlink "w3m-load.el" "w3m-autoloads.el")
- #t)))))))
- (home-page "http://emacs-w3m.namazu.org/")
- (synopsis "Simple Web browser for Emacs based on w3m")
- (description
- "Emacs-w3m is an emacs interface for the w3m web browser.")
- (license license:gpl2+)))
+ ;; Emacs-w3m follows a "rolling release" model from its CVS repo. We could
+ ;; use CVS, sure, but instead we choose to use this Git mirror described on
+ ;; the home page as an "unofficial" mirror.
+ (let ((commit "0dd5691f46d314a84da63f3a7277d721815811a2"))
+ (package
+ (name "emacs-w3m")
+ (version (git-version "1.5" "0" commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ecbrown/emacs-w3m")
+ (commit commit)))
+ (sha256
+ (base32
+ "02xalyxbrkgl4n8nj7xxkmsbm6lshhwdc8bzs2l4wz3hkpgkj7x4"))))
+ (build-system gnu-build-system)
+ (native-inputs `(("autoconf" ,autoconf)
+ ("texinfo" ,texinfo)
+ ("emacs" ,emacs-minimal)))
+ (inputs `(("w3m" ,w3m)
+ ("imagemagick" ,imagemagick)))
+ (arguments
+ `(#:modules ((guix build gnu-build-system)
+ (guix build utils)
+ (guix build emacs-utils))
+ #:imported-modules (,@%gnu-build-system-modules
+ (guix build emacs-utils))
+ #:configure-flags
+ (let ((out (assoc-ref %outputs "out")))
+ (list (string-append "--with-lispdir="
+ out "/share/emacs/site-lisp")
+ (string-append "--with-icondir="
+ out "/share/images/emacs-w3m")
+ ;; Leave .el files uncompressed, otherwise GC can't
+ ;; identify run-time dependencies. See
+ ;; <http://lists.gnu.org/archive/html/guix-devel/2015-12/msg00208.html>
+ "--without-compress-install"))
+ #:tests? #f ; no check target
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'autoconf
+ (lambda _
+ (zero? (system* "autoconf"))))
+ (add-before 'configure 'support-emacs!
+ (lambda _
+ ;; For some reason 'AC_PATH_EMACS' thinks that 'Emacs 26' is
+ ;; unsupported.
+ (substitute* "configure"
+ (("EMACS_FLAVOR=unsupported")
+ "EMACS_FLAVOR=emacs"))
+ #t))
+ (add-before 'build 'patch-exec-paths
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out"))
+ (w3m (assoc-ref inputs "w3m"))
+ (imagemagick (assoc-ref inputs "imagemagick"))
+ (coreutils (assoc-ref inputs "coreutils")))
+ (make-file-writable "w3m.el")
+ (emacs-substitute-variables "w3m.el"
+ ("w3m-command" (string-append w3m "/bin/w3m"))
+ ("w3m-touch-command"
+ (string-append coreutils "/bin/touch"))
+ ("w3m-icon-directory"
+ (string-append out "/share/images/emacs-w3m")))
+ (make-file-writable "w3m-image.el")
+ (emacs-substitute-variables "w3m-image.el"
+ ("w3m-imagick-convert-program"
+ (string-append imagemagick "/bin/convert"))
+ ("w3m-imagick-identify-program"
+ (string-append imagemagick "/bin/identify")))
+ #t)))
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (and (zero? (system* "make" "install" "install-icons"))
+ (with-directory-excursion
+ (string-append (assoc-ref outputs "out")
+ "/share/emacs/site-lisp")
+ (for-each delete-file '("ChangeLog" "ChangeLog.1"))
+ (symlink "w3m-load.el" "w3m-autoloads.el")
+ #t)))))))
+ (home-page "http://emacs-w3m.namazu.org/")
+ (synopsis "Simple Web browser for Emacs based on w3m")
+ (description
+ "Emacs-w3m is an emacs interface for the w3m web browser.")
+ (license license:gpl2+))))
(define-public emacs-wget
(package
@@ -10571,3 +10585,52 @@ well as take screenshots and lock your screen. The package depends on the
availability of shell commands to do the hard work for us. These commands can
be changed by customizing the appropriate variables.")
(license license:gpl3+)))
+
+(define-public emacs-org-caldav
+ (package
+ (name "emacs-org-caldav")
+ (version "20180403")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://github.com/dengste/org-caldav/raw/"
+ "8d3492c27a09f437d2d94f2736c56d7652e87aa0"
+ "/org-caldav.el"))
+ (sha256
+ (base32
+ "1fh4gh68ddj0is99z2ccyh97v6psnyda61n2dsadzqhcxn51amlc"))))
+ (build-system emacs-build-system)
+ (propagated-inputs `(("emacs-org" ,emacs-org)))
+ (home-page "https://github.com/dengste/org-caldav")
+ (synopsis
+ "Sync Org files with external calendars via the CalDAV protocol")
+ (description
+ "Synchronize between events in Org-mode files and a CalDAV calendar.
+This code is still alpha.")
+ (license license:gpl3+)))
+
+(define-public emacs-zotxt
+ (package
+ (name "emacs-zotxt")
+ (version "20180518")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://github.com/egh/zotxt-emacs/archive/"
+ "23a4a9f74a658222027d53a9a83cd4bcc583ca8b"
+ ".tar.gz"))
+ (sha256
+ (base32
+ "1qlibaciqgsva6fc7vv9krssjq00bi880396jk7llbi3c52q9n1y"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-deferred" ,emacs-deferred)
+ ("emacs-request" ,emacs-request)))
+ (home-page "https://github.com/egh/zotxt-emacs")
+ (synopsis "Integrate Emacs with Zotero")
+ (description "This package provides two integration features between Emacs
+and the Zotero research assistant: Insertion of links to Zotero items into an
+Org-mode file, and citations of Zotero items in Pandoc Markdown files.")
+ (license license:gpl3+)))