(define-module (gnu packages search)
#:use-module ((guix licenses)
- #:select (gpl2 gpl2+ gpl3+ lgpl2.1+ bsd-3 x11))
+ #:select (gpl2 gpl2+ gpl3+ lgpl2.1+ bsd-3 x11 perl-license))
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix utils)
#:use-module (guix build-system gnu)
+ #:use-module (guix build-system perl)
#:use-module (guix build-system python)
#:use-module (gnu packages)
#:use-module (gnu packages compression)
#:use-module (gnu packages pdf)
#:use-module (gnu packages python)
#:use-module (gnu packages python-web)
+ #:use-module (gnu packages python-xyz)
+ #:use-module (gnu packages sphinx)
#:use-module (gnu packages web)
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages xml))
(define-public xapian
(package
(name "xapian")
- (version "1.4.5")
+ (version "1.4.15")
;; Note: When updating Xapian, remember to update xapian-bindings below.
(source (origin
(method url-fetch)
(uri (string-append "https://oligarchy.co.uk/xapian/" version
"/xapian-core-" version ".tar.xz"))
(sha256
- (base32 "0axhqrj202hbll9mcx1qdm8gsqj19216w3z02gyjbycxvr9gkdc5"))))
+ (base32 "1sjhz6vgql801rdgl6vrsjj0vy1mwlkcxjx6nr7h27m031cyjs5i"))))
(build-system gnu-build-system)
(inputs `(("zlib" ,zlib)
- ("util-linux" ,util-linux)))
+ ("util-linux" ,util-linux "lib")))
(arguments
`(#:phases
(modify-phases %standard-phases
"/xapian-bindings-" version ".tar.xz"))
(sha256
(base32
- "0cwx39764w24xd25w271had4w78lnw1dgz36yvlw1g3i19rqcy34"))))
+ "0364nalvh13c7wzx52mz4gaf8wg1rm17lw75cs8a813rv091ci38"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--with-python3")
"/lib/python" ,(version-major+minor
(package-version python))
"/site-packages/xapian"))))
+ (native-inputs
+ `(("python-sphinx" ,python-sphinx))) ;for documentation
(inputs
`(("python" ,python)
- ("python-sphinx" ,python-sphinx) ; for documentation
("xapian" ,xapian)
("zlib" ,zlib)))
(synopsis "Python bindings for the Xapian search engine library")
(license gpl2+)))
+(define-public perl-search-xapian
+ (package
+ (name "perl-search-xapian")
+ (version "1.2.25.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://cpan/authors/id/O/OL/OLLY/"
+ "Search-Xapian-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0hpa8gi38j0ibq8af6dy69lm1bl5jnq76nsa69dbrzbr88l5m594"))))
+ (build-system perl-build-system)
+ (native-inputs
+ `(("perl-devel-leak" ,perl-devel-leak)))
+ (inputs
+ `(("xapian" ,xapian)))
+ (home-page "https://metacpan.org/release/Search-Xapian")
+ (synopsis "Perl XS frontend to the Xapian C++ search library")
+ (description
+ "Search::Xapian wraps most methods of most Xapian classes. The missing
+classes and methods should be added in the future. It also provides a
+simplified, more 'perlish' interface to some common operations.")
+ (license perl-license)))
+
(define-public libtocc
(package
(name "libtocc")
(inputs `(("unqlite" ,unqlite)))
(arguments
`(#:phases (modify-phases %standard-phases
- (add-before
- 'configure 'chdir-source
- (lambda _ (chdir "libtocc/src")))
- (replace
- 'check
- (lambda _
- (with-directory-excursion "../tests"
- (and (zero? (system* "./configure"
- (string-append "CONFIG_SHELL="
- (which "sh"))
- (string-append "SHELL="
- (which "sh"))
- "CPPFLAGS=-I../src"
- (string-append
- "LDFLAGS=-L../src/.libs "
- "-Wl,-rpath=../src/.libs")))
- (zero? (system* "make"))
- (zero? (system* "./libtocctests")))))))))
+ (add-before 'configure 'chdir-source
+ (lambda _
+ (chdir "libtocc/src")
+ #t))
+ (replace 'check
+ (lambda _
+ (with-directory-excursion "../tests"
+ (invoke "./configure"
+ (string-append "CONFIG_SHELL="
+ (which "sh"))
+ (string-append "SHELL="
+ (which "sh"))
+ "CPPFLAGS=-I../src"
+ (string-append
+ "LDFLAGS=-L../src/.libs "
+ "-Wl,-rpath=../src/.libs"))
+ (invoke "make")
+ (invoke "./libtocctests")))))))
(home-page "https://t-o-c-c.com/")
(synopsis "Tool for Obsessive Compulsive Classifiers")
(description
`(#:configure-flags (list (string-append "LDFLAGS=-Wl,-rpath="
(assoc-ref %outputs "out")
"/lib"))))
- (home-page "http://fallabs.com/hyperestraier")
+ (home-page "https://fallabs.com/hyperestraier")
(synopsis "Full-text search system")
(description "Hyper Estraier can be used to integrate full-text
search into applications, using either the provided command line and CGI
(home-page "https://pagure.io/mlocate")
(synopsis "Locate files on the file system")
(description
- "mlocate is a locate/updatedb implementation. The 'm' stands for
+ "mlocate is a locate/updatedb implementation. The @code{m} stands for
\"merging\": @code{updatedb} reuses the existing database to avoid rereading
most of the file system, which makes it faster and does not trash the system
caches as much. The locate(1) utility is intended to be completely compatible