From 05a765211184fd4e94b51c2f225bab2174085e02 Mon Sep 17 00:00:00 2001 From: Owen Zimmerman Date: Tue, 16 Apr 2024 19:40:33 -0500 Subject: [PATCH 1/3] New UM Anywhere pages, updated info, and fixed ARM Chromebook Beta page --- src/content/docs/en/anywhere/32bit.mdx | 13 +++++++ src/content/docs/en/anywhere/android.mdx | 2 +- src/content/docs/en/anywhere/applesilicon.mdx | 6 +++- src/content/docs/en/anywhere/chromebook.mdx | 35 +++++++++---------- src/content/docs/en/anywhere/enterprise.mdx | 16 +++++++-- src/content/docs/en/anywhere/ott.mdx | 2 +- src/content/docs/en/anywhere/riscv.mdx | 4 +-- src/content/docs/en/anywhere/steamdeck.mdx | 4 +-- src/content/docs/en/anywhere/thin.mdx | 21 +++++++++++ src/content/docs/en/chromebook/armbeta.mdx | 30 ++++++---------- src/content/docs/en/hardware/anywhere.mdx | 10 ++++-- 11 files changed, 94 insertions(+), 49 deletions(-) create mode 100644 src/content/docs/en/anywhere/32bit.mdx create mode 100644 src/content/docs/en/anywhere/thin.mdx diff --git a/src/content/docs/en/anywhere/32bit.mdx b/src/content/docs/en/anywhere/32bit.mdx new file mode 100644 index 00000000..9c219475 --- /dev/null +++ b/src/content/docs/en/anywhere/32bit.mdx @@ -0,0 +1,13 @@ +--- +title: "32Bit (Anywhere)" +description: "32bit Devices in the Ultramarine Anywhere Initiative" +--- + + + This device type is still in the **Planning Phase**. All information on this + page is subject to change + + +While there isn't a huge market, 32Bit support would be a very fun venture, and unlock some device categories we currently can not support due to being 64Bit only. We do not plan on supporting 32Bit devices in the near future, unless we have a need to. + +import Alert from "../../../../components/Docs/Alert.astro"; diff --git a/src/content/docs/en/anywhere/android.mdx b/src/content/docs/en/anywhere/android.mdx index 914ae5fd..a23190a6 100644 --- a/src/content/docs/en/anywhere/android.mdx +++ b/src/content/docs/en/anywhere/android.mdx @@ -10,7 +10,7 @@ import Alert from "../../../../components/Docs/Alert.astro"; page is subject to change -Android Devices are very common, and (most of the time) extremely customiseable. We do not have a target release or full plan at this time. +Android Devices are very common, and (most of the time) extremely customiseable. We do not have a target release or full plan at this time, but we will support in the (hopefully) near future. ## Implementation diff --git a/src/content/docs/en/anywhere/applesilicon.mdx b/src/content/docs/en/anywhere/applesilicon.mdx index 82d87705..4c3c2a8e 100644 --- a/src/content/docs/en/anywhere/applesilicon.mdx +++ b/src/content/docs/en/anywhere/applesilicon.mdx @@ -10,4 +10,8 @@ import Alert from "../../../../components/Docs/Alert.astro"; page is subject to change -We plan to use the Asahi patches from upstream. This will happen sometime in the near future. +We plan to use the Asahi script/patches from upstream. This will happen sometime in the near future. + +## Implementation + +- Potential GUI installer (Readymade while in macOS) diff --git a/src/content/docs/en/anywhere/chromebook.mdx b/src/content/docs/en/anywhere/chromebook.mdx index 736765c9..28ed1a96 100644 --- a/src/content/docs/en/anywhere/chromebook.mdx +++ b/src/content/docs/en/anywhere/chromebook.mdx @@ -12,8 +12,7 @@ import Alert from "../../../../components/Docs/Alert.astro"; Chromebooks were an obvious target for Ultramarine Anywhere, despite being mostly -standard hardware, they have custom EC and strange firmware. We began development -in Ultramarine 39, and are preparing to launch midcycle. +standard hardware, they have custom EC and strange firmware. Chromebook support in Ultramarine Linux is provided in partnership with the [Chrultrabook Project](https://chrultrabook.com). @@ -27,9 +26,9 @@ Ultramarine Chromebook Edition uses a special bootloader called [Submarine](http Under the hood, Submarine is an incredibly minimal Linux OS based on [u-root](https://github.com/u-root/u-root), it's only really usable for debug and booting a full distribution. Once Submarine is loaded, we use [LinuxBoot](https://www.linuxboot.org/) to boot a full copy of Ultramarine (and hopefully more distros in the future). -Now for the big question, how do we do this without modifying the firmware? We take advantage of the way Depthcharge (the ChromeOS firmware) works. We store Submarine in a 16MB partition on disk, this is normally used by ChromeOS to store a full ChromeOS Kernel and initramfs. Depthcharge doesn't actually check if the contents of the partition are a valid kernel, it just checks for a GPT Header and runs whatever code is found in the partition, in our case, Submarine. +Now for the big question, how do we do this without modifying the firmware? We take advantage of the way Depthcharge (the ChromeOS firmware) works. We store Submarine in a 16MiB partition on disk, this is normally used by ChromeOS to store a full ChromeOS Kernel and initramfs. Depthcharge doesn't actually check if the contents of the partition are a valid kernel, it just checks for a GPT Header and runs whatever code is found in the partition, in our case, Submarine. -By default, Depthcharge will only boot code with Google's signing keys, we get around this by enabling the built-in developer mode. +By default, Depthcharge will only boot code with Google's signing keys, we get around this by enabling the built-in ChromeOS developer mode. To summarise, we boot a tiny Linux distribution (Submarine) and use it to launch Ultramarine's vmlinuz and initramfs using kexec. @@ -43,7 +42,7 @@ We use WeirdTreeThing's [audio script](https://github.com/WeirdTreeThing/chromeb ### Default Partitions -On Chromebooks, we use f2fs (in lieu of Btrfs) and disable swap to extend the life of the EMMC found in many Chromebooks. We also create one 16MiB partition containing [Submarine](https://developer.fyralabs.com/submarine) at the start of the disk instead of `/boot/EFI`. +On Chromebooks, we use F2FS (in lieu of Btrfs) and disable swap to extend the life of the eMMC storage found in many Chromebooks. We also create one 16MiB partition containing [Submarine](https://developer.fyralabs.com/submarine) at the start of the disk instead of `/boot/EFI`. ### Keyboard Mapping @@ -75,19 +74,19 @@ We use [keyd](https://github.com/rvaiya/keyd) to map keys on Chromebooks. ## Unsupported Devices -| Device | Reason | -| --------- | -------------------- | -| Mario | Firmware Limitations | -| Alex | Firmware Limitations | -| ZGB | Firmware Limitations | -| Stumpy | Firmware Limitations | -| Lumpy | Firmware Limitations | -| Parrot | Firmware Limitations | -| Butterfly | Firmware Limitations | -| Link | Firmware Limitations | -| Stout | Firmware Limitations | - -These computers are from the first generation of Chromebooks, and use a different firmware than modern ones. +| Device | Reason | +| --------- | ----------------------------------------------------------------------------------------- | +| Mario | Firmware Limitations | +| Alex | Firmware Limitations | +| ZGB | Firmware Limitations | +| Stumpy | Boot Partition Size Limitation (This can be [Corebooted](https://docs.chrultrabook.com/)) | +| Lumpy | Boot Partition Size Limitation (This can be [Corebooted](https://docs.chrultrabook.com/)) | +| Parrot | Boot Partition Size Limitation (This can be [Corebooted](https://docs.chrultrabook.com/)) | +| Butterfly | Boot Partition Size Limitation (This can be [Corebooted](https://docs.chrultrabook.com/)) | +| Link | Boot Partition Size Limitation (This can be [Corebooted](https://docs.chrultrabook.com/)) | +| Stout | Boot Partition Size Limitation (This can be [Corebooted](https://docs.chrultrabook.com/)) | + +These are among the first few generations of Chromebooks, and either use an unsupported proprietary firmware, or have firmware limitations which prevents booting a partition large enough to fit submarine (newer Chromebooks have larger size limitations). ## Installation diff --git a/src/content/docs/en/anywhere/enterprise.mdx b/src/content/docs/en/anywhere/enterprise.mdx index c3785ee1..b60369e4 100644 --- a/src/content/docs/en/anywhere/enterprise.mdx +++ b/src/content/docs/en/anywhere/enterprise.mdx @@ -6,8 +6,20 @@ description: "Data Centre, Enterprise, and HPC in the Ultramarine Anywhere Initi import Alert from "../../../../components/Docs/Alert.astro"; - This device type is still in the **Wishlist Phase**. All information on this + This device type is still in the **Planning Phase**. All information on this page is subject to change. -If you'd like to suggest a platform, drop us a line in [our chats](/en/community/community). +We plan on making server images, GUI and CLI. These images will be built for constant runtime, and include/exclude fitting packages for server usecases. If you'd like to suggest a platform, drop us a line in [our chats](/en/community/community). + +## Implementation + +- Refined OOTB cockpit excperience +- CLI only option +- Advanced installer features +- Advanced networking options +- Package suite more attuned to a server usecase +- Default filesystem changed to ZFS +- Potential improved RAID and non-RAID architecture implementation... +- Cluster support +- A whole lot more... diff --git a/src/content/docs/en/anywhere/ott.mdx b/src/content/docs/en/anywhere/ott.mdx index b244c3cf..45183276 100644 --- a/src/content/docs/en/anywhere/ott.mdx +++ b/src/content/docs/en/anywhere/ott.mdx @@ -12,4 +12,4 @@ import Alert from "../../../../components/Docs/Alert.astro"; Smart TV boxes often run Android, which means we can use Halium to port Ultramarine to the unlockable ones. -This may be limited to FireOS devices as many of them are vulnerable to [mtk-su](https://xdaforums.com/t/amazing-temp-root-for-mediatek-armv8-2020-08-24.3922213/) +This may be limited to FireOS devices as many of them are vulnerable to [mtk-su](https://xdaforums.com/t/amazing-temp-root-for-mediatek-armv8-2020-08-24.3922213/). If you are knowledgable about Smart TV modding/running alternative operating systems, please reach out. diff --git a/src/content/docs/en/anywhere/riscv.mdx b/src/content/docs/en/anywhere/riscv.mdx index 69c5e48b..4470cc11 100644 --- a/src/content/docs/en/anywhere/riscv.mdx +++ b/src/content/docs/en/anywhere/riscv.mdx @@ -6,8 +6,8 @@ description: "RISC-V Devices in the Ultramarine Anywhere Initiative" import Alert from "../../../../components/Docs/Alert.astro"; - This device type is still in the **Wishlist Phase**. All information on this + This device type is still in the **Planning Phase**. All information on this page is subject to change. -If you are a hardware vendor producing RISC-V devices or have a spare RISC-V device, please [reach out](mailto:contact@fyralabs.com) if you'd like Ultramarine Support. +We plan to port to RISC-V architecture as soon as we can get the hardware. If you are a hardware vendor producing RISC-V devices or have a spare RISC-V device, please [reach out](mailto:contact@fyralabs.com) if you'd like to support the Ultramarine RISC-V port. diff --git a/src/content/docs/en/anywhere/steamdeck.mdx b/src/content/docs/en/anywhere/steamdeck.mdx index f0fcbc9a..c8a7570c 100644 --- a/src/content/docs/en/anywhere/steamdeck.mdx +++ b/src/content/docs/en/anywhere/steamdeck.mdx @@ -6,8 +6,8 @@ description: "Steam Deck in the Ultramarine Anywhere Initiative" import Alert from "../../../../components/Docs/Alert.astro"; - This device type is still in the **Wishlist Phase**. All information on this + This device type is still in the **Planning Phase**. All information on this page is subject to change. -Would be fun to port UM to the Steam Deck, maybe a custom UI is in order... +We plan to make Steam Deck images, as well as other handhelds and HTPCs. Work will begin once we have the hardware needed. Maybe a custom UI is in order... diff --git a/src/content/docs/en/anywhere/thin.mdx b/src/content/docs/en/anywhere/thin.mdx new file mode 100644 index 00000000..fc29ef3a --- /dev/null +++ b/src/content/docs/en/anywhere/thin.mdx @@ -0,0 +1,21 @@ +--- +title: "Thin Clients (Anywhere)" +description: " Ultramarine Anywhere Initiative" +--- + +import Alert from "../../../../components/Docs/Alert.astro"; + + + This device type is still in the **Wishlist Phase**. All information on this + page is subject to change. + + +Thin client images would be fun, and frankly pretty easy. + +## Implementation + +Very minimal environment with only required packages. OOTB connection protocols (ICA, RDP/VNC, SNMP...) and easy to use installer with connection options built in. + +Minimal login screen with an option for branding, might include device managment software. + +Tools and encouragment for enthusiasts. diff --git a/src/content/docs/en/chromebook/armbeta.mdx b/src/content/docs/en/chromebook/armbeta.mdx index 8eb02a59..684d546a 100644 --- a/src/content/docs/en/chromebook/armbeta.mdx +++ b/src/content/docs/en/chromebook/armbeta.mdx @@ -9,11 +9,11 @@ NOTE - Not all ARM devices are currently supported. This is a Beta program, proc Welcome to the ARM Chromebook Beta Program! We are looking for technically-versed people to test our Ultramarine Chromebook beta images for ARM. -This is a closed program, please contact Owen Zimmerman at owen@fyralabs.com, or join and ping @Owen in the [discord](https://discord.com/invite/5fdPuxTg5Q) to apply. +This is a closed program, please contact [Owen Zimmerman](mailto:owen@fyralabs.com) at owen@fyralabs.com, or join and ping @Owen in the [discord](https://discord.com/invite/5fdPuxTg5Q) to apply. -Currently supported ARM Chromebook devices (if you have an unsupported device and are willing to use it for image testing, let us know!): +Currently supported ARM Chromebook beta devices (if you have an unsupported device and are willing to use it for image testing, let us know!): -All Kukui family Chromebooks: +##### All Kukui family Chromebooks: | Model name/number | Codename | | ------------------------------------------ | -------- | @@ -38,7 +38,7 @@ All Kukui family Chromebooks: Source: https://wiki.postmarketos.org/wiki/Google_Kukui_Chromebook_(google-kukui) -All Oak family Chromebooks: +##### All Oak family Chromebooks: | Model name/number | Codename | | -------------------------------------------- | -------- | @@ -57,24 +57,16 @@ All Oak family Chromebooks: Source: https://wiki.postmarketos.org/wiki/Google_Oak_Chromebook_(google-oak) -All Gru family Chromebooks: +##### All Asurada family Chromebooks: -| Model name/number | Codename | -| ------------------------- | -------- | -| Samsung Chromebook Plus | kevin | -| Asus Chromebook Flip C101 | bob | - -Source: https://en.wikipedia.org/wiki/List_of_Chromebooks - -Follow-up instructions and guide will be provided after acceptance. - -### ARM Chromebooks - -A closed alpha for the Kukui, Oak, and Gru family of ARM Chromebooks will be opening in the near future. +| Model name/number | Codename | +| ------------------------------------------ | -------- | +| Acer Chromebook 514 (CB514-2H / CB514-2HT) | spherion | +| ASUS Chromebook Flip CM3 (CM3200, MT8192) | hayato | -A list of devices can be found here +Source: https://wiki.postmarketos.org/wiki/Google_Asurada_Chromebook_(google-asurada) -Contact [Owen Zimmerman](mailto:owen@fyralabs.com) for additional information +##### Follow-up instructions and guide will be provided after acceptance. #### [Next Up: Terminology →](terminology) diff --git a/src/content/docs/en/hardware/anywhere.mdx b/src/content/docs/en/hardware/anywhere.mdx index be66fd54..c2aef222 100644 --- a/src/content/docs/en/hardware/anywhere.mdx +++ b/src/content/docs/en/hardware/anywhere.mdx @@ -14,6 +14,8 @@ By contributing to Ultramarine Anywhere, you can help us bring Linux to more dev not follow the instructions on these pages unless you know what you're doing. +#### If you have any suggestions or comments regarding these pages, don't hesitate to [reach out](https://fyralabs.com/contact/). + ## In Progress - [Ultramarine Chromebook Edition](/en/anywhere/chromebook) @@ -22,6 +24,9 @@ By contributing to Ultramarine Anywhere, you can help us bring Linux to more dev - [Android Devices](/en/anywhere/android) - [Apple Silicon Macs](/en/anywhere/applesilicon) +- [RISC-V](/en/anywhere/riscv) +- [Steam Deck](/en/anywhere/steamdeck) +- [Data Centre, Enterprise, and HPC](/en/anywhere/enterprise) ## Completed @@ -29,7 +34,6 @@ By contributing to Ultramarine Anywhere, you can help us bring Linux to more dev ## Wishlist -- [RISC-V](/en/anywhere/riscv) -- [Steam Deck](/en/anywhere/steamdeck) -- [Data Centre, Enterprise, and HPC](/en/anywhere/enterprise) - [Smart TV Devices](/en/anywhere/ott) +- [Thin Clients](/en/anywhere/thin) +- [32bit](/en/anywhere/32bit) From 87e8971cf2a55d63a179ddf3d2e982e08d76c045 Mon Sep 17 00:00:00 2001 From: Owen Zimmerman Date: Tue, 16 Apr 2024 19:44:03 -0500 Subject: [PATCH 2/3] Ultramarine Anywhere pages added/more info, ARM Chromebook Beta page update. --- src/content/docs/en/chromebook/armbeta.mdx | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/content/docs/en/chromebook/armbeta.mdx b/src/content/docs/en/chromebook/armbeta.mdx index 684d546a..608b6250 100644 --- a/src/content/docs/en/chromebook/armbeta.mdx +++ b/src/content/docs/en/chromebook/armbeta.mdx @@ -9,11 +9,11 @@ NOTE - Not all ARM devices are currently supported. This is a Beta program, proc Welcome to the ARM Chromebook Beta Program! We are looking for technically-versed people to test our Ultramarine Chromebook beta images for ARM. -This is a closed program, please contact [Owen Zimmerman](mailto:owen@fyralabs.com) at owen@fyralabs.com, or join and ping @Owen in the [discord](https://discord.com/invite/5fdPuxTg5Q) to apply. +This is a closed program, please contact Owen Zimmerman at owen@fyralabs.com, or join and ping @Owen in the [discord](https://discord.com/invite/5fdPuxTg5Q) to apply. Currently supported ARM Chromebook beta devices (if you have an unsupported device and are willing to use it for image testing, let us know!): -##### All Kukui family Chromebooks: +All Kukui family Chromebooks: | Model name/number | Codename | | ------------------------------------------ | -------- | @@ -38,7 +38,7 @@ Currently supported ARM Chromebook beta devices (if you have an unsupported devi Source: https://wiki.postmarketos.org/wiki/Google_Kukui_Chromebook_(google-kukui) -##### All Oak family Chromebooks: +All Oak family Chromebooks: | Model name/number | Codename | | -------------------------------------------- | -------- | @@ -57,7 +57,7 @@ Source: https://wiki.postmarketos.org/wiki/Google_Kukui_Chromebook_(google-kukui Source: https://wiki.postmarketos.org/wiki/Google_Oak_Chromebook_(google-oak) -##### All Asurada family Chromebooks: +All Asurada family Chromebooks: | Model name/number | Codename | | ------------------------------------------ | -------- | @@ -66,7 +66,9 @@ Source: https://wiki.postmarketos.org/wiki/Google_Oak_Chromebook_(google-oak) Source: https://wiki.postmarketos.org/wiki/Google_Asurada_Chromebook_(google-asurada) -##### Follow-up instructions and guide will be provided after acceptance. +Follow-up instructions and guide will be provided after acceptance. + +Contact [Owen Zimmerman](mailto:owen@fyralabs.com) for additional information #### [Next Up: Terminology →](terminology) From 4a5e9e41d3659e558421f81f94c0bf7ddfeccd3f Mon Sep 17 00:00:00 2001 From: Owen Zimmerman Date: Tue, 16 Apr 2024 22:01:28 -0500 Subject: [PATCH 3/3] Minor fixes and whatever --- src/content/docs/en/anywhere/32bit.mdx | 13 ------------- src/content/docs/en/anywhere/applesilicon.mdx | 2 +- src/content/docs/en/anywhere/ott.mdx | 2 +- src/content/docs/en/anywhere/riscv.mdx | 2 +- src/content/docs/en/anywhere/steamdeck.mdx | 2 +- src/content/docs/en/hardware/anywhere.mdx | 6 +++--- 6 files changed, 7 insertions(+), 20 deletions(-) delete mode 100644 src/content/docs/en/anywhere/32bit.mdx diff --git a/src/content/docs/en/anywhere/32bit.mdx b/src/content/docs/en/anywhere/32bit.mdx deleted file mode 100644 index 9c219475..00000000 --- a/src/content/docs/en/anywhere/32bit.mdx +++ /dev/null @@ -1,13 +0,0 @@ ---- -title: "32Bit (Anywhere)" -description: "32bit Devices in the Ultramarine Anywhere Initiative" ---- - - - This device type is still in the **Planning Phase**. All information on this - page is subject to change - - -While there isn't a huge market, 32Bit support would be a very fun venture, and unlock some device categories we currently can not support due to being 64Bit only. We do not plan on supporting 32Bit devices in the near future, unless we have a need to. - -import Alert from "../../../../components/Docs/Alert.astro"; diff --git a/src/content/docs/en/anywhere/applesilicon.mdx b/src/content/docs/en/anywhere/applesilicon.mdx index 4c3c2a8e..027a299f 100644 --- a/src/content/docs/en/anywhere/applesilicon.mdx +++ b/src/content/docs/en/anywhere/applesilicon.mdx @@ -14,4 +14,4 @@ We plan to use the Asahi script/patches from upstream. This will happen sometime ## Implementation -- Potential GUI installer (Readymade while in macOS) +- Potential GUI installer (Readymade from inside macOS) diff --git a/src/content/docs/en/anywhere/ott.mdx b/src/content/docs/en/anywhere/ott.mdx index 45183276..0f10673b 100644 --- a/src/content/docs/en/anywhere/ott.mdx +++ b/src/content/docs/en/anywhere/ott.mdx @@ -12,4 +12,4 @@ import Alert from "../../../../components/Docs/Alert.astro"; Smart TV boxes often run Android, which means we can use Halium to port Ultramarine to the unlockable ones. -This may be limited to FireOS devices as many of them are vulnerable to [mtk-su](https://xdaforums.com/t/amazing-temp-root-for-mediatek-armv8-2020-08-24.3922213/). If you are knowledgable about Smart TV modding/running alternative operating systems, please reach out. +This may be limited to FireOS devices as many of them are vulnerable to [mtk-su](https://xdaforums.com/t/amazing-temp-root-for-mediatek-armv8-2020-08-24.3922213/). If you are knowledgable about Smart TV modding/running alternative operating systems, please reach out [here](/en/community/community). diff --git a/src/content/docs/en/anywhere/riscv.mdx b/src/content/docs/en/anywhere/riscv.mdx index 4470cc11..370a12ad 100644 --- a/src/content/docs/en/anywhere/riscv.mdx +++ b/src/content/docs/en/anywhere/riscv.mdx @@ -6,7 +6,7 @@ description: "RISC-V Devices in the Ultramarine Anywhere Initiative" import Alert from "../../../../components/Docs/Alert.astro"; - This device type is still in the **Planning Phase**. All information on this + This device type is still in the **Wishlist Phase**. All information on this page is subject to change. diff --git a/src/content/docs/en/anywhere/steamdeck.mdx b/src/content/docs/en/anywhere/steamdeck.mdx index c8a7570c..69592f22 100644 --- a/src/content/docs/en/anywhere/steamdeck.mdx +++ b/src/content/docs/en/anywhere/steamdeck.mdx @@ -6,7 +6,7 @@ description: "Steam Deck in the Ultramarine Anywhere Initiative" import Alert from "../../../../components/Docs/Alert.astro"; - This device type is still in the **Planning Phase**. All information on this + This device type is still in the **Wishlist Phase**. All information on this page is subject to change. diff --git a/src/content/docs/en/hardware/anywhere.mdx b/src/content/docs/en/hardware/anywhere.mdx index c2aef222..e9ca2e90 100644 --- a/src/content/docs/en/hardware/anywhere.mdx +++ b/src/content/docs/en/hardware/anywhere.mdx @@ -14,7 +14,7 @@ By contributing to Ultramarine Anywhere, you can help us bring Linux to more dev not follow the instructions on these pages unless you know what you're doing. -#### If you have any suggestions or comments regarding these pages, don't hesitate to [reach out](https://fyralabs.com/contact/). +#### If you have any suggestions or comments regarding these pages, don't hesitate to [reach out](/en/community/community). ## In Progress @@ -24,8 +24,6 @@ By contributing to Ultramarine Anywhere, you can help us bring Linux to more dev - [Android Devices](/en/anywhere/android) - [Apple Silicon Macs](/en/anywhere/applesilicon) -- [RISC-V](/en/anywhere/riscv) -- [Steam Deck](/en/anywhere/steamdeck) - [Data Centre, Enterprise, and HPC](/en/anywhere/enterprise) ## Completed @@ -37,3 +35,5 @@ By contributing to Ultramarine Anywhere, you can help us bring Linux to more dev - [Smart TV Devices](/en/anywhere/ott) - [Thin Clients](/en/anywhere/thin) - [32bit](/en/anywhere/32bit) +- [RISC-V](/en/anywhere/riscv) +- [Steam Deck](/en/anywhere/steamdeck)