mirror of
https://github.com/cryptomator/cryptomator.git
synced 2026-09-23 08:24:52 +00:00
Compare commits
3
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e5fe5604c3 | ||
|
|
74f36f20ea | ||
|
|
472b10a8a4 |
+9
-13
@@ -1,15 +1,11 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
# From: https://gitlab.gnome.org/GNOME/gnome-builder/-/blob/main/build-aux/flatpak/fusermount-wrapper.sh
|
# based on https://gitlab.gnome.org/GNOME/gnome-builder/-/blob/main/build-aux/flatpak/fusermount-wrapper.sh
|
||||||
|
#
|
||||||
if [ -z "$_FUSE_COMMFD" ]; then
|
# Sandbox escape hatch to call fusermount3 on the host system
|
||||||
FD_ARGS=
|
#
|
||||||
else
|
# * fusermount3 is required for mount and unmount
|
||||||
FD_ARGS="--env=_FUSE_COMMFD=${_FUSE_COMMFD} --forward-fd=${_FUSE_COMMFD}"
|
# * FUSE3 requires for mounting a socket for communication, its file descriptor id is given in the _FUSE_COMMFD variable
|
||||||
fi
|
# * Forwarding fd 1 and fd 2 ensures to catch process output of the fuse process
|
||||||
|
# * watch-bus ensures when the flatpak exits, also this process is killed
|
||||||
if [ -e /proc/self/fd/3 ] && [ 3 != "$_FUSE_COMMFD" ]; then
|
exec flatpak-spawn --host --watch-bus --forward-fd=1 --forward-fd=2 --env=_FUSE_COMMFD=${_FUSE_COMMFD} --forward-fd=${_FUSE_COMMFD} fusermount3 "$@"
|
||||||
FD_ARGS="$FD_ARGS --forward-fd=3"
|
|
||||||
fi
|
|
||||||
|
|
||||||
exec flatpak-spawn --host --forward-fd=1 --forward-fd=2 $FD_ARGS fusermount3 "$@"
|
|
||||||
|
|||||||
Vendored
+4
-1
@@ -4,15 +4,18 @@
|
|||||||
:: This file must be located in the INSTALLDIR
|
:: This file must be located in the INSTALLDIR
|
||||||
|
|
||||||
set "LOOPBACK_ALIAS=%1"
|
set "LOOPBACK_ALIAS=%1"
|
||||||
|
set "ACTION=%2"
|
||||||
|
if "%ACTION%"=="" set "ACTION=install"
|
||||||
|
|
||||||
:: Log for debugging
|
:: Log for debugging
|
||||||
echo LOOPBACK_ALIAS=%LOOPBACK_ALIAS%
|
echo LOOPBACK_ALIAS=%LOOPBACK_ALIAS%
|
||||||
|
echo ACTION=%ACTION%
|
||||||
|
|
||||||
:: Change to INSTALLDIR
|
:: Change to INSTALLDIR
|
||||||
cd %~dp0
|
cd %~dp0
|
||||||
:: Execute the PowerShell script
|
:: Execute the PowerShell script
|
||||||
powershell -NoLogo -NoProfile -NonInteractive -ExecutionPolicy RemoteSigned -File .\patchWebDAV.ps1^
|
powershell -NoLogo -NoProfile -NonInteractive -ExecutionPolicy RemoteSigned -File .\patchWebDAV.ps1^
|
||||||
-LoopbackAlias %LOOPBACK_ALIAS%
|
-LoopbackAlias %LOOPBACK_ALIAS% -Action %ACTION%
|
||||||
|
|
||||||
:: Return the exit code from PowerShell
|
:: Return the exit code from PowerShell
|
||||||
exit /b %ERRORLEVEL%
|
exit /b %ERRORLEVEL%
|
||||||
Vendored
+36
-11
@@ -1,15 +1,17 @@
|
|||||||
#Requires -RunAsAdministrator
|
#Requires -RunAsAdministrator
|
||||||
Param(
|
Param(
|
||||||
[Parameter(Mandatory, HelpMessage="Please provide an alias for 127.0.0.1")][string] $LoopbackAlias
|
[Parameter(Mandatory, HelpMessage="Please provide an alias for 127.0.0.1")][string] $LoopbackAlias,
|
||||||
|
[string] $Action = "install"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
New-Variable -Name "sysdir" -Value ([Environment]::SystemDirectory) -Option Constant -Scope Global
|
||||||
|
New-Variable -Name "hostsFile" -Value "$sysdir\drivers\etc\hosts" -Option Constant -Scope Global
|
||||||
|
|
||||||
# Adds an alias for 127.0.0.1 to the hosts file
|
# Adds an alias for 127.0.0.1 to the hosts file
|
||||||
function Add-AliasToHost {
|
function Add-AliasToHost {
|
||||||
param (
|
param (
|
||||||
[string]$LoopbackAlias
|
[string]$LoopbackAlias
|
||||||
)
|
)
|
||||||
$sysdir = [Environment]::SystemDirectory
|
|
||||||
$hostsFile = "$sysdir\drivers\etc\hosts"
|
|
||||||
$aliasLine = "127.0.0.1 $LoopbackAlias"
|
$aliasLine = "127.0.0.1 $LoopbackAlias"
|
||||||
|
|
||||||
foreach ($line in Get-Content $hostsFile) {
|
foreach ($line in Get-Content $hostsFile) {
|
||||||
@@ -18,9 +20,26 @@ function Add-AliasToHost {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Add-Content -Path $hostsFile -Encoding ascii -Value "`r`n$aliasLine"
|
$content = Get-Content $hostsFile
|
||||||
|
$content += "`r`n$aliasLine"
|
||||||
|
|
||||||
|
$content | Set-Content "$hostsFile.tmp" -Encoding ascii
|
||||||
|
Move-Item "$hostsFile.tmp" $hostsFile -Force
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Removes an alias for 127.0.0.1 from the hosts file
|
||||||
|
function Remove-AliasFromHost {
|
||||||
|
param (
|
||||||
|
[string]$LoopbackAlias
|
||||||
|
)
|
||||||
|
$aliasLine = "127.0.0.1 $LoopbackAlias"
|
||||||
|
|
||||||
|
$content = Get-Content $hostsFile
|
||||||
|
$newContent = $content | Where-Object { $_ -ne $aliasLine }
|
||||||
|
|
||||||
|
$newContent | Set-Content "$hostsFile.tmp" -Encoding ascii
|
||||||
|
Move-Item "$hostsFile.tmp" $hostsFile -Force
|
||||||
|
}
|
||||||
|
|
||||||
# Sets in the registry the webclient file size limit to the maximum value
|
# Sets in the registry the webclient file size limit to the maximum value
|
||||||
function Set-WebDAVFileSizeLimit {
|
function Set-WebDAVFileSizeLimit {
|
||||||
@@ -54,14 +73,20 @@ function Edit-ProviderOrder {
|
|||||||
New-ItemProperty -Path $RegistryPath -Name $Name -Value $UpdatedOrder -PropertyType String -Force | Out-Null
|
New-ItemProperty -Path $RegistryPath -Name $Name -Value $UpdatedOrder -PropertyType String -Force | Out-Null
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($Action -eq "install") {
|
||||||
|
Add-AliasToHost $LoopbackAlias
|
||||||
|
Write-Output 'Ensured alias exists in hosts file'
|
||||||
|
|
||||||
Add-AliasToHost $LoopbackAlias
|
Set-WebDAVFileSizeLimit
|
||||||
Write-Output 'Ensured alias exists in hosts file'
|
Write-Output 'Set WebDAV file size limit'
|
||||||
|
|
||||||
Set-WebDAVFileSizeLimit
|
Edit-ProviderOrder
|
||||||
Write-Output 'Set WebDAV file size limit'
|
Write-Output 'Ensured correct provider order'
|
||||||
|
} elseif ($Action -eq "uninstall") {
|
||||||
Edit-ProviderOrder
|
Remove-AliasFromHost $LoopbackAlias
|
||||||
Write-Output 'Ensured correct provider order'
|
Write-Output 'Ensured alias removed from hosts file'
|
||||||
|
} else {
|
||||||
|
Write-Error "Invalid action: $Action. Only 'install' or 'uninstall' are valid."
|
||||||
|
}
|
||||||
|
|
||||||
exit 0
|
exit 0
|
||||||
|
|||||||
Vendored
+6
-3
@@ -158,9 +158,13 @@
|
|||||||
<ns0:CustomAction Id="DisableUserConfig" BinaryRef="Wix4UtilCA_$(sys.BUILDARCHSHORT)" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
|
<ns0:CustomAction Id="DisableUserConfig" BinaryRef="Wix4UtilCA_$(sys.BUILDARCHSHORT)" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
|
||||||
|
|
||||||
<!-- WebDAV patches -->
|
<!-- WebDAV patches -->
|
||||||
<ns0:SetProperty Id="PatchWebDAV" Value=""[INSTALLDIR]patchWebDAV.bat" "$(var.LoopbackAlias)"" Sequence="execute" Before="PatchWebDAV" />
|
<ns0:SetProperty Id="PatchWebDAV" Value=""[INSTALLDIR]patchWebDAV.bat" "$(var.LoopbackAlias)" install" Sequence="execute" Before="PatchWebDAV" />
|
||||||
<ns0:CustomAction Id="PatchWebDAV" BinaryRef="Wix4UtilCA_$(sys.BUILDARCHSHORT)" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
|
<ns0:CustomAction Id="PatchWebDAV" BinaryRef="Wix4UtilCA_$(sys.BUILDARCHSHORT)" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
|
||||||
|
|
||||||
|
<!-- WebDAV patches (Uninstall) -->
|
||||||
|
<ns0:SetProperty Id="PatchWebDAVUninstall" Value=""[INSTALLDIR]patchWebDAV.bat" "$(var.LoopbackAlias)" uninstall" Sequence="execute" Before="PatchWebDAVUninstall" />
|
||||||
|
<ns0:CustomAction Id="PatchWebDAVUninstall" BinaryRef="Wix4UtilCA_$(sys.BUILDARCHSHORT)" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
|
||||||
|
|
||||||
<!-- Update check configuration -->
|
<!-- Update check configuration -->
|
||||||
<ns0:SetProperty Id="PatchUpdateCheck" Value=""[INSTALLDIR]patchUpdateCheck.bat" "[DISABLEUPDATECHECK]"" Sequence="execute" Before="PatchUpdateCheck" />
|
<ns0:SetProperty Id="PatchUpdateCheck" Value=""[INSTALLDIR]patchUpdateCheck.bat" "[DISABLEUPDATECHECK]"" Sequence="execute" Before="PatchUpdateCheck" />
|
||||||
<ns0:CustomAction Id="PatchUpdateCheck" BinaryRef="Wix4UtilCA_$(sys.BUILDARCHSHORT)" DllEntry="WixQuietExec64" Execute="deferred" Return="ignore" Impersonate="no"/>
|
<ns0:CustomAction Id="PatchUpdateCheck" BinaryRef="Wix4UtilCA_$(sys.BUILDARCHSHORT)" DllEntry="WixQuietExec64" Execute="deferred" Return="ignore" Impersonate="no"/>
|
||||||
@@ -214,9 +218,8 @@
|
|||||||
|
|
||||||
<ns0:RemoveExistingProducts After="InstallValidate"/> <!-- Moved from CostInitialize, due to Wix4CloseApplications_* -->
|
<ns0:RemoveExistingProducts After="InstallValidate"/> <!-- Moved from CostInitialize, due to Wix4CloseApplications_* -->
|
||||||
<ns0:Custom Action="DisableUserConfig" After="InstallFiles" Condition="NOT (Installed AND (NOT REINSTALL) AND (NOT UPGRADINGPRODUCTCODE) AND REMOVE)"/>
|
<ns0:Custom Action="DisableUserConfig" After="InstallFiles" Condition="NOT (Installed AND (NOT REINSTALL) AND (NOT UPGRADINGPRODUCTCODE) AND REMOVE)"/>
|
||||||
<!-- Skip action on uninstall -->
|
|
||||||
<!-- TODO: don't skip action, but remove cryptomator alias from hosts file -->
|
|
||||||
<ns0:Custom Action="PatchWebDAV" After="DisableUserConfig" Condition="NOT (Installed AND (NOT REINSTALL) AND (NOT UPGRADINGPRODUCTCODE) AND REMOVE)"/>
|
<ns0:Custom Action="PatchWebDAV" After="DisableUserConfig" Condition="NOT (Installed AND (NOT REINSTALL) AND (NOT UPGRADINGPRODUCTCODE) AND REMOVE)"/>
|
||||||
|
<ns0:Custom Action="PatchWebDAVUninstall" Before="RemoveFiles" Condition="Installed AND (NOT REINSTALL) AND (NOT UPGRADINGPRODUCTCODE) AND REMOVE" />
|
||||||
<!-- Configure update check setting if property is provided -->
|
<!-- Configure update check setting if property is provided -->
|
||||||
<ns0:Custom Action="PatchUpdateCheck" After="PatchWebDAV" Condition="DISABLEUPDATECHECK AND NOT (Installed AND (NOT REINSTALL) AND (NOT UPGRADINGPRODUCTCODE) AND REMOVE)"/>
|
<ns0:Custom Action="PatchUpdateCheck" After="PatchWebDAV" Condition="DISABLEUPDATECHECK AND NOT (Installed AND (NOT REINSTALL) AND (NOT UPGRADINGPRODUCTCODE) AND REMOVE)"/>
|
||||||
</ns0:InstallExecuteSequence>
|
</ns0:InstallExecuteSequence>
|
||||||
|
|||||||
Reference in New Issue
Block a user