Several fixes:

* substitute all java-options
* use correct properties path
* fix read-only attribute of debug launcher
This commit is contained in:
Armin Schrenk 2023-02-06 13:55:40 +01:00
parent 9f035b7d37
commit 641066ea07
No known key found for this signature in database
GPG Key ID: 8F2992163CBBA7FC
4 changed files with 25 additions and 18 deletions

View File

@ -70,10 +70,11 @@ jobs:
--compress=1 --compress=1
- name: Prepare debug launcher config - name: Prepare debug launcher config
shell: bash 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: env:
SEMVER_STR: ${{ needs.get-version.outputs.semVerStr }} SEMVER_STR: ${{ needs.get-version.outputs.semVerStr }}
REVISION_NUM: ${{ needs.get-version.outputs.revNum }} REVISION_NUM: ${{ needs.get-version.outputs.revNum }}
APP_NAME: 'Cryptomator'
- name: Run jpackage - name: Run jpackage
run: > run: >
${JAVA_HOME}/bin/jpackage ${JAVA_HOME}/bin/jpackage
@ -107,7 +108,7 @@ jobs:
--java-options "-Dcryptomator.integrationsWin.keychainPaths=\"~/AppData/Roaming/Cryptomator/keychain.json\"" --java-options "-Dcryptomator.integrationsWin.keychainPaths=\"~/AppData/Roaming/Cryptomator/keychain.json\""
--resource-dir dist/win/resources --resource-dir dist/win/resources
--icon dist/win/resources/Cryptomator.ico --icon dist/win/resources/Cryptomator.ico
--add-launcher debug=debug-launcher.properties --add-launcher "CryptomatorDebug=CryptomatorDebug.properties"
- name: Patch Application Directory - name: Patch Application Directory
run: | run: |
cp dist/win/contrib/* appdir/Cryptomator cp dist/win/contrib/* appdir/Cryptomator
@ -122,7 +123,9 @@ jobs:
exit 1 exit 1
} }
- name: Fix permissions - 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 shell: pwsh
- name: Extract integrations DLL for code signing - name: Extract integrations DLL for code signing
shell: pwsh shell: pwsh

2
dist/win/.gitignore vendored
View File

@ -5,4 +5,4 @@ installer
*.pdb *.pdb
*.msi *.msi
license.rtf license.rtf
debug.properties *Debug.properties

10
dist/win/build.ps1 vendored
View File

@ -67,7 +67,10 @@ if ($clean -and (Test-Path -Path $appPath)) {
$debugProps = Get-Content -Path $buildDir\resources\debug-launcher.properties $debugProps = Get-Content -Path $buildDir\resources\debug-launcher.properties
$debugProps = $debugProps -replace '\${SEM_VER_STR}', "$semVerNo" $debugProps = $debugProps -replace '\${SEM_VER_STR}', "$semVerNo"
$debugProps = $debugProps -replace '\${REVISION_NUM}', "$revisionNo" $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 # create app dir
& "$Env:JAVA_HOME\bin\jpackage" ` & "$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.integrationsWin.keychainPaths=`"~/AppData/Roaming/$AppName/keychain.json`"" `
--java-options "-Dcryptomator.showTrayIcon=true" ` --java-options "-Dcryptomator.showTrayIcon=true" `
--java-options "-Dcryptomator.buildNumber=`"msi-$revisionNo`"" ` --java-options "-Dcryptomator.buildNumber=`"msi-$revisionNo`"" `
--add-launcher debug=$buildDir\resources\debug.properties `
--resource-dir resources ` --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 #Create RTF license for msi
&mvn -B -f $buildDir/../../pom.xml license:add-third-party ` &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 # patch app dir
Copy-Item "contrib\*" -Destination "$AppName" Copy-Item "contrib\*" -Destination "$AppName"
attrib -r "$AppName\$AppName.exe" attrib -r "$AppName\$AppName.exe"
attrib -r "$AppName\${AppName}Debug.exe"
# patch batch script to set hostfile # patch batch script to set hostfile
$webDAVPatcher = "$AppName\patchWebDAV.bat" $webDAVPatcher = "$AppName\patchWebDAV.bat"
try { try {

View File

@ -5,14 +5,14 @@ java-options=--enable-preview \
-Xmx256m \ -Xmx256m \
-Dcryptomator.appVersion="${SEM_VER_STR}" \ -Dcryptomator.appVersion="${SEM_VER_STR}" \
-Dfile.encoding="utf-8" \ -Dfile.encoding="utf-8" \
-Dcryptomator.logDir="~/AppData/Roaming/$AppName" \ -Dcryptomator.logDir="~/AppData/Roaming/${APP_NAME}" \
-Dcryptomator.pluginDir="~/AppData/Roaming/$AppName/Plugins" \ -Dcryptomator.pluginDir="~/AppData/Roaming/${APP_NAME}/Plugins" \
-Dcryptomator.settingsPath="~/AppData/Roaming/$AppName/settings.json" \ -Dcryptomator.settingsPath="~/AppData/Roaming/${APP_NAME}/settings.json" \
-Dcryptomator.ipcSocketPath="~/AppData/Roaming/$AppName/ipc.socket" \ -Dcryptomator.ipcSocketPath="~/AppData/Roaming/${APP_NAME}/ipc.socket" \
-Dcryptomator.p12Path="~/AppData/Roaming/$AppName/key.p12" \ -Dcryptomator.p12Path="~/AppData/Roaming/${APP_NAME}/key.p12" \
-Dcryptomator.mountPointsDir="~/$AppName" \ -Dcryptomator.mountPointsDir="~/${APP_NAME}" \
-Dcryptomator.loopbackAlias="$LoopbackAlias" \ -Dcryptomator.loopbackAlias="${LOOPBACK_ALIAS}" \
-Dcryptomator.integrationsWin.autoStartShellLinkName="$AppName" \ -Dcryptomator.integrationsWin.autoStartShellLinkName="${APP_NAME}" \
-Dcryptomator.integrationsWin.keychainPaths="~/AppData/Roaming/$AppName/keychain.json" \ -Dcryptomator.integrationsWin.keychainPaths="~/AppData/Roaming/${APP_NAME}/keychain.json" \
-Dcryptomator.showTrayIcon=true \ -Dcryptomator.showTrayIcon=true \
-Dcryptomator.buildNumber="msi-${REVISION_NUM}" -Dcryptomator.buildNumber="msi-${REVISION_NUM}"