diff options
author | Mark H Weaver <mhw@netris.org> | 2016-08-20 21:40:59 -0400 |
---|---|---|
committer | Mark H Weaver <mhw@netris.org> | 2016-08-20 21:40:59 -0400 |
commit | 1063d325ea76aa2b00dfcd3d436b16e412103df1 (patch) | |
tree | bc10be491b907bcd1e78842a3c25dc154a8cffdf /gnu | |
parent | 5cbc24de44b8bff156f6bb19898261f1985b21a5 (diff) | |
download | guix-1063d325ea76aa2b00dfcd3d436b16e412103df1.tar.gz |
gnu: grep: Fix egrep/fgrep to work regardless of PATH.
* gnu/packages/base.scm (grep)[arguments]: New field. Add 'fix-egrep-and-fgrep' phase.
Diffstat (limited to 'gnu')
-rw-r--r-- | gnu/packages/base.scm | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 8c470c318f..58a8e52e4b 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -88,6 +88,20 @@ command-line arguments, multiple languages, and so on.") (patches (search-patches "grep-timing-sensitive-test.patch")))) (build-system gnu-build-system) (native-inputs `(("perl" ,perl))) ;some of the tests require it + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'install 'fix-egrep-and-fgrep + ;; Patch 'egrep' and 'fgrep' to execute 'grep' via its + ;; absolute file name instead of searching for it in $PATH. + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin"))) + (substitute* (list (string-append bin "/egrep") + (string-append bin "/fgrep")) + (("^exec grep") + (string-append "exec " bin "/grep"))) + #t)))))) (synopsis "Print lines matching a pattern") (description "grep is a tool for finding text inside files. Text is found by |