From c2ae8f2beeacf0e291c7ce30b53d8fd5547f3f92 Mon Sep 17 00:00:00 2001 From: Benedikt Peetz Date: Sat, 2 Nov 2024 18:03:59 +0100 Subject: fix(pkgs/less): Temporary override broken `less` package The `less` package in `nixpkgs` is currently compiled with secure mode enabled, which prevents less from e.g. loading its configuration file. --- pkgs/by-name/le/less/package.nix | 61 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 pkgs/by-name/le/less/package.nix (limited to 'pkgs') diff --git a/pkgs/by-name/le/less/package.nix b/pkgs/by-name/le/less/package.nix new file mode 100644 index 00000000..ce4195b7 --- /dev/null +++ b/pkgs/by-name/le/less/package.nix @@ -0,0 +1,61 @@ +# TODO: Remove this, once `nixpkgs` has fixed their `--without-secure` +# Source pr: https://github.com/NixOS/nixpkgs/pull/352298 <2024-11-01> +{ + lib, + fetchurl, + ncurses, + pcre2, + stdenv, + # Boolean options + withSecure ? false, +}: +stdenv.mkDerivation (finalAttrs: { + pname = "less"; + version = "668"; + + # `less` is provided by the following sources: + # - meta.homepage + # - GitHub: https://github.com/gwsw/less/ + # The releases recommended for general consumption are only those from + # homepage, and only those not marked as beta. + src = fetchurl { + url = "https://www.greenwoodsoftware.com/less/less-${finalAttrs.version}.tar.gz"; + hash = "sha256-KBn1VWTYbVQqu+yv2C/2HoGaPuyWf6o2zT5o8VlqRLg="; + }; + + buildInputs = [ + ncurses + pcre2 + ]; + + outputs = [ + "out" + "man" + ]; + + configureFlags = + [ + "--sysconfdir=/etc" # Look for 'sysless' in /etc + (lib.withFeatureAs true "regex" "pcre2") + ] + # Normally we should add `lib.withFeature withSecure "secure"` to configureFlags, + # but `--without-secure` does not work as expected in less-668, it enables secure + # mode instead, so only add `--with-secure` if enabled. + ++ lib.optionals withSecure [(lib.withFeature true "secure")]; + + strictDeps = true; + + 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; [ + AndersonTorres + # not active + dtzWill + ]; + platforms = lib.platforms.unix; + }; +}) -- cgit 1.4.1