about summary refs log tree commit diff
path: root/pkgs/development/perl-modules/Po4a/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/perl-modules/Po4a/default.nix')
-rw-r--r--pkgs/development/perl-modules/Po4a/default.nix85
1 files changed, 65 insertions, 20 deletions
diff --git a/pkgs/development/perl-modules/Po4a/default.nix b/pkgs/development/perl-modules/Po4a/default.nix
index 38569204f5a80..042d9a3a7d7f6 100644
--- a/pkgs/development/perl-modules/Po4a/default.nix
+++ b/pkgs/development/perl-modules/Po4a/default.nix
@@ -1,44 +1,87 @@
-{ stdenv, lib, fetchurl, docbook_xsl, docbook_xsl_ns, gettext, libxslt, glibcLocales, docbook_xml_dtd_412, docbook_sgml_dtd_41, opensp, bash
-, perl, buildPerlPackage, ModuleBuild, TextWrapI18N, LocaleGettext, TermReadKey, SGMLSpm, UnicodeLineBreak, PodParser, YAMLTiny
-, fetchpatch, writeShellScriptBin
+{ stdenv
+, lib
+, fetchurl
+, docbook_xsl
+, docbook_xsl_ns
+, gettext
+, libxslt
+, glibcLocales
+, docbook_xml_dtd_45
+, docbook_sgml_dtd_41
+, opensp
+, bash
+, perl
+, buildPerlPackage
+, ModuleBuild
+, TextWrapI18N
+, LocaleGettext
+, SGMLSpm
+, UnicodeLineBreak
+, PodParser
+, YAMLTiny
+, SyntaxKeywordTry
+, writeShellScriptBin
 }:
 
 buildPerlPackage rec {
   pname = "po4a";
-  version = "0.62";
+  version = "0.71";
+
   src = fetchurl {
     url = "https://github.com/mquinson/po4a/releases/download/v${version}/po4a-${version}.tar.gz";
-    sha256 = "0eb510a66f59de68cf7a205342036cc9fc08b39334b91f1456421a5f3359e68b";
+    hash = "sha256-xXJAHknMEXV8bTBgkW/ftagzJR7R1K65ibZnBLzyg/k=";
   };
-  patches = [
-    (fetchpatch {
-      # make devdoc output reproducible
-      # https://github.com/mquinson/po4a/pull/387
-      url = "https://github.com/mquinson/po4a/commit/df7433b58f6570558d44b6aac885c2a8f7862e51.patch";
-      sha256 = "9MVkYiItR2P3PBCUc4OhEOUHQuLqTWUYtYlZ3L8miC8=";
-    })
-  ];
 
   strictDeps = true;
+
   nativeBuildInputs =
     # the tests for the tex-format use kpsewhich -- texlive's file finding utility.
     # We don't want to depend on texlive here, so we replace it with a minimal
     # shellscript that suffices for the tests in t/fmt/tex/, i.e. it looks up
     # article.cls to an existing file, but doesn't find article-wrong.cls.
-    let kpsewhich-stub = writeShellScriptBin "kpsewhich"
-      ''[[ $1 = "article.cls" ]] && echo /dev/null'';
+    let
+      kpsewhich-stub = writeShellScriptBin "kpsewhich"
+        ''[[ $1 = "article.cls" ]] && echo /dev/null'';
     in
-    [ gettext libxslt docbook_xsl docbook_xsl_ns ModuleBuild docbook_xml_dtd_412 docbook_sgml_dtd_41 opensp kpsewhich-stub glibcLocales ];
-  propagatedBuildInputs = lib.optional (!stdenv.hostPlatform.isMusl) TextWrapI18N ++ [ LocaleGettext SGMLSpm UnicodeLineBreak PodParser YAMLTiny ];
+    [
+      gettext
+      libxslt
+      docbook_xsl
+      docbook_xsl_ns
+      ModuleBuild
+      docbook_xml_dtd_45
+      docbook_sgml_dtd_41
+      opensp
+      kpsewhich-stub
+      glibcLocales
+    ];
+
   # TODO: TermReadKey was temporarily removed from propagatedBuildInputs to unfreeze the build
+  propagatedBuildInputs = lib.optionals (!stdenv.hostPlatform.isMusl) [
+    TextWrapI18N
+  ] ++ [
+    LocaleGettext
+    SGMLSpm
+    UnicodeLineBreak
+    PodParser
+    YAMLTiny
+    SyntaxKeywordTry
+  ];
+
   buildInputs = [ bash ];
+
   LC_ALL = "en_US.UTF-8";
-  SGML_CATALOG_FILES = "${docbook_xml_dtd_412}/xml/dtd/docbook/catalog.xml";
+  SGML_CATALOG_FILES = "${docbook_xml_dtd_45}/xml/dtd/docbook/catalog.xml";
+
   preConfigure = ''
     touch Makefile.PL
     export PERL_MB_OPT="--install_base=$out --prefix=$out"
   '';
-  buildPhase = "perl Build.PL --install_base=$out --install_path=\"lib=$out/${perl.libPrefix}\"; ./Build build";
+
+  buildPhase = ''
+    perl Build.PL --install_base=$out --install_path="lib=$out/${perl.libPrefix}"
+    ./Build build
+  '';
 
   # Disabling tests on musl
   # Void linux package have investigated the failure and tracked it down to differences in gettext behavior. They decided to disable tests.
@@ -53,15 +96,17 @@ buildPerlPackage rec {
     export SGML_CATALOG_FILES=${docbook_sgml_dtd_41}/sgml/dtd/docbook-4.1/docbook.cat
     ./Build test
   '';
+
   installPhase = ''
     ./Build install
     for f in $out/bin/*; do
       substituteInPlace $f --replace "#! /usr/bin/env perl" "#!${perl}/bin/perl"
     done
   '';
+
   meta = {
     description = "Tools for helping translation of documentation";
     homepage = "https://po4a.org";
-    license = with lib.licenses; [ gpl2Only ];
+    license = with lib.licenses; [ gpl2Plus ];
   };
 }