Platform Support
mstrap aims to support a variety of developer workstation platforms. As there are many possible platforms that could be supported, support is defined based on a set of tiers that indicate the level of support for that platform.
Note: This approach is based on the Crystal platform support matrix.
In general, the two most recent versions of a supported platform are aimed to be supported.
Tier 1
Tier 1 platforms are fully supported, tested platforms. Specifically they will each satisfy the following requirements:
- Official binary releases are provided for the platform.
- Automated testing is set up to run tests for the platform.
- Documentation for how to use and how to build the platform is available.
| Platform | Description | Notes |
|---|---|---|
| Arch Linux x86_64 | amd64 Arch Linux | |
| Fedora 38+ x86_64 | amd64 Fedora 38+ | |
| macOS 12+ Intel | amd64 macOS Monterey and newer | Signed and notorized |
| macOS 12+ Apple Silicon | arm64 macOS Monterey and newer | Signed and notorized |
| Ubuntu 22.04 LTS x86_64 | amd64 Ubuntu Jammy | |
| Ubuntu 22.04 LTS arm64 | aarch64 Ubuntu Jammy |
Tier 2
Tier 2 platforms can be thought of as “expected to work”. Automated tests are not run so it’s not guaranteed to produce a working build, but platforms often work to quite a good degree and patches are always welcome! These platforms may be tested manually from time-to-time.
Official binary releases are intended to be usable with these platforms as well.
| Platform | Description | Notes |
|---|---|---|
| Manjaro Linux x86_64 | amd64 Manjaro Linux | |
| Ubuntu 18.04 LTS x86_64 | amd64 Ubuntu Bionic | |
| Ubuntu 20.04 LTS x86_64 | amd64 Ubuntu Focal | |
| Ubuntu 20.04 LTS arm64 | aarch64 Ubuntu Focal | Requires compiling your own Ruby 2.6.10 in PATH |
Tier 3
Tier 3 platforms are those which mstrap has some sort of support for, but which are not built or tested automatically.
Official releases are not guaranteed to work.
| Platform | Description | Notes |
|---|---|---|
| Arch Linux ARM arm64 | aarch64 Arch Linux ARM | Requires compiling your own Ruby 2.6.10 in PATH |
| Debian Stable x86_64 | amd64 Debian “buster” | |
| Debian Unstable x86_64 | amd64 Debian “sid” | |
| CentOS 7.7 x86_64 | amd64 CentOS 7 Release 7 | |
| CentOS 8 x86_64 | amd64 CentOS 8 | |
| macOS 10.14-11.x | amd64 macOS Mojave | |
| Manjaro Linux ARM | aarch64 Manjaro Linux ARM | Requires compiling your own Ruby 2.6.10 in PATH |
| RHEL 7 x86_64 | amd64 RedHat Enterprise 7 | Licensing restrictions prevent automatic Docker install |
| RHEL 8 x86_64 | amd64 RedHat Enterprise 8 | Licensing restrictions prevent automatic Docker install |
| Ubuntu 18.04 LTS arm64 | aarch64 Ubuntu Bionic | Requires compiling your own Ruby 2.6.10 in PATH |
| Other Linux x86_64 | amd64 Other Linux | |
| Other Linux arm64 | aarch64 Other Linux | Requires compiling your own Ruby 2.6.10 in PATH |