diff --git a/.github/workflows/win-exe.yml b/.github/workflows/win-exe.yml index 9fa410f83..73ccb10c6 100644 --- a/.github/workflows/win-exe.yml +++ b/.github/workflows/win-exe.yml @@ -70,10 +70,11 @@ jobs: --compress=1 - name: Prepare debug launcher config shell: bash - run: envsubst '${SEMVER_STR} ${REVISION_NUM}' < dist/win/resources/debug-launcher.properties > debug-launcher.properties + run: envsubst '${SEMVER_STR} ${REVISION_NUM} ${APP_NAME} ${LOOPBACK_ALIAS}' < dist/win/resources/debug-launcher.properties > dist/win/resources/CryptomatorDebug.properties env: - SEMVER_STR: ${{ needs.get-version.outputs.semVerStr }} - REVISION_NUM: ${{ needs.get-version.outputs.revNum }} + SEMVER_STR: ${{ needs.get-version.outputs.semVerStr }} + REVISION_NUM: ${{ needs.get-version.outputs.revNum }} + APP_NAME: 'Cryptomator' - name: Run jpackage run: > ${JAVA_HOME}/bin/jpackage @@ -107,7 +108,7 @@ jobs: --java-options "-Dcryptomator.integrationsWin.keychainPaths=\"~/AppData/Roaming/Cryptomator/keychain.json\"" --resource-dir dist/win/resources --icon dist/win/resources/Cryptomator.ico - --add-launcher debug=debug-launcher.properties + --add-launcher "CryptomatorDebug=CryptomatorDebug.properties" - name: Patch Application Directory run: | cp dist/win/contrib/* appdir/Cryptomator @@ -122,7 +123,9 @@ jobs: exit 1 } - name: Fix permissions - run: attrib -r appdir/Cryptomator/Cryptomator.exe + run: | + attrib -r appdir/Cryptomator/Cryptomator.exe + attrib -r appdir/Cryptomator/CryptomatorDebug.exe shell: pwsh - name: Extract integrations DLL for code signing shell: pwsh diff --git a/dist/win/.gitignore b/dist/win/.gitignore index 1e7b42a12..fea9ab2dd 100644 --- a/dist/win/.gitignore +++ b/dist/win/.gitignore @@ -5,4 +5,4 @@ installer *.pdb *.msi license.rtf -debug.properties \ No newline at end of file +*Debug.properties \ No newline at end of file diff --git a/dist/win/build.ps1 b/dist/win/build.ps1 index bb4518329..54e66bb8a 100644 --- a/dist/win/build.ps1 +++ b/dist/win/build.ps1 @@ -67,7 +67,10 @@ if ($clean -and (Test-Path -Path $appPath)) { $debugProps = Get-Content -Path $buildDir\resources\debug-launcher.properties $debugProps = $debugProps -replace '\${SEM_VER_STR}', "$semVerNo" $debugProps = $debugProps -replace '\${REVISION_NUM}', "$revisionNo" -Set-Content -Path $buildDir\resources\debug.properties -Value $debugProps +$debugProps = $debugProps -replace '\${APP_NAME}', "$AppName" +$debugProps = $debugProps -replace '\${LOOPBACK_ALIAS}', "$LoopbackAlias" +Set-Content -Path $buildDir\resources\${AppName}Debug.properties -Value $debugProps + # create app dir & "$Env:JAVA_HOME\bin\jpackage" ` @@ -99,9 +102,9 @@ Set-Content -Path $buildDir\resources\debug.properties -Value $debugProps --java-options "-Dcryptomator.integrationsWin.keychainPaths=`"~/AppData/Roaming/$AppName/keychain.json`"" ` --java-options "-Dcryptomator.showTrayIcon=true" ` --java-options "-Dcryptomator.buildNumber=`"msi-$revisionNo`"" ` - --add-launcher debug=$buildDir\resources\debug.properties ` --resource-dir resources ` - --icon resources/$AppName.ico + --icon resources/$AppName.ico ` + --add-launcher "${AppName}Debug=$buildDir\resources\${AppName}Debug.properties" #Create RTF license for msi &mvn -B -f $buildDir/../../pom.xml license:add-third-party ` @@ -116,6 +119,7 @@ Set-Content -Path $buildDir\resources\debug.properties -Value $debugProps # patch app dir Copy-Item "contrib\*" -Destination "$AppName" attrib -r "$AppName\$AppName.exe" +attrib -r "$AppName\${AppName}Debug.exe" # patch batch script to set hostfile $webDAVPatcher = "$AppName\patchWebDAV.bat" try { diff --git a/dist/win/resources/debug-launcher.properties b/dist/win/resources/debug-launcher.properties index 90efcbf28..da2319047 100644 --- a/dist/win/resources/debug-launcher.properties +++ b/dist/win/resources/debug-launcher.properties @@ -5,14 +5,14 @@ java-options=--enable-preview \ -Xmx256m \ -Dcryptomator.appVersion="${SEM_VER_STR}" \ -Dfile.encoding="utf-8" \ - -Dcryptomator.logDir="~/AppData/Roaming/$AppName" \ - -Dcryptomator.pluginDir="~/AppData/Roaming/$AppName/Plugins" \ - -Dcryptomator.settingsPath="~/AppData/Roaming/$AppName/settings.json" \ - -Dcryptomator.ipcSocketPath="~/AppData/Roaming/$AppName/ipc.socket" \ - -Dcryptomator.p12Path="~/AppData/Roaming/$AppName/key.p12" \ - -Dcryptomator.mountPointsDir="~/$AppName" \ - -Dcryptomator.loopbackAlias="$LoopbackAlias" \ - -Dcryptomator.integrationsWin.autoStartShellLinkName="$AppName" \ - -Dcryptomator.integrationsWin.keychainPaths="~/AppData/Roaming/$AppName/keychain.json" \ + -Dcryptomator.logDir="~/AppData/Roaming/${APP_NAME}" \ + -Dcryptomator.pluginDir="~/AppData/Roaming/${APP_NAME}/Plugins" \ + -Dcryptomator.settingsPath="~/AppData/Roaming/${APP_NAME}/settings.json" \ + -Dcryptomator.ipcSocketPath="~/AppData/Roaming/${APP_NAME}/ipc.socket" \ + -Dcryptomator.p12Path="~/AppData/Roaming/${APP_NAME}/key.p12" \ + -Dcryptomator.mountPointsDir="~/${APP_NAME}" \ + -Dcryptomator.loopbackAlias="${LOOPBACK_ALIAS}" \ + -Dcryptomator.integrationsWin.autoStartShellLinkName="${APP_NAME}" \ + -Dcryptomator.integrationsWin.keychainPaths="~/AppData/Roaming/${APP_NAME}/keychain.json" \ -Dcryptomator.showTrayIcon=true \ -Dcryptomator.buildNumber="msi-${REVISION_NUM}" \ No newline at end of file