From 464c74ab6c917ffd122c843ee1a00dbb8772aefe Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Mon, 3 Jun 2024 09:39:36 +0000
Subject: [PATCH 1/7] Bump the maven-build-plugins group across 1 directory
with 2 updates (#3431)
---
pom.xml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/pom.xml b/pom.xml
index 2771115f2..0963ea5ed 100644
--- a/pom.xml
+++ b/pom.xml
@@ -62,7 +62,7 @@
24.1.0
- 9.1.0
+ 9.2.0
0.8.12
2.4.0
1.2.1
@@ -70,7 +70,7 @@
3.3.1
3.6.1
3.2.5
- 3.3.0
+ 3.4.1
From dc993dc57ce441011001059e36db1f111881879c Mon Sep 17 00:00:00 2001
From: Armin Schrenk
Date: Mon, 3 Jun 2024 12:29:54 +0200
Subject: [PATCH 2/7] fixes #3440 (PR in #3447)
---
.../java/org/cryptomator/common/SubstitutingProperties.java | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/main/java/org/cryptomator/common/SubstitutingProperties.java b/src/main/java/org/cryptomator/common/SubstitutingProperties.java
index 8ba98a2b6..0536e3554 100644
--- a/src/main/java/org/cryptomator/common/SubstitutingProperties.java
+++ b/src/main/java/org/cryptomator/common/SubstitutingProperties.java
@@ -5,6 +5,7 @@ import org.slf4j.LoggerFactory;
import java.util.Map;
import java.util.Properties;
+import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class SubstitutingProperties extends PropertiesDecorator {
@@ -58,7 +59,7 @@ public class SubstitutingProperties extends PropertiesDecorator {
LoggerFactory.getLogger(SubstitutingProperties.class).warn("Variable {} used for substitution not found in {}. Replaced with empty string.", key, src);
return "";
} else {
- return val.replace("\\", "\\\\");
+ return Matcher.quoteReplacement(val);
}
}
From 7180af9bc7e83cb70ce2db7df81af3c8ab5ecf1b Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Mon, 3 Jun 2024 10:30:50 +0000
Subject: [PATCH 3/7] Bump the java-production-dependencies group across 1
directory with 9 updates (#3446)
---
pom.xml | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/pom.xml b/pom.xml
index 0963ea5ed..e9cb5cc7c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -43,17 +43,17 @@
3.14.0
- 2.51
+ 2.51.1
2.2
- 33.0.0-jre
- 2.16.2
+ 33.2.1-jre
+ 2.17.1
21.0.1
4.4.0
9.37.3
- 1.5.3
- 2.0.12
+ 1.5.6
+ 2.0.13
0.8.0
- 1.8.2
+ 1.9.0
5.10.2
From d2599ea525749f814fe537213645889052aa406d Mon Sep 17 00:00:00 2001
From: Armin Schrenk
Date: Thu, 6 Jun 2024 12:07:18 +0200
Subject: [PATCH 4/7] closes #2656
---
.../contrib/version170-migrate-settings.bat | 5 ---
.../contrib/version170-migrate-settings.ps1 | 35 -------------------
dist/win/resources/main.wxs | 6 ----
3 files changed, 46 deletions(-)
delete mode 100644 dist/win/contrib/version170-migrate-settings.bat
delete mode 100644 dist/win/contrib/version170-migrate-settings.ps1
diff --git a/dist/win/contrib/version170-migrate-settings.bat b/dist/win/contrib/version170-migrate-settings.bat
deleted file mode 100644
index d94e062a1..000000000
--- a/dist/win/contrib/version170-migrate-settings.bat
+++ /dev/null
@@ -1,5 +0,0 @@
-@echo off
-:: see comments in file ./version170-migrate-settings.ps1
-
-cd %~dp0
-powershell -NoLogo -NoProfile -NonInteractive -ExecutionPolicy RemoteSigned -Command .\version170-migrate-settings.ps1
diff --git a/dist/win/contrib/version170-migrate-settings.ps1 b/dist/win/contrib/version170-migrate-settings.ps1
deleted file mode 100644
index 8e019fe66..000000000
--- a/dist/win/contrib/version170-migrate-settings.ps1
+++ /dev/null
@@ -1,35 +0,0 @@
-# This script migrates Cryptomator settings for all local users on Windows in case the users uses custom directories as mountpoint
-# See also https://github.com/cryptomator/cryptomator/pull/2654.
-#
-# TODO: This script should be evaluated in a yearly interval if it is still needed and if not, should be removed
-#
-#Requires -RunAsAdministrator
-
-#Get all active, local user profiles
-$profileList = 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList'
-Get-ChildItem $profileList | ForEach-Object {
- $profilePath = $_.GetValue("ProfileImagePath")
- $settingsPath = "$profilePath\AppData\Roaming\Cryptomator\settings.json"
- if(!(Test-Path -Path $settingsPath -PathType Leaf)) {
- #No settings file, nothing to do.
- return;
- }
- $settings = Get-Content -Path $settingsPath | ConvertFrom-Json
- if($settings.preferredVolumeImpl -ne "FUSE") {
- #Fuse not used, nothing to do
- return;
- }
-
- #check if customMountPoints are used
- $atLeastOneCustomPath = $false;
- foreach ($vault in $settings.directories){
- $atLeastOneCustomPath = $atLeastOneCustomPath -or ($vault.useCustomMountPath -eq "True")
- }
-
- #if so, use WinFsp Local Drive
- if( $atLeastOneCustomPath ) {
- Add-Member -Force -InputObject $settings -Name "mountService" -Value "org.cryptomator.frontend.fuse.mount.WinFspMountProvider" -MemberType NoteProperty
- $newSettings = $settings | Select-Object * -ExcludeProperty "preferredVolumeImpl"
- ConvertTo-Json $newSettings | Set-Content -Path $settingsPath
- }
-}
diff --git a/dist/win/resources/main.wxs b/dist/win/resources/main.wxs
index 2fe2eb348..335dd3511 100644
--- a/dist/win/resources/main.wxs
+++ b/dist/win/resources/main.wxs
@@ -139,11 +139,6 @@
Sequence="execute" Before="PatchWebDAV" />
-
-
-
-
NOT Installed OR REINSTALL
- NOT Installed OR REINSTALL
From 91d6264b9ffc53e32363403a151c45b4b9103ceb Mon Sep 17 00:00:00 2001
From: Armin Schrenk
Date: Thu, 6 Jun 2024 12:07:49 +0200
Subject: [PATCH 5/7] ignore downloaded artifact
---
dist/linux/appimage/.gitignore | 4 +++-
dist/mac/dmg/.gitignore | 6 ++++--
dist/win/.gitignore | 1 +
3 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/dist/linux/appimage/.gitignore b/dist/linux/appimage/.gitignore
index 1ed40c771..3e0cd2a39 100644
--- a/dist/linux/appimage/.gitignore
+++ b/dist/linux/appimage/.gitignore
@@ -1,4 +1,6 @@
-# created during build
+# downloaded/created during build
+openjfx-jmods.zip
+*.jmod
Cryptomator.AppDir
*.AppImage
*.AppImage.zsync
\ No newline at end of file
diff --git a/dist/mac/dmg/.gitignore b/dist/mac/dmg/.gitignore
index cdc73d89b..ebc5e2c5e 100644
--- a/dist/mac/dmg/.gitignore
+++ b/dist/mac/dmg/.gitignore
@@ -1,6 +1,8 @@
-# created during build
+# downloaded/created during build
Cryptomator.app/
runtime/
dmg/
*.dmg
-license.rtf
\ No newline at end of file
+license.rtf
+openjfx-jmods.zip
+*.jmod
\ No newline at end of file
diff --git a/dist/win/.gitignore b/dist/win/.gitignore
index 32316fd59..7b2faa4b5 100644
--- a/dist/win/.gitignore
+++ b/dist/win/.gitignore
@@ -6,4 +6,5 @@ installer
*.msi
*.exe
*.jmod
+resources/jfxJmods.zip
license.rtf
\ No newline at end of file
From 8108128c22bd89f14119d3084022d102a0270d12 Mon Sep 17 00:00:00 2001
From: Ralph Plawetzki
Date: Tue, 11 Jun 2024 19:54:32 +0200
Subject: [PATCH 6/7] Temporary work around for JavaFX upstream bug Occurs with
Maven 3.9.7, fixed with Gluon JavaFX 23-ea+20, that contains a fixed parent
POM See https://mail.openjdk.org/pipermail/openjfx-dev/2024-May/047279.html
---
.github/workflows/mac-dmg.yml | 4 ++--
dist/mac/dmg/build.sh | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/mac-dmg.yml b/.github/workflows/mac-dmg.yml
index 7e6bde81b..40d6c8497 100644
--- a/.github/workflows/mac-dmg.yml
+++ b/.github/workflows/mac-dmg.yml
@@ -79,7 +79,7 @@ jobs:
- name: Set version
run : mvn versions:set -DnewVersion=${{ needs.get-version.outputs.semVerStr }}
- name: Run maven
- run: mvn -B clean package -Pmac -DskipTests
+ run: mvn -B -Djavafx.platform=mac clean package -Pmac -DskipTests
- name: Patch target dir
run: |
cp LICENSE.txt target
@@ -142,7 +142,7 @@ jobs:
REVISION_NO: ${{ needs.get-version.outputs.revNum }}
- name: Generate license for dmg
run: >
- mvn -B license:add-third-party
+ mvn -B -Djavafx.platform=mac license:add-third-party
-Dlicense.thirdPartyFilename=license.rtf
-Dlicense.outputDirectory=dist/mac/dmg/resources
-Dlicense.fileTemplate=dist/mac/dmg/resources/licenseTemplate.ftl
diff --git a/dist/mac/dmg/build.sh b/dist/mac/dmg/build.sh
index ce2380289..11375cddb 100755
--- a/dist/mac/dmg/build.sh
+++ b/dist/mac/dmg/build.sh
@@ -63,7 +63,7 @@ if [ "${POM_JFX_VERSION}" -ne "${JMOD_VERSION}" ]; then
fi
# compile
-mvn -B -f../../../pom.xml clean package -DskipTests -Pmac
+mvn -B -Djavafx.platform=mac -f../../../pom.xml clean package -DskipTests -Pmac
cp ../../../LICENSE.txt ../../../target
cp ../../../target/${MAIN_JAR_GLOB} ../../../target/mods
@@ -118,7 +118,7 @@ sed -i '' "s|###BUNDLE_SHORT_VERSION_STRING###|${VERSION_NO}|g" ${APP_NAME}.app/
sed -i '' "s|###BUNDLE_VERSION###|${REVISION_NO}|g" ${APP_NAME}.app/Contents/Info.plist
# generate license
-mvn -B -f../../../pom.xml license:add-third-party \
+mvn -B -Djavafx.platform=mac -f../../../pom.xml license:add-third-party \
-Dlicense.thirdPartyFilename=license.rtf \
-Dlicense.outputDirectory=dist/mac/dmg/resources \
-Dlicense.fileTemplate=resources/licenseTemplate.ftl \
From 2307950e3b96fd7599241d4d1bd0ed3084560879 Mon Sep 17 00:00:00 2001
From: Armin Schrenk
Date: Wed, 12 Jun 2024 10:58:49 +0200
Subject: [PATCH 7/7] add javafx.platform property workaround to other build/ci
scripts
---
.github/workflows/appimage.yml | 2 +-
.github/workflows/build.yml | 2 +-
.github/workflows/debian.yml | 2 +-
.github/workflows/dependency-check.yml | 1 +
.github/workflows/pullrequest.yml | 2 +-
.github/workflows/release-check.yml | 2 +-
.github/workflows/win-exe.yml | 6 +++---
dist/linux/appimage/build.sh | 2 +-
dist/win/build.ps1 | 6 +++---
9 files changed, 13 insertions(+), 12 deletions(-)
diff --git a/.github/workflows/appimage.yml b/.github/workflows/appimage.yml
index 5d0dc2d5b..6ae61a2b2 100644
--- a/.github/workflows/appimage.yml
+++ b/.github/workflows/appimage.yml
@@ -68,7 +68,7 @@ jobs:
- name: Set version
run : mvn versions:set -DnewVersion=${{ needs.get-version.outputs.semVerStr }}
- name: Run maven
- run: mvn -B clean package -Plinux -DskipTests
+ run: mvn -B clean package -Plinux -DskipTests -Djavafx.platform=linux
- name: Patch target dir
run: |
cp LICENSE.txt target
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index c38bb49e3..7e86b61ea 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -33,7 +33,7 @@ jobs:
- name: Build and Test
run: >
xvfb-run
- mvn -B verify
+ mvn -B verify -Djavafx.platform=linux
jacoco:report
org.sonarsource.scanner.maven:sonar-maven-plugin:sonar
-Pcoverage
diff --git a/.github/workflows/debian.yml b/.github/workflows/debian.yml
index 9c220843b..f5ce875d9 100644
--- a/.github/workflows/debian.yml
+++ b/.github/workflows/debian.yml
@@ -53,7 +53,7 @@ jobs:
check-latest: true
cache: 'maven'
- name: Run maven
- run: mvn -B clean package -Plinux -DskipTests
+ run: mvn -B clean package -Plinux -Djavafx.platform=linux -DskipTests
- name: Download OpenJFX jmods
id: download-jmods
run: |
diff --git a/.github/workflows/dependency-check.yml b/.github/workflows/dependency-check.yml
index 02633a334..40dfe97fa 100644
--- a/.github/workflows/dependency-check.yml
+++ b/.github/workflows/dependency-check.yml
@@ -12,6 +12,7 @@ jobs:
runner-os: 'ubuntu-latest'
java-distribution: 'temurin'
java-version: 22
+ check-command: 'mvn -B validate -Pdependency-check -Djavafx.platform=linux'
secrets:
nvd-api-key: ${{ secrets.NVD_API_KEY }}
slack-webhook-url: ${{ secrets.SLACK_WEBHOOK_URL }}
diff --git a/.github/workflows/pullrequest.yml b/.github/workflows/pullrequest.yml
index 4db444da5..e6512a52e 100644
--- a/.github/workflows/pullrequest.yml
+++ b/.github/workflows/pullrequest.yml
@@ -24,4 +24,4 @@ jobs:
java-version: ${{ env.JAVA_VERSION }}
cache: 'maven'
- name: Build and Test
- run: xvfb-run mvn -B clean install jacoco:report -Pcoverage
\ No newline at end of file
+ run: xvfb-run mvn -B clean install jacoco:report -Pcoverage -Djavafx.platform=linux
\ No newline at end of file
diff --git a/.github/workflows/release-check.yml b/.github/workflows/release-check.yml
index 160da33e9..0454dc08d 100644
--- a/.github/workflows/release-check.yml
+++ b/.github/workflows/release-check.yml
@@ -60,6 +60,6 @@ jobs:
- name: Run org.owasp:dependency-check plugin
id: dependency-check
continue-on-error: true
- run: mvn -B verify -Pdependency-check -DskipTests
+ run: mvn -B verify -Pdependency-check -DskipTests -Djavafx.platform=linux
env:
NVD_API_KEY: ${{ secrets.NVD_API_KEY }}
\ No newline at end of file
diff --git a/.github/workflows/win-exe.yml b/.github/workflows/win-exe.yml
index b6abcf0ec..bf14d3448 100644
--- a/.github/workflows/win-exe.yml
+++ b/.github/workflows/win-exe.yml
@@ -77,7 +77,7 @@ jobs:
- name: Set version
run : mvn versions:set -DnewVersion=${{ needs.get-version.outputs.semVerStr }}
- name: Run maven
- run: mvn -B clean package -Pwin -DskipTests
+ run: mvn -B clean package -Pwin -DskipTests -Djavafx.platform=win
- name: Patch target dir
run: |
cp LICENSE.txt target
@@ -199,7 +199,7 @@ jobs:
}
- name: Generate license for MSI
run: >
- mvn -B license:add-third-party
+ mvn -B license:add-third-party -Djavafx.platform=win
"-Dlicense.thirdPartyFilename=license.rtf"
"-Dlicense.outputDirectory=dist/win/resources"
"-Dlicense.fileTemplate=dist/win/resources/licenseTemplate.ftl"
@@ -279,7 +279,7 @@ jobs:
cache: 'maven'
- name: Generate license for exe
run: >
- mvn -B license:add-third-party
+ mvn -B license:add-third-party -Djavafx.platform=win
"-Dlicense.thirdPartyFilename=license.rtf"
"-Dlicense.fileTemplate=dist/win/bundle/resources/licenseTemplate.ftl"
"-Dlicense.outputDirectory=dist/win/bundle/resources"
diff --git a/dist/linux/appimage/build.sh b/dist/linux/appimage/build.sh
index 091e66c00..1adfdc010 100755
--- a/dist/linux/appimage/build.sh
+++ b/dist/linux/appimage/build.sh
@@ -19,7 +19,7 @@ if [[ ! "${MACHINE_TYPE}" =~ x86_64|aarch64 ]]; then echo "Platform ${MACHINE_TY
mvn -f ../../../pom.xml versions:set -DnewVersion=${SEMVER_STR}
# compile
-mvn -B -f ../../../pom.xml clean package -Plinux -DskipTests
+mvn -B -f ../../../pom.xml clean package -Plinux -DskipTests -Djavafx.platform=linux
cp ../../../LICENSE.txt ../../../target
cp ../../../target/cryptomator-*.jar ../../../target/mods
diff --git a/dist/win/build.ps1 b/dist/win/build.ps1
index 117c0afb8..18b243121 100644
--- a/dist/win/build.ps1
+++ b/dist/win/build.ps1
@@ -41,7 +41,7 @@ Write-Output "`$Env:JAVA_HOME=$Env:JAVA_HOME"
$copyright = "(C) $CopyrightStartYear - $((Get-Date).Year) $Vendor"
# compile
-&mvn -B -f $buildDir/../../pom.xml clean package -DskipTests -Pwin
+&mvn -B -f $buildDir/../../pom.xml clean package -DskipTests -Pwin -Djavafx.platform=win
Copy-Item "$buildDir\..\..\target\$MainJarGlob.jar" -Destination "$buildDir\..\..\target\mods"
# add runtime
@@ -121,7 +121,7 @@ if ($clean -and (Test-Path -Path $appPath)) {
--icon resources/$AppName.ico
#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 -Djavafx.platform=win `
"-Dlicense.thirdPartyFilename=license.rtf" `
"-Dlicense.fileTemplate=$buildDir\resources\licenseTemplate.ftl" `
"-Dlicense.outputDirectory=$buildDir\resources\" `
@@ -166,7 +166,7 @@ $Env:JP_WIXHELPER_DIR = "."
--file-associations resources/FAvaultFile.properties
#Create RTF license for bundle
-&mvn -B -f $buildDir/../../pom.xml license:add-third-party `
+&mvn -B -f $buildDir/../../pom.xml license:add-third-party -Djavafx.platform=win `
"-Dlicense.thirdPartyFilename=license.rtf" `
"-Dlicense.fileTemplate=$buildDir\bundle\resources\licenseTemplate.ftl" `
"-Dlicense.outputDirectory=$buildDir\bundle\resources\" `