diff --git a/pkgs/by-name/we/weasis/package.nix b/pkgs/by-name/we/weasis/package.nix index 0f513759f20c..36a94c147f32 100644 --- a/pkgs/by-name/we/weasis/package.nix +++ b/pkgs/by-name/we/weasis/package.nix @@ -3,6 +3,7 @@ stdenv, fetchzip, jdk24, + unzip, copyDesktopItems, makeDesktopItem, }: @@ -13,6 +14,9 @@ let attrs.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); platform = selectSystem { "x86_64-linux" = "linux-x86-64"; + "aarch64-linux" = "linux-aarch64"; + "x86_64-darwin" = "macosx-x86-64"; + "aarch64-darwin" = "macosx-aarch64"; }; in @@ -27,7 +31,10 @@ stdenv.mkDerivation (finalAttrs: { stripRoot = false; }; - nativeBuildInputs = [ copyDesktopItems ]; + nativeBuildInputs = [ + copyDesktopItems + ] + ++ lib.optional stdenv.isDarwin unzip; desktopItems = [ (makeDesktopItem { @@ -60,12 +67,17 @@ stdenv.mkDerivation (finalAttrs: { installPhase = '' runHook preInstall - + '' + + lib.optionalString stdenv.isLinux '' mkdir -p $out/share/{applications,pixmaps} - mv weasis-${platform}-jdk${lib.versions.major jdk24.version}-${finalAttrs.version}/Weasis/* $out/ mv $out/lib/*.png $out/share/pixmaps/ - + '' + + lib.optionalString stdenv.isDarwin '' + mkdir -p $out/Applications + mv weasis-${platform}-jdk${lib.versions.major jdk24.version}-${finalAttrs.version}/Weasis.app $out/Applications/ + '' + + '' runHook postInstall ''; @@ -79,7 +91,7 @@ stdenv.mkDerivation (finalAttrs: { epl20 ]; maintainers = [ ]; - platforms = [ "x86_64-linux" ]; + platforms = lib.platforms.linux ++ lib.platforms.darwin; mainProgram = "Weasis"; }; })