about summary refs log tree commit diff
path: root/pkgs/applications/editors/emacs
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/editors/emacs')
-rw-r--r--pkgs/applications/editors/emacs/elisp-packages/manual-packages.nix2
-rw-r--r--pkgs/applications/editors/emacs/elisp-packages/manual-packages/xapian-lite/default.nix36
2 files changed, 38 insertions, 0 deletions
diff --git a/pkgs/applications/editors/emacs/elisp-packages/manual-packages.nix b/pkgs/applications/editors/emacs/elisp-packages/manual-packages.nix
index 117adcd47a9c..d53ee7056a89 100644
--- a/pkgs/applications/editors/emacs/elisp-packages/manual-packages.nix
+++ b/pkgs/applications/editors/emacs/elisp-packages/manual-packages.nix
@@ -93,6 +93,8 @@ in
 
   wat-mode = callPackage ./manual-packages/wat-mode { };
 
+  xapian-lite = callPackage ./manual-packages/xapian-lite { };
+
   yes-no = callPackage ./manual-packages/yes-no { };
 
   youtube-dl = callPackage ./manual-packages/youtube-dl { };
diff --git a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/xapian-lite/default.nix b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/xapian-lite/default.nix
new file mode 100644
index 000000000000..67b5a96ee9c0
--- /dev/null
+++ b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/xapian-lite/default.nix
@@ -0,0 +1,36 @@
+{ lib, stdenv, emacs, fetchFromSourcehut, xapian }:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "xapian-lite";
+  version = "2.0.0";
+
+  src = fetchFromSourcehut {
+    owner = "~casouri";
+    repo = "xapian-lite";
+    rev = "v${finalAttrs.version}";
+    hash = "sha256-uFO5yxPHIUJjT3OV2hZKp7KgT3l73W95X2SAz6vhCpI=";
+    domain = "sr.ht";
+  };
+
+  preBuild = ''
+    rm emacs-module.h
+  '';
+
+  buildInputs = [ xapian emacs ];
+
+  installPhase = ''
+    runHook preInstall
+
+    install -Dm444 -t $out/share/emacs/site-lisp/ xapian-lite${stdenv.targetPlatform.extensions.sharedLibrary}
+
+    runHook postInstall
+  '';
+
+  meta = {
+    homepage = "https://git.sr.ht/~casouri/xapian-lite";
+    description = "A minimal Emacs dynamic module for Xapian";
+    maintainers = [ lib.maintainers.marsam ];
+    license = lib.licenses.gpl3Plus;
+    inherit (emacs.meta) platforms;
+  };
+})