From unknown Sun Aug 17 01:22:43 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#45614] [PATCH] gnu: Add ugrep. Resent-From: Hartmut Goebel Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 02 Jan 2021 22:11:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 45614 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 45614@debbugs.gnu.org X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.160962545715776 (code B ref -1); Sat, 02 Jan 2021 22:11:02 +0000 Received: (at submit) by debbugs.gnu.org; 2 Jan 2021 22:10:57 +0000 Received: from localhost ([127.0.0.1]:32828 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kvp6v-00046N-4h for submit@debbugs.gnu.org; Sat, 02 Jan 2021 17:10:57 -0500 Received: from lists.gnu.org ([209.51.188.17]:49152) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kvp6u-00046G-2W for submit@debbugs.gnu.org; Sat, 02 Jan 2021 17:10:56 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:49706) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kvp6n-0003be-Mk for guix-patches@gnu.org; Sat, 02 Jan 2021 17:10:52 -0500 Received: from mail-out.m-online.net ([212.18.0.9]:37368) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kvp6i-0001IB-SO for guix-patches@gnu.org; Sat, 02 Jan 2021 17:10:48 -0500 Received: from frontend01.mail.m-online.net (unknown [192.168.8.182]) by mail-out.m-online.net (Postfix) with ESMTP id 4D7bgP2sRWz1qrLN for ; Sat, 2 Jan 2021 23:10:41 +0100 (CET) Received: from localhost (dynscan1.mnet-online.de [192.168.6.70]) by mail.m-online.net (Postfix) with ESMTP id 4D7bgP2lYkz1qs5f for ; Sat, 2 Jan 2021 23:10:41 +0100 (CET) X-Virus-Scanned: amavisd-new at mnet-online.de Received: from mail.mnet-online.de ([192.168.8.182]) by localhost (dynscan1.mail.m-online.net [192.168.6.70]) (amavisd-new, port 10024) with ESMTP id usog0x8qqv6X for ; Sat, 2 Jan 2021 23:10:40 +0100 (CET) Received: from hermia.goebel-consult.de (ppp-188-174-51-199.dynamic.mnet-online.de [188.174.51.199]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.mnet-online.de (Postfix) with ESMTPS for ; Sat, 2 Jan 2021 23:10:39 +0100 (CET) Received: from thisbe.fritz.box (thisbe.fritz.box [192.168.110.24]) by hermia.goebel-consult.de (Postfix) with ESMTP id B50826023E for ; Sat, 2 Jan 2021 23:15:46 +0100 (CET) From: Hartmut Goebel Date: Sat, 2 Jan 2021 23:10:37 +0100 Message-Id: X-Mailer: git-send-email 2.21.3 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Received-SPF: none client-ip=212.18.0.9; envelope-from=h.goebel@crazy-compilers.com; helo=mail-out.m-online.net X-Spam_score_int: -25 X-Spam_score: -2.6 X-Spam_bar: -- X-Spam_report: (-2.6 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) * gnu/packages/search.scm (ugrep): New Variable. --- gnu/packages/search.scm | 66 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) diff --git a/gnu/packages/search.scm b/gnu/packages/search.scm index 0a5fa38b30..2db7f9c48f 100644 --- a/gnu/packages/search.scm +++ b/gnu/packages/search.scm @@ -26,6 +26,7 @@ #:select (gpl2 gpl2+ gpl3+ lgpl2.1+ bsd-3 x11 perl-license)) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (guix build-system perl) @@ -36,6 +37,7 @@ #:use-module (gnu packages databases) #:use-module (gnu packages freedesktop) #:use-module (gnu packages linux) + #:use-module (gnu packages pcre) #:use-module (gnu packages perl) #:use-module (gnu packages pdf) #:use-module (gnu packages python) @@ -414,4 +416,68 @@ online libraries. It provides fast search of document text and bibliographic data and simple document and bibtex retrieval.") (license gpl3+))) +(define-public ugrep + (package + (name "ugrep") + (version "3.1.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Genivia/ugrep") + (commit (string-append "v" version)))) + (sha256 + (base32 "136pcxb4rykflnvlm1zjj6ksdr0c9bhcvyzixkixmix5s122q6jz")) + (file-name (string-append name "-" version "-checkout")) + (modules '((guix build utils))) + (snippet + '(begin + (delete-file-recursively "bin") ;; pre-build executables + ;; TODO: If there is a script for rebuilding them, remove + ;; archives, pdf and .class in tests/ + #t)))) + (build-system gnu-build-system) + (inputs + `(("bzip2" ,bzip2) + ("lz4" ,lz4) + ("lzip" ,lzip) ;; lzma + ("pcre2" ,pcre2) + ("zlib" ,zlib))) + (arguments + `(#:configure-flags '("--enable-pager"))) + (home-page "https://github.com/Genivia/ugrep/") + (synopsis "Faster grep with an interactive query UI") + (description "Universal grep: ultra fast searcher of file systems, text +and binary files, source code, archives, compressed files, documents, and +more. + +The main features include: + +@itemize +@item Written in clean and efficient C++11, built for speed +@item Ultra fast with new match algorithms beating grep, ripgrep, silver + searcher, hyperscan, etc. +@item Multi-threaded search using high-performance lock-free job queue stealing +@item Multi-threaded task-parallel decompression and search +@item Optimized pattern matching (AVX, SSE2, ARM NEON/AArch64) +@item Optimized asynchronous IO for efficient concurrent searching +@item Thoroughly tested (includes over 1000 test cases) +@item Compatible with the standard GNU/BSD grep command-line options +@item Comprehensive how-to tutorial for beginners to advanced users +@item Interactive query UI to enter search patterns +@item Select files to search by file types, filename suffix, and \"magic bytes\" +@item Search archives (cpio, jar, tar, pax, zip) +@item Search compressed files (zip, gz, Z, bz, bz2, lzma, xz) +@item Search pdf, doc, docx, xls, xlxs, and more using filters +@item Search binary files and display hexdumps with binary pattern matches +@item Search UTF-encoded files with Unicode pattern matches (by default) +@item Search files encoded in ISO-8859-1 thru 16, CP 437, CP 850, MAC, KOI8, etc. +@item Search files excluding files specified by .gitignore etc. +@item Search patterns across newlines, matching multiple lines at once +@item Search patterns excluding negative patterns (\"match this but not that\") +@item Includes predefined regex patterns to search source code, XML, JSON, HTML +@item Output results in CSV, JSON, XML, and user-specified formats +@item Sort matching files by name, size, and time +@end itemize") + (license bsd-3))) + ;;; search.scm ends here -- 2.21.3 From unknown Sun Aug 17 01:22:43 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#45614] [PATCH v2] gnu: Add ugrep. References: In-Reply-To: Resent-From: Hartmut Goebel Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 05 Jan 2021 12:06:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45614 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 45614@debbugs.gnu.org X-Debbugs-Original-To: 45614@debbugs.gnu.org, guix-patches@gnu.org Received: via spool by 45614-submit@debbugs.gnu.org id=B45614.160984834619590 (code B ref 45614); Tue, 05 Jan 2021 12:06:02 +0000 Received: (at 45614) by debbugs.gnu.org; 5 Jan 2021 12:05:46 +0000 Received: from localhost ([127.0.0.1]:40972 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kwl5t-00055t-O3 for submit@debbugs.gnu.org; Tue, 05 Jan 2021 07:05:46 -0500 Received: from mail-out.m-online.net ([212.18.0.9]:32953) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kwl5r-00055k-18 for 45614@debbugs.gnu.org; Tue, 05 Jan 2021 07:05:43 -0500 Received: from frontend01.mail.m-online.net (unknown [192.168.8.182]) by mail-out.m-online.net (Postfix) with ESMTP id 4D9B5x6HDCz1qsZn; Tue, 5 Jan 2021 13:05:41 +0100 (CET) Received: from localhost (dynscan1.mnet-online.de [192.168.6.70]) by mail.m-online.net (Postfix) with ESMTP id 4D9B5x4bV3z1sFWF; Tue, 5 Jan 2021 13:05:41 +0100 (CET) X-Virus-Scanned: amavisd-new at mnet-online.de Received: from mail.mnet-online.de ([192.168.8.182]) by localhost (dynscan1.mail.m-online.net [192.168.6.70]) (amavisd-new, port 10024) with ESMTP id fYTV9beHUMNU; Tue, 5 Jan 2021 13:05:40 +0100 (CET) Received: from hermia.goebel-consult.de (ppp-188-174-58-71.dynamic.mnet-online.de [188.174.58.71]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.mnet-online.de (Postfix) with ESMTPS; Tue, 5 Jan 2021 13:05:40 +0100 (CET) Received: from lenashee.fritz.box (lenashee.goebel-consult.de [192.168.110.2]) by hermia.goebel-consult.de (Postfix) with ESMTP id EB8FC60200; Tue, 5 Jan 2021 13:05:37 +0100 (CET) From: Hartmut Goebel Date: Tue, 5 Jan 2021 13:05:37 +0100 Message-Id: <48feb5af1c746731bd9623b01977fb6e6c9724b5.1609848284.git.h.goebel@crazy-compilers.com> X-Mailer: git-send-email 2.21.3 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/search.scm (ugrep): New Variable. --- gnu/packages/search.scm | 77 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) diff --git a/gnu/packages/search.scm b/gnu/packages/search.scm index 0a5fa38b30..a7b5e1e383 100644 --- a/gnu/packages/search.scm +++ b/gnu/packages/search.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2017 Ricardo Wurmus ;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice ;;; Copyright © 2018 Adam Massmann +;;; Copyright © 2020 Hartmut Goebel ;;; ;;; This file is part of GNU Guix. ;;; @@ -26,6 +27,7 @@ #:select (gpl2 gpl2+ gpl3+ lgpl2.1+ bsd-3 x11 perl-license)) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (guix build-system perl) @@ -35,7 +37,9 @@ #:use-module (gnu packages check) #:use-module (gnu packages databases) #:use-module (gnu packages freedesktop) + #:use-module (gnu packages less) #:use-module (gnu packages linux) + #:use-module (gnu packages pcre) #:use-module (gnu packages perl) #:use-module (gnu packages pdf) #:use-module (gnu packages python) @@ -414,4 +418,77 @@ online libraries. It provides fast search of document text and bibliographic data and simple document and bibtex retrieval.") (license gpl3+))) +(define-public ugrep + (package + (name "ugrep") + (version "3.1.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Genivia/ugrep") + (commit (string-append "v" version)))) + (sha256 + (base32 "136pcxb4rykflnvlm1zjj6ksdr0c9bhcvyzixkixmix5s122q6jz")) + (file-name (string-append name "-" version "-checkout")) + (modules '((guix build utils))) + (snippet + '(begin + (delete-file-recursively "bin") ;; pre-build executables + ;; TODO: If there is a script for rebuilding them, remove + ;; archives, pdf and .class in tests/ + #t)))) + (build-system gnu-build-system) + (inputs + `(("bzip2" ,bzip2) + ("less" ,less) + ("lz4" ,lz4) + ("lzip" ,lzip) ;; lzma + ("pcre2" ,pcre2) + ("zlib" ,zlib))) + (arguments + `(#:configure-flags '("--enable-pager") + #:phases + (modify-phases %standard-phases + (add-before 'configure 'patch-paths-to-binaries + (lambda* (#:key inputs #:allow-other-keys) + (let ((less (assoc-ref inputs "less"))) + (substitute* "src/ugrep.cpp" + (("(#\\s*define +DEFAULT_PAGER_COMMAND +\")(less\\W)" _ a b) + (string-append a less "/bin/" b))))))))) + (home-page "https://github.com/Genivia/ugrep/") + (synopsis "Faster grep with an interactive query UI") + (description "Universal grep: ultra fast searcher of file systems, text +and binary files, source code, archives, compressed files, documents, and +more. + +The main features include: + +@itemize +@item Written in clean and efficient C++11, built for speed +@item Ultra fast with new match algorithms beating grep, ripgrep, silver + searcher, hyperscan, etc. +@item Multi-threaded search using high-performance lock-free job queue stealing +@item Multi-threaded task-parallel decompression and search +@item Optimized pattern matching (AVX, SSE2, ARM NEON/AArch64) +@item Optimized asynchronous IO for efficient concurrent searching +@item Thoroughly tested (includes over 1000 test cases) +@item Compatible with the standard GNU/BSD grep command-line options +@item Comprehensive how-to tutorial for beginners to advanced users +@item Interactive query UI to enter search patterns +@item Select files to search by file types, filename suffix, and \"magic bytes\" +@item Search archives (cpio, jar, tar, pax, zip) +@item Search compressed files (zip, gz, Z, bz, bz2, lzma, xz) +@item Search pdf, doc, docx, xls, xlxs, and more using filters +@item Search binary files and display hexdumps with binary pattern matches +@item Search UTF-encoded files with Unicode pattern matches (by default) +@item Search files encoded in ISO-8859-1 thru 16, CP 437, CP 850, MAC, KOI8, etc. +@item Search files excluding files specified by .gitignore etc. +@item Search patterns across newlines, matching multiple lines at once +@item Search patterns excluding negative patterns (\"match this but not that\") +@item Includes predefined regex patterns to search source code, XML, JSON, HTML +@item Output results in CSV, JSON, XML, and user-specified formats +@item Sort matching files by name, size, and time +@end itemize") + (license bsd-3))) + ;;; search.scm ends here -- 2.21.3 From debbugs-submit-bounces@debbugs.gnu.org Tue Jan 05 07:14:02 2021 Received: (at control) by debbugs.gnu.org; 5 Jan 2021 12:14:02 +0000 Received: from localhost ([127.0.0.1]:40987 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kwlDu-0005Ir-K4 for submit@debbugs.gnu.org; Tue, 05 Jan 2021 07:14:02 -0500 Received: from mail-out.m-online.net ([212.18.0.10]:59485) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kwlDt-0005IL-8W for control@debbugs.gnu.org; Tue, 05 Jan 2021 07:14:01 -0500 Received: from frontend01.mail.m-online.net (unknown [192.168.8.182]) by mail-out.m-online.net (Postfix) with ESMTP id 4D9BHX4RXpz1rxXw for ; Tue, 5 Jan 2021 13:14:00 +0100 (CET) Received: from localhost (dynscan1.mnet-online.de [192.168.6.70]) by mail.m-online.net (Postfix) with ESMTP id 4D9BHX2HvVz1sFWJ for ; Tue, 5 Jan 2021 13:14:00 +0100 (CET) X-Virus-Scanned: amavisd-new at mnet-online.de Received: from mail.mnet-online.de ([192.168.8.182]) by localhost (dynscan1.mail.m-online.net [192.168.6.70]) (amavisd-new, port 10024) with ESMTP id q84tGC2L99Bl for ; Tue, 5 Jan 2021 13:13:59 +0100 (CET) Received: from hermia.goebel-consult.de (ppp-188-174-58-71.dynamic.mnet-online.de [188.174.58.71]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.mnet-online.de (Postfix) with ESMTPS for ; Tue, 5 Jan 2021 13:13:59 +0100 (CET) Received: from lenashee.goebel-consult.de (lenashee.goebel-consult.de [192.168.110.2]) by hermia.goebel-consult.de (Postfix) with ESMTP id 3A1BA60200 for ; Tue, 5 Jan 2021 13:13:57 +0100 (CET) From: Hartmut Goebel To: debbugs control Subject: merge 45614 45672 Organization: Goebel Consult Message-ID: Date: Tue, 5 Jan 2021 13:13:57 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.6.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Content-Language: de-DE X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) merge 45614 45672 From unknown Sun Aug 17 01:22:43 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#45614] [PATCH] gnu: Add ugrep. Resent-From: Ludovic =?UTF-8?Q?Court=C3=A8s?= Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Wed, 13 Jan 2021 15:20:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45614 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Hartmut Goebel Cc: 45614@debbugs.gnu.org Received: via spool by 45614-submit@debbugs.gnu.org id=B45614.1610551190560 (code B ref 45614); Wed, 13 Jan 2021 15:20:02 +0000 Received: (at 45614) by debbugs.gnu.org; 13 Jan 2021 15:19:50 +0000 Received: from localhost ([127.0.0.1]:36286 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kzhw6-00008v-B0 for submit@debbugs.gnu.org; Wed, 13 Jan 2021 10:19:50 -0500 Received: from eggs.gnu.org ([209.51.188.92]:45410) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kzhw5-00008i-E3 for 45614@debbugs.gnu.org; Wed, 13 Jan 2021 10:19:49 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]:57911) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kzhvy-0002d4-Ad; Wed, 13 Jan 2021 10:19:42 -0500 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=39502 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1kzhvx-00052Z-P9; Wed, 13 Jan 2021 10:19:42 -0500 From: Ludovic =?UTF-8?Q?Court=C3=A8s?= References: <48feb5af1c746731bd9623b01977fb6e6c9724b5.1609848284.git.h.goebel@crazy-compilers.com> Date: Wed, 13 Jan 2021 16:19:40 +0100 In-Reply-To: <48feb5af1c746731bd9623b01977fb6e6c9724b5.1609848284.git.h.goebel@crazy-compilers.com> (Hartmut Goebel's message of "Tue, 5 Jan 2021 13:05:37 +0100") Message-ID: <87blds984z.fsf_-_@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Hi! Hartmut Goebel skribis: > * gnu/packages/search.scm (ugrep): New Variable. [...] > + '(begin > + (delete-file-recursively "bin") ;; pre-build executab= les > + ;; TODO: If there is a script for rebuilding them, rem= ove > + ;; archives, pdf and .class in tests/ Java .class files (is that it?) should definitely be removed. > + (description "Universal grep: ultra fast searcher of file systems, t= ext > +and binary files, source code, archives, compressed files, documents, and > +more. > + > +The main features include: > + > +@itemize > +@item Written in clean and efficient C++11, built for speed > +@item Ultra fast with new match algorithms beating grep, ripgrep, silver > + searcher, hyperscan, etc. > +@item Multi-threaded search using high-performance lock-free job queue s= tealing > +@item Multi-threaded task-parallel decompression and search > +@item Optimized pattern matching (AVX, SSE2, ARM NEON/AArch64) > +@item Optimized asynchronous IO for efficient concurrent searching > +@item Thoroughly tested (includes over 1000 test cases) > +@item Compatible with the standard GNU/BSD grep command-line options > +@item Comprehensive how-to tutorial for beginners to advanced users > +@item Interactive query UI to enter search patterns > +@item Select files to search by file types, filename suffix, and \"magic= bytes\" > +@item Search archives (cpio, jar, tar, pax, zip) > +@item Search compressed files (zip, gz, Z, bz, bz2, lzma, xz) > +@item Search pdf, doc, docx, xls, xlxs, and more using filters > +@item Search binary files and display hexdumps with binary pattern match= es > +@item Search UTF-encoded files with Unicode pattern matches (by default) > +@item Search files encoded in ISO-8859-1 thru 16, CP 437, CP 850, MAC, K= OI8, etc. > +@item Search files excluding files specified by .gitignore etc. > +@item Search patterns across newlines, matching multiple lines at once > +@item Search patterns excluding negative patterns (\"match this but not = that\") > +@item Includes predefined regex patterns to search source code, XML, JSO= N, HTML > +@item Output results in CSV, JSON, XML, and user-specified formats > +@item Sort matching files by name, size, and time > +@end itemize") That=E2=80=99s too much detail, and it=E2=80=99s also bound to become stale= as ugrep changes. Could you (1) start with a full sentence, and (2) give a high-level view of the features in 5=E2=80=9310 lines at most? Thanks, Ludo=E2=80=99. From unknown Sun Aug 17 01:22:43 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#45614] [PATCH v3] gnu: Add ugrep. References: In-Reply-To: Resent-From: Hartmut Goebel Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 22 Jan 2021 19:59:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45614 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 45614@debbugs.gnu.org Received: via spool by 45614-submit@debbugs.gnu.org id=B45614.161134552523317 (code B ref 45614); Fri, 22 Jan 2021 19:59:01 +0000 Received: (at 45614) by debbugs.gnu.org; 22 Jan 2021 19:58:45 +0000 Received: from localhost ([127.0.0.1]:33165 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l32Zw-000640-P2 for submit@debbugs.gnu.org; Fri, 22 Jan 2021 14:58:45 -0500 Received: from mail-out.m-online.net ([212.18.0.10]:58738) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l32Zr-00063m-Jn for 45614@debbugs.gnu.org; Fri, 22 Jan 2021 14:58:43 -0500 Received: from frontend01.mail.m-online.net (unknown [192.168.8.182]) by mail-out.m-online.net (Postfix) with ESMTP id 4DMqnp1Kpjz1rtZW for <45614@debbugs.gnu.org>; Fri, 22 Jan 2021 20:58:37 +0100 (CET) Received: from localhost (dynscan1.mnet-online.de [192.168.6.70]) by mail.m-online.net (Postfix) with ESMTP id 4DMqnn6L2Jz1tYVn for <45614@debbugs.gnu.org>; Fri, 22 Jan 2021 20:58:37 +0100 (CET) X-Virus-Scanned: amavisd-new at mnet-online.de Received: from mail.mnet-online.de ([192.168.8.182]) by localhost (dynscan1.mail.m-online.net [192.168.6.70]) (amavisd-new, port 10024) with ESMTP id 1Pe-CmH7Xdwn for <45614@debbugs.gnu.org>; Fri, 22 Jan 2021 20:58:35 +0100 (CET) Received: from hermia.goebel-consult.de (ppp-188-174-60-46.dynamic.mnet-online.de [188.174.60.46]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.mnet-online.de (Postfix) with ESMTPS for <45614@debbugs.gnu.org>; Fri, 22 Jan 2021 20:58:35 +0100 (CET) Received: from thisbe.fritz.box (thisbe.fritz.box [192.168.110.24]) by hermia.goebel-consult.de (Postfix) with ESMTP id 559D560170; Fri, 22 Jan 2021 20:58:32 +0100 (CET) From: Hartmut Goebel Date: Fri, 22 Jan 2021 20:58:32 +0100 Message-Id: X-Mailer: git-send-email 2.21.3 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/search.scm (ugrep): New Variable. --- gnu/packages/search.scm | 66 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) diff --git a/gnu/packages/search.scm b/gnu/packages/search.scm index e261e64a7f..19f029a2bf 100644 --- a/gnu/packages/search.scm +++ b/gnu/packages/search.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2017 Ricardo Wurmus ;;; Copyright © 2018, 2020, 2021 Tobias Geerinckx-Rice ;;; Copyright © 2018 Adam Massmann +;;; Copyright © 2020 Hartmut Goebel ;;; ;;; This file is part of GNU Guix. ;;; @@ -26,6 +27,7 @@ #:select (gpl2 gpl2+ gpl3+ lgpl2.1+ bsd-3 x11 perl-license)) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (guix build-system perl) @@ -35,7 +37,9 @@ #:use-module (gnu packages check) #:use-module (gnu packages databases) #:use-module (gnu packages freedesktop) + #:use-module (gnu packages less) #:use-module (gnu packages linux) + #:use-module (gnu packages pcre) #:use-module (gnu packages perl) #:use-module (gnu packages pdf) #:use-module (gnu packages python) @@ -413,4 +417,66 @@ online libraries. It provides fast search of document text and bibliographic data and simple document and bibtex retrieval.") (license gpl3+))) +(define-public ugrep + (package + (name "ugrep") + (version "3.1.3") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Genivia/ugrep") + (commit (string-append "v" version)))) + (sha256 + (base32 "0vywgpa97qw8ird3zcscvbkcjnvrj16sh9p6sm8vaklxp2q49xrz")) + (file-name (string-append name "-" version "-checkout")) + (modules '((guix build utils))) + (snippet + '(begin + (delete-file-recursively "bin") ;; pre-build executables + (for-each delete-file (find-files "tests" "^archive\\..*")) + (for-each delete-file (find-files "tests" "^.*\\.pdf$")) + (for-each delete-file (find-files "tests" "^.*\\.class$")) + #t)))) + (build-system gnu-build-system) + (inputs + `(("bzip2" ,bzip2) + ("less" ,less) + ("lz4" ,lz4) + ("lzip" ,lzip) ;; lzma + ("pcre2" ,pcre2) + ("zlib" ,zlib))) + (arguments + `(#:configure-flags '("--enable-pager") + #:tests? #f ;; No script for re-building the binary test input-files + #:test-target "test" + #:phases + (modify-phases %standard-phases + (add-before 'configure 'patch-paths-to-binaries + (lambda* (#:key inputs #:allow-other-keys) + (let ((less (assoc-ref inputs "less"))) + (substitute* "src/ugrep.cpp" + (("(#\\s*define +DEFAULT_PAGER_COMMAND +\")(less\\W)" _ a b) + (string-append a less "/bin/" b)))))) + (add-before 'check 'check-setup + (lambda _ + ;; unpatch shepengs in tests + (substitute* '("tests/Hello.bat" + "tests/Hello.sh") + (("#!/gnu/store/.*/bin/sh") "#!/bin/sh"))))))) + (home-page "https://github.com/Genivia/ugrep/") + (synopsis "Faster grep with an interactive query UI") + (description "Ugrep is a ultra fast searcher of file systems, text +and binary files, source code, archives, compressed files, documents, and +more. + +While still being compatible with the standard GNU/BSD grep command-line +options, ugrep supports fuzzy search as well as structured and (adjustable) +colored output, piped through \"less\" for pagination. An interactive query +UI allows refinement and has a built-in help (press F1). Ugrep implements +multi-threaded and other techniques to speed up search, pattern-matching and +decompression. Many pre-defined regexps ease searching e.g. C typdefs or XML +attributes. Results can be output in several structured or self-defined +formats.") + (license bsd-3))) + ;;; search.scm ends here -- 2.21.3 From unknown Sun Aug 17 01:22:43 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#45614] [PATCH] gnu: Add ugrep. Resent-From: Hartmut Goebel Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 22 Jan 2021 20:14:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45614 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: 45614@debbugs.gnu.org Received: via spool by 45614-submit@debbugs.gnu.org id=B45614.161134640824760 (code B ref 45614); Fri, 22 Jan 2021 20:14:02 +0000 Received: (at 45614) by debbugs.gnu.org; 22 Jan 2021 20:13:28 +0000 Received: from localhost ([127.0.0.1]:33187 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l32oC-0006RI-BF for submit@debbugs.gnu.org; Fri, 22 Jan 2021 15:13:28 -0500 Received: from mail-out.m-online.net ([212.18.0.10]:34048) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l32oA-0006R8-5y for 45614@debbugs.gnu.org; Fri, 22 Jan 2021 15:13:26 -0500 Received: from frontend01.mail.m-online.net (unknown [192.168.8.182]) by mail-out.m-online.net (Postfix) with ESMTP id 4DMr6s0PZqz1rtZ9; Fri, 22 Jan 2021 21:13:25 +0100 (CET) Received: from localhost (dynscan1.mnet-online.de [192.168.6.70]) by mail.m-online.net (Postfix) with ESMTP id 4DMr6s08dTz1tYVm; Fri, 22 Jan 2021 21:13:25 +0100 (CET) X-Virus-Scanned: amavisd-new at mnet-online.de Received: from mail.mnet-online.de ([192.168.8.182]) by localhost (dynscan1.mail.m-online.net [192.168.6.70]) (amavisd-new, port 10024) with ESMTP id 3-U1RkefO2Rm; Fri, 22 Jan 2021 21:13:23 +0100 (CET) Received: from hermia.goebel-consult.de (ppp-188-174-60-46.dynamic.mnet-online.de [188.174.60.46]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.mnet-online.de (Postfix) with ESMTPS; Fri, 22 Jan 2021 21:13:23 +0100 (CET) Received: from thisbe.goebel-consult.de (hermia.goebel-consult.de [192.168.110.7]) by hermia.goebel-consult.de (Postfix) with ESMTP id 1E42560170; Fri, 22 Jan 2021 21:13:21 +0100 (CET) References: <48feb5af1c746731bd9623b01977fb6e6c9724b5.1609848284.git.h.goebel@crazy-compilers.com> <87blds984z.fsf_-_@gnu.org> From: Hartmut Goebel Organization: crazy-compilers.com Message-ID: Date: Fri, 22 Jan 2021 21:13:20 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.12.0 MIME-Version: 1.0 In-Reply-To: <87blds984z.fsf_-_@gnu.org> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Content-Language: en-US X-Spam-Score: -0.9 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.9 (-) Hi Ludo, thanks for your feedback. You are absolutely right about the ugly list - thanks for pointing to this. I just updated the patch, also removing the blobs and appreciate to learn whether this now suites the Guix Quality ;-) Anyhow commiting this patch will take some time, since the programm currently crashes (https://github.com/Genivia/ugrep/issues/99). -- Regards Hartmut Goebel | Hartmut Goebel | h.goebel@crazy-compilers.com | | www.crazy-compilers.com | compilers which you thought are impossible | From unknown Sun Aug 17 01:22:43 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#45614] [PATCH v4] gnu: Add ugrep. References: In-Reply-To: Resent-From: Hartmut Goebel Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 23 Jan 2021 19:39:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45614 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 45614@debbugs.gnu.org Received: via spool by 45614-submit@debbugs.gnu.org id=B45614.161143069629156 (code B ref 45614); Sat, 23 Jan 2021 19:39:01 +0000 Received: (at 45614) by debbugs.gnu.org; 23 Jan 2021 19:38:16 +0000 Received: from localhost ([127.0.0.1]:35331 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l3Ojf-0007aB-NK for submit@debbugs.gnu.org; Sat, 23 Jan 2021 14:38:16 -0500 Received: from mail-out.m-online.net ([212.18.0.9]:55123) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l3Ojd-0007a2-Kf for 45614@debbugs.gnu.org; Sat, 23 Jan 2021 14:38:14 -0500 Received: from frontend01.mail.m-online.net (unknown [192.168.8.182]) by mail-out.m-online.net (Postfix) with ESMTP id 4DNRHm2MmQz1qs0H for <45614@debbugs.gnu.org>; Sat, 23 Jan 2021 20:38:12 +0100 (CET) Received: from localhost (dynscan1.mnet-online.de [192.168.6.70]) by mail.m-online.net (Postfix) with ESMTP id 4DNRHm0rm0z1tYW8 for <45614@debbugs.gnu.org>; Sat, 23 Jan 2021 20:38:12 +0100 (CET) X-Virus-Scanned: amavisd-new at mnet-online.de Received: from mail.mnet-online.de ([192.168.8.182]) by localhost (dynscan1.mail.m-online.net [192.168.6.70]) (amavisd-new, port 10024) with ESMTP id ZGfCUpRzsdBQ for <45614@debbugs.gnu.org>; Sat, 23 Jan 2021 20:38:10 +0100 (CET) Received: from hermia.goebel-consult.de (ppp-188-174-57-66.dynamic.mnet-online.de [188.174.57.66]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.mnet-online.de (Postfix) with ESMTPS for <45614@debbugs.gnu.org>; Sat, 23 Jan 2021 20:38:10 +0100 (CET) Received: from thisbe.fritz.box (thisbe.fritz.box [192.168.110.24]) by hermia.goebel-consult.de (Postfix) with ESMTP id 0FCC2604F2; Sat, 23 Jan 2021 20:38:08 +0100 (CET) From: Hartmut Goebel Date: Sat, 23 Jan 2021 20:38:07 +0100 Message-Id: <6bb6e856d75e400d8c6841478be9ed218c655e41.1611430623.git.h.goebel@crazy-compilers.com> X-Mailer: git-send-email 2.21.3 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/search.scm (ugrep): New Variable. --- gnu/packages/search.scm | 66 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) diff --git a/gnu/packages/search.scm b/gnu/packages/search.scm index e261e64a7f..2667096c44 100644 --- a/gnu/packages/search.scm +++ b/gnu/packages/search.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2017 Ricardo Wurmus ;;; Copyright © 2018, 2020, 2021 Tobias Geerinckx-Rice ;;; Copyright © 2018 Adam Massmann +;;; Copyright © 2020 Hartmut Goebel ;;; ;;; This file is part of GNU Guix. ;;; @@ -26,6 +27,7 @@ #:select (gpl2 gpl2+ gpl3+ lgpl2.1+ bsd-3 x11 perl-license)) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (guix build-system perl) @@ -35,7 +37,9 @@ #:use-module (gnu packages check) #:use-module (gnu packages databases) #:use-module (gnu packages freedesktop) + #:use-module (gnu packages less) #:use-module (gnu packages linux) + #:use-module (gnu packages pcre) #:use-module (gnu packages perl) #:use-module (gnu packages pdf) #:use-module (gnu packages python) @@ -413,4 +417,66 @@ online libraries. It provides fast search of document text and bibliographic data and simple document and bibtex retrieval.") (license gpl3+))) +(define-public ugrep + (package + (name "ugrep") + (version "3.1.4") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Genivia/ugrep") + (commit (string-append "v" version)))) + (sha256 + (base32 "1ydnpdhn1mp2pnbqzvwabrp573626k89kbv97fax6y1bz2pamrg4")) + (file-name (string-append name "-" version "-checkout")) + (modules '((guix build utils))) + (snippet + '(begin + (delete-file-recursively "bin") ;; pre-build executables + (for-each delete-file (find-files "tests" "^archive\\..*")) + (for-each delete-file (find-files "tests" "^.*\\.pdf$")) + (for-each delete-file (find-files "tests" "^.*\\.class$")) + #t)))) + (build-system gnu-build-system) + (inputs + `(("bzip2" ,bzip2) + ("less" ,less) + ("lz4" ,lz4) + ("lzip" ,lzip) ;; lzma + ("pcre2" ,pcre2) + ("zlib" ,zlib))) + (arguments + `(#:configure-flags '("--enable-pager") + #:tests? #f ;; No script for re-building the binary test input-files + #:test-target "test" + #:phases + (modify-phases %standard-phases + (add-before 'configure 'patch-paths-to-binaries + (lambda* (#:key inputs #:allow-other-keys) + (let ((less (assoc-ref inputs "less"))) + (substitute* "src/ugrep.cpp" + (("(#\\s*define +DEFAULT_PAGER_COMMAND +\")(less\\W)" _ a b) + (string-append a less "/bin/" b)))))) + (add-before 'check 'check-setup + (lambda _ + ;; unpatch shepengs in tests + (substitute* '("tests/Hello.bat" + "tests/Hello.sh") + (("#!/gnu/store/.*/bin/sh") "#!/bin/sh"))))))) + (home-page "https://github.com/Genivia/ugrep/") + (synopsis "Faster grep with an interactive query UI") + (description "Ugrep is a ultra fast searcher of file systems, text +and binary files, source code, archives, compressed files, documents, and +more. + +While still being compatible with the standard GNU/BSD grep command-line +options, ugrep supports fuzzy search as well as structured and (adjustable) +colored output, piped through \"less\" for pagination. An interactive query +UI allows refinement and has a built-in help (press F1). Ugrep implements +multi-threaded and other techniques to speed up search, pattern-matching and +decompression. Many pre-defined regexps ease searching e.g. C typdefs or XML +attributes. Results can be output in several structured or self-defined +formats.") + (license bsd-3))) + ;;; search.scm ends here -- 2.21.3 From unknown Sun Aug 17 01:22:43 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#45614] [PATCH] gnu: Add ugrep. Resent-From: Ludovic =?UTF-8?Q?Court=C3=A8s?= Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 25 Jan 2021 18:14:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45614 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Hartmut Goebel Cc: 45614@debbugs.gnu.org Received: via spool by 45614-submit@debbugs.gnu.org id=B45614.161159841119518 (code B ref 45614); Mon, 25 Jan 2021 18:14:02 +0000 Received: (at 45614) by debbugs.gnu.org; 25 Jan 2021 18:13:31 +0000 Received: from localhost ([127.0.0.1]:39851 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l46Ml-00054k-D2 for submit@debbugs.gnu.org; Mon, 25 Jan 2021 13:13:31 -0500 Received: from eggs.gnu.org ([209.51.188.92]:59024) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l46Mk-00054V-BV for 45614@debbugs.gnu.org; Mon, 25 Jan 2021 13:13:30 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]:57195) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1l46Md-0008C6-VA; Mon, 25 Jan 2021 13:13:24 -0500 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=52500 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1l46Mb-0004UJ-Ag; Mon, 25 Jan 2021 13:13:22 -0500 From: Ludovic =?UTF-8?Q?Court=C3=A8s?= References: <48feb5af1c746731bd9623b01977fb6e6c9724b5.1609848284.git.h.goebel@crazy-compilers.com> <87blds984z.fsf_-_@gnu.org> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 6 =?UTF-8?Q?Pluvi=C3=B4se?= an 229 de la =?UTF-8?Q?R=C3=A9volution?= X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Mon, 25 Jan 2021 19:13:20 +0100 In-Reply-To: (Hartmut Goebel's message of "Fri, 22 Jan 2021 21:13:20 +0100") Message-ID: <87wnw03mwv.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Hi Hartmut, Hartmut Goebel skribis: > thanks for your feedback. You are absolutely right about the ugly list - > thanks for pointing to this. > > I just updated the patch, also removing the blobs and appreciate to > learn whether this now suites the Guix Quality ;-) Anyhow, the (guix swh) issue you stumbled upon shouldn=E2=80=99t block pack= age contributions such as this one IMO. > Anyhow commiting this patch will take some time, since the programm > currently crashes (https://github.com/Genivia/ugrep/issues/99). Just to be clear, I haven=E2=80=99t reviewed the ugrep patch, but when you = and whoever took a look deem it ready, feel free to push! Thanks, Ludo=E2=80=99. From unknown Sun Aug 17 01:22:43 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: Hartmut Goebel Subject: bug#45614: closed (Re: bug#45614: [PATCH] gnu: Add ugrep.) Message-ID: References: <03b1c99f-2b30-3654-ef57-735c45042d1d@crazy-compilers.com> X-Gnu-PR-Message: they-closed 45614 X-Gnu-PR-Package: guix-patches X-Gnu-PR-Keywords: patch Reply-To: 45614@debbugs.gnu.org Date: Wed, 27 Jan 2021 16:00:02 +0000 Content-Type: multipart/mixed; boundary="----------=_1611763202-32189-1" This is a multi-part message in MIME format... ------------=_1611763202-32189-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #45614: [PATCH] gnu: Add ugrep. which was filed against the guix-patches package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 45614@debbugs.gnu.org. --=20 45614: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D45614 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1611763202-32189-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 45614-close) by debbugs.gnu.org; 27 Jan 2021 15:59:16 +0000 Received: from localhost ([127.0.0.1]:45888 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l4nDh-0008L8-I3 for submit@debbugs.gnu.org; Wed, 27 Jan 2021 10:59:16 -0500 Received: from mail-out.m-online.net ([212.18.0.9]:48936) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l4nDe-0008Ky-JU for 45614-close@debbugs.gnu.org; Wed, 27 Jan 2021 10:58:59 -0500 Received: from frontend01.mail.m-online.net (unknown [192.168.8.182]) by mail-out.m-online.net (Postfix) with ESMTP id 4DQpDy0KJqz1qsk3 for <45614-close@debbugs.gnu.org>; Wed, 27 Jan 2021 16:58:58 +0100 (CET) Received: from localhost (dynscan1.mnet-online.de [192.168.6.70]) by mail.m-online.net (Postfix) with ESMTP id 4DQpDy0DV5z1qqkK for <45614-close@debbugs.gnu.org>; Wed, 27 Jan 2021 16:58:57 +0100 (CET) X-Virus-Scanned: amavisd-new at mnet-online.de Received: from mail.mnet-online.de ([192.168.8.182]) by localhost (dynscan1.mail.m-online.net [192.168.6.70]) (amavisd-new, port 10024) with ESMTP id mlFsTCoMxpCX for <45614-close@debbugs.gnu.org>; Wed, 27 Jan 2021 16:58:57 +0100 (CET) Received: from hermia.goebel-consult.de (ppp-188-174-57-70.dynamic.mnet-online.de [188.174.57.70]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.mnet-online.de (Postfix) with ESMTPS for <45614-close@debbugs.gnu.org>; Wed, 27 Jan 2021 16:58:57 +0100 (CET) Received: from thisbe.goebel-consult.de (hermia.goebel-consult.de [192.168.110.7]) by hermia.goebel-consult.de (Postfix) with ESMTP id CC1B260299 for <45614-close@debbugs.gnu.org>; Wed, 27 Jan 2021 16:58:54 +0100 (CET) Subject: Re: bug#45614: [PATCH] gnu: Add ugrep. References: <48feb5af1c746731bd9623b01977fb6e6c9724b5.1609848284.git.h.goebel@crazy-compilers.com> <87blds984z.fsf_-_@gnu.org> <87wnw03mwv.fsf@gnu.org> To: 45614-close@debbugs.gnu.org From: Hartmut Goebel Organization: crazy-compilers.com Message-ID: <03b1c99f-2b30-3654-ef57-735c45042d1d@crazy-compilers.com> Date: Wed, 27 Jan 2021 16:58:54 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.12.0 MIME-Version: 1.0 In-Reply-To: <87wnw03mwv.fsf@gnu.org> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Content-Language: de-DE X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 45614-close X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Pushed as d8aa4444688ce244d2556630c3f7cfe739e01310 Thx for the review. -- Regards Hartmut Goebel | Hartmut Goebel | h.goebel@crazy-compilers.com | | www.crazy-compilers.com | compilers which you thought are impossible | ------------=_1611763202-32189-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 2 Jan 2021 22:10:57 +0000 Received: from localhost ([127.0.0.1]:32828 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kvp6v-00046N-4h for submit@debbugs.gnu.org; Sat, 02 Jan 2021 17:10:57 -0500 Received: from lists.gnu.org ([209.51.188.17]:49152) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kvp6u-00046G-2W for submit@debbugs.gnu.org; Sat, 02 Jan 2021 17:10:56 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:49706) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kvp6n-0003be-Mk for guix-patches@gnu.org; Sat, 02 Jan 2021 17:10:52 -0500 Received: from mail-out.m-online.net ([212.18.0.9]:37368) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kvp6i-0001IB-SO for guix-patches@gnu.org; Sat, 02 Jan 2021 17:10:48 -0500 Received: from frontend01.mail.m-online.net (unknown [192.168.8.182]) by mail-out.m-online.net (Postfix) with ESMTP id 4D7bgP2sRWz1qrLN for ; Sat, 2 Jan 2021 23:10:41 +0100 (CET) Received: from localhost (dynscan1.mnet-online.de [192.168.6.70]) by mail.m-online.net (Postfix) with ESMTP id 4D7bgP2lYkz1qs5f for ; Sat, 2 Jan 2021 23:10:41 +0100 (CET) X-Virus-Scanned: amavisd-new at mnet-online.de Received: from mail.mnet-online.de ([192.168.8.182]) by localhost (dynscan1.mail.m-online.net [192.168.6.70]) (amavisd-new, port 10024) with ESMTP id usog0x8qqv6X for ; Sat, 2 Jan 2021 23:10:40 +0100 (CET) Received: from hermia.goebel-consult.de (ppp-188-174-51-199.dynamic.mnet-online.de [188.174.51.199]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.mnet-online.de (Postfix) with ESMTPS for ; Sat, 2 Jan 2021 23:10:39 +0100 (CET) Received: from thisbe.fritz.box (thisbe.fritz.box [192.168.110.24]) by hermia.goebel-consult.de (Postfix) with ESMTP id B50826023E for ; Sat, 2 Jan 2021 23:15:46 +0100 (CET) From: Hartmut Goebel To: guix-patches@gnu.org Subject: [PATCH] gnu: Add ugrep. Date: Sat, 2 Jan 2021 23:10:37 +0100 Message-Id: X-Mailer: git-send-email 2.21.3 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Received-SPF: none client-ip=212.18.0.9; envelope-from=h.goebel@crazy-compilers.com; helo=mail-out.m-online.net X-Spam_score_int: -25 X-Spam_score: -2.6 X-Spam_bar: -- X-Spam_report: (-2.6 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) * gnu/packages/search.scm (ugrep): New Variable. --- gnu/packages/search.scm | 66 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) diff --git a/gnu/packages/search.scm b/gnu/packages/search.scm index 0a5fa38b30..2db7f9c48f 100644 --- a/gnu/packages/search.scm +++ b/gnu/packages/search.scm @@ -26,6 +26,7 @@ #:select (gpl2 gpl2+ gpl3+ lgpl2.1+ bsd-3 x11 perl-license)) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (guix build-system perl) @@ -36,6 +37,7 @@ #:use-module (gnu packages databases) #:use-module (gnu packages freedesktop) #:use-module (gnu packages linux) + #:use-module (gnu packages pcre) #:use-module (gnu packages perl) #:use-module (gnu packages pdf) #:use-module (gnu packages python) @@ -414,4 +416,68 @@ online libraries. It provides fast search of document text and bibliographic data and simple document and bibtex retrieval.") (license gpl3+))) +(define-public ugrep + (package + (name "ugrep") + (version "3.1.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Genivia/ugrep") + (commit (string-append "v" version)))) + (sha256 + (base32 "136pcxb4rykflnvlm1zjj6ksdr0c9bhcvyzixkixmix5s122q6jz")) + (file-name (string-append name "-" version "-checkout")) + (modules '((guix build utils))) + (snippet + '(begin + (delete-file-recursively "bin") ;; pre-build executables + ;; TODO: If there is a script for rebuilding them, remove + ;; archives, pdf and .class in tests/ + #t)))) + (build-system gnu-build-system) + (inputs + `(("bzip2" ,bzip2) + ("lz4" ,lz4) + ("lzip" ,lzip) ;; lzma + ("pcre2" ,pcre2) + ("zlib" ,zlib))) + (arguments + `(#:configure-flags '("--enable-pager"))) + (home-page "https://github.com/Genivia/ugrep/") + (synopsis "Faster grep with an interactive query UI") + (description "Universal grep: ultra fast searcher of file systems, text +and binary files, source code, archives, compressed files, documents, and +more. + +The main features include: + +@itemize +@item Written in clean and efficient C++11, built for speed +@item Ultra fast with new match algorithms beating grep, ripgrep, silver + searcher, hyperscan, etc. +@item Multi-threaded search using high-performance lock-free job queue stealing +@item Multi-threaded task-parallel decompression and search +@item Optimized pattern matching (AVX, SSE2, ARM NEON/AArch64) +@item Optimized asynchronous IO for efficient concurrent searching +@item Thoroughly tested (includes over 1000 test cases) +@item Compatible with the standard GNU/BSD grep command-line options +@item Comprehensive how-to tutorial for beginners to advanced users +@item Interactive query UI to enter search patterns +@item Select files to search by file types, filename suffix, and \"magic bytes\" +@item Search archives (cpio, jar, tar, pax, zip) +@item Search compressed files (zip, gz, Z, bz, bz2, lzma, xz) +@item Search pdf, doc, docx, xls, xlxs, and more using filters +@item Search binary files and display hexdumps with binary pattern matches +@item Search UTF-encoded files with Unicode pattern matches (by default) +@item Search files encoded in ISO-8859-1 thru 16, CP 437, CP 850, MAC, KOI8, etc. +@item Search files excluding files specified by .gitignore etc. +@item Search patterns across newlines, matching multiple lines at once +@item Search patterns excluding negative patterns (\"match this but not that\") +@item Includes predefined regex patterns to search source code, XML, JSON, HTML +@item Output results in CSV, JSON, XML, and user-specified formats +@item Sort matching files by name, size, and time +@end itemize") + (license bsd-3))) + ;;; search.scm ends here -- 2.21.3 ------------=_1611763202-32189-1-- From unknown Sun Aug 17 01:22:43 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: Hartmut Goebel Subject: bug#45672: closed (Re: bug#45614: [PATCH] gnu: Add ugrep.) Message-ID: References: <03b1c99f-2b30-3654-ef57-735c45042d1d@crazy-compilers.com> <48feb5af1c746731bd9623b01977fb6e6c9724b5.1609848284.git.h.goebel@crazy-compilers.com> X-Gnu-PR-Message: they-closed 45672 X-Gnu-PR-Package: guix-patches X-Gnu-PR-Keywords: patch Reply-To: 45672@debbugs.gnu.org Date: Wed, 27 Jan 2021 16:00:02 +0000 Content-Type: multipart/mixed; boundary="----------=_1611763202-32189-3" This is a multi-part message in MIME format... ------------=_1611763202-32189-3 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #45614: [PATCH v2] gnu: Add ugrep. which was filed against the guix-patches package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 45672@debbugs.gnu.org. --=20 45614: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D45614 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1611763202-32189-3 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 45614-close) by debbugs.gnu.org; 27 Jan 2021 15:59:16 +0000 Received: from localhost ([127.0.0.1]:45888 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l4nDh-0008L8-I3 for submit@debbugs.gnu.org; Wed, 27 Jan 2021 10:59:16 -0500 Received: from mail-out.m-online.net ([212.18.0.9]:48936) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l4nDe-0008Ky-JU for 45614-close@debbugs.gnu.org; Wed, 27 Jan 2021 10:58:59 -0500 Received: from frontend01.mail.m-online.net (unknown [192.168.8.182]) by mail-out.m-online.net (Postfix) with ESMTP id 4DQpDy0KJqz1qsk3 for <45614-close@debbugs.gnu.org>; Wed, 27 Jan 2021 16:58:58 +0100 (CET) Received: from localhost (dynscan1.mnet-online.de [192.168.6.70]) by mail.m-online.net (Postfix) with ESMTP id 4DQpDy0DV5z1qqkK for <45614-close@debbugs.gnu.org>; Wed, 27 Jan 2021 16:58:57 +0100 (CET) X-Virus-Scanned: amavisd-new at mnet-online.de Received: from mail.mnet-online.de ([192.168.8.182]) by localhost (dynscan1.mail.m-online.net [192.168.6.70]) (amavisd-new, port 10024) with ESMTP id mlFsTCoMxpCX for <45614-close@debbugs.gnu.org>; Wed, 27 Jan 2021 16:58:57 +0100 (CET) Received: from hermia.goebel-consult.de (ppp-188-174-57-70.dynamic.mnet-online.de [188.174.57.70]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.mnet-online.de (Postfix) with ESMTPS for <45614-close@debbugs.gnu.org>; Wed, 27 Jan 2021 16:58:57 +0100 (CET) Received: from thisbe.goebel-consult.de (hermia.goebel-consult.de [192.168.110.7]) by hermia.goebel-consult.de (Postfix) with ESMTP id CC1B260299 for <45614-close@debbugs.gnu.org>; Wed, 27 Jan 2021 16:58:54 +0100 (CET) Subject: Re: bug#45614: [PATCH] gnu: Add ugrep. References: <48feb5af1c746731bd9623b01977fb6e6c9724b5.1609848284.git.h.goebel@crazy-compilers.com> <87blds984z.fsf_-_@gnu.org> <87wnw03mwv.fsf@gnu.org> To: 45614-close@debbugs.gnu.org From: Hartmut Goebel Organization: crazy-compilers.com Message-ID: <03b1c99f-2b30-3654-ef57-735c45042d1d@crazy-compilers.com> Date: Wed, 27 Jan 2021 16:58:54 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.12.0 MIME-Version: 1.0 In-Reply-To: <87wnw03mwv.fsf@gnu.org> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Content-Language: de-DE X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 45614-close X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Pushed as d8aa4444688ce244d2556630c3f7cfe739e01310 Thx for the review. -- Regards Hartmut Goebel | Hartmut Goebel | h.goebel@crazy-compilers.com | | www.crazy-compilers.com | compilers which you thought are impossible | ------------=_1611763202-32189-3 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 5 Jan 2021 12:05:50 +0000 Received: from localhost ([127.0.0.1]:40975 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kwl5y-00056A-6L for submit@debbugs.gnu.org; Tue, 05 Jan 2021 07:05:50 -0500 Received: from lists.gnu.org ([209.51.188.17]:55548) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kwl5x-000563-0z for submit@debbugs.gnu.org; Tue, 05 Jan 2021 07:05:49 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:46396) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kwl5w-0007Qd-Sz for guix-patches@gnu.org; Tue, 05 Jan 2021 07:05:48 -0500 Received: from mail-out.m-online.net ([212.18.0.9]:53825) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kwl5u-00017B-3d for guix-patches@gnu.org; Tue, 05 Jan 2021 07:05:48 -0500 Received: from frontend01.mail.m-online.net (unknown [192.168.8.182]) by mail-out.m-online.net (Postfix) with ESMTP id 4D9B5x6HDCz1qsZn; Tue, 5 Jan 2021 13:05:41 +0100 (CET) Received: from localhost (dynscan1.mnet-online.de [192.168.6.70]) by mail.m-online.net (Postfix) with ESMTP id 4D9B5x4bV3z1sFWF; Tue, 5 Jan 2021 13:05:41 +0100 (CET) X-Virus-Scanned: amavisd-new at mnet-online.de Received: from mail.mnet-online.de ([192.168.8.182]) by localhost (dynscan1.mail.m-online.net [192.168.6.70]) (amavisd-new, port 10024) with ESMTP id fYTV9beHUMNU; Tue, 5 Jan 2021 13:05:40 +0100 (CET) Received: from hermia.goebel-consult.de (ppp-188-174-58-71.dynamic.mnet-online.de [188.174.58.71]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.mnet-online.de (Postfix) with ESMTPS; Tue, 5 Jan 2021 13:05:40 +0100 (CET) Received: from lenashee.fritz.box (lenashee.goebel-consult.de [192.168.110.2]) by hermia.goebel-consult.de (Postfix) with ESMTP id EB8FC60200; Tue, 5 Jan 2021 13:05:37 +0100 (CET) From: Hartmut Goebel To: 45614@debbugs.gnu.org, guix-patches@gnu.org Subject: [PATCH v2] gnu: Add ugrep. Date: Tue, 5 Jan 2021 13:05:37 +0100 Message-Id: <48feb5af1c746731bd9623b01977fb6e6c9724b5.1609848284.git.h.goebel@crazy-compilers.com> X-Mailer: git-send-email 2.21.3 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Received-SPF: none client-ip=212.18.0.9; envelope-from=h.goebel@crazy-compilers.com; helo=mail-out.m-online.net X-Spam_score_int: -25 X-Spam_score: -2.6 X-Spam_bar: -- X-Spam_report: (-2.6 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) * gnu/packages/search.scm (ugrep): New Variable. --- gnu/packages/search.scm | 77 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) diff --git a/gnu/packages/search.scm b/gnu/packages/search.scm index 0a5fa38b30..a7b5e1e383 100644 --- a/gnu/packages/search.scm +++ b/gnu/packages/search.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2017 Ricardo Wurmus ;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice ;;; Copyright © 2018 Adam Massmann +;;; Copyright © 2020 Hartmut Goebel ;;; ;;; This file is part of GNU Guix. ;;; @@ -26,6 +27,7 @@ #:select (gpl2 gpl2+ gpl3+ lgpl2.1+ bsd-3 x11 perl-license)) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (guix build-system perl) @@ -35,7 +37,9 @@ #:use-module (gnu packages check) #:use-module (gnu packages databases) #:use-module (gnu packages freedesktop) + #:use-module (gnu packages less) #:use-module (gnu packages linux) + #:use-module (gnu packages pcre) #:use-module (gnu packages perl) #:use-module (gnu packages pdf) #:use-module (gnu packages python) @@ -414,4 +418,77 @@ online libraries. It provides fast search of document text and bibliographic data and simple document and bibtex retrieval.") (license gpl3+))) +(define-public ugrep + (package + (name "ugrep") + (version "3.1.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Genivia/ugrep") + (commit (string-append "v" version)))) + (sha256 + (base32 "136pcxb4rykflnvlm1zjj6ksdr0c9bhcvyzixkixmix5s122q6jz")) + (file-name (string-append name "-" version "-checkout")) + (modules '((guix build utils))) + (snippet + '(begin + (delete-file-recursively "bin") ;; pre-build executables + ;; TODO: If there is a script for rebuilding them, remove + ;; archives, pdf and .class in tests/ + #t)))) + (build-system gnu-build-system) + (inputs + `(("bzip2" ,bzip2) + ("less" ,less) + ("lz4" ,lz4) + ("lzip" ,lzip) ;; lzma + ("pcre2" ,pcre2) + ("zlib" ,zlib))) + (arguments + `(#:configure-flags '("--enable-pager") + #:phases + (modify-phases %standard-phases + (add-before 'configure 'patch-paths-to-binaries + (lambda* (#:key inputs #:allow-other-keys) + (let ((less (assoc-ref inputs "less"))) + (substitute* "src/ugrep.cpp" + (("(#\\s*define +DEFAULT_PAGER_COMMAND +\")(less\\W)" _ a b) + (string-append a less "/bin/" b))))))))) + (home-page "https://github.com/Genivia/ugrep/") + (synopsis "Faster grep with an interactive query UI") + (description "Universal grep: ultra fast searcher of file systems, text +and binary files, source code, archives, compressed files, documents, and +more. + +The main features include: + +@itemize +@item Written in clean and efficient C++11, built for speed +@item Ultra fast with new match algorithms beating grep, ripgrep, silver + searcher, hyperscan, etc. +@item Multi-threaded search using high-performance lock-free job queue stealing +@item Multi-threaded task-parallel decompression and search +@item Optimized pattern matching (AVX, SSE2, ARM NEON/AArch64) +@item Optimized asynchronous IO for efficient concurrent searching +@item Thoroughly tested (includes over 1000 test cases) +@item Compatible with the standard GNU/BSD grep command-line options +@item Comprehensive how-to tutorial for beginners to advanced users +@item Interactive query UI to enter search patterns +@item Select files to search by file types, filename suffix, and \"magic bytes\" +@item Search archives (cpio, jar, tar, pax, zip) +@item Search compressed files (zip, gz, Z, bz, bz2, lzma, xz) +@item Search pdf, doc, docx, xls, xlxs, and more using filters +@item Search binary files and display hexdumps with binary pattern matches +@item Search UTF-encoded files with Unicode pattern matches (by default) +@item Search files encoded in ISO-8859-1 thru 16, CP 437, CP 850, MAC, KOI8, etc. +@item Search files excluding files specified by .gitignore etc. +@item Search patterns across newlines, matching multiple lines at once +@item Search patterns excluding negative patterns (\"match this but not that\") +@item Includes predefined regex patterns to search source code, XML, JSON, HTML +@item Output results in CSV, JSON, XML, and user-specified formats +@item Sort matching files by name, size, and time +@end itemize") + (license bsd-3))) + ;;; search.scm ends here -- 2.21.3 ------------=_1611763202-32189-3--