From bc6ee77394e83264bace1e99f437659551039fd7 Mon Sep 17 00:00:00 2001 From: Matt Sephton Date: Mon, 31 Aug 2026 14:27:27 +0100 Subject: [PATCH 1/2] fix: publish macOS release from the csproj, not the solution dotnet publish from the repo root picks up WheelWizard.sln, which only defines Debug|Any CPU and Release|Any CPU. -c Release-macOS then fails with MSB4126, so the macOS release jobs from #326 cannot produce a .app. Point the publish at WheelWizard/WheelWizard.csproj, matching the Windows and Linux release steps. --- macos/release-macos.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/macos/release-macos.sh b/macos/release-macos.sh index 6bc4b049..3d4865cd 100755 --- a/macos/release-macos.sh +++ b/macos/release-macos.sh @@ -57,8 +57,9 @@ mkdir -p "$OUTPUT_DIR" # ============================================================================= if [ "${SKIP_BUILD:-}" != "true" ]; then echo "[INFO] Building WheelWizard for $RID..." - cd "$WW_DIR" - dotnet publish -r "$RID" -c Release-macOS \ + # Publish the project, not the solution: WheelWizard.sln only has + # Debug|Any CPU and Release|Any CPU, so -c Release-macOS fails against the .sln. + dotnet publish "$WW_DIR/WheelWizard/WheelWizard.csproj" -r "$RID" -c Release-macOS \ /p:PublishSingleFile=true \ /p:IncludeAllContentForSelfExtract=true \ /p:IncludeNativeLibrariesForSelfExtract=true \ @@ -67,7 +68,6 @@ if [ "${SKIP_BUILD:-}" != "true" ]; then -p:UseAppHost=true \ --self-contained true \ -o "$OUTPUT_DIR/compiled/$RID" - cd "$SCRIPT_DIR" else echo "[INFO] Skipping build (SKIP_BUILD=true)" fi From 05e64023b6daff5ead82f4b47c6e513d1445e17d Mon Sep 17 00:00:00 2001 From: Matt Sephton Date: Mon, 31 Aug 2026 14:28:27 +0100 Subject: [PATCH 2/2] fix: restore root build-mac.sh for local macOS builds Windows and Linux still have root-level publish scripts for local builds; CI does not use them. Restore a matching entry point that delegates to macos/release-macos.sh so ./build-mac.sh produces a .app again. --- build-mac.sh | 5 +++++ 1 file changed, 5 insertions(+) create mode 100755 build-mac.sh diff --git a/build-mac.sh b/build-mac.sh new file mode 100755 index 00000000..a755f973 --- /dev/null +++ b/build-mac.sh @@ -0,0 +1,5 @@ +#!/usr/bin/env bash +# Local macOS build. Produces a .app bundle via macos/release-macos.sh. +# https://avaloniaui.net/blog/the-definitive-guide-to-building-and-deploying-avalonia-applications-for-macos +set -euo pipefail +exec "$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/macos/release-macos.sh" "$@"