1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
| | ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages less)
#:use-module (guix licenses)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages perl)
#:use-module (gnu packages file)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system gnu))
(define-public less
(package
(name "less")
(version "551")
(source
(origin
(method url-fetch)
(uri (list (string-append "mirror://gnu/less/less-"
version ".tar.gz")
(string-append "http://www.greenwoodsoftware.com/less/less-"
version ".tar.gz")))
(sha256
(base32 "0ggyjl3yzn7c450zk1rixi9ls6asdhgqynhk34zsd0ckhmsm45pz"))))
(build-system gnu-build-system)
(inputs `(("ncurses" ,ncurses)))
(home-page "https://www.gnu.org/software/less/")
(synopsis "Paginator for terminals")
(description
"GNU less is a pager, a program that allows you to view large amounts
of text in page-sized chunks. Unlike traditional pagers, it allows both
backwards and forwards movement through the document. It also does not have
to read the entire input file before starting, so it starts faster than most
text editors.")
(license gpl3+))) ; some files are under GPLv2+
(define-public lesspipe
(package
(name "lesspipe")
(version "1.84")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/wofr06/lesspipe.git")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"124ffhzrikr88ab14rk6753n8adxijpmg7q3zx7nmqc52wpkfd8q"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f ; no tests
#:phases (modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(delete-file "Makefile") ; force generating
(invoke "./configure"
(string-append "--prefix=" out)
"--yes")
#t))))))
(inputs
`(("file" ,file)
("ncurses" ,ncurses))) ; for tput
(native-inputs `(("perl" ,perl)))
(home-page "https://github.com/wofr06/lesspipe")
(synopsis "Input filter for less")
(description "To browse files under UNIX the excellent viewer less
can be used. By setting the environment variable LESSOPEN, less can be
enhanced by external filters to become even more powerful. Most Linux
distributions come already with a \"lesspipe.sh\" that covers the most
common situations.
The input filter for less described here is called
\"lesspipe.sh\". It is able to process a wide variety of file
formats. It enables users to deeply inspect archives and to display
the contents of files in archives without having to unpack them
before. That means file contents can be properly interpreted even if
the files are compressed and contained in a hierarchy of
archives (often found in RPM or DEB archives containing source
tarballs). The filter is easily extensible for new formats.")
(license gpl2)))
|