diff --git a/gnu/packages/search.scm b/gnu/packages/search.scm index df6a8b2dfc..ca716aec77 100644 --- a/gnu/packages/search.scm +++ b/gnu/packages/search.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2014 Mark H Weaver ;;; Copyright © 2015, 2016 Eric Bavier ;;; Copyright © 2017 Thomas Danckaert -;;; Copyright © 2017 Ricardo Wurmus +;;; Copyright © 2017, 2021 Ricardo Wurmus ;;; Copyright © 2018, 2020, 2021 Tobias Geerinckx-Rice ;;; Copyright © 2018 Adam Massmann ;;; Copyright © 2020 Hartmut Goebel @@ -36,9 +36,12 @@ (define-module (gnu packages search) #:use-module (guix build-system python) #:use-module (guix build-system meson) #:use-module (gnu packages) + #:use-module (gnu packages aspell) + #:use-module (gnu packages base) #:use-module (gnu packages compression) #:use-module (gnu packages check) #:use-module (gnu packages databases) + #:use-module (gnu packages ebook) #:use-module (gnu packages freedesktop) #:use-module (gnu packages less) #:use-module (gnu packages linux) @@ -286,6 +289,53 @@ (define-public bool for parsing HTML files.") (license gpl3+))) +(define-public recoll + (package + (name "recoll") + (version "1.31.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://www.lesbonscomptes.com/recoll/" + "recoll-" version ".tar.gz")) + (sha256 + (base32 "0m1w5hf2n09lbzmzvlrm2lks4lci9vvjxy2mcmgb2avgly7v5vfk")))) + (build-system gnu-build-system) + (arguments + `(#:configure-flags + (list "--disable-qtgui" + "--disable-webkit" + "--disable-python-module" + "--without-systemd") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-default-data-dir + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "python/recoll/recoll/rclconfig.py" + (("/opt/local") + (assoc-ref outputs "out")))))))) + (inputs + `(("aspell" ,aspell) + ("chmlib" ,chmlib) + ("inotify-tools" ,inotify-tools) + ("libxslt" ,libxslt) + ("libxml2" ,libxml2) + ("python" ,python) + ("python-pdftotext" ,python-pdftotext) + ("xapian" ,xapian) + ("zlib" ,zlib))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("which" ,which))) + (home-page "") + (synopsis "Recoll finds documents based on their contents or file names") + (description "Recoll finds documents based on their contents as well as +their file names. It can search most document formats, but you may need +external applications for text extraction. It can reach any storage place: +files, archive members, email attachments, transparently handling +decompression.") + (license gpl2+))) + (define-public hyperestraier (package (name "hyperestraier")