blob: 0844188ff775d3b6d376a582165a6b620d6856e6 (
plain) (
blame)
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
|
{ lib
, stdenv
, fetchurl
, fetchpatch
, ncurses
, pcre2
, withSecure ? false
}:
stdenv.mkDerivation (finalAttrs: {
pname = "less";
version = "643";
# Only tarballs on the website are valid releases,
# other versions, e.g. git tags are considered snapshots.
src = fetchurl {
url = "https://www.greenwoodsoftware.com/less/less-${finalAttrs.version}.tar.gz";
hash = "sha256-KRG1QyyDb6CEyKLmj2zWMSNywCalj6qpiGJzHItgUug=";
};
patches = [
(fetchpatch {
# https://www.openwall.com/lists/oss-security/2024/04/12/5
name = "sec-issue-newline-path.patch";
url = "https://gitlab.archlinux.org/archlinux/packaging/packages/less/-/raw/1d570db0c84fe95799f460526492e45e24c30ad0/backport-007521ac3c95bc76.patch";
hash = "sha256-BT8DLIu7oVhL5XL50uFVUp97qjklcvRHy85UQwVKAmc=";
})
];
buildInputs = [
ncurses
pcre2
];
outputs = [ "out" "man" ];
configureFlags = [
# Look for 'sysless' in /etc.
"--sysconfdir=/etc"
"--with-regex=pcre2"
] ++ lib.optional withSecure "--with-secure";
meta = {
homepage = "https://www.greenwoodsoftware.com/less/";
description = "More advanced file pager than 'more'";
changelog = "https://www.greenwoodsoftware.com/less/news.${finalAttrs.version}.html";
license = lib.licenses.gpl3Plus;
mainProgram = "less";
maintainers = with lib.maintainers; [ eelco dtzWill ];
platforms = lib.platforms.unix;
};
})
|