Erinn / Dan Comments

This commit is contained in:
Sarah Jamie Lewis 2023-01-25 11:33:49 -08:00
parent 1cad1df84f
commit 3348af817a
10 changed files with 260 additions and 27 deletions

View File

@ -1,6 +1,6 @@
---
title: Cwtch UI Platform Support
description: ""
description: "This development log captures the current state of Cwtch platform support, and how we plan to make platform support decisions going forward are we move towards Cwtch Stable."
slug: cwtch-platform-support
tags: [cwtch, cwtch-stable,support]
image: /img/devlog4_small.png
@ -71,12 +71,11 @@ We currently build the Cwtch UI and Cwtch Bindings for a wide variety of platfor
It is worth noting that there is an explicit dependency between the Bindings and the UI. If we cannot build Cwtch Bindings for a given architecture (i.e. if the Go Compiler does not support a given architectures), then we also cannot offer the Cwtch UI for that architecture.
| Architecture / Platform| Windows | Linux | macOS | Android |
| -------------|---------|-----|-------| -------------|
| arm| ❌ | ❌ | ❌ | ✅️|
| arm64 | ❌ | 🟡 | ✅ | ✅️ |
| amd64 | ✅ | ✅ | ❌ | ✅️ |
| x64 | ❌ | ❌ |✅️ | ❌ |
| Architecture / Platform | Windows | Linux | macOS | Android |
|--------------------------|---------|-----|-------| -------------|
| arm | ❌ | ❌ | ❌ | ✅️|
| arm64 | ❌ | 🟡 | ✅ | ✅️ |
| x86-64 / amd64 | ✅ | ✅ | ✅️ | ✅️ |
"🟡" - indicates that support is possible, but not yet official e.g. arm64 linux (Raspberry Pi).
@ -84,7 +83,7 @@ It is worth noting that there is an explicit dependency between the Bindings and
As a non-profit, and an open source software project, we are limited in the resources we have to invest. We rely on the [Cwtch Release Candidate Testers](https://docs.cwtch.im/docs/contribute/testing#join-the-cwtch-release-candidate-testers-group) to do much of the heavy lifting when it comes to Cwtch support on various platforms. This is especially true when it comes to Android variants where, even after testing across the spread of devices available to the Cwtch team, testers still encounter major issues.
We officially only perform full scale automated tests on Linux. With minimal platform regression tests on Windows, Android and OSX. Prior to Cwtch Stable we plan to have support for running automated tests one instance of Linux, Windows and Android.
We officially only perform full scale automated tests on Linux. With minimal platform regression tests on Windows, Android and OSX. Prior to Cwtch Stable we plan to have support for running automated regression tests across Linux, Windows and Android instances.
### End-of-life platforms
@ -92,7 +91,7 @@ Operating Systems are never supported indefinitely. The Flutter SDK may allow su
Likewise, while the Flutter SDK official supports OSX versions back to El Capitan (version 10.11), the oldest OSX version currently supported by Apple is Big Sur (version 11). While it may be possible for us to build different versions of Cwtch targeting different OSX versions, we would be doing so against unsupported SDK versions - incurring not only a support cost, but a possible security one also.
The same fundamental restrictions also impact Linux based distributions. While Flutter supports Ubuntu 18.04, and the platform still receiving updates until April 2023, the Cwtch team does not, because of the outdated version of libc installed on the platform would require a distinct build process.
The same fundamental restrictions also impact Linux based distributions. While Flutter supports Ubuntu 18.04, and the platform still receiving updates until April 2023, the Cwtch team does not, because of the outdated version of libc installed on the platform would require a distinct build process. [Cwtch currently requires libc 2.31+](https://docs.cwtch.im/blog/cwtch-bindings-reproducible#linux-specific-considerations).
Android versions prior to Android 10 are no longer officially support, and the requirement to target the most recent versions of Android for inclusion on the Google Playstore mean that long term support for Android versions is driven almost entirely by Google. While Flutter technically has support for Android 16 and above (and we target that as a minimum SDK version), because we have to target the most recent SDK for inclusion on Google Playstore, we cannot make guarantees that these SDKs are fully backwards compatible. We encourage volunteers interested in Cwtch Android to join our [Cwtch Release Candidate Testers groups](https://docs.cwtch.im/docs/contribute/testing#join-the-cwtch-release-candidate-testers-group) to help us understand the limitations of Android support across different API versions.
@ -111,24 +110,32 @@ The table below represents our current understanding of Cwtch support across var
In many cases we are looking for testers to confirm that various functionality works. A version of this table will be [maintained as part of the Cwtch Handbook](/docs/getting-started/supported_platforms).
**Legend:**
- ✅: **Officially Supported**. Cwtch should work on these platforms without issue. Regressions are treated as high priority.
- 🟡: **Best Effort Support**. Cwtch should work on these platforms but there may be documented or unknown issues. Testing may be needed. Some features may require additional work. Volunteer effort is appreciated.
- ❌: **Not Supported**. Cwtch is unlikely to work on these systems. We will probably not accept bug reports for these systems.
| Platform | Official Cwtch Builds | Source Support | Notes |
|-----------------------------|-----------------------|--------------------|-----------------------------------------------------------------------------------------------------------------------------------|
| Windows 11 | ✅ | ✅ | 64-bit amd64 only. |
| Windows 10 | 🟡 | ✅ | 64-bit amd64 only. Not officially supported, but official builds may work. |
| Windows 10 | | ✅ | 64-bit amd64 only. Not officially supported, but official builds may work. |
| Windows 8 and below | ❌ | 🟡 | Not supported. Dedicated builds from source may work. Testing Needed. |
| OSX 10 and below | 🟡 | 🟡 | 64-bit Only. Official builds have been reported to work on Catalina but not High Sierra |
| OSX 11 | ✅ | ✅ | 64-bit Only. Official builds supports both amd64 and x86 architectures. |
| OSX 12 | ✅ | ✅ | 64-bit Only. Official builds supports both amd64 and x86 architectures. |
| OSX 13 | ✅ | ✅ | 64-bit Only. Official builds supports both amd64 and x86 architectures. |
| OSX 10 and below | | 🟡 | 64-bit Only. Official builds have been reported to work on Catalina but not High Sierra |
| OSX 11 | ✅ | ✅ | 64-bit Only. Official builds supports both arm64 and x86 architectures. |
| OSX 12 | ✅ | ✅ | 64-bit Only. Official builds supports both arm64 and x86 architectures. |
| OSX 13 | ✅ | ✅ | 64-bit Only. Official builds supports both arm64 and x86 architectures. |
| Debian 11 | ✅ | ✅ | 64-bit amd64 Only. |
| Debian 10 | | ✅ | 64-bit amd64 Only. |
| Debian 10 | 🟡 | ✅ | 64-bit amd64 Only. |
| Debian 9 and below | 🟡 | ✅ | 64-bit amd64 Only. Builds from source should work, but official builds may be incompatible with installed dependencies. |
| Ubuntu 22.04 | ✅ | ✅ | 64-bit amd64 Only. |
| Other Ubuntu | 🟡 | ✅ | 64-bit Only. Testing needed. Builds from source should work, but official builds may be incompatible with installed dependencies. |
| CentOS | 🟡 | 🟡 | Testing Needed. |
| Gentoo | 🟡 | 🟡 | Testing Needed. |
| Arch | 🟡 | 🟡 | Testing Needed. |
| Whonix | ❌ | 🟡 | Known Issues. Specific changes to cwtch are required for support. |
| Whonix | 🟡 | 🟡 | [Known Issues. Specific changes to cwtch are required for support. ](https://git.openprivacy.ca/cwtch.im/cwtch-ui/issues/550) |
| Raspian (arm64) | 🟡 | ✅ | Builds from source work. |
| Other Linux Distributions | 🟡 | 🟡 | Testing Needed. |
| Android 9 and below | 🟡 | 🟡 | Official builds may work. |
@ -136,7 +143,7 @@ In many cases we are looking for testers to confirm that various functionality w
| Android 11 | ✅ | ✅ | Official SDK supprts arm, arm64, and amd64 architectures. |
| Android 12 | ✅ | ✅ | Official SDK supprts arm, arm64, and amd64 architectures. |
| Android 13 | ✅ | ✅ | Official SDK supprts arm, arm64, and amd64 architectures. |
| LineageOS | 🟡 | 🟡 | Partial Support. Known Issues. Specific changes to cwtch are required for support. |
| LineageOS | 🟡 | 🟡 | [Known Issues. Specific changes to cwtch are required for support.](https://git.openprivacy.ca/cwtch.im/cwtch-ui/issues/607) |
| Other Android Distributions | 🟡 | 🟡 | Testing Needed. |
## Help us go further!

View File

@ -5,24 +5,30 @@ The table below represents our current understanding of Cwtch support across var
In many cases we are looking for testers to confirm that various functionality works. If you are interested in testing Cwtch on a specific platform, or want to volunteer to help us official support a platform
not listed here, then check out [Contibuting to Cwtch](/docs/category/contribute).
**Legend:**
- ✅: **Officially Supported**. Cwtch should work on these platforms without issue. Regressions are treated as high priority.
- 🟡: **Best Effort Support**. Cwtch should work on these platforms but there may be documented or unknown issues. Testing may be needed. Some features may require additional work. Volunteer effort is appreciated.
- ❌: **Not Supported**. Cwtch is unlikely to work on these systems. We will probably not accept bug reports for these systems.
| Platform | Official Cwtch Builds | Source Support | Notes |
|-----------------------------|-----------------------|--------------------|-----------------------------------------------------------------------------------------------------------------------------------|
| Windows 11 | ✅ | ✅ | 64-bit amd64 only. |
| Windows 10 | 🟡 | ✅ | 64-bit amd64 only. Not officially supported, but official builds may work. |
| Windows 10 | | ✅ | 64-bit amd64 only. Not officially supported, but official builds may work. |
| Windows 8 and below | ❌ | 🟡 | Not supported. Dedicated builds from source may work. Testing Needed. |
| OSX 10 and below | 🟡 | 🟡 | 64-bit Only. Official builds have been reported to work on Catalina but not High Sierra |
| OSX 11 | ✅ | ✅ | 64-bit Only. Official builds supports both amd64 and x86 architectures. |
| OSX 12 | ✅ | ✅ | 64-bit Only. Official builds supports both amd64 and x86 architectures. |
| OSX 13 | ✅ | ✅ | 64-bit Only. Official builds supports both amd64 and x86 architectures. |
| OSX 10 and below | | 🟡 | 64-bit Only. Official builds have been reported to work on Catalina but not High Sierra |
| OSX 11 | ✅ | ✅ | 64-bit Only. Official builds supports both arm64 and x86 architectures. |
| OSX 12 | ✅ | ✅ | 64-bit Only. Official builds supports both arm64 and x86 architectures. |
| OSX 13 | ✅ | ✅ | 64-bit Only. Official builds supports both arm64 and x86 architectures. |
| Debian 11 | ✅ | ✅ | 64-bit amd64 Only. |
| Debian 10 | | ✅ | 64-bit amd64 Only. |
| Debian 10 | 🟡 | ✅ | 64-bit amd64 Only. |
| Debian 9 and below | 🟡 | ✅ | 64-bit amd64 Only. Builds from source should work, but official builds may be incompatible with installed dependencies. |
| Ubuntu 22.04 | ✅ | ✅ | 64-bit amd64 Only. |
| Other Ubuntu | 🟡 | ✅ | 64-bit Only. Testing needed. Builds from source should work, but official builds may be incompatible with installed dependencies. |
| CentOS | 🟡 | 🟡 | Testing Needed. |
| Gentoo | 🟡 | 🟡 | Testing Needed. |
| Arch | 🟡 | 🟡 | Testing Needed. |
| Whonix | ❌ | 🟡 | Known Issues. Specific changes to cwtch are required for support. |
| Whonix | 🟡 | 🟡 | [Known Issues. Specific changes to cwtch are required for support. ](https://git.openprivacy.ca/cwtch.im/cwtch-ui/issues/550) |
| Raspian (arm64) | 🟡 | ✅ | Builds from source work. |
| Other Linux Distributions | 🟡 | 🟡 | Testing Needed. |
| Android 9 and below | 🟡 | 🟡 | Official builds may work. |
@ -30,5 +36,5 @@ not listed here, then check out [Contibuting to Cwtch](/docs/category/contribute
| Android 11 | ✅ | ✅ | Official SDK supprts arm, arm64, and amd64 architectures. |
| Android 12 | ✅ | ✅ | Official SDK supprts arm, arm64, and amd64 architectures. |
| Android 13 | ✅ | ✅ | Official SDK supprts arm, arm64, and amd64 architectures. |
| LineageOS | 🟡 | 🟡 | Partial Support. Known Issues. Specific changes to cwtch are required for support. |
| Other Android Distributions | 🟡 | 🟡 | Testing Needed. |
| LineageOS | 🟡 | 🟡 | [Known Issues. Specific changes to cwtch are required for support.](https://git.openprivacy.ca/cwtch.im/cwtch-ui/issues/607) |
| Other Android Distributions | 🟡 | 🟡 | Testing Needed. |

View File

@ -55,4 +55,8 @@
background-color: #FDF3FC;
width: 24px;
height: 24px;
}
}
td > img {
vertical-align: sub;
}

1
static/img/OP_eye.svg Normal file

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 6.4 KiB

BIN
static/img/android.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 703 B

51
static/img/android.svg Normal file
View File

@ -0,0 +1,51 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="483"
height="483"
viewBox="0 0 483 483"
version="1.1"
id="svg11"
sodipodi:docname="android.svg"
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<sodipodi:namedview
id="namedview13"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
showgrid="false"
inkscape:zoom="1.5258799"
inkscape:cx="241.17232"
inkscape:cy="241.5"
inkscape:window-width="1920"
inkscape:window-height="1020"
inkscape:window-x="0"
inkscape:window-y="31"
inkscape:window-maximized="1"
inkscape:current-layer="android" />
<defs
id="defs5">
<clipPath
id="clip-android">
<rect
width="483"
height="483"
id="rect2" />
</clipPath>
</defs>
<g
id="android"
clip-path="url(#clip-android)">
<path
id="android-2"
data-name="android"
d="M291.314,172.07a16.625,16.625,0,1,1,16.625-16.625,16.625,16.625,0,0,1-16.625,16.625m-183.64,0A16.625,16.625,0,1,1,124.3,155.445a16.625,16.625,0,0,1-16.625,16.625M297.266,71.988l33.206-57.5A6.927,6.927,0,1,0,318.513,7.56L284.886,65.792a208.677,208.677,0,0,0-170.794,0L80.465,7.56a6.927,6.927,0,1,0-11.959,6.927l33.206,57.5C44.7,103,5.708,160.721,0,228.917H399C393.292,160.721,354.29,103,297.277,71.988"
transform="translate(47 133.322)" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

50
static/img/apple.svg Normal file
View File

@ -0,0 +1,50 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="483"
height="483"
viewBox="0 0 483 483"
version="1.1"
id="svg11"
sodipodi:docname="apple.svg"
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<sodipodi:namedview
id="namedview13"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
showgrid="false"
inkscape:zoom="1.5258799"
inkscape:cx="241.17232"
inkscape:cy="241.5"
inkscape:window-width="1920"
inkscape:window-height="1020"
inkscape:window-x="0"
inkscape:window-y="31"
inkscape:window-maximized="1"
inkscape:current-layer="apple" />
<defs
id="defs5">
<clipPath
id="clip-apple">
<rect
width="483"
height="483"
id="rect2" />
</clipPath>
</defs>
<g
id="apple"
clip-path="url(#clip-apple)">
<path
id="apple-2"
data-name="apple"
d="m 407.09232,296.68782 q -9.35,29.954 -29.478,59.92 -30.918,46.97 -61.592,46.97 -11.742,0 -33.555,-7.666 -20.616,-7.666 -36.191,-7.666 -14.623,0 -34.031,7.91 -19.408,8.153 -31.638,8.153 -36.424,0 -72.138,-62.069 -35.227999,-62.567 -35.227999,-120.57 0,-54.647 27.084999,-89.63 27.085,-34.507995 68.062,-34.507995 17.259,0 42.417,7.188995 24.925,7.189 33.078,7.189 10.79,0 34.275,-8.153 24.449,-8.152995 41.464,-8.152995 28.525,0 51.046,15.574995 12.463,8.63 24.925,23.961 -18.932,16.063 -27.318,28.282 a 85.358,85.358 0 0 0 -15.575,49.606 91.27,91.27 0 0 0 16.541,53.451 q 16.539,23.729 37.864,30.2 z m -90.118,-281.119996 q 0,14.623 -6.946,32.591 a 98.338,98.338 0 0 1 -22.287,33.078 q -12.94,12.939001 -25.89,17.261001 -8.862,2.636995 -24.925,4.076995 0.72,-35.714996 18.7,-61.591996 17.735,-25.659 59.915,-35.4850001 a 22.215,22.215 0 0 1 0.6,2.637 22.211,22.211 0 0 0 0.6,2.6370001 q 0,0.964 0.122,2.393 0.122,1.429 0.122,2.393 z" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.2 KiB

58
static/img/linux.svg Normal file

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 7.9 KiB

BIN
static/img/windows.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 715 B

56
static/img/windows.svg Normal file
View File

@ -0,0 +1,56 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="483"
height="483"
viewBox="0 0 483 483"
version="1.1"
id="svg12"
sodipodi:docname="windows.svg"
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<sodipodi:namedview
id="namedview14"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
showgrid="false"
inkscape:zoom="1.5258799"
inkscape:cx="241.17232"
inkscape:cy="241.5"
inkscape:window-width="1920"
inkscape:window-height="1020"
inkscape:window-x="0"
inkscape:window-y="31"
inkscape:window-maximized="1"
inkscape:current-layer="windows" />
<defs
id="defs5">
<clipPath
id="clip-windows">
<rect
width="483"
height="483"
id="rect2" />
</clipPath>
</defs>
<g
id="windows"
clip-path="url(#clip-windows)">
<g
id="windows-2"
data-name="windows"
transform="translate(111 117)">
<path
id="Path_90"
data-name="Path 90"
d="M4.5,61.869l162-21.75V198.37L4.665,199.586,4.5,61.914Zm162,154.064V375.91L4.62,353.725V215.932Zm20.669-178.65L409.728,4.5V196.614l-222.57,1.756V37.282Zm222.6,181.232-.045,191.259L187.158,379.3V218.5H409.773Z"
transform="translate(-74.773 -77.5)" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.6 KiB