Skip to content

Commit 35b5971

Browse files
committed
Merge branch 'develop'
2 parents 8905546 + 1fb5865 commit 35b5971

File tree

5 files changed

+216
-32
lines changed

5 files changed

+216
-32
lines changed

assets/js/download.js

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,65 @@
1+
/**
2+
* Detects if the current Mac is running Apple Silicon or Intel.
3+
* Uses WebGL GPU renderer detection.
4+
* @returns {'apple-silicon' | 'intel' | 'unknown'}
5+
*/
6+
function detectMacArchitecture() {
7+
if (navigator.appVersion.indexOf('Mac') === -1) {
8+
return 'unknown';
9+
}
10+
11+
try {
12+
const canvas = document.createElement('canvas');
13+
const gl = canvas.getContext('webgl') || canvas.getContext('experimental-webgl');
14+
if (!gl) {
15+
return 'unknown';
16+
}
17+
18+
const debugInfo = gl.getExtension('WEBGL_debug_renderer_info');
19+
if (debugInfo) {
20+
const renderer = gl.getParameter(debugInfo.UNMASKED_RENDERER_WEBGL) || '';
21+
const rendererLower = renderer.toLowerCase();
22+
23+
// Apple Silicon Macs have Apple GPUs, Intel Macs have Intel/AMD GPUs
24+
if (rendererLower.includes('apple')) {
25+
return 'apple-silicon';
26+
}
27+
28+
// Intel or AMD GPUs indicate Intel Mac
29+
if (rendererLower.includes('intel') || rendererLower.includes('amd') || rendererLower.includes('radeon')) {
30+
return 'intel';
31+
}
32+
}
33+
} catch (e) {
34+
// Detection failed, fall through to unknown
35+
}
36+
37+
return 'unknown';
38+
}
39+
40+
/**
41+
* Detects Linux architecture from navigator.platform.
42+
* @returns {'x86_64' | 'aarch64' | 'unknown'}
43+
*/
44+
function detectLinuxArchitecture() {
45+
const platform = navigator.platform.toLowerCase();
46+
47+
if (!platform.includes('linux')) {
48+
return 'unknown';
49+
}
50+
51+
if (platform.includes('aarch64') || platform.includes('arm')) {
52+
return 'aarch64';
53+
}
54+
55+
if (platform.includes('x86_64') || platform.includes('x86-64') || platform.includes('amd64')) {
56+
return 'x86_64';
57+
}
58+
59+
// Most Linux desktops are x86_64
60+
return 'x86_64';
61+
}
62+
163
function guessDownloadTab(locationHash) {
264
if (locationHash === '#win' || locationHash === '#mac' || locationHash === '#linux' || locationHash === '#android' || locationHash === '#ios') {
365
return locationHash;

content/downloads/linux.de.html

Lines changed: 38 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -25,15 +25,46 @@ <h2 class="font-h2 mb-6">Cryptomator für Linux</h2>
2525
<div class="px-4 py-2 border-b border-primary">
2626
<h3 class="font-h3 text-lg">AppImage</h3>
2727
</div>
28-
<div class="p-4">
28+
<div class="p-4" x-data="{ linuxArch: 'unknown' }" x-init="linuxArch = detectLinuxArchitecture()">
2929
<p class="font-p text-sm mb-4">Siehe {{< extlink "https://www.oracle.com/java/technologies/javase/products-doc-jdk21certconfig.html" "Systemanforderungen" >}}</p>
30-
<a itemprop="downloadUrl" href="/de/downloads/linux/thanks/" rel="nofollow" class="btn btn-primary w-full mb-4 md:w-56" role="button" data-umami-event="downloads-linux">
31-
<span class="fa-solid fa-download" aria-hidden="true"></span> Download <span class="text-xs">(x86_x64)</span>
32-
</a>
33-
<a itemprop="downloadUrl" href="/de/downloads/linux-aarch64/thanks/" rel="nofollow" class="btn btn-primary w-full mb-4 md:w-56" role="button" data-umami-event="downloads-linux-aarch64">
34-
<span class="fa-solid fa-download" aria-hidden="true"></span> Download <span class="text-xs">(AArch64)</span>
35-
</a>
30+
31+
<!-- x86_64: Primary when detected or unknown -->
32+
<template x-if="linuxArch === 'x86_64' || linuxArch === 'unknown'">
33+
<div>
34+
<a itemprop="downloadUrl" href="/de/downloads/linux/thanks/" rel="nofollow" class="btn btn-primary w-full mb-4 md:w-56" role="button" data-umami-event="downloads-linux">
35+
<span class="fa-solid fa-download" aria-hidden="true"></span> Download<span x-show="linuxArch === 'unknown'" class="text-xs"> (x86_64)</span>
36+
</a>
37+
</div>
38+
</template>
39+
40+
<!-- AArch64: Primary when detected or unknown -->
41+
<template x-if="linuxArch === 'aarch64' || linuxArch === 'unknown'">
42+
<div>
43+
<a itemprop="downloadUrl" href="/de/downloads/linux-aarch64/thanks/" rel="nofollow" class="btn btn-primary w-full mb-4 md:w-56" role="button" data-umami-event="downloads-linux-aarch64">
44+
<span class="fa-solid fa-download" aria-hidden="true"></span> Download<span x-show="linuxArch === 'unknown'" class="text-xs"> (AArch64)</span>
45+
</a>
46+
</div>
47+
</template>
48+
3649
<p class="font-p text-sm">Nach dem Download mach {{< extlink "https://docs.appimage.org/introduction/quickstart.html#ref-how-to-run-appimage" "die AppImage ausführbar" >}}.</p>
50+
51+
<!-- Secondary download option -->
52+
<template x-if="linuxArch === 'x86_64'">
53+
<div class="mt-4 pt-4 border-t border-gray-200">
54+
<p class="font-p text-sm mb-2">Du suchst die AArch64-Version?</p>
55+
<a href="/de/downloads/linux-aarch64/thanks/" rel="nofollow" class="btn btn-outline-primary w-full md:w-56" role="button" data-umami-event="downloads-linux-aarch64">
56+
<span class="fa-solid fa-download" aria-hidden="true"></span> Download
57+
</a>
58+
</div>
59+
</template>
60+
<template x-if="linuxArch === 'aarch64'">
61+
<div class="mt-4 pt-4 border-t border-gray-200">
62+
<p class="font-p text-sm mb-2">Du suchst die x86_64-Version?</p>
63+
<a href="/de/downloads/linux/thanks/" rel="nofollow" class="btn btn-outline-primary w-full md:w-56" role="button" data-umami-event="downloads-linux">
64+
<span class="fa-solid fa-download" aria-hidden="true"></span> Download
65+
</a>
66+
</div>
67+
</template>
3768
</div>
3869
</div>
3970

content/downloads/linux.en.html

Lines changed: 38 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -25,15 +25,46 @@ <h2 class="font-h2 mb-6">Cryptomator for Linux</h2>
2525
<div class="px-4 py-2 border-b border-primary">
2626
<h3 class="font-h3 text-lg">AppImage</h3>
2727
</div>
28-
<div class="p-4">
28+
<div class="p-4" x-data="{ linuxArch: 'unknown' }" x-init="linuxArch = detectLinuxArchitecture()">
2929
<p class="font-p text-sm mb-4">See {{< extlink "https://www.oracle.com/java/technologies/javase/products-doc-jdk21certconfig.html" "System Requirements" >}}</p>
30-
<a itemprop="downloadUrl" href="/downloads/linux/thanks/" rel="nofollow" class="btn btn-primary w-full mb-4 md:w-56" role="button" data-umami-event="downloads-linux">
31-
<span class="fa-solid fa-download" aria-hidden="true"></span> Download <span class="text-xs">(x86_x64)</span>
32-
</a>
33-
<a itemprop="downloadUrl" href="/downloads/linux-aarch64/thanks/" rel="nofollow" class="btn btn-primary w-full mb-4 md:w-56" role="button" data-umami-event="downloads-linux-aarch64">
34-
<span class="fa-solid fa-download" aria-hidden="true"></span> Download <span class="text-xs">(AArch64)</span>
35-
</a>
30+
31+
<!-- x86_64: Primary when detected or unknown -->
32+
<template x-if="linuxArch === 'x86_64' || linuxArch === 'unknown'">
33+
<div>
34+
<a itemprop="downloadUrl" href="/downloads/linux/thanks/" rel="nofollow" class="btn btn-primary w-full mb-4 md:w-56" role="button" data-umami-event="downloads-linux">
35+
<span class="fa-solid fa-download" aria-hidden="true"></span> Download<span x-show="linuxArch === 'unknown'" class="text-xs"> (x86_64)</span>
36+
</a>
37+
</div>
38+
</template>
39+
40+
<!-- AArch64: Primary when detected or unknown -->
41+
<template x-if="linuxArch === 'aarch64' || linuxArch === 'unknown'">
42+
<div>
43+
<a itemprop="downloadUrl" href="/downloads/linux-aarch64/thanks/" rel="nofollow" class="btn btn-primary w-full mb-4 md:w-56" role="button" data-umami-event="downloads-linux-aarch64">
44+
<span class="fa-solid fa-download" aria-hidden="true"></span> Download<span x-show="linuxArch === 'unknown'" class="text-xs"> (AArch64)</span>
45+
</a>
46+
</div>
47+
</template>
48+
3649
<p class="font-p text-sm">After downloading, make {{< extlink "https://docs.appimage.org/introduction/quickstart.html#ref-how-to-run-appimage" "the AppImage executable" >}}.</p>
50+
51+
<!-- Secondary download option -->
52+
<template x-if="linuxArch === 'x86_64'">
53+
<div class="mt-4 pt-4 border-t border-gray-200">
54+
<p class="font-p text-sm mb-2">Looking for the AArch64 version?</p>
55+
<a href="/downloads/linux-aarch64/thanks/" rel="nofollow" class="btn btn-outline-primary w-full md:w-56" role="button" data-umami-event="downloads-linux-aarch64">
56+
<span class="fa-solid fa-download" aria-hidden="true"></span> Download
57+
</a>
58+
</div>
59+
</template>
60+
<template x-if="linuxArch === 'aarch64'">
61+
<div class="mt-4 pt-4 border-t border-gray-200">
62+
<p class="font-p text-sm mb-2">Looking for the x86_64 version?</p>
63+
<a href="/downloads/linux/thanks/" rel="nofollow" class="btn btn-outline-primary w-full md:w-56" role="button" data-umami-event="downloads-linux">
64+
<span class="fa-solid fa-download" aria-hidden="true"></span> Download
65+
</a>
66+
</div>
67+
</template>
3768
</div>
3869
</div>
3970

content/downloads/mac.de.html

Lines changed: 39 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -25,16 +25,46 @@ <h2 class="font-h2 mb-6">Cryptomator für macOS</h2>
2525
<div class="px-4 py-2 border-b border-primary">
2626
<h3 class="font-h3 text-lg">DMG Image</h3>
2727
</div>
28-
<div class="p-4">
28+
<div class="p-4" x-data="{ macArch: 'unknown' }" x-init="macArch = detectMacArchitecture()">
2929
<p class="font-p text-sm mb-4">Minimum: {{< siteparam releases.dmg.requiredOS >}}</p>
30-
<a itemprop="downloadUrl" href="/de/downloads/mac-arm64/thanks/" rel="nofollow" class="btn btn-primary w-full mb-4 md:w-56" role="button" data-umami-event="downloads-mac-arm64">
31-
<span class="fa-solid fa-download" aria-hidden="true"></span> Download <span class="text-xs">(Apple Silicon)</span>
32-
</a>
33-
<p class="font-p text-sm mb-6">Wir empfehlen die Installation von <a class="text-link" href="https://www.fuse-t.org/" target="_blank" rel="noopener">FUSE-T</a>.</p>
34-
<a itemprop="downloadUrl" href="/de/downloads/mac/thanks/" rel="nofollow" class="btn btn-primary w-full mb-4 md:w-56" role="button" data-umami-event="downloads-mac">
35-
<span class="fa-solid fa-download" aria-hidden="true"></span> Download <span class="text-xs">(Intel)</span>
36-
</a>
37-
<p class="font-p text-sm">Wir empfehlen die Installation von <a class="text-link" href="https://osxfuse.github.io/" target="_blank" rel="noopener">macFUSE</a>.</p>
30+
31+
<!-- Apple Silicon: Primary when detected or unknown -->
32+
<template x-if="macArch === 'apple-silicon' || macArch === 'unknown'">
33+
<div>
34+
<a itemprop="downloadUrl" href="/de/downloads/mac-arm64/thanks/" rel="nofollow" class="btn btn-primary w-full mb-4 md:w-56" role="button" data-umami-event="downloads-mac-arm64">
35+
<span class="fa-solid fa-download" aria-hidden="true"></span> Download<span x-show="macArch === 'unknown'" class="text-xs"> (Apple Silicon)</span>
36+
</a>
37+
<p class="font-p text-sm mb-4">Wir empfehlen die Installation von <a class="text-link" href="https://www.fuse-t.org/" target="_blank" rel="noopener">FUSE-T</a>.</p>
38+
</div>
39+
</template>
40+
41+
<!-- Intel: Primary when detected or unknown -->
42+
<template x-if="macArch === 'intel' || macArch === 'unknown'">
43+
<div>
44+
<a itemprop="downloadUrl" href="/de/downloads/mac/thanks/" rel="nofollow" class="btn btn-primary w-full mb-4 md:w-56" role="button" data-umami-event="downloads-mac">
45+
<span class="fa-solid fa-download" aria-hidden="true"></span> Download<span x-show="macArch === 'unknown'" class="text-xs"> (Intel)</span>
46+
</a>
47+
<p class="font-p text-sm">Wir empfehlen die Installation von <a class="text-link" href="https://osxfuse.github.io/" target="_blank" rel="noopener">macFUSE</a>.</p>
48+
</div>
49+
</template>
50+
51+
<!-- Secondary download option (de-emphasized) -->
52+
<template x-if="macArch === 'apple-silicon'">
53+
<div class="mt-4 pt-4 border-t border-gray-200">
54+
<p class="font-p text-sm mb-2">Du suchst die Intel-Version?</p>
55+
<a href="/de/downloads/mac/thanks/" rel="nofollow" class="btn btn-outline-primary w-full md:w-56" role="button" data-umami-event="downloads-mac">
56+
<span class="fa-solid fa-download" aria-hidden="true"></span> Download
57+
</a>
58+
</div>
59+
</template>
60+
<template x-if="macArch === 'intel'">
61+
<div class="mt-4 pt-4 border-t border-gray-200">
62+
<p class="font-p text-sm mb-2">Du suchst die Apple Silicon-Version?</p>
63+
<a href="/de/downloads/mac-arm64/thanks/" rel="nofollow" class="btn btn-outline-primary w-full md:w-56" role="button" data-umami-event="downloads-mac-arm64">
64+
<span class="fa-solid fa-download" aria-hidden="true"></span> Download
65+
</a>
66+
</div>
67+
</template>
3868
</div>
3969
</div>
4070
</div>

content/downloads/mac.en.html

Lines changed: 39 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -25,16 +25,46 @@ <h2 class="font-h2 mb-6">Cryptomator for macOS</h2>
2525
<div class="px-4 py-2 border-b border-primary">
2626
<h3 class="font-h3 text-lg">DMG Image</h3>
2727
</div>
28-
<div class="p-4">
28+
<div class="p-4" x-data="{ macArch: 'unknown' }" x-init="macArch = detectMacArchitecture()">
2929
<p class="font-p text-sm mb-4">Minimum: {{< siteparam releases.dmg.requiredOS >}}</p>
30-
<a itemprop="downloadUrl" href="/downloads/mac-arm64/thanks/" rel="nofollow" class="btn btn-primary w-full mb-4 md:w-56" role="button" data-umami-event="downloads-mac-arm64">
31-
<span class="fa-solid fa-download" aria-hidden="true"></span> Download <span class="text-xs">(Apple Silicon)</span>
32-
</a>
33-
<p class="font-p text-sm mb-6">We recommend installing <a class="text-link" href="https://www.fuse-t.org/" target="_blank" rel="noopener">FUSE-T</a>.</p>
34-
<a itemprop="downloadUrl" href="/downloads/mac/thanks/" rel="nofollow" class="btn btn-primary w-full mb-4 md:w-56" role="button" data-umami-event="downloads-mac">
35-
<span class="fa-solid fa-download" aria-hidden="true"></span> Download <span class="text-xs">(Intel)</span>
36-
</a>
37-
<p class="font-p text-sm">We recommend installing <a class="text-link" href="https://osxfuse.github.io/" target="_blank" rel="noopener">macFUSE</a>.</p>
30+
31+
<!-- Apple Silicon: Primary when detected or unknown -->
32+
<template x-if="macArch === 'apple-silicon' || macArch === 'unknown'">
33+
<div>
34+
<a itemprop="downloadUrl" href="/downloads/mac-arm64/thanks/" rel="nofollow" class="btn btn-primary w-full mb-4 md:w-56" role="button" data-umami-event="downloads-mac-arm64">
35+
<span class="fa-solid fa-download" aria-hidden="true"></span> Download<span x-show="macArch === 'unknown'" class="text-xs"> (Apple Silicon)</span>
36+
</a>
37+
<p class="font-p text-sm mb-4">We recommend installing <a class="text-link" href="https://www.fuse-t.org/" target="_blank" rel="noopener">FUSE-T</a>.</p>
38+
</div>
39+
</template>
40+
41+
<!-- Intel: Primary when detected or unknown -->
42+
<template x-if="macArch === 'intel' || macArch === 'unknown'">
43+
<div>
44+
<a itemprop="downloadUrl" href="/downloads/mac/thanks/" rel="nofollow" class="btn btn-primary w-full mb-4 md:w-56" role="button" data-umami-event="downloads-mac">
45+
<span class="fa-solid fa-download" aria-hidden="true"></span> Download<span x-show="macArch === 'unknown'" class="text-xs"> (Intel)</span>
46+
</a>
47+
<p class="font-p text-sm">We recommend installing <a class="text-link" href="https://osxfuse.github.io/" target="_blank" rel="noopener">macFUSE</a>.</p>
48+
</div>
49+
</template>
50+
51+
<!-- Secondary download option (de-emphasized) -->
52+
<template x-if="macArch === 'apple-silicon'">
53+
<div class="mt-4 pt-4 border-t border-gray-200">
54+
<p class="font-p text-sm mb-2">Looking for the Intel version?</p>
55+
<a href="/downloads/mac/thanks/" rel="nofollow" class="btn btn-outline-primary w-full md:w-56" role="button" data-umami-event="downloads-mac">
56+
<span class="fa-solid fa-download" aria-hidden="true"></span> Download
57+
</a>
58+
</div>
59+
</template>
60+
<template x-if="macArch === 'intel'">
61+
<div class="mt-4 pt-4 border-t border-gray-200">
62+
<p class="font-p text-sm mb-2">Looking for the Apple Silicon version?</p>
63+
<a href="/downloads/mac-arm64/thanks/" rel="nofollow" class="btn btn-outline-primary w-full md:w-56" role="button" data-umami-event="downloads-mac-arm64">
64+
<span class="fa-solid fa-download" aria-hidden="true"></span> Download
65+
</a>
66+
</div>
67+
</template>
3868
</div>
3969
</div>
4070
</div>

0 commit comments

Comments
 (0)