Skip to content

Commit b904142

Browse files
committed
Document the supported platforms
Signed-off-by: Jakob Probst <git@jakobprobst.de>
1 parent 26647a4 commit b904142

1 file changed

Lines changed: 23 additions & 13 deletions

File tree

image-index.md

Lines changed: 23 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -57,12 +57,12 @@ For the media type(s) that this document is compatible with, see the [matrix][ma
5757
- **`architecture`** *string*
5858

5959
This REQUIRED property specifies the CPU architecture.
60-
Image indexes SHOULD use, and implementations SHOULD understand, values listed in the Go Language document for [`GOARCH`][go-environment2].
60+
Image indexes SHOULD use, and implementations SHOULD understand, `architecture` values listed in the [Supported Platforms](#supported-platforms) table.
6161

6262
- **`os`** *string*
6363

6464
This REQUIRED property specifies the operating system.
65-
Image indexes SHOULD use, and implementations SHOULD understand, values listed in the Go Language document for [`GOOS`][go-environment2].
65+
Image indexes SHOULD use, and implementations SHOULD understand, `os` values listed in the [Supported Platforms](#supported-platforms) table.
6666

6767
- **`os.version`** *string*
6868

@@ -82,7 +82,7 @@ For the media type(s) that this document is compatible with, see the [matrix][ma
8282
- **`variant`** *string*
8383

8484
This OPTIONAL property specifies the variant of the CPU.
85-
Image indexes SHOULD use, and implementations SHOULD understand, `variant` values listed in the [Platform Variants](#platform-variants) table.
85+
Image indexes SHOULD use, and implementations SHOULD understand, `variant` values listed in the [Supported Platforms](#supported-platforms) table.
8686

8787
- **`features`** *array of strings*
8888

@@ -102,18 +102,28 @@ For the media type(s) that this document is compatible with, see the [matrix][ma
102102

103103
See [Pre-Defined Annotation Keys](annotations.md#pre-defined-annotation-keys).
104104

105-
## Platform Variants
105+
## Supported Platforms
106106

107-
When the variant of the CPU is not listed in the table, values are implementation-defined and SHOULD be submitted to this specification for standardization.
107+
When the combination of architecture, variant, and os is not listed in the table, values are implementation-defined and SHOULD be submitted to this specification for standardization.
108108
These values SHOULD match (or be similar to) their analog listed in [the Go Language document][go-environment2].
109-
110-
| ISA/ABI | `architecture` | `variant` | Go analog |
111-
|------------|----------------|-----------------------|-------------|
112-
| ARM 32-bit | `arm` | `v6`, `v7`, `v8` | `GOARM` |
113-
| ARM 64-bit | `arm64` | `v8`, `v8.1`, … | `GOARM64` |
114-
| POWER8+ | `ppc64le` | `power8`, `power9`, … | `GOPPC64` |
115-
| RISC-V | `riscv64` | `rva20u64`, … | `GORISCV64` |
116-
| x86-64 | `amd64` | `v1`, `v2`, `v3`, … | `GOAMD64` |
109+
Defaults are subject to change at any time.
110+
111+
| Description | `architecture` | `variant` | `os` |
112+
|---------------------------|----------------|---------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------|
113+
| x86 | `386` | `softfloat`, `sse2` (default) | `android`, `freebsd`, `linux`, `netbsd`, `openbsd`, `plan9`, `windows` |
114+
| x86-64 | `amd64` | `v1` (default), `v2`, `v3`, `v4` | `android`, `darwin`, `dragonfly`, `freebsd`, `illumos`, `linux`, `netbsd`, `openbsd`, `plan9`, `solaris`, `windows` |
115+
| ARM 32-bit | `arm` | `v6`, `v7` (default), `v8` | `android`, `freebsd`, `linux`, `netbsd`, `openbsd`, `plan9`, `windows` |
116+
| ARM 64-bit | `arm64` | `v8` (default), `v8.1` | `android`, `darwin`, `ios`, `linux`, `openbsd`, `windows` |
117+
| LoongArch 64-bit | `loong64` | | `linux` |
118+
| MIPS 32-bit big endian | `mips` | `hardfloat` (default), `softfloat` | `linux` |
119+
| MIPS 64-bit big endian | `mips64` | `hardfloat` (default), `softfloat` | `linux` |
120+
| MIPS 64-bit little endian | `mips64le` | `hardfloat` (default), `softfloat` | `linux` |
121+
| MIPS 32-bit little endian | `mipsle` | `hardfloat` (default), `softfloat` | `linux` |
122+
| POWER8+ big endian | `ppc64` | `power8` (default), `power9` | `aix`, `linux` |
123+
| POWER8+ little endian | `ppc64le` | `power8` (default), `power9` | `linux` |
124+
| RISC-V | `riscv64` | `rva20u64` (default), `rva22u64`, `rva23u64` | `linux` |
125+
| IBM z/Architecture | `s390x` | | `linux` |
126+
| WebAssembly | `wasm` | comma separated list (defaults to empty list) composed of: `satconv`, `signext` | `js`, `wasip1` |
117127

118128
## Example Image Index
119129

0 commit comments

Comments
 (0)