From 5163321af2e647a0fee696170350517ca660c9ba Mon Sep 17 00:00:00 2001 From: Brady Boettcher Date: Sun, 1 Oct 2023 14:34:20 -0700 Subject: [PATCH 1/4] add standalone windows packaging options --- packaging/installer.iss | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/packaging/installer.iss b/packaging/installer.iss index e2c5332..dbac722 100644 --- a/packaging/installer.iss +++ b/packaging/installer.iss @@ -4,6 +4,16 @@ #define Publisher GetEnv('COMPANY_NAME') #define Year GetDateTimeString("yyyy","","") +; 'Types': What get displayed during the setup +[Types] +Name: "full"; Description: "Full installation" +Name: "custom"; Description: "Custom installation"; Flags: iscustom + +; Components are used inside the script and can be composed of a set of 'Types' +[Components] +Name: "standalone"; Description: "Standalone application"; Types: full custom +Name: "vst3"; Description: "VST3 plugin"; Types: full custom + [Setup] ArchitecturesInstallIn64BitMode=x64 ArchitecturesAllowed=x64 @@ -16,7 +26,7 @@ DefaultDirName="{commoncf64}\VST3\{#ProductName}.vst3" DisableDirPage=yes ; MAKE SURE YOU READ THE FOLLOWING! -LicenseFile="EULA" +LicenseFile="..\LICENSE" UninstallFilesDir="{commonappdata}\{#ProductName}\uninstall" [UninstallDelete] @@ -24,10 +34,15 @@ Type: filesandordirs; Name: "{commoncf64}\VST3\{#ProductName}Data" ; MSVC adds a .ilk when building the plugin. Let's not include that. [Files] -Source: "..\Builds\{#ProjectName}_artefacts\Release\VST3\{#ProductName}.vst3\*"; DestDir: "{commoncf64}\VST3\{#ProductName}.vst3\"; Excludes: *.ilk; Flags: ignoreversion recursesubdirs; +Source: "..\Builds\{#ProjectName}_artefacts\Release\VST3\{#ProductName}.vst3\*"; DestDir: "{commoncf64}\VST3\{#ProductName}.vst3\"; Excludes: *.ilk; Flags: ignoreversion recursesubdirs; Components: vst3 +Source: "..\Builds\{#ProjectName}_artefacts\Release\Standalone\{#ProductName}.exe"; DestDir: "{commonpf64}\{#Publisher}\{#ProductName}"; Flags: ignoreversion; Components: standalone + +[Icons] +Name: "{autoprograms}\{#ProductName}"; Filename: "{commonpf64}\{#Publisher}\{#ProductName}\{#ProductName}.exe"; Components: standalone +Name: "{autoprograms}\Uninstall {#ProductName}"; Filename: "{uninstallexe}" [Run] Filename: "{cmd}"; \ WorkingDir: "{commoncf64}\VST3"; \ Parameters: "/C mklink /D ""{commoncf64}\VST3\{#ProductName}Data"" ""{commonappdata}\{#ProductName}"""; \ - Flags: runascurrentuser; + Flags: runascurrentuser; Components: vst3 From 9879aa1e479e4fa0b452ec89fd2e4c0c91edf95d Mon Sep 17 00:00:00 2001 From: Brady Boettcher Date: Sun, 1 Oct 2023 20:17:30 -0700 Subject: [PATCH 2/4] revert .iss to use EULA license --- packaging/installer.iss | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packaging/installer.iss b/packaging/installer.iss index dbac722..95f27a9 100644 --- a/packaging/installer.iss +++ b/packaging/installer.iss @@ -26,7 +26,7 @@ DefaultDirName="{commoncf64}\VST3\{#ProductName}.vst3" DisableDirPage=yes ; MAKE SURE YOU READ THE FOLLOWING! -LicenseFile="..\LICENSE" +LicenseFile="EULA" UninstallFilesDir="{commonappdata}\{#ProductName}\uninstall" [UninstallDelete] From 7d7a2cebdef889b1875510a0ce6ee89389f20d04 Mon Sep 17 00:00:00 2001 From: Brady Boettcher Date: Sun, 1 Oct 2023 20:31:44 -0700 Subject: [PATCH 3/4] add macos standalone packaging to github actions --- .github/workflows/cmake_ctest.yml | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/.github/workflows/cmake_ctest.yml b/.github/workflows/cmake_ctest.yml index 0b3d333..8d0992d 100644 --- a/.github/workflows/cmake_ctest.yml +++ b/.github/workflows/cmake_ctest.yml @@ -129,9 +129,10 @@ jobs: shell: bash run: | echo "ARTIFACTS_PATH=${{ env.BUILD_DIR }}/${{ env.PROJECT_NAME }}_artefacts/${{ env.BUILD_TYPE }}" >> $GITHUB_ENV - echo "VST3_PATH=${{ env.PROJECT_NAME }}_artefacts/${{ env.BUILD_TYPE }}/VST3/${{ env.PRODUCT_NAME }}.vst3" >> $GITHUB_ENV - echo "AU_PATH=${{ env.PROJECT_NAME }}_artefacts/${{ env.BUILD_TYPE }}/AU/${{ env.PRODUCT_NAME }}.component" >> $GITHUB_ENV - echo "AUV3_PATH=${{ env.PROJECT_NAME }}_artefacts/${{ env.BUILD_TYPE }}/AUv3/${{ env.PRODUCT_NAME }}.appex" >> $GITHUB_ENV + echo "VST3_PATH=${{ env.ARTIFACTS_PATH }}/VST3/${{ env.PRODUCT_NAME }}.vst3" >> $GITHUB_ENV + echo "AU_PATH=${{ env.ARTIFACTS_PATH }}/AU/${{ env.PRODUCT_NAME }}.component" >> $GITHUB_ENV + echo "AUV3_PATH=${{ env.ARTIFACTS_PATH }}/AUv3/${{ env.PRODUCT_NAME }}.appex" >> $GITHUB_ENV + echo "STANDALONE_PATH=${{ env.ARTIFACTS_PATH }}/Standalone/${{ env.PRODUCT_NAME }}.app" >> $GITHUB_ENV echo "ARTIFACT_NAME=${{ env.PRODUCT_NAME }}-${{ env.VERSION }}-${{ matrix.name }}" >> $GITHUB_ENV - name: Pluginval @@ -149,6 +150,7 @@ jobs: # Each plugin must be code signed codesign --force -s "${{ secrets.DEVELOPER_ID_APPLICATION}}" -v "${{ env.VST3_PATH }}" --deep --strict --options=runtime --timestamp codesign --force -s "${{ secrets.DEVELOPER_ID_APPLICATION}}" -v "${{ env.AU_PATH }}" --deep --strict --options=runtime --timestamp + codesign --force -s "${{ secrets.DEVELOPER_ID_APPLICATION}}" -v "${{ env.STANDALONE_PATH }}" --deep --strict --options=runtime --timestamp - name: Add Custom Icons (macOS) if: ${{ matrix.name == 'macOS' }} @@ -178,8 +180,9 @@ jobs: sudo mkdir -m 755 -p /Library/Audio/Plug-Ins/Components && sudo mkdir -m 755 -p /Library/Audio/Plug-Ins/VST3 ln -s /Library/Audio/Plug-Ins/Components "packaging/dmg/Your Mac's Component folder" ln -s /Library/Audio/Plug-Ins/VST3 "packaging/dmg/Your Mac's VST3 folder" - mv "${{ env.ARTIFACTS_PATH }}/VST3/${{ env.PRODUCT_NAME }}.vst3" packaging/dmg - mv "${{ env.ARTIFACTS_PATH }}/AU/${{ env.PRODUCT_NAME }}.component" packaging/dmg + mv "${{ env.VST3_PATH }}" packaging/dmg + mv "${{ env.AU_PATH }}" packaging/dmg + mv "${{ env.STANDALONE_PATH }}" packaging/dmg # Run appdmg to create the .dmg cd packaging && appdmg dmg.json "${{ env.ARTIFACT_NAME}}.dmg" From f29d8f8a138cb731bafe575bb2b797e1a8cba507 Mon Sep 17 00:00:00 2001 From: Brady Boettcher Date: Sun, 1 Oct 2023 20:44:01 -0700 Subject: [PATCH 4/4] adds standalone to macos dmg --- packaging/dmg.json | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/packaging/dmg.json b/packaging/dmg.json index 36b5d25..62af8fa 100644 --- a/packaging/dmg.json +++ b/packaging/dmg.json @@ -14,9 +14,11 @@ }, "format": "UDZO", "contents": [ - { "x": 250, "y": 245, "type": "file", "path": "dmg/Pamplejuce Demo.component" }, - { "x": 480, "y": 245, "type": "file", "path": "dmg/Your Mac's Component Folder" }, - { "x": 250, "y": 405, "type": "file", "path": "dmg/Pamplejuce Demo.vst3" }, - { "x": 480, "y": 405, "type": "file", "path": "dmg/Your Mac's VST3 Folder" } + { "x": 250, "y": 200, "type": "file", "path": "dmg/Pamplejuce Demo.app" }, + { "x": 480, "y": 200, "type": "link", "path": "/Applications" }, + { "x": 250, "y": 300, "type": "file", "path": "dmg/Pamplejuce Demo.component" }, + { "x": 480, "y": 300, "type": "file", "path": "dmg/Your Mac's Component Folder" }, + { "x": 250, "y": 400, "type": "file", "path": "dmg/Pamplejuce Demo.vst3" }, + { "x": 480, "y": 400, "type": "file", "path": "dmg/Your Mac's VST3 Folder" } ] }