validator-nu: fix version output and modernize package

This commit is contained in:
Alexis Hildebrandt 2024-03-26 15:18:09 +01:00
parent 8f72bd17ea
commit c4415d2272
1 changed files with 21 additions and 6 deletions

View File

@ -6,6 +6,7 @@
, python3
, stdenvNoCC
, lib
, testers
}:
let
@ -40,29 +41,43 @@ let
};
in
stdenvNoCC.mkDerivation rec {
stdenvNoCC.mkDerivation (finalAttrs: {
inherit pname version src;
nativeBuildInputs = [ git jdk_headless makeWrapper python3 ];
postPatch = ''
substituteInPlace build/build.py --replace-warn \
'validatorVersion = "%s.%s.%s" % (year, month, day)' \
'validatorVersion = "${finalAttrs.version}"'
'';
buildPhase = ''
ln -s '${deps}/dependencies' '${deps}/extras' .
JAVA_HOME='${jdk_headless}' python checker.py build
'';
installPhase = ''
runHook preInstall
mkdir -p "$out/bin" "$out/share/java"
mv build/dist/vnu.jar "$out/share/java/"
makeWrapper "${jre_headless}/bin/java" "$out/bin/vnu" \
--add-flags "-jar '$out/share/java/vnu.jar'"
runHook postInstall
'';
meta = with lib; {
passthru.tests.version = testers.testVersion {
package = finalAttrs.finalPackage;
};
meta = {
description = "Helps you catch problems in your HTML/CSS/SVG";
homepage = "https://validator.github.io/validator/";
license = licenses.mit;
maintainers = with maintainers; [ andersk ivan ];
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ andersk ivan ];
mainProgram = "vnu";
sourceProvenance = with sourceTypes; [ binaryBytecode fromSource ];
sourceProvenance = with lib.sourceTypes; [ binaryBytecode fromSource ];
};
}
})