From e47487902ebb66e54367dc2d4f44d8c65e44b3e1 Mon Sep 17 00:00:00 2001 From: GabCoolGuy Date: Sun, 17 Nov 2024 00:36:21 +0100 Subject: [PATCH 01/26] Added more mentions of canary Changed github workflows to have "canary" in the zip files Added `App.FullAppName` in the about section, so that it's clear in there too --- .github/workflows/canary.yml | 12 +- .../macos/create_macos_build_ava_canary.sh | 114 ++++++++++++++++++ .../create_macos_build_headless_canary.sh | 111 +++++++++++++++++ .../UI/ViewModels/AboutWindowViewModel.cs | 2 +- 4 files changed, 232 insertions(+), 7 deletions(-) create mode 100644 distribution/macos/create_macos_build_ava_canary.sh create mode 100644 distribution/macos/create_macos_build_headless_canary.sh diff --git a/.github/workflows/canary.yml b/.github/workflows/canary.yml index d102beaa33..bba5faf122 100644 --- a/.github/workflows/canary.yml +++ b/.github/workflows/canary.yml @@ -111,12 +111,12 @@ jobs: run: | pushd publish_ava rm publish/libarmeilleure-jitsupport.dylib - 7z a ../release_output/ryujinx-${{ steps.version_info.outputs.build_version }}-${{ matrix.platform.zip_os_name }}.zip publish + 7z a ../release_output/ryujinx-canary-${{ steps.version_info.outputs.build_version }}-${{ matrix.platform.zip_os_name }}.zip publish popd pushd publish_sdl2_headless rm publish/libarmeilleure-jitsupport.dylib - 7z a ../release_output/sdl2-ryujinx-headless-${{ steps.version_info.outputs.build_version }}-${{ matrix.platform.zip_os_name }}.zip publish + 7z a ../release_output/sdl2-ryujinx-headless-canary-${{ steps.version_info.outputs.build_version }}-${{ matrix.platform.zip_os_name }}.zip publish popd shell: bash @@ -126,13 +126,13 @@ jobs: pushd publish_ava rm publish/libarmeilleure-jitsupport.dylib chmod +x publish/Ryujinx.sh publish/Ryujinx - tar -czvf ../release_output/ryujinx-${{ steps.version_info.outputs.build_version }}-${{ matrix.platform.zip_os_name }}.tar.gz publish + tar -czvf ../release_output/ryujinx-canary-${{ steps.version_info.outputs.build_version }}-${{ matrix.platform.zip_os_name }}.tar.gz publish popd pushd publish_sdl2_headless rm publish/libarmeilleure-jitsupport.dylib chmod +x publish/Ryujinx.sh publish/Ryujinx.Headless.SDL2 - tar -czvf ../release_output/sdl2-ryujinx-headless-${{ steps.version_info.outputs.build_version }}-${{ matrix.platform.zip_os_name }}.tar.gz publish + tar -czvf ../release_output/sdl2-ryujinx-headless-canary-${{ steps.version_info.outputs.build_version }}-${{ matrix.platform.zip_os_name }}.tar.gz publish popd shell: bash @@ -236,11 +236,11 @@ jobs: - name: Publish macOS Ryujinx run: | - ./distribution/macos/create_macos_build_ava.sh . publish_tmp_ava publish_ava ./distribution/macos/entitlements.xml "${{ steps.version_info.outputs.build_version }}" "${{ steps.version_info.outputs.git_short_hash }}" Release + ./distribution/macos/create_macos_build_ava_canary.sh . publish_tmp_ava publish_ava ./distribution/macos/entitlements.xml "${{ steps.version_info.outputs.build_version }}" "${{ steps.version_info.outputs.git_short_hash }}" Release - name: Publish macOS Ryujinx.Headless.SDL2 run: | - ./distribution/macos/create_macos_build_headless.sh . publish_tmp_headless publish_headless ./distribution/macos/entitlements.xml "${{ steps.version_info.outputs.build_version }}" "${{ steps.version_info.outputs.git_short_hash }}" Release + ./distribution/macos/create_macos_build_headless_canary.sh . publish_tmp_headless publish_headless ./distribution/macos/entitlements.xml "${{ steps.version_info.outputs.build_version }}" "${{ steps.version_info.outputs.git_short_hash }}" Release - name: Pushing new release uses: ncipollo/release-action@v1 diff --git a/distribution/macos/create_macos_build_ava_canary.sh b/distribution/macos/create_macos_build_ava_canary.sh new file mode 100644 index 0000000000..d11e8e515d --- /dev/null +++ b/distribution/macos/create_macos_build_ava_canary.sh @@ -0,0 +1,114 @@ +#!/bin/bash + +set -e + +if [ "$#" -lt 7 ]; then + echo "usage " + exit 1 +fi + +mkdir -p "$1" +mkdir -p "$2" +mkdir -p "$3" + +BASE_DIR=$(readlink -f "$1") +TEMP_DIRECTORY=$(readlink -f "$2") +OUTPUT_DIRECTORY=$(readlink -f "$3") +ENTITLEMENTS_FILE_PATH=$(readlink -f "$4") +VERSION=$5 +SOURCE_REVISION_ID=$6 +CONFIGURATION=$7 +EXTRA_ARGS=$8 + +if [ "$VERSION" == "1.1.0" ]; +then + RELEASE_TAR_FILE_NAME=ryujinx-canary-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar +else + RELEASE_TAR_FILE_NAME=ryujinx-canary-$VERSION-macos_universal.app.tar +fi + +ARM64_APP_BUNDLE="$TEMP_DIRECTORY/output_arm64/Ryujinx.app" +X64_APP_BUNDLE="$TEMP_DIRECTORY/output_x64/Ryujinx.app" +UNIVERSAL_APP_BUNDLE="$OUTPUT_DIRECTORY/Ryujinx.app" +EXECUTABLE_SUB_PATH=Contents/MacOS/Ryujinx + +rm -rf "$TEMP_DIRECTORY" +mkdir -p "$TEMP_DIRECTORY" + +DOTNET_COMMON_ARGS=(-p:DebugType=embedded -p:Version="$VERSION" -p:SourceRevisionId="$SOURCE_REVISION_ID" --self-contained true $EXTRA_ARGS) + +dotnet restore +dotnet build -c "$CONFIGURATION" src/Ryujinx +dotnet publish -c "$CONFIGURATION" -r osx-arm64 -o "$TEMP_DIRECTORY/publish_arm64" "${DOTNET_COMMON_ARGS[@]}" src/Ryujinx +dotnet publish -c "$CONFIGURATION" -r osx-x64 -o "$TEMP_DIRECTORY/publish_x64" "${DOTNET_COMMON_ARGS[@]}" src/Ryujinx + +# Get rid of the support library for ARMeilleure for x64 (that's only for arm64) +rm -rf "$TEMP_DIRECTORY/publish_x64/libarmeilleure-jitsupport.dylib" + +# Get rid of libsoundio from arm64 builds as we don't have a arm64 variant +# TODO: remove this once done +rm -rf "$TEMP_DIRECTORY/publish_arm64/libsoundio.dylib" + +pushd "$BASE_DIR/distribution/macos" +./create_app_bundle.sh "$TEMP_DIRECTORY/publish_x64" "$TEMP_DIRECTORY/output_x64" "$ENTITLEMENTS_FILE_PATH" +./create_app_bundle.sh "$TEMP_DIRECTORY/publish_arm64" "$TEMP_DIRECTORY/output_arm64" "$ENTITLEMENTS_FILE_PATH" +popd + +rm -rf "$UNIVERSAL_APP_BUNDLE" +mkdir -p "$OUTPUT_DIRECTORY" + +# Let's copy one of the two different app bundle and remove the executable +cp -R "$ARM64_APP_BUNDLE" "$UNIVERSAL_APP_BUNDLE" +rm "$UNIVERSAL_APP_BUNDLE/$EXECUTABLE_SUB_PATH" + +# Make it libraries universal +python3 "$BASE_DIR/distribution/macos/construct_universal_dylib.py" "$ARM64_APP_BUNDLE" "$X64_APP_BUNDLE" "$UNIVERSAL_APP_BUNDLE" "**/*.dylib" + +if ! [ -x "$(command -v lipo)" ]; +then + if ! [ -x "$(command -v llvm-lipo-14)" ]; + then + LIPO=llvm-lipo + else + LIPO=llvm-lipo-14 + fi +else + LIPO=lipo +fi + +# Make the executable universal +$LIPO "$ARM64_APP_BUNDLE/$EXECUTABLE_SUB_PATH" "$X64_APP_BUNDLE/$EXECUTABLE_SUB_PATH" -output "$UNIVERSAL_APP_BUNDLE/$EXECUTABLE_SUB_PATH" -create + +# Patch up the Info.plist to have appropriate version +sed -r -i.bck "s/\%\%RYUJINX_BUILD_VERSION\%\%/$VERSION/g;" "$UNIVERSAL_APP_BUNDLE/Contents/Info.plist" +sed -r -i.bck "s/\%\%RYUJINX_BUILD_GIT_HASH\%\%/$SOURCE_REVISION_ID/g;" "$UNIVERSAL_APP_BUNDLE/Contents/Info.plist" +rm "$UNIVERSAL_APP_BUNDLE/Contents/Info.plist.bck" + +# Now sign it +if ! [ -x "$(command -v codesign)" ]; +then + if ! [ -x "$(command -v rcodesign)" ]; + then + echo "Cannot find rcodesign on your system, please install rcodesign." + exit 1 + fi + + # NOTE: Currently require https://github.com/indygreg/apple-platform-rs/pull/44 to work on other OSes. + # cargo install --git "https://github.com/marysaka/apple-platform-rs" --branch "fix/adhoc-app-bundle" apple-codesign --bin "rcodesign" + echo "Using rcodesign for ad-hoc signing" + rcodesign sign --entitlements-xml-path "$ENTITLEMENTS_FILE_PATH" "$UNIVERSAL_APP_BUNDLE" +else + echo "Using codesign for ad-hoc signing" + codesign --entitlements "$ENTITLEMENTS_FILE_PATH" -f -s - "$UNIVERSAL_APP_BUNDLE" +fi + +echo "Creating archive" +pushd "$OUTPUT_DIRECTORY" +tar --exclude "Ryujinx.app/Contents/MacOS/Ryujinx" -cvf "$RELEASE_TAR_FILE_NAME" Ryujinx.app 1> /dev/null +python3 "$BASE_DIR/distribution/misc/add_tar_exec.py" "$RELEASE_TAR_FILE_NAME" "Ryujinx.app/Contents/MacOS/Ryujinx" "Ryujinx.app/Contents/MacOS/Ryujinx" +gzip -9 < "$RELEASE_TAR_FILE_NAME" > "$RELEASE_TAR_FILE_NAME.gz" +rm "$RELEASE_TAR_FILE_NAME" + +popd + +echo "Done" diff --git a/distribution/macos/create_macos_build_headless_canary.sh b/distribution/macos/create_macos_build_headless_canary.sh new file mode 100644 index 0000000000..dc922337ac --- /dev/null +++ b/distribution/macos/create_macos_build_headless_canary.sh @@ -0,0 +1,111 @@ +#!/bin/bash + +set -e + +if [ "$#" -lt 7 ]; then + echo "usage " + exit 1 +fi + +mkdir -p "$1" +mkdir -p "$2" +mkdir -p "$3" + +BASE_DIR=$(readlink -f "$1") +TEMP_DIRECTORY=$(readlink -f "$2") +OUTPUT_DIRECTORY=$(readlink -f "$3") +ENTITLEMENTS_FILE_PATH=$(readlink -f "$4") +VERSION=$5 +SOURCE_REVISION_ID=$6 +CONFIGURATION=$7 +EXTRA_ARGS=$8 + +if [ "$VERSION" == "1.1.0" ]; +then + RELEASE_TAR_FILE_NAME=sdl2-ryujinx-headless-canary-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.tar +else + RELEASE_TAR_FILE_NAME=sdl2-ryujinx-headless-canary-$VERSION-macos_universal.tar +fi + +ARM64_OUTPUT="$TEMP_DIRECTORY/publish_arm64" +X64_OUTPUT="$TEMP_DIRECTORY/publish_x64" +UNIVERSAL_OUTPUT="$OUTPUT_DIRECTORY/publish" +EXECUTABLE_SUB_PATH=Ryujinx.Headless.SDL2 + +rm -rf "$TEMP_DIRECTORY" +mkdir -p "$TEMP_DIRECTORY" + +DOTNET_COMMON_ARGS=(-p:DebugType=embedded -p:Version="$VERSION" -p:SourceRevisionId="$SOURCE_REVISION_ID" --self-contained true $EXTRA_ARGS) + +dotnet restore +dotnet build -c "$CONFIGURATION" src/Ryujinx.Headless.SDL2 +dotnet publish -c "$CONFIGURATION" -r osx-arm64 -o "$TEMP_DIRECTORY/publish_arm64" "${DOTNET_COMMON_ARGS[@]}" src/Ryujinx.Headless.SDL2 +dotnet publish -c "$CONFIGURATION" -r osx-x64 -o "$TEMP_DIRECTORY/publish_x64" "${DOTNET_COMMON_ARGS[@]}" src/Ryujinx.Headless.SDL2 + +# Get rid of the support library for ARMeilleure for x64 (that's only for arm64) +rm -rf "$TEMP_DIRECTORY/publish_x64/libarmeilleure-jitsupport.dylib" + +# Get rid of libsoundio from arm64 builds as we don't have a arm64 variant +# TODO: remove this once done +rm -rf "$TEMP_DIRECTORY/publish_arm64/libsoundio.dylib" + +rm -rf "$OUTPUT_DIRECTORY" +mkdir -p "$OUTPUT_DIRECTORY" + +# Let's copy one of the two different outputs and remove the executable +cp -R "$ARM64_OUTPUT/" "$UNIVERSAL_OUTPUT" +rm "$UNIVERSAL_OUTPUT/$EXECUTABLE_SUB_PATH" + +# Make it libraries universal +python3 "$BASE_DIR/distribution/macos/construct_universal_dylib.py" "$ARM64_OUTPUT" "$X64_OUTPUT" "$UNIVERSAL_OUTPUT" "**/*.dylib" + +if ! [ -x "$(command -v lipo)" ]; +then + if ! [ -x "$(command -v llvm-lipo-14)" ]; + then + LIPO=llvm-lipo + else + LIPO=llvm-lipo-14 + fi +else + LIPO=lipo +fi + +# Make the executable universal +$LIPO "$ARM64_OUTPUT/$EXECUTABLE_SUB_PATH" "$X64_OUTPUT/$EXECUTABLE_SUB_PATH" -output "$UNIVERSAL_OUTPUT/$EXECUTABLE_SUB_PATH" -create + +# Now sign it +if ! [ -x "$(command -v codesign)" ]; +then + if ! [ -x "$(command -v rcodesign)" ]; + then + echo "Cannot find rcodesign on your system, please install rcodesign." + exit 1 + fi + + # NOTE: Currently require https://github.com/indygreg/apple-platform-rs/pull/44 to work on other OSes. + # cargo install --git "https://github.com/marysaka/apple-platform-rs" --branch "fix/adhoc-app-bundle" apple-codesign --bin "rcodesign" + echo "Using rcodesign for ad-hoc signing" + for FILE in "$UNIVERSAL_OUTPUT"/*; do + if [[ $(file "$FILE") == *"Mach-O"* ]]; then + rcodesign sign --entitlements-xml-path "$ENTITLEMENTS_FILE_PATH" "$FILE" + fi + done +else + echo "Using codesign for ad-hoc signing" + for FILE in "$UNIVERSAL_OUTPUT"/*; do + if [[ $(file "$FILE") == *"Mach-O"* ]]; then + codesign --entitlements "$ENTITLEMENTS_FILE_PATH" -f -s - "$FILE" + fi + done +fi + +echo "Creating archive" +pushd "$OUTPUT_DIRECTORY" +tar --exclude "publish/Ryujinx.Headless.SDL2" -cvf "$RELEASE_TAR_FILE_NAME" publish 1> /dev/null +python3 "$BASE_DIR/distribution/misc/add_tar_exec.py" "$RELEASE_TAR_FILE_NAME" "publish/Ryujinx.Headless.SDL2" "publish/Ryujinx.Headless.SDL2" +gzip -9 < "$RELEASE_TAR_FILE_NAME" > "$RELEASE_TAR_FILE_NAME.gz" +rm "$RELEASE_TAR_FILE_NAME" +popd + +echo "Done" diff --git a/src/Ryujinx/UI/ViewModels/AboutWindowViewModel.cs b/src/Ryujinx/UI/ViewModels/AboutWindowViewModel.cs index 236711c317..c48ad378f3 100644 --- a/src/Ryujinx/UI/ViewModels/AboutWindowViewModel.cs +++ b/src/Ryujinx/UI/ViewModels/AboutWindowViewModel.cs @@ -49,7 +49,7 @@ public string Version public AboutWindowViewModel() { - Version = Program.Version; + Version = App.FullAppName + "\n" + Program.Version; UpdateLogoTheme(ConfigurationState.Instance.UI.BaseStyle.Value); ThemeManager.ThemeChanged += ThemeManager_ThemeChanged; From 75a4403cf180bd566f258db1358845ae5b7666ec Mon Sep 17 00:00:00 2001 From: GabCoolGuy Date: Sun, 17 Nov 2024 01:04:43 +0100 Subject: [PATCH 02/26] Added canary in canary logs --- src/Ryujinx.Common/Logging/Targets/FileLogTarget.cs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/Ryujinx.Common/Logging/Targets/FileLogTarget.cs b/src/Ryujinx.Common/Logging/Targets/FileLogTarget.cs index 631df3056f..c98c255561 100644 --- a/src/Ryujinx.Common/Logging/Targets/FileLogTarget.cs +++ b/src/Ryujinx.Common/Logging/Targets/FileLogTarget.cs @@ -2,6 +2,7 @@ using System; using System.IO; using System.Linq; +using System.Net.Mime; namespace Ryujinx.Common.Logging.Targets { @@ -69,9 +70,10 @@ public static FileStream PrepareLogFile(string path) } string version = ReleaseInformation.Version; + string appName = ReleaseInformation.IsCanaryBuild ? "Ryujinx Canary" : "Ryujinx"; // Get path for the current time - path = Path.Combine(logDir.FullName, $"Ryujinx_{version}_{DateTime.Now:yyyy-MM-dd_HH-mm-ss}.log"); + path = Path.Combine(logDir.FullName, $"{appName}_{version}_{DateTime.Now:yyyy-MM-dd_HH-mm-ss}.log"); try { From eba93a3d66f09292d29f2a13ca57cbdcc60e0f40 Mon Sep 17 00:00:00 2001 From: GabCoolGuy Date: Sun, 17 Nov 2024 01:35:28 +0100 Subject: [PATCH 03/26] Attempt to fix macos canary workflows --- distribution/macos/create_macos_build_ava_canary.sh | 0 distribution/macos/create_macos_build_headless_canary.sh | 0 2 files changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 distribution/macos/create_macos_build_ava_canary.sh mode change 100644 => 100755 distribution/macos/create_macos_build_headless_canary.sh diff --git a/distribution/macos/create_macos_build_ava_canary.sh b/distribution/macos/create_macos_build_ava_canary.sh old mode 100644 new mode 100755 diff --git a/distribution/macos/create_macos_build_headless_canary.sh b/distribution/macos/create_macos_build_headless_canary.sh old mode 100644 new mode 100755 From 8dd78b4fb7f7373ccc64196947c993443060d46b Mon Sep 17 00:00:00 2001 From: GabCoolGuy Date: Sun, 17 Nov 2024 11:53:32 +0100 Subject: [PATCH 04/26] Changed `Ryujinx Canary` to `Ryujinx_Canary` to follow nearby formatting in FileLogTarget.cs --- src/Ryujinx.Common/Logging/Targets/FileLogTarget.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Ryujinx.Common/Logging/Targets/FileLogTarget.cs b/src/Ryujinx.Common/Logging/Targets/FileLogTarget.cs index c98c255561..1237d0c205 100644 --- a/src/Ryujinx.Common/Logging/Targets/FileLogTarget.cs +++ b/src/Ryujinx.Common/Logging/Targets/FileLogTarget.cs @@ -70,7 +70,7 @@ public static FileStream PrepareLogFile(string path) } string version = ReleaseInformation.Version; - string appName = ReleaseInformation.IsCanaryBuild ? "Ryujinx Canary" : "Ryujinx"; + string appName = ReleaseInformation.IsCanaryBuild ? "Ryujinx_Canary" : "Ryujinx"; // Get path for the current time path = Path.Combine(logDir.FullName, $"{appName}_{version}_{DateTime.Now:yyyy-MM-dd_HH-mm-ss}.log"); From 8cbcf15d0a3df1ca0a2d5be16004c97d8a0b5df3 Mon Sep 17 00:00:00 2001 From: GabCoolGuy Date: Wed, 20 Nov 2024 20:02:53 +0100 Subject: [PATCH 05/26] Change headless to nogui --- .github/workflows/canary.yml | 4 ++-- distribution/macos/create_macos_build_headless_canary.sh | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/canary.yml b/.github/workflows/canary.yml index bba5faf122..3435c828b2 100644 --- a/.github/workflows/canary.yml +++ b/.github/workflows/canary.yml @@ -116,7 +116,7 @@ jobs: pushd publish_sdl2_headless rm publish/libarmeilleure-jitsupport.dylib - 7z a ../release_output/sdl2-ryujinx-headless-canary-${{ steps.version_info.outputs.build_version }}-${{ matrix.platform.zip_os_name }}.zip publish + 7z a ../release_output/nogui-ryujinx-canary-${{ steps.version_info.outputs.build_version }}-${{ matrix.platform.zip_os_name }}.zip publish popd shell: bash @@ -132,7 +132,7 @@ jobs: pushd publish_sdl2_headless rm publish/libarmeilleure-jitsupport.dylib chmod +x publish/Ryujinx.sh publish/Ryujinx.Headless.SDL2 - tar -czvf ../release_output/sdl2-ryujinx-headless-canary-${{ steps.version_info.outputs.build_version }}-${{ matrix.platform.zip_os_name }}.tar.gz publish + tar -czvf ../release_output/nogui-ryujinx-canary-${{ steps.version_info.outputs.build_version }}-${{ matrix.platform.zip_os_name }}.tar.gz publish popd shell: bash diff --git a/distribution/macos/create_macos_build_headless_canary.sh b/distribution/macos/create_macos_build_headless_canary.sh index dc922337ac..4a2a4ee0ef 100755 --- a/distribution/macos/create_macos_build_headless_canary.sh +++ b/distribution/macos/create_macos_build_headless_canary.sh @@ -22,9 +22,9 @@ EXTRA_ARGS=$8 if [ "$VERSION" == "1.1.0" ]; then - RELEASE_TAR_FILE_NAME=sdl2-ryujinx-headless-canary-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.tar + RELEASE_TAR_FILE_NAME=nogui-ryujinx-canary-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.tar else - RELEASE_TAR_FILE_NAME=sdl2-ryujinx-headless-canary-$VERSION-macos_universal.tar + RELEASE_TAR_FILE_NAME=nogui-ryujinx-canary-$VERSION-macos_universal.tar fi ARM64_OUTPUT="$TEMP_DIRECTORY/publish_arm64" From fbd9a441fba198fe269cf4130a7c21aea165ca09 Mon Sep 17 00:00:00 2001 From: GabCoolGuy Date: Wed, 20 Nov 2024 20:06:57 +0100 Subject: [PATCH 06/26] zfaazfqsf --- .github/workflows/canary.yml | 2 +- .github/workflows/release.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/canary.yml b/.github/workflows/canary.yml index 3435c828b2..c34f498fae 100644 --- a/.github/workflows/canary.yml +++ b/.github/workflows/canary.yml @@ -21,7 +21,7 @@ env: DOTNET_CLI_TELEMETRY_OPTOUT: 1 RYUJINX_BASE_VERSION: "1.2" RYUJINX_TARGET_RELEASE_CHANNEL_NAME: "canary" - RYUJINX_TARGET_RELEASE_CHANNEL_OWNER: "GreemDev" + RYUJINX_TARGET_RELEASE_CHANNEL_OWNER: "GabCoolDude" RYUJINX_TARGET_RELEASE_CHANNEL_SOURCE_REPO: "Ryujinx" RYUJINX_TARGET_RELEASE_CHANNEL_REPO: "Ryujinx-Canary" RELEASE: 1 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 44b1de09b0..555495a3bc 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -21,7 +21,7 @@ env: DOTNET_CLI_TELEMETRY_OPTOUT: 1 RYUJINX_BASE_VERSION: "1.2" RYUJINX_TARGET_RELEASE_CHANNEL_NAME: "release" - RYUJINX_TARGET_RELEASE_CHANNEL_OWNER: "GreemDev" + RYUJINX_TARGET_RELEASE_CHANNEL_OWNER: "GabCoolDude" RYUJINX_TARGET_RELEASE_CHANNEL_REPO: "Ryujinx" RELEASE: 1 From f6d45801556d3e6a70ace9de2929e9d32772f95a Mon Sep 17 00:00:00 2001 From: GabCoolGuy Date: Wed, 20 Nov 2024 22:11:05 +0100 Subject: [PATCH 07/26] Attempt to check if canary in `create_macos_build_ava.sh` and in `create_macos_build_ava_headless.sh` instead of in seperate files This helps keeping things concise and should maybe work well idk --- .github/workflows/build.yml | 1 + .github/workflows/canary.yml | 5 +++-- .github/workflows/release.yml | 1 + distribution/macos/create_macos_build_ava.sh | 10 +++++++--- distribution/macos/create_macos_build_headless.sh | 10 +++++++--- 5 files changed, 19 insertions(+), 8 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 21dc3eb0be..6cf5bc65c9 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -8,6 +8,7 @@ env: DOTNET_CLI_TELEMETRY_OPTOUT: 1 RYUJINX_BASE_VERSION: "1.2.0" RELEASE: 0 + CANARY: 0 jobs: build: diff --git a/.github/workflows/canary.yml b/.github/workflows/canary.yml index 3435c828b2..c5640269f1 100644 --- a/.github/workflows/canary.yml +++ b/.github/workflows/canary.yml @@ -25,6 +25,7 @@ env: RYUJINX_TARGET_RELEASE_CHANNEL_SOURCE_REPO: "Ryujinx" RYUJINX_TARGET_RELEASE_CHANNEL_REPO: "Ryujinx-Canary" RELEASE: 1 + CANARY: 1 jobs: tag: @@ -236,11 +237,11 @@ jobs: - name: Publish macOS Ryujinx run: | - ./distribution/macos/create_macos_build_ava_canary.sh . publish_tmp_ava publish_ava ./distribution/macos/entitlements.xml "${{ steps.version_info.outputs.build_version }}" "${{ steps.version_info.outputs.git_short_hash }}" Release + ./distribution/macos/create_macos_build_ava.sh . publish_tmp_ava publish_ava ./distribution/macos/entitlements.xml "${{ steps.version_info.outputs.build_version }}" "${{ steps.version_info.outputs.git_short_hash }}" Release - name: Publish macOS Ryujinx.Headless.SDL2 run: | - ./distribution/macos/create_macos_build_headless_canary.sh . publish_tmp_headless publish_headless ./distribution/macos/entitlements.xml "${{ steps.version_info.outputs.build_version }}" "${{ steps.version_info.outputs.git_short_hash }}" Release + ./distribution/macos/create_macos_build_headless.sh . publish_tmp_headless publish_headless ./distribution/macos/entitlements.xml "${{ steps.version_info.outputs.build_version }}" "${{ steps.version_info.outputs.git_short_hash }}" Release - name: Pushing new release uses: ncipollo/release-action@v1 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 44b1de09b0..4a987d86c9 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -24,6 +24,7 @@ env: RYUJINX_TARGET_RELEASE_CHANNEL_OWNER: "GreemDev" RYUJINX_TARGET_RELEASE_CHANNEL_REPO: "Ryujinx" RELEASE: 1 + CANARY: 0 jobs: tag: diff --git a/distribution/macos/create_macos_build_ava.sh b/distribution/macos/create_macos_build_ava.sh index 80bd6662c6..992b11784e 100755 --- a/distribution/macos/create_macos_build_ava.sh +++ b/distribution/macos/create_macos_build_ava.sh @@ -3,7 +3,7 @@ set -e if [ "$#" -lt 7 ]; then - echo "usage " + echo "usage " exit 1 fi @@ -19,9 +19,13 @@ VERSION=$5 SOURCE_REVISION_ID=$6 CONFIGURATION=$7 EXTRA_ARGS=$8 +CANARY=$9 -if [ "$VERSION" == "1.1.0" ]; +# shellcheck disable=SC2107 +if [ "$VERSION" == "1.1.0" && "$CANARY" == 1 ]; then + RELEASE_TAR_FILE_NAME=ryujinx-canary-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar +elif [ "$VERSION" == "1.1.0" && "$CANARY" == 0 ]; RELEASE_TAR_FILE_NAME=ryujinx-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar else RELEASE_TAR_FILE_NAME=ryujinx-$VERSION-macos_universal.app.tar @@ -61,7 +65,7 @@ mkdir -p "$OUTPUT_DIRECTORY" cp -R "$ARM64_APP_BUNDLE" "$UNIVERSAL_APP_BUNDLE" rm "$UNIVERSAL_APP_BUNDLE/$EXECUTABLE_SUB_PATH" -# Make it libraries universal +# Make its libraries universal python3 "$BASE_DIR/distribution/macos/construct_universal_dylib.py" "$ARM64_APP_BUNDLE" "$X64_APP_BUNDLE" "$UNIVERSAL_APP_BUNDLE" "**/*.dylib" if ! [ -x "$(command -v lipo)" ]; diff --git a/distribution/macos/create_macos_build_headless.sh b/distribution/macos/create_macos_build_headless.sh index 24836418d2..07624ff891 100755 --- a/distribution/macos/create_macos_build_headless.sh +++ b/distribution/macos/create_macos_build_headless.sh @@ -19,12 +19,16 @@ VERSION=$5 SOURCE_REVISION_ID=$6 CONFIGURATION=$7 EXTRA_ARGS=$8 +CANARY=$9 -if [ "$VERSION" == "1.1.0" ]; +# shellcheck disable=SC2107 +if [ "$VERSION" == "1.1.0" && "$CANARY" == 1 ]; then - RELEASE_TAR_FILE_NAME=nogui-ryujinx-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.tar + RELEASE_TAR_FILE_NAME=ryujinx-canary-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar +elif [ "$VERSION" == "1.1.0" && "$CANARY" == 0 ]; + RELEASE_TAR_FILE_NAME=ryujinx-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar else - RELEASE_TAR_FILE_NAME=nogui-ryujinx-$VERSION-macos_universal.tar + RELEASE_TAR_FILE_NAME=ryujinx-$VERSION-macos_universal.app.tar fi ARM64_OUTPUT="$TEMP_DIRECTORY/publish_arm64" From 77fc9348b93560cd9374e81431b2d17a968cbbde Mon Sep 17 00:00:00 2001 From: GabCoolGuy Date: Wed, 20 Nov 2024 22:11:05 +0100 Subject: [PATCH 08/26] Attempt to check if canary in `create_macos_build_ava.sh` and in `create_macos_build_ava_headless.sh` instead of in seperate files This helps keeping things concise and should maybe work well idk --- .github/workflows/build.yml | 1 + .github/workflows/canary.yml | 5 +++-- .github/workflows/release.yml | 1 + distribution/macos/create_macos_build_ava.sh | 10 +++++++--- distribution/macos/create_macos_build_headless.sh | 10 +++++++--- 5 files changed, 19 insertions(+), 8 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 21dc3eb0be..6cf5bc65c9 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -8,6 +8,7 @@ env: DOTNET_CLI_TELEMETRY_OPTOUT: 1 RYUJINX_BASE_VERSION: "1.2.0" RELEASE: 0 + CANARY: 0 jobs: build: diff --git a/.github/workflows/canary.yml b/.github/workflows/canary.yml index c34f498fae..a694cdb6a9 100644 --- a/.github/workflows/canary.yml +++ b/.github/workflows/canary.yml @@ -25,6 +25,7 @@ env: RYUJINX_TARGET_RELEASE_CHANNEL_SOURCE_REPO: "Ryujinx" RYUJINX_TARGET_RELEASE_CHANNEL_REPO: "Ryujinx-Canary" RELEASE: 1 + CANARY: 1 jobs: tag: @@ -236,11 +237,11 @@ jobs: - name: Publish macOS Ryujinx run: | - ./distribution/macos/create_macos_build_ava_canary.sh . publish_tmp_ava publish_ava ./distribution/macos/entitlements.xml "${{ steps.version_info.outputs.build_version }}" "${{ steps.version_info.outputs.git_short_hash }}" Release + ./distribution/macos/create_macos_build_ava.sh . publish_tmp_ava publish_ava ./distribution/macos/entitlements.xml "${{ steps.version_info.outputs.build_version }}" "${{ steps.version_info.outputs.git_short_hash }}" Release - name: Publish macOS Ryujinx.Headless.SDL2 run: | - ./distribution/macos/create_macos_build_headless_canary.sh . publish_tmp_headless publish_headless ./distribution/macos/entitlements.xml "${{ steps.version_info.outputs.build_version }}" "${{ steps.version_info.outputs.git_short_hash }}" Release + ./distribution/macos/create_macos_build_headless.sh . publish_tmp_headless publish_headless ./distribution/macos/entitlements.xml "${{ steps.version_info.outputs.build_version }}" "${{ steps.version_info.outputs.git_short_hash }}" Release - name: Pushing new release uses: ncipollo/release-action@v1 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 555495a3bc..1b61f77032 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -24,6 +24,7 @@ env: RYUJINX_TARGET_RELEASE_CHANNEL_OWNER: "GabCoolDude" RYUJINX_TARGET_RELEASE_CHANNEL_REPO: "Ryujinx" RELEASE: 1 + CANARY: 0 jobs: tag: diff --git a/distribution/macos/create_macos_build_ava.sh b/distribution/macos/create_macos_build_ava.sh index 80bd6662c6..992b11784e 100755 --- a/distribution/macos/create_macos_build_ava.sh +++ b/distribution/macos/create_macos_build_ava.sh @@ -3,7 +3,7 @@ set -e if [ "$#" -lt 7 ]; then - echo "usage " + echo "usage " exit 1 fi @@ -19,9 +19,13 @@ VERSION=$5 SOURCE_REVISION_ID=$6 CONFIGURATION=$7 EXTRA_ARGS=$8 +CANARY=$9 -if [ "$VERSION" == "1.1.0" ]; +# shellcheck disable=SC2107 +if [ "$VERSION" == "1.1.0" && "$CANARY" == 1 ]; then + RELEASE_TAR_FILE_NAME=ryujinx-canary-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar +elif [ "$VERSION" == "1.1.0" && "$CANARY" == 0 ]; RELEASE_TAR_FILE_NAME=ryujinx-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar else RELEASE_TAR_FILE_NAME=ryujinx-$VERSION-macos_universal.app.tar @@ -61,7 +65,7 @@ mkdir -p "$OUTPUT_DIRECTORY" cp -R "$ARM64_APP_BUNDLE" "$UNIVERSAL_APP_BUNDLE" rm "$UNIVERSAL_APP_BUNDLE/$EXECUTABLE_SUB_PATH" -# Make it libraries universal +# Make its libraries universal python3 "$BASE_DIR/distribution/macos/construct_universal_dylib.py" "$ARM64_APP_BUNDLE" "$X64_APP_BUNDLE" "$UNIVERSAL_APP_BUNDLE" "**/*.dylib" if ! [ -x "$(command -v lipo)" ]; diff --git a/distribution/macos/create_macos_build_headless.sh b/distribution/macos/create_macos_build_headless.sh index 24836418d2..07624ff891 100755 --- a/distribution/macos/create_macos_build_headless.sh +++ b/distribution/macos/create_macos_build_headless.sh @@ -19,12 +19,16 @@ VERSION=$5 SOURCE_REVISION_ID=$6 CONFIGURATION=$7 EXTRA_ARGS=$8 +CANARY=$9 -if [ "$VERSION" == "1.1.0" ]; +# shellcheck disable=SC2107 +if [ "$VERSION" == "1.1.0" && "$CANARY" == 1 ]; then - RELEASE_TAR_FILE_NAME=nogui-ryujinx-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.tar + RELEASE_TAR_FILE_NAME=ryujinx-canary-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar +elif [ "$VERSION" == "1.1.0" && "$CANARY" == 0 ]; + RELEASE_TAR_FILE_NAME=ryujinx-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar else - RELEASE_TAR_FILE_NAME=nogui-ryujinx-$VERSION-macos_universal.tar + RELEASE_TAR_FILE_NAME=ryujinx-$VERSION-macos_universal.app.tar fi ARM64_OUTPUT="$TEMP_DIRECTORY/publish_arm64" From c3631dc263349b48ab5c02aec8d935e6e652c994 Mon Sep 17 00:00:00 2001 From: GabCoolGuy Date: Wed, 20 Nov 2024 22:17:42 +0100 Subject: [PATCH 09/26] attempt 2 fixed bad syntax --- distribution/macos/create_macos_build_ava.sh | 1 + distribution/macos/create_macos_build_headless.sh | 1 + 2 files changed, 2 insertions(+) diff --git a/distribution/macos/create_macos_build_ava.sh b/distribution/macos/create_macos_build_ava.sh index 992b11784e..f82acda8bf 100755 --- a/distribution/macos/create_macos_build_ava.sh +++ b/distribution/macos/create_macos_build_ava.sh @@ -26,6 +26,7 @@ if [ "$VERSION" == "1.1.0" && "$CANARY" == 1 ]; then RELEASE_TAR_FILE_NAME=ryujinx-canary-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar elif [ "$VERSION" == "1.1.0" && "$CANARY" == 0 ]; +then RELEASE_TAR_FILE_NAME=ryujinx-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar else RELEASE_TAR_FILE_NAME=ryujinx-$VERSION-macos_universal.app.tar diff --git a/distribution/macos/create_macos_build_headless.sh b/distribution/macos/create_macos_build_headless.sh index 07624ff891..3108287582 100755 --- a/distribution/macos/create_macos_build_headless.sh +++ b/distribution/macos/create_macos_build_headless.sh @@ -26,6 +26,7 @@ if [ "$VERSION" == "1.1.0" && "$CANARY" == 1 ]; then RELEASE_TAR_FILE_NAME=ryujinx-canary-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar elif [ "$VERSION" == "1.1.0" && "$CANARY" == 0 ]; +then RELEASE_TAR_FILE_NAME=ryujinx-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar else RELEASE_TAR_FILE_NAME=ryujinx-$VERSION-macos_universal.app.tar From 3a1c884bec29cf9b5a732872a7678cf1cdf158ff Mon Sep 17 00:00:00 2001 From: GabCoolGuy Date: Thu, 21 Nov 2024 08:08:24 +0100 Subject: [PATCH 10/26] Fix faulty if statement formatting This should make it so that macos builds compile like intended --- distribution/macos/create_macos_build_ava.sh | 5 ++--- distribution/macos/create_macos_build_headless.sh | 7 +++---- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/distribution/macos/create_macos_build_ava.sh b/distribution/macos/create_macos_build_ava.sh index f82acda8bf..e6b235128d 100755 --- a/distribution/macos/create_macos_build_ava.sh +++ b/distribution/macos/create_macos_build_ava.sh @@ -21,11 +21,10 @@ CONFIGURATION=$7 EXTRA_ARGS=$8 CANARY=$9 -# shellcheck disable=SC2107 -if [ "$VERSION" == "1.1.0" && "$CANARY" == 1 ]; +if [ "$VERSION" == "1.1.0" ] && [ "$CANARY" == 1 ]; then RELEASE_TAR_FILE_NAME=ryujinx-canary-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar -elif [ "$VERSION" == "1.1.0" && "$CANARY" == 0 ]; +elif [ "$VERSION" == "1.1.0" ] && [ "$CANARY" == 0 ]; then RELEASE_TAR_FILE_NAME=ryujinx-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar else diff --git a/distribution/macos/create_macos_build_headless.sh b/distribution/macos/create_macos_build_headless.sh index 3108287582..e2a10562a7 100755 --- a/distribution/macos/create_macos_build_headless.sh +++ b/distribution/macos/create_macos_build_headless.sh @@ -3,7 +3,7 @@ set -e if [ "$#" -lt 7 ]; then - echo "usage " + echo "usage " exit 1 fi @@ -21,11 +21,10 @@ CONFIGURATION=$7 EXTRA_ARGS=$8 CANARY=$9 -# shellcheck disable=SC2107 -if [ "$VERSION" == "1.1.0" && "$CANARY" == 1 ]; +if [ "$VERSION" == "1.1.0" ] && [ "$CANARY" == 1 ]; then RELEASE_TAR_FILE_NAME=ryujinx-canary-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar -elif [ "$VERSION" == "1.1.0" && "$CANARY" == 0 ]; +elif [ "$VERSION" == "1.1.0" ] && [ "$CANARY" == 0 ]; then RELEASE_TAR_FILE_NAME=ryujinx-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar else From de1d29eb94cfc5896e82b55f5166d6a926b0c0a0 Mon Sep 17 00:00:00 2001 From: GabCoolGuy Date: Thu, 21 Nov 2024 08:22:11 +0100 Subject: [PATCH 11/26] Replace `&&` op with `||` to hopefully fix macos artifacts's names, also hopefully fixed headless macos artifacts just not getting published --- distribution/macos/create_macos_build_ava.sh | 4 ++-- distribution/macos/create_macos_build_headless.sh | 10 +++++----- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/distribution/macos/create_macos_build_ava.sh b/distribution/macos/create_macos_build_ava.sh index e6b235128d..0ee3000b48 100755 --- a/distribution/macos/create_macos_build_ava.sh +++ b/distribution/macos/create_macos_build_ava.sh @@ -21,10 +21,10 @@ CONFIGURATION=$7 EXTRA_ARGS=$8 CANARY=$9 -if [ "$VERSION" == "1.1.0" ] && [ "$CANARY" == 1 ]; +if [ "$VERSION" == "1.1.0" ] || [ "$CANARY" == 1 ]; then RELEASE_TAR_FILE_NAME=ryujinx-canary-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar -elif [ "$VERSION" == "1.1.0" ] && [ "$CANARY" == 0 ]; +elif [ "$VERSION" == "1.1.0" ]; then RELEASE_TAR_FILE_NAME=ryujinx-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar else diff --git a/distribution/macos/create_macos_build_headless.sh b/distribution/macos/create_macos_build_headless.sh index e2a10562a7..ace8846144 100755 --- a/distribution/macos/create_macos_build_headless.sh +++ b/distribution/macos/create_macos_build_headless.sh @@ -21,14 +21,14 @@ CONFIGURATION=$7 EXTRA_ARGS=$8 CANARY=$9 -if [ "$VERSION" == "1.1.0" ] && [ "$CANARY" == 1 ]; +if [ "$VERSION" == "1.1.0" ] || [ "$CANARY" == 1 ]; then - RELEASE_TAR_FILE_NAME=ryujinx-canary-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar -elif [ "$VERSION" == "1.1.0" ] && [ "$CANARY" == 0 ]; + RELEASE_TAR_FILE_NAME=nogui-ryujinx-canary-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar +elif [ "$VERSION" == "1.1.0" ]; then - RELEASE_TAR_FILE_NAME=ryujinx-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar + RELEASE_TAR_FILE_NAME=nogui-ryujinx-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar else - RELEASE_TAR_FILE_NAME=ryujinx-$VERSION-macos_universal.app.tar + RELEASE_TAR_FILE_NAME=nogui-ryujinx-$VERSION-macos_universal.app.tar fi ARM64_OUTPUT="$TEMP_DIRECTORY/publish_arm64" From 467c3d0fbaac23f56a55eae861442d590f30268b Mon Sep 17 00:00:00 2001 From: GabCoolGuy Date: Thu, 21 Nov 2024 09:25:16 +0100 Subject: [PATCH 12/26] Print canary var to try and see what's wrong --- distribution/macos/create_macos_build_ava.sh | 2 ++ distribution/macos/create_macos_build_headless.sh | 2 ++ 2 files changed, 4 insertions(+) diff --git a/distribution/macos/create_macos_build_ava.sh b/distribution/macos/create_macos_build_ava.sh index 0ee3000b48..e93bb180cf 100755 --- a/distribution/macos/create_macos_build_ava.sh +++ b/distribution/macos/create_macos_build_ava.sh @@ -21,6 +21,8 @@ CONFIGURATION=$7 EXTRA_ARGS=$8 CANARY=$9 +printf "$CANARY" + if [ "$VERSION" == "1.1.0" ] || [ "$CANARY" == 1 ]; then RELEASE_TAR_FILE_NAME=ryujinx-canary-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar diff --git a/distribution/macos/create_macos_build_headless.sh b/distribution/macos/create_macos_build_headless.sh index ace8846144..05d13e01f2 100755 --- a/distribution/macos/create_macos_build_headless.sh +++ b/distribution/macos/create_macos_build_headless.sh @@ -21,6 +21,8 @@ CONFIGURATION=$7 EXTRA_ARGS=$8 CANARY=$9 +printf "$CANARY" + if [ "$VERSION" == "1.1.0" ] || [ "$CANARY" == 1 ]; then RELEASE_TAR_FILE_NAME=nogui-ryujinx-canary-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar From fd8df4f64f8ca07d64789870a89883a9b52d9eb2 Mon Sep 17 00:00:00 2001 From: GabCoolGuy Date: Thu, 21 Nov 2024 09:27:49 +0100 Subject: [PATCH 13/26] oops --- distribution/macos/create_macos_build_ava.sh | 2 +- distribution/macos/create_macos_build_headless.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/distribution/macos/create_macos_build_ava.sh b/distribution/macos/create_macos_build_ava.sh index e93bb180cf..0db181e554 100755 --- a/distribution/macos/create_macos_build_ava.sh +++ b/distribution/macos/create_macos_build_ava.sh @@ -21,7 +21,7 @@ CONFIGURATION=$7 EXTRA_ARGS=$8 CANARY=$9 -printf "$CANARY" +printf "Canary var: %s" "$CANARY" if [ "$VERSION" == "1.1.0" ] || [ "$CANARY" == 1 ]; then diff --git a/distribution/macos/create_macos_build_headless.sh b/distribution/macos/create_macos_build_headless.sh index 05d13e01f2..b4f6fe5f6c 100755 --- a/distribution/macos/create_macos_build_headless.sh +++ b/distribution/macos/create_macos_build_headless.sh @@ -21,7 +21,7 @@ CONFIGURATION=$7 EXTRA_ARGS=$8 CANARY=$9 -printf "$CANARY" +printf "Canary var: %s" "$CANARY" if [ "$VERSION" == "1.1.0" ] || [ "$CANARY" == 1 ]; then From 1f694aa424cd589a994a2d914fee31f6f14612b7 Mon Sep 17 00:00:00 2001 From: GabCoolGuy Date: Thu, 21 Nov 2024 12:31:55 +0100 Subject: [PATCH 14/26] ubjkb --- distribution/macos/create_macos_build_ava.sh | 2 +- distribution/macos/create_macos_build_headless.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/distribution/macos/create_macos_build_ava.sh b/distribution/macos/create_macos_build_ava.sh index 0db181e554..f2b4856dcd 100755 --- a/distribution/macos/create_macos_build_ava.sh +++ b/distribution/macos/create_macos_build_ava.sh @@ -2,7 +2,7 @@ set -e -if [ "$#" -lt 7 ]; then +if [ "$#" -lt 9 ]; then echo "usage " exit 1 fi diff --git a/distribution/macos/create_macos_build_headless.sh b/distribution/macos/create_macos_build_headless.sh index b4f6fe5f6c..7627a97ecc 100755 --- a/distribution/macos/create_macos_build_headless.sh +++ b/distribution/macos/create_macos_build_headless.sh @@ -2,7 +2,7 @@ set -e -if [ "$#" -lt 7 ]; then +if [ "$#" -lt 9 ]; then echo "usage " exit 1 fi From 58cfffd14dd276fdff07473ee82f17dd163ce8f9 Mon Sep 17 00:00:00 2001 From: GabCoolGuy Date: Thu, 21 Nov 2024 12:58:33 +0100 Subject: [PATCH 15/26] HOPEFULLY I DID THIS RIGHT i think i added the canary variable --- .github/workflows/canary.yml | 4 +++- .github/workflows/release.yml | 3 +++ distribution/macos/create_macos_build_ava.sh | 2 +- distribution/macos/create_macos_build_headless.sh | 2 +- 4 files changed, 8 insertions(+), 3 deletions(-) diff --git a/.github/workflows/canary.yml b/.github/workflows/canary.yml index a694cdb6a9..a4636dc6f0 100644 --- a/.github/workflows/canary.yml +++ b/.github/workflows/canary.yml @@ -25,7 +25,6 @@ env: RYUJINX_TARGET_RELEASE_CHANNEL_SOURCE_REPO: "Ryujinx" RYUJINX_TARGET_RELEASE_CHANNEL_REPO: "Ryujinx-Canary" RELEASE: 1 - CANARY: 1 jobs: tag: @@ -60,6 +59,9 @@ jobs: owner: ${{ env.RYUJINX_TARGET_RELEASE_CHANNEL_OWNER }} repo: ${{ env.RYUJINX_TARGET_RELEASE_CHANNEL_REPO }} token: ${{ secrets.RELEASE_TOKEN }} + run: | + echo "1" >> $CANARY + shell: bash release: name: Release for ${{ matrix.platform.name }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 1b61f77032..848098ee51 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -59,6 +59,9 @@ jobs: owner: ${{ env.RYUJINX_TARGET_RELEASE_CHANNEL_OWNER }} repo: ${{ env.RYUJINX_TARGET_RELEASE_CHANNEL_REPO }} token: ${{ secrets.RELEASE_TOKEN }} + run: | + echo "0" >> $CANARY + shell: bash release: name: Release for ${{ matrix.platform.name }} diff --git a/distribution/macos/create_macos_build_ava.sh b/distribution/macos/create_macos_build_ava.sh index f2b4856dcd..12240c17b4 100755 --- a/distribution/macos/create_macos_build_ava.sh +++ b/distribution/macos/create_macos_build_ava.sh @@ -21,7 +21,7 @@ CONFIGURATION=$7 EXTRA_ARGS=$8 CANARY=$9 -printf "Canary var: %s" "$CANARY" +printf "Canary var: %s" "$CANARY \n" if [ "$VERSION" == "1.1.0" ] || [ "$CANARY" == 1 ]; then diff --git a/distribution/macos/create_macos_build_headless.sh b/distribution/macos/create_macos_build_headless.sh index 7627a97ecc..13fc47e9bd 100755 --- a/distribution/macos/create_macos_build_headless.sh +++ b/distribution/macos/create_macos_build_headless.sh @@ -21,7 +21,7 @@ CONFIGURATION=$7 EXTRA_ARGS=$8 CANARY=$9 -printf "Canary var: %s" "$CANARY" +printf "Canary var: %s" "$CANARY \n" if [ "$VERSION" == "1.1.0" ] || [ "$CANARY" == 1 ]; then From dfff0a1c583285250a1ab5bd76d6438d91f45d8d Mon Sep 17 00:00:00 2001 From: GabCoolGuy Date: Thu, 21 Nov 2024 13:01:04 +0100 Subject: [PATCH 16/26] AAAAAAAAAAA --- distribution/macos/create_macos_build_ava.sh | 13 +++++-------- distribution/macos/create_macos_build_headless.sh | 13 +++++-------- 2 files changed, 10 insertions(+), 16 deletions(-) diff --git a/distribution/macos/create_macos_build_ava.sh b/distribution/macos/create_macos_build_ava.sh index 12240c17b4..abef608487 100755 --- a/distribution/macos/create_macos_build_ava.sh +++ b/distribution/macos/create_macos_build_ava.sh @@ -2,8 +2,8 @@ set -e -if [ "$#" -lt 9 ]; then - echo "usage " +if [ "$#" -lt 8 ]; then + echo "usage " exit 1 fi @@ -18,16 +18,13 @@ ENTITLEMENTS_FILE_PATH=$(readlink -f "$4") VERSION=$5 SOURCE_REVISION_ID=$6 CONFIGURATION=$7 -EXTRA_ARGS=$8 -CANARY=$9 +CANARY=$8 printf "Canary var: %s" "$CANARY \n" -if [ "$VERSION" == "1.1.0" ] || [ "$CANARY" == 1 ]; -then +if [ "$VERSION" == "1.1.0" ] || [ "$CANARY" == 1 ]; then RELEASE_TAR_FILE_NAME=ryujinx-canary-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar -elif [ "$VERSION" == "1.1.0" ]; -then +elif [ "$VERSION" == "1.1.0" ]; then RELEASE_TAR_FILE_NAME=ryujinx-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar else RELEASE_TAR_FILE_NAME=ryujinx-$VERSION-macos_universal.app.tar diff --git a/distribution/macos/create_macos_build_headless.sh b/distribution/macos/create_macos_build_headless.sh index 13fc47e9bd..35f38b37b4 100755 --- a/distribution/macos/create_macos_build_headless.sh +++ b/distribution/macos/create_macos_build_headless.sh @@ -2,8 +2,8 @@ set -e -if [ "$#" -lt 9 ]; then - echo "usage " +if [ "$#" -lt 8 ]; then + echo "usage " exit 1 fi @@ -18,16 +18,13 @@ ENTITLEMENTS_FILE_PATH=$(readlink -f "$4") VERSION=$5 SOURCE_REVISION_ID=$6 CONFIGURATION=$7 -EXTRA_ARGS=$8 -CANARY=$9 +CANARY=$8 printf "Canary var: %s" "$CANARY \n" -if [ "$VERSION" == "1.1.0" ] || [ "$CANARY" == 1 ]; -then +if [ "$VERSION" == "1.1.0" ] || [ "$CANARY" == 1 ]; then RELEASE_TAR_FILE_NAME=nogui-ryujinx-canary-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar -elif [ "$VERSION" == "1.1.0" ]; -then +elif [ "$VERSION" == "1.1.0" ]; then RELEASE_TAR_FILE_NAME=nogui-ryujinx-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar else RELEASE_TAR_FILE_NAME=nogui-ryujinx-$VERSION-macos_universal.app.tar From 272197bca7ca7862a894a7e92f353c9dedb25cce Mon Sep 17 00:00:00 2001 From: GabCoolGuy Date: Thu, 21 Nov 2024 14:23:37 +0100 Subject: [PATCH 17/26] please for the love of capybaras --- distribution/macos/create_macos_build_ava.sh | 2 +- distribution/macos/create_macos_build_headless.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/distribution/macos/create_macos_build_ava.sh b/distribution/macos/create_macos_build_ava.sh index abef608487..51985f26f6 100755 --- a/distribution/macos/create_macos_build_ava.sh +++ b/distribution/macos/create_macos_build_ava.sh @@ -22,7 +22,7 @@ CANARY=$8 printf "Canary var: %s" "$CANARY \n" -if [ "$VERSION" == "1.1.0" ] || [ "$CANARY" == 1 ]; then +if [ "$VERSION" == "1.1.0" ] || [ "$CANARY" == "1" ]; then RELEASE_TAR_FILE_NAME=ryujinx-canary-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar elif [ "$VERSION" == "1.1.0" ]; then RELEASE_TAR_FILE_NAME=ryujinx-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar diff --git a/distribution/macos/create_macos_build_headless.sh b/distribution/macos/create_macos_build_headless.sh index 35f38b37b4..ac7aa03d25 100755 --- a/distribution/macos/create_macos_build_headless.sh +++ b/distribution/macos/create_macos_build_headless.sh @@ -22,7 +22,7 @@ CANARY=$8 printf "Canary var: %s" "$CANARY \n" -if [ "$VERSION" == "1.1.0" ] || [ "$CANARY" == 1 ]; then +if [ "$VERSION" == "1.1.0" ] || [ "$CANARY" == "1" ]; then RELEASE_TAR_FILE_NAME=nogui-ryujinx-canary-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar elif [ "$VERSION" == "1.1.0" ]; then RELEASE_TAR_FILE_NAME=nogui-ryujinx-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar From a7e34045eb6319007d7c81625848be9a48482d5e Mon Sep 17 00:00:00 2001 From: GabCoolGuy Date: Thu, 21 Nov 2024 14:51:47 +0100 Subject: [PATCH 18/26] i'm tired boss --- .github/workflows/canary.yml | 3 ++- .github/workflows/release.yml | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/canary.yml b/.github/workflows/canary.yml index a4636dc6f0..5ae1f05e3e 100644 --- a/.github/workflows/canary.yml +++ b/.github/workflows/canary.yml @@ -59,8 +59,9 @@ jobs: owner: ${{ env.RYUJINX_TARGET_RELEASE_CHANNEL_OWNER }} repo: ${{ env.RYUJINX_TARGET_RELEASE_CHANNEL_REPO }} token: ${{ secrets.RELEASE_TOKEN }} + canary: 1 run: | - echo "1" >> $CANARY + echo $CANARY shell: bash release: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 848098ee51..0e2be5c161 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -59,8 +59,9 @@ jobs: owner: ${{ env.RYUJINX_TARGET_RELEASE_CHANNEL_OWNER }} repo: ${{ env.RYUJINX_TARGET_RELEASE_CHANNEL_REPO }} token: ${{ secrets.RELEASE_TOKEN }} + canary: 0 run: | - echo "0" >> $CANARY + echo $CANARY shell: bash release: From fa64ce7510ad60c21a0c1bd4822c75fde048b22e Mon Sep 17 00:00:00 2001 From: GabCoolGuy Date: Thu, 21 Nov 2024 14:58:28 +0100 Subject: [PATCH 19/26] aaaaa --- .github/workflows/canary.yml | 15 +++++++++++---- .github/workflows/release.yml | 12 ++++++++---- 2 files changed, 19 insertions(+), 8 deletions(-) diff --git a/.github/workflows/canary.yml b/.github/workflows/canary.yml index 5ae1f05e3e..bdf5fbad6c 100644 --- a/.github/workflows/canary.yml +++ b/.github/workflows/canary.yml @@ -25,6 +25,7 @@ env: RYUJINX_TARGET_RELEASE_CHANNEL_SOURCE_REPO: "Ryujinx" RYUJINX_TARGET_RELEASE_CHANNEL_REPO: "Ryujinx-Canary" RELEASE: 1 + CANARY: 1 jobs: tag: @@ -59,10 +60,16 @@ jobs: owner: ${{ env.RYUJINX_TARGET_RELEASE_CHANNEL_OWNER }} repo: ${{ env.RYUJINX_TARGET_RELEASE_CHANNEL_REPO }} token: ${{ secrets.RELEASE_TOKEN }} - canary: 1 - run: | - echo $CANARY - shell: bash + + canary: + name: Check if canary or not + runs-on: ubuntu-20.04 + steps: + - name: Check if canary or not + id: is_canary + run: | + echo $CANARY + shell: bash release: name: Release for ${{ matrix.platform.name }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 0e2be5c161..d14d9b00b6 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -59,10 +59,14 @@ jobs: owner: ${{ env.RYUJINX_TARGET_RELEASE_CHANNEL_OWNER }} repo: ${{ env.RYUJINX_TARGET_RELEASE_CHANNEL_REPO }} token: ${{ secrets.RELEASE_TOKEN }} - canary: 0 - run: | - echo $CANARY - shell: bash + + canary: + name: Check if canary or not + runs-on: ubuntu-20.04 + steps: + run: | + echo $CANARY + shell: bash release: name: Release for ${{ matrix.platform.name }} From e694afe74ea46d044db375d187964bac0ff07c5c Mon Sep 17 00:00:00 2001 From: GabCoolGuy Date: Thu, 21 Nov 2024 15:04:30 +0100 Subject: [PATCH 20/26] maybe i should stop naming my commits like this but im tired --- .github/workflows/canary.yml | 15 +++++---------- .github/workflows/release.yml | 13 +++++-------- 2 files changed, 10 insertions(+), 18 deletions(-) diff --git a/.github/workflows/canary.yml b/.github/workflows/canary.yml index bdf5fbad6c..c500bc1a8a 100644 --- a/.github/workflows/canary.yml +++ b/.github/workflows/canary.yml @@ -50,6 +50,11 @@ jobs: sha: context.sha }) + - name: Check if canary or not + run: | + echo $CANARY + shell: bash + - name: Create release uses: ncipollo/release-action@v1 with: @@ -61,16 +66,6 @@ jobs: repo: ${{ env.RYUJINX_TARGET_RELEASE_CHANNEL_REPO }} token: ${{ secrets.RELEASE_TOKEN }} - canary: - name: Check if canary or not - runs-on: ubuntu-20.04 - steps: - - name: Check if canary or not - id: is_canary - run: | - echo $CANARY - shell: bash - release: name: Release for ${{ matrix.platform.name }} runs-on: ${{ matrix.platform.os }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index d14d9b00b6..952d64aa98 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -48,6 +48,11 @@ jobs: ref: 'refs/tags/${{ steps.version_info.outputs.build_version }}', sha: context.sha }) + + - name: Check if canary or not + run: | + echo $CANARY + shell: bash - name: Create release uses: ncipollo/release-action@v1 @@ -60,14 +65,6 @@ jobs: repo: ${{ env.RYUJINX_TARGET_RELEASE_CHANNEL_REPO }} token: ${{ secrets.RELEASE_TOKEN }} - canary: - name: Check if canary or not - runs-on: ubuntu-20.04 - steps: - run: | - echo $CANARY - shell: bash - release: name: Release for ${{ matrix.platform.name }} runs-on: ${{ matrix.platform.os }} From 9e2f3816daa7eb2dfe386e85d5b913b5969a532d Mon Sep 17 00:00:00 2001 From: GabCoolGuy Date: Thu, 21 Nov 2024 16:03:23 +0100 Subject: [PATCH 21/26] added missing canary argument to launch options for macos --- .github/workflows/canary.yml | 9 ++------- .github/workflows/release.yml | 9 ++------- 2 files changed, 4 insertions(+), 14 deletions(-) diff --git a/.github/workflows/canary.yml b/.github/workflows/canary.yml index c500bc1a8a..87aafba7bd 100644 --- a/.github/workflows/canary.yml +++ b/.github/workflows/canary.yml @@ -50,11 +50,6 @@ jobs: sha: context.sha }) - - name: Check if canary or not - run: | - echo $CANARY - shell: bash - - name: Create release uses: ncipollo/release-action@v1 with: @@ -242,11 +237,11 @@ jobs: - name: Publish macOS Ryujinx run: | - ./distribution/macos/create_macos_build_ava.sh . publish_tmp_ava publish_ava ./distribution/macos/entitlements.xml "${{ steps.version_info.outputs.build_version }}" "${{ steps.version_info.outputs.git_short_hash }}" Release + ./distribution/macos/create_macos_build_ava.sh . publish_tmp_ava publish_ava ./distribution/macos/entitlements.xml "${{ steps.version_info.outputs.build_version }}" "${{ steps.version_info.outputs.git_short_hash }}" Release 1 - name: Publish macOS Ryujinx.Headless.SDL2 run: | - ./distribution/macos/create_macos_build_headless.sh . publish_tmp_headless publish_headless ./distribution/macos/entitlements.xml "${{ steps.version_info.outputs.build_version }}" "${{ steps.version_info.outputs.git_short_hash }}" Release + ./distribution/macos/create_macos_build_headless.sh . publish_tmp_headless publish_headless ./distribution/macos/entitlements.xml "${{ steps.version_info.outputs.build_version }}" "${{ steps.version_info.outputs.git_short_hash }}" Release 1 - name: Pushing new release uses: ncipollo/release-action@v1 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 952d64aa98..06da034dd4 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -48,11 +48,6 @@ jobs: ref: 'refs/tags/${{ steps.version_info.outputs.build_version }}', sha: context.sha }) - - - name: Check if canary or not - run: | - echo $CANARY - shell: bash - name: Create release uses: ncipollo/release-action@v1 @@ -237,11 +232,11 @@ jobs: - name: Publish macOS Ryujinx run: | - ./distribution/macos/create_macos_build_ava.sh . publish_tmp_ava publish ./distribution/macos/entitlements.xml "${{ steps.version_info.outputs.build_version }}" "${{ steps.version_info.outputs.git_short_hash }}" Release + ./distribution/macos/create_macos_build_ava.sh . publish_tmp_ava publish ./distribution/macos/entitlements.xml "${{ steps.version_info.outputs.build_version }}" "${{ steps.version_info.outputs.git_short_hash }}" Release 0 - name: Publish macOS Ryujinx.Headless.SDL2 run: | - ./distribution/macos/create_macos_build_headless.sh . publish_tmp_headless publish_headless ./distribution/macos/entitlements.xml "${{ steps.version_info.outputs.build_version }}" "${{ steps.version_info.outputs.git_short_hash }}" Release + ./distribution/macos/create_macos_build_headless.sh . publish_tmp_headless publish_headless ./distribution/macos/entitlements.xml "${{ steps.version_info.outputs.build_version }}" "${{ steps.version_info.outputs.git_short_hash }}" Release 0 - name: Pushing new release uses: ncipollo/release-action@v1 From 1323b520918944627d716c6e4b01f4c9e03db54f Mon Sep 17 00:00:00 2001 From: GabCoolGuy Date: Thu, 21 Nov 2024 16:17:12 +0100 Subject: [PATCH 22/26] Final cleanup --- .github/workflows/canary.yml | 2 +- .github/workflows/release.yml | 2 +- distribution/macos/create_macos_build_ava.sh | 6 ++---- distribution/macos/create_macos_build_headless.sh | 4 +--- 4 files changed, 5 insertions(+), 9 deletions(-) diff --git a/.github/workflows/canary.yml b/.github/workflows/canary.yml index 87aafba7bd..ed23eceb32 100644 --- a/.github/workflows/canary.yml +++ b/.github/workflows/canary.yml @@ -21,7 +21,7 @@ env: DOTNET_CLI_TELEMETRY_OPTOUT: 1 RYUJINX_BASE_VERSION: "1.2" RYUJINX_TARGET_RELEASE_CHANNEL_NAME: "canary" - RYUJINX_TARGET_RELEASE_CHANNEL_OWNER: "GabCoolDude" + RYUJINX_TARGET_RELEASE_CHANNEL_OWNER: "GreemDev" RYUJINX_TARGET_RELEASE_CHANNEL_SOURCE_REPO: "Ryujinx" RYUJINX_TARGET_RELEASE_CHANNEL_REPO: "Ryujinx-Canary" RELEASE: 1 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 06da034dd4..ee6755c942 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -21,7 +21,7 @@ env: DOTNET_CLI_TELEMETRY_OPTOUT: 1 RYUJINX_BASE_VERSION: "1.2" RYUJINX_TARGET_RELEASE_CHANNEL_NAME: "release" - RYUJINX_TARGET_RELEASE_CHANNEL_OWNER: "GabCoolDude" + RYUJINX_TARGET_RELEASE_CHANNEL_OWNER: "GreemDev" RYUJINX_TARGET_RELEASE_CHANNEL_REPO: "Ryujinx" RELEASE: 1 CANARY: 0 diff --git a/distribution/macos/create_macos_build_ava.sh b/distribution/macos/create_macos_build_ava.sh index 51985f26f6..b19fa48638 100755 --- a/distribution/macos/create_macos_build_ava.sh +++ b/distribution/macos/create_macos_build_ava.sh @@ -20,10 +20,8 @@ SOURCE_REVISION_ID=$6 CONFIGURATION=$7 CANARY=$8 -printf "Canary var: %s" "$CANARY \n" - -if [ "$VERSION" == "1.1.0" ] || [ "$CANARY" == "1" ]; then - RELEASE_TAR_FILE_NAME=ryujinx-canary-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar +if [ "$CANARY" == "1" ]; then + RELEASE_TAR_FILE_NAME=ryujinx-canary-$VERSION-macos_universal.app.tar elif [ "$VERSION" == "1.1.0" ]; then RELEASE_TAR_FILE_NAME=ryujinx-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar else diff --git a/distribution/macos/create_macos_build_headless.sh b/distribution/macos/create_macos_build_headless.sh index ac7aa03d25..61efed6f0d 100755 --- a/distribution/macos/create_macos_build_headless.sh +++ b/distribution/macos/create_macos_build_headless.sh @@ -20,9 +20,7 @@ SOURCE_REVISION_ID=$6 CONFIGURATION=$7 CANARY=$8 -printf "Canary var: %s" "$CANARY \n" - -if [ "$VERSION" == "1.1.0" ] || [ "$CANARY" == "1" ]; then +if [ "$CANARY" == "1" ]; then RELEASE_TAR_FILE_NAME=nogui-ryujinx-canary-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar elif [ "$VERSION" == "1.1.0" ]; then RELEASE_TAR_FILE_NAME=nogui-ryujinx-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar From 809d2680f70584a932ae4cf46f10a5b30da372dd Mon Sep 17 00:00:00 2001 From: GabCoolGuy Date: Thu, 21 Nov 2024 16:31:44 +0100 Subject: [PATCH 23/26] Remove left over canary bash files and fixed headless name artifacts for macos --- .../macos/create_macos_build_ava_canary.sh | 114 ------------------ .../macos/create_macos_build_headless.sh | 2 +- .../create_macos_build_headless_canary.sh | 111 ----------------- 3 files changed, 1 insertion(+), 226 deletions(-) delete mode 100755 distribution/macos/create_macos_build_ava_canary.sh delete mode 100755 distribution/macos/create_macos_build_headless_canary.sh diff --git a/distribution/macos/create_macos_build_ava_canary.sh b/distribution/macos/create_macos_build_ava_canary.sh deleted file mode 100755 index d11e8e515d..0000000000 --- a/distribution/macos/create_macos_build_ava_canary.sh +++ /dev/null @@ -1,114 +0,0 @@ -#!/bin/bash - -set -e - -if [ "$#" -lt 7 ]; then - echo "usage " - exit 1 -fi - -mkdir -p "$1" -mkdir -p "$2" -mkdir -p "$3" - -BASE_DIR=$(readlink -f "$1") -TEMP_DIRECTORY=$(readlink -f "$2") -OUTPUT_DIRECTORY=$(readlink -f "$3") -ENTITLEMENTS_FILE_PATH=$(readlink -f "$4") -VERSION=$5 -SOURCE_REVISION_ID=$6 -CONFIGURATION=$7 -EXTRA_ARGS=$8 - -if [ "$VERSION" == "1.1.0" ]; -then - RELEASE_TAR_FILE_NAME=ryujinx-canary-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar -else - RELEASE_TAR_FILE_NAME=ryujinx-canary-$VERSION-macos_universal.app.tar -fi - -ARM64_APP_BUNDLE="$TEMP_DIRECTORY/output_arm64/Ryujinx.app" -X64_APP_BUNDLE="$TEMP_DIRECTORY/output_x64/Ryujinx.app" -UNIVERSAL_APP_BUNDLE="$OUTPUT_DIRECTORY/Ryujinx.app" -EXECUTABLE_SUB_PATH=Contents/MacOS/Ryujinx - -rm -rf "$TEMP_DIRECTORY" -mkdir -p "$TEMP_DIRECTORY" - -DOTNET_COMMON_ARGS=(-p:DebugType=embedded -p:Version="$VERSION" -p:SourceRevisionId="$SOURCE_REVISION_ID" --self-contained true $EXTRA_ARGS) - -dotnet restore -dotnet build -c "$CONFIGURATION" src/Ryujinx -dotnet publish -c "$CONFIGURATION" -r osx-arm64 -o "$TEMP_DIRECTORY/publish_arm64" "${DOTNET_COMMON_ARGS[@]}" src/Ryujinx -dotnet publish -c "$CONFIGURATION" -r osx-x64 -o "$TEMP_DIRECTORY/publish_x64" "${DOTNET_COMMON_ARGS[@]}" src/Ryujinx - -# Get rid of the support library for ARMeilleure for x64 (that's only for arm64) -rm -rf "$TEMP_DIRECTORY/publish_x64/libarmeilleure-jitsupport.dylib" - -# Get rid of libsoundio from arm64 builds as we don't have a arm64 variant -# TODO: remove this once done -rm -rf "$TEMP_DIRECTORY/publish_arm64/libsoundio.dylib" - -pushd "$BASE_DIR/distribution/macos" -./create_app_bundle.sh "$TEMP_DIRECTORY/publish_x64" "$TEMP_DIRECTORY/output_x64" "$ENTITLEMENTS_FILE_PATH" -./create_app_bundle.sh "$TEMP_DIRECTORY/publish_arm64" "$TEMP_DIRECTORY/output_arm64" "$ENTITLEMENTS_FILE_PATH" -popd - -rm -rf "$UNIVERSAL_APP_BUNDLE" -mkdir -p "$OUTPUT_DIRECTORY" - -# Let's copy one of the two different app bundle and remove the executable -cp -R "$ARM64_APP_BUNDLE" "$UNIVERSAL_APP_BUNDLE" -rm "$UNIVERSAL_APP_BUNDLE/$EXECUTABLE_SUB_PATH" - -# Make it libraries universal -python3 "$BASE_DIR/distribution/macos/construct_universal_dylib.py" "$ARM64_APP_BUNDLE" "$X64_APP_BUNDLE" "$UNIVERSAL_APP_BUNDLE" "**/*.dylib" - -if ! [ -x "$(command -v lipo)" ]; -then - if ! [ -x "$(command -v llvm-lipo-14)" ]; - then - LIPO=llvm-lipo - else - LIPO=llvm-lipo-14 - fi -else - LIPO=lipo -fi - -# Make the executable universal -$LIPO "$ARM64_APP_BUNDLE/$EXECUTABLE_SUB_PATH" "$X64_APP_BUNDLE/$EXECUTABLE_SUB_PATH" -output "$UNIVERSAL_APP_BUNDLE/$EXECUTABLE_SUB_PATH" -create - -# Patch up the Info.plist to have appropriate version -sed -r -i.bck "s/\%\%RYUJINX_BUILD_VERSION\%\%/$VERSION/g;" "$UNIVERSAL_APP_BUNDLE/Contents/Info.plist" -sed -r -i.bck "s/\%\%RYUJINX_BUILD_GIT_HASH\%\%/$SOURCE_REVISION_ID/g;" "$UNIVERSAL_APP_BUNDLE/Contents/Info.plist" -rm "$UNIVERSAL_APP_BUNDLE/Contents/Info.plist.bck" - -# Now sign it -if ! [ -x "$(command -v codesign)" ]; -then - if ! [ -x "$(command -v rcodesign)" ]; - then - echo "Cannot find rcodesign on your system, please install rcodesign." - exit 1 - fi - - # NOTE: Currently require https://github.com/indygreg/apple-platform-rs/pull/44 to work on other OSes. - # cargo install --git "https://github.com/marysaka/apple-platform-rs" --branch "fix/adhoc-app-bundle" apple-codesign --bin "rcodesign" - echo "Using rcodesign for ad-hoc signing" - rcodesign sign --entitlements-xml-path "$ENTITLEMENTS_FILE_PATH" "$UNIVERSAL_APP_BUNDLE" -else - echo "Using codesign for ad-hoc signing" - codesign --entitlements "$ENTITLEMENTS_FILE_PATH" -f -s - "$UNIVERSAL_APP_BUNDLE" -fi - -echo "Creating archive" -pushd "$OUTPUT_DIRECTORY" -tar --exclude "Ryujinx.app/Contents/MacOS/Ryujinx" -cvf "$RELEASE_TAR_FILE_NAME" Ryujinx.app 1> /dev/null -python3 "$BASE_DIR/distribution/misc/add_tar_exec.py" "$RELEASE_TAR_FILE_NAME" "Ryujinx.app/Contents/MacOS/Ryujinx" "Ryujinx.app/Contents/MacOS/Ryujinx" -gzip -9 < "$RELEASE_TAR_FILE_NAME" > "$RELEASE_TAR_FILE_NAME.gz" -rm "$RELEASE_TAR_FILE_NAME" - -popd - -echo "Done" diff --git a/distribution/macos/create_macos_build_headless.sh b/distribution/macos/create_macos_build_headless.sh index 61efed6f0d..3fdd3d7cd2 100755 --- a/distribution/macos/create_macos_build_headless.sh +++ b/distribution/macos/create_macos_build_headless.sh @@ -21,7 +21,7 @@ CONFIGURATION=$7 CANARY=$8 if [ "$CANARY" == "1" ]; then - RELEASE_TAR_FILE_NAME=nogui-ryujinx-canary-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar + RELEASE_TAR_FILE_NAME=nogui-ryujinx-canary-$VERSION-macos_universal.app.tar elif [ "$VERSION" == "1.1.0" ]; then RELEASE_TAR_FILE_NAME=nogui-ryujinx-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar else diff --git a/distribution/macos/create_macos_build_headless_canary.sh b/distribution/macos/create_macos_build_headless_canary.sh deleted file mode 100755 index 4a2a4ee0ef..0000000000 --- a/distribution/macos/create_macos_build_headless_canary.sh +++ /dev/null @@ -1,111 +0,0 @@ -#!/bin/bash - -set -e - -if [ "$#" -lt 7 ]; then - echo "usage " - exit 1 -fi - -mkdir -p "$1" -mkdir -p "$2" -mkdir -p "$3" - -BASE_DIR=$(readlink -f "$1") -TEMP_DIRECTORY=$(readlink -f "$2") -OUTPUT_DIRECTORY=$(readlink -f "$3") -ENTITLEMENTS_FILE_PATH=$(readlink -f "$4") -VERSION=$5 -SOURCE_REVISION_ID=$6 -CONFIGURATION=$7 -EXTRA_ARGS=$8 - -if [ "$VERSION" == "1.1.0" ]; -then - RELEASE_TAR_FILE_NAME=nogui-ryujinx-canary-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.tar -else - RELEASE_TAR_FILE_NAME=nogui-ryujinx-canary-$VERSION-macos_universal.tar -fi - -ARM64_OUTPUT="$TEMP_DIRECTORY/publish_arm64" -X64_OUTPUT="$TEMP_DIRECTORY/publish_x64" -UNIVERSAL_OUTPUT="$OUTPUT_DIRECTORY/publish" -EXECUTABLE_SUB_PATH=Ryujinx.Headless.SDL2 - -rm -rf "$TEMP_DIRECTORY" -mkdir -p "$TEMP_DIRECTORY" - -DOTNET_COMMON_ARGS=(-p:DebugType=embedded -p:Version="$VERSION" -p:SourceRevisionId="$SOURCE_REVISION_ID" --self-contained true $EXTRA_ARGS) - -dotnet restore -dotnet build -c "$CONFIGURATION" src/Ryujinx.Headless.SDL2 -dotnet publish -c "$CONFIGURATION" -r osx-arm64 -o "$TEMP_DIRECTORY/publish_arm64" "${DOTNET_COMMON_ARGS[@]}" src/Ryujinx.Headless.SDL2 -dotnet publish -c "$CONFIGURATION" -r osx-x64 -o "$TEMP_DIRECTORY/publish_x64" "${DOTNET_COMMON_ARGS[@]}" src/Ryujinx.Headless.SDL2 - -# Get rid of the support library for ARMeilleure for x64 (that's only for arm64) -rm -rf "$TEMP_DIRECTORY/publish_x64/libarmeilleure-jitsupport.dylib" - -# Get rid of libsoundio from arm64 builds as we don't have a arm64 variant -# TODO: remove this once done -rm -rf "$TEMP_DIRECTORY/publish_arm64/libsoundio.dylib" - -rm -rf "$OUTPUT_DIRECTORY" -mkdir -p "$OUTPUT_DIRECTORY" - -# Let's copy one of the two different outputs and remove the executable -cp -R "$ARM64_OUTPUT/" "$UNIVERSAL_OUTPUT" -rm "$UNIVERSAL_OUTPUT/$EXECUTABLE_SUB_PATH" - -# Make it libraries universal -python3 "$BASE_DIR/distribution/macos/construct_universal_dylib.py" "$ARM64_OUTPUT" "$X64_OUTPUT" "$UNIVERSAL_OUTPUT" "**/*.dylib" - -if ! [ -x "$(command -v lipo)" ]; -then - if ! [ -x "$(command -v llvm-lipo-14)" ]; - then - LIPO=llvm-lipo - else - LIPO=llvm-lipo-14 - fi -else - LIPO=lipo -fi - -# Make the executable universal -$LIPO "$ARM64_OUTPUT/$EXECUTABLE_SUB_PATH" "$X64_OUTPUT/$EXECUTABLE_SUB_PATH" -output "$UNIVERSAL_OUTPUT/$EXECUTABLE_SUB_PATH" -create - -# Now sign it -if ! [ -x "$(command -v codesign)" ]; -then - if ! [ -x "$(command -v rcodesign)" ]; - then - echo "Cannot find rcodesign on your system, please install rcodesign." - exit 1 - fi - - # NOTE: Currently require https://github.com/indygreg/apple-platform-rs/pull/44 to work on other OSes. - # cargo install --git "https://github.com/marysaka/apple-platform-rs" --branch "fix/adhoc-app-bundle" apple-codesign --bin "rcodesign" - echo "Using rcodesign for ad-hoc signing" - for FILE in "$UNIVERSAL_OUTPUT"/*; do - if [[ $(file "$FILE") == *"Mach-O"* ]]; then - rcodesign sign --entitlements-xml-path "$ENTITLEMENTS_FILE_PATH" "$FILE" - fi - done -else - echo "Using codesign for ad-hoc signing" - for FILE in "$UNIVERSAL_OUTPUT"/*; do - if [[ $(file "$FILE") == *"Mach-O"* ]]; then - codesign --entitlements "$ENTITLEMENTS_FILE_PATH" -f -s - "$FILE" - fi - done -fi - -echo "Creating archive" -pushd "$OUTPUT_DIRECTORY" -tar --exclude "publish/Ryujinx.Headless.SDL2" -cvf "$RELEASE_TAR_FILE_NAME" publish 1> /dev/null -python3 "$BASE_DIR/distribution/misc/add_tar_exec.py" "$RELEASE_TAR_FILE_NAME" "publish/Ryujinx.Headless.SDL2" "publish/Ryujinx.Headless.SDL2" -gzip -9 < "$RELEASE_TAR_FILE_NAME" > "$RELEASE_TAR_FILE_NAME.gz" -rm "$RELEASE_TAR_FILE_NAME" -popd - -echo "Done" From 392c97208bd9a5b81f8db3f45d8645c0be4edeb4 Mon Sep 17 00:00:00 2001 From: GabCoolGuy Date: Thu, 21 Nov 2024 17:14:13 +0100 Subject: [PATCH 24/26] Remove left-over env variable --- .github/workflows/canary.yml | 1 - .github/workflows/release.yml | 1 - 2 files changed, 2 deletions(-) diff --git a/.github/workflows/canary.yml b/.github/workflows/canary.yml index ed23eceb32..a24436de3f 100644 --- a/.github/workflows/canary.yml +++ b/.github/workflows/canary.yml @@ -25,7 +25,6 @@ env: RYUJINX_TARGET_RELEASE_CHANNEL_SOURCE_REPO: "Ryujinx" RYUJINX_TARGET_RELEASE_CHANNEL_REPO: "Ryujinx-Canary" RELEASE: 1 - CANARY: 1 jobs: tag: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index ee6755c942..ec02976a11 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -24,7 +24,6 @@ env: RYUJINX_TARGET_RELEASE_CHANNEL_OWNER: "GreemDev" RYUJINX_TARGET_RELEASE_CHANNEL_REPO: "Ryujinx" RELEASE: 1 - CANARY: 0 jobs: tag: From 953f997b534d44da4f323b978f9e59b761d2b796 Mon Sep 17 00:00:00 2001 From: GabCoolGuy Date: Thu, 21 Nov 2024 17:25:22 +0100 Subject: [PATCH 25/26] Remove accidental using --- src/Ryujinx.Common/Logging/Targets/FileLogTarget.cs | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Ryujinx.Common/Logging/Targets/FileLogTarget.cs b/src/Ryujinx.Common/Logging/Targets/FileLogTarget.cs index 1237d0c205..94e9359c80 100644 --- a/src/Ryujinx.Common/Logging/Targets/FileLogTarget.cs +++ b/src/Ryujinx.Common/Logging/Targets/FileLogTarget.cs @@ -2,7 +2,6 @@ using System; using System.IO; using System.Linq; -using System.Net.Mime; namespace Ryujinx.Common.Logging.Targets { From 7db165db316e540cf82afc9230ae2e152581d6e5 Mon Sep 17 00:00:00 2001 From: GabCoolGuy Date: Thu, 21 Nov 2024 17:41:04 +0100 Subject: [PATCH 26/26] Changed headless from .app.tar to .tar just so it's what it was before Idk if this broke or fixed anything but --- .github/workflows/build.yml | 1 - distribution/macos/create_macos_build_headless.sh | 8 ++++---- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 6cf5bc65c9..21dc3eb0be 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -8,7 +8,6 @@ env: DOTNET_CLI_TELEMETRY_OPTOUT: 1 RYUJINX_BASE_VERSION: "1.2.0" RELEASE: 0 - CANARY: 0 jobs: build: diff --git a/distribution/macos/create_macos_build_headless.sh b/distribution/macos/create_macos_build_headless.sh index 3fdd3d7cd2..01951d8782 100755 --- a/distribution/macos/create_macos_build_headless.sh +++ b/distribution/macos/create_macos_build_headless.sh @@ -21,11 +21,11 @@ CONFIGURATION=$7 CANARY=$8 if [ "$CANARY" == "1" ]; then - RELEASE_TAR_FILE_NAME=nogui-ryujinx-canary-$VERSION-macos_universal.app.tar + RELEASE_TAR_FILE_NAME=nogui-ryujinx-canary-$VERSION-macos_universal.tar elif [ "$VERSION" == "1.1.0" ]; then - RELEASE_TAR_FILE_NAME=nogui-ryujinx-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.app.tar + RELEASE_TAR_FILE_NAME=nogui-ryujinx-$CONFIGURATION-$VERSION+$SOURCE_REVISION_ID-macos_universal.tar else - RELEASE_TAR_FILE_NAME=nogui-ryujinx-$VERSION-macos_universal.app.tar + RELEASE_TAR_FILE_NAME=nogui-ryujinx-$VERSION-macos_universal.tar fi ARM64_OUTPUT="$TEMP_DIRECTORY/publish_arm64" @@ -57,7 +57,7 @@ mkdir -p "$OUTPUT_DIRECTORY" cp -R "$ARM64_OUTPUT/" "$UNIVERSAL_OUTPUT" rm "$UNIVERSAL_OUTPUT/$EXECUTABLE_SUB_PATH" -# Make it libraries universal +# Make its libraries universal python3 "$BASE_DIR/distribution/macos/construct_universal_dylib.py" "$ARM64_OUTPUT" "$X64_OUTPUT" "$UNIVERSAL_OUTPUT" "**/*.dylib" if ! [ -x "$(command -v lipo)" ];