From 66ca7e87cba7b330a0bf78365e344b26962d2224 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Wed, 28 Aug 2024 14:27:14 -0700 Subject: [PATCH] doclifter: modernize --- .../tools/misc/doclifter/default.nix | 42 +++++++++++++------ 1 file changed, 30 insertions(+), 12 deletions(-) diff --git a/pkgs/development/tools/misc/doclifter/default.nix b/pkgs/development/tools/misc/doclifter/default.nix index 6ab025920533..fb4dff6b5e10 100644 --- a/pkgs/development/tools/misc/doclifter/default.nix +++ b/pkgs/development/tools/misc/doclifter/default.nix @@ -1,14 +1,33 @@ -{ lib, stdenv, fetchurl, python3, makeWrapper, libxml2 }: +{ + fetchurl, + lib, + libxml2, + makeWrapper, + python3, + stdenv, +}: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "doclifter"; version = "2.21"; + src = fetchurl { - url = "http://www.catb.org/~esr/${pname}/${pname}-${version}.tar.gz"; - sha256 = "sha256-3zb+H/rRmU87LWh0+kQtiRMZ4JwJ3tVrt8vQ/EeKx8Q="; + url = "http://www.catb.org/~esr/doclifter/doclifter-${finalAttrs.version}.tar.gz"; + hash = "sha256-3zb+H/rRmU87LWh0+kQtiRMZ4JwJ3tVrt8vQ/EeKx8Q="; }; + + postPatch = '' + substituteInPlace manlifter \ + --replace-fail '/usr/bin/env python2' '/usr/bin/env python3' + 2to3 -w manlifter + ''; + + nativeBuildInputs = [ + python3 + makeWrapper + ]; + buildInputs = [ python3 ]; - nativeBuildInputs = [ python3 makeWrapper ]; strictDeps = true; @@ -17,19 +36,18 @@ stdenv.mkDerivation rec { preInstall = '' mkdir -p $out/bin mkdir -p $out/share/man/man1 - substituteInPlace manlifter \ - --replace '/usr/bin/env python2' '/usr/bin/env python3' - 2to3 -w manlifter cp manlifter $out/bin wrapProgram "$out/bin/manlifter" \ - --prefix PATH : "${libxml2}/bin:$out/bin" - cp manlifter.1 $out/share/man/man1 + --prefix PATH : "${lib.getBin libxml2}/bin:$out/bin" + gzip < manlifter.1 > $out/share/man/man1/manlifter.1.gz ''; meta = { + changelog = "https://gitlab.com/esr/doclifter/-/blob/2.21/NEWS"; description = "Lift documents in nroff markups to XML-DocBook"; homepage = "http://www.catb.org/esr/doclifter"; - license = "BSD"; + license = lib.licenses.bsd2; + mainProgram = "doclifter"; platforms = lib.platforms.unix; }; -} +})