summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--guix/wigust/packages/emacs.scm59
1 files changed, 59 insertions, 0 deletions
diff --git a/guix/wigust/packages/emacs.scm b/guix/wigust/packages/emacs.scm
index 35641d8..a2e864d 100644
--- a/guix/wigust/packages/emacs.scm
+++ b/guix/wigust/packages/emacs.scm
@@ -1393,3 +1393,62 @@ For AsciiDoc customization see
Magit and the rest of Emacs.")
(license license:gpl3+))))
+(define-public emacs-libgit
+ (let ((commit "72d6b273159dd034fa2fb7bffb1ebff5e7ccba11"))
+ (package
+ (name "emacs-libgit")
+ (version (git-version "0.1" "1" commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/magit/libegit2.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "15vs68x7lcav5ihl27y3wwxv05whabahx6l7w3jbr9g5c8w38f8g"))))
+ (inputs
+ `(("libgit", libgit2)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'configure
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((libgit (assoc-ref inputs "libgit")))
+ ;; .el is read-only in git.
+ (chmod "libgit.el" #o644)
+ ;; Specify the absolute file names of the various
+ ;; programs so that everything works out-of-the-box.
+ (emacs-substitute-variables
+ "libgit.el"
+ ("libgit--module-file"
+ (string-append libgit "/lib/libgit2.so")))))))))
+ (build-system emacs-build-system)
+ (home-page "https://github.com/TheBB/libegit2")
+ (synopsis "Thin bindings to libgit2.")
+ (description
+ "This package provides thin bindings to libgit2. To use these bindings,
+issue a call to (require 'libgit). This will load the dynamic module,
+or prompt the user to build it.
+")
+ (license license:gpl2+))))
+
+(define-public emacs-magit-checkout
+ (let ((commit "5385e81f98abed2757720479e10f77a6021af28a"))
+ (package
+ (inherit emacs-magit)
+ (name "emacs-magit-checkout")
+ (version (git-version "2.90.1" "1" commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/magit/magit.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1qwvnrqwd91d9w3ryv9lyc15i37la8yhcwk1b1v4n58sp0l6y5br"))))
+ (propagated-inputs
+ `(("emacs-libgit" ,emacs-libgit)
+ ,@(package-propagated-inputs emacs-magit))))))