about summary refs log tree commit diff
path: root/nixpkgs
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs')
-rw-r--r--nixpkgs/pkgs/applications/editors/emacs-modes/melpa-packages.nix20
1 files changed, 20 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/applications/editors/emacs-modes/melpa-packages.nix b/nixpkgs/pkgs/applications/editors/emacs-modes/melpa-packages.nix
index c48e342977e3..03e9923f737a 100644
--- a/nixpkgs/pkgs/applications/editors/emacs-modes/melpa-packages.nix
+++ b/nixpkgs/pkgs/applications/editors/emacs-modes/melpa-packages.nix
@@ -196,6 +196,26 @@ let
 
         ivy-rtags = fix-rtags super.ivy-rtags;
 
+        libgit = super.libgit.overrideAttrs(attrs: {
+          nativeBuildInputs = (attrs.nativeBuildInputs or []) ++ [ pkgs.cmake ];
+          buildInputs = attrs.buildInputs ++ [ pkgs.libgit2 ];
+          dontUseCmakeBuildDir = true;
+          postPatch = ''
+            sed -i s/'add_subdirectory(libgit2)'// CMakeLists.txt
+          '';
+          postBuild = ''
+            pushd working/libgit
+            make
+            popd
+          '';
+          postInstall = ''
+            outd=$(echo $out/share/emacs/site-lisp/elpa/libgit-**)
+            mkdir $outd/build
+            install -m444 -t $outd/build ./source/src/libegit2.so
+            rm -r $outd/src $outd/Makefile $outd/CMakeLists.txt
+          '';
+        });
+
         magit = super.magit.overrideAttrs (attrs: {
           # searches for Git at build time
           nativeBuildInputs =