From d3fb0360357163560fad70799e5515db1808de49 Mon Sep 17 00:00:00 2001 From: Ulysses Zhan Date: Fri, 13 Feb 2026 20:23:42 -0800 Subject: [PATCH] katawa-shoujo-re-engineered: compile rpy files in the build phase --- .../katawa-shoujo-re-engineered/package.nix | 29 ++++++++++++++----- 1 file changed, 22 insertions(+), 7 deletions(-) diff --git a/pkgs/by-name/ka/katawa-shoujo-re-engineered/package.nix b/pkgs/by-name/ka/katawa-shoujo-re-engineered/package.nix index 7b1568e69aca..dbc3fbdafe72 100644 --- a/pkgs/by-name/ka/katawa-shoujo-re-engineered/package.nix +++ b/pkgs/by-name/ka/katawa-shoujo-re-engineered/package.nix @@ -25,26 +25,40 @@ stdenvNoCC.mkDerivation (finalAttrs: { name = "katawa-shoujo-re-engineered"; desktopName = "Katawa Shoujo: Re-Engineered"; type = "Application"; - icon = finalAttrs.meta.mainProgram; + icon = "katawa-shoujo-re-engineered"; categories = [ "Game" ]; - exec = finalAttrs.meta.mainProgram; + exec = "katawa-shoujo-re-engineered"; }) ]; nativeBuildInputs = [ makeWrapper copyDesktopItems + renpy ]; - dontBuild = true; + postPatch = '' + substituteInPlace game/config.rpy --replace-fail 0.0.0-localbuild ${finalAttrs.version} + ''; + + buildPhase = '' + runHook preBuild + + renpy . compile + + runHook postBuild + ''; installPhase = '' runHook preInstall - mkdir -p $out/bin - makeWrapper ${lib.getExe' renpy "renpy"} $out/bin/${finalAttrs.meta.mainProgram} \ - --add-flags ${finalAttrs.src} --add-flags run - install -D $src/web-icon.png $out/share/icons/hicolor/512x512/apps/${finalAttrs.meta.mainProgram}.png + phome=$out/share/kataswa-shoujo-re-engineered + mkdir -p $phome + cp -r game $phome + find $phome -type f -name "*.rpy" -delete + makeWrapper ${lib.getExe renpy} $out/bin/katawa-shoujo-re-engineered \ + --add-flags $phome --add-flags run + install -D $src/web-icon.png $out/share/icons/hicolor/512x512/apps/katawa-shoujo-re-engineered.png runHook postInstall ''; @@ -64,6 +78,7 @@ stdenvNoCC.mkDerivation (finalAttrs: { maintainers = with lib.maintainers; [ quantenzitrone rapiteanu + ulysseszhan ]; platforms = renpy.meta.platforms; };