Builder for a UEFI-enabled RouterOS CHR image using GitHub Action.
Tip
If these images are required on some virtualized platform/cloud, and Mikrotik's official downloads DO NOT WORK on same platform - please let me know either as issue here or on Mikrotik's forum – as I've been collecting data. The current summary is:
- Apple Virtualization Framework On Intel, all images should work. On ARM-based M1/M2/M3, none have been reported to work.
- Vultr - Mikrotik images only work because the instructions suggest SystemRescueCD and
dd
, reported that the "@jaclaz method" (used in all post-7.15 releases work without Mikrotik's "dd
approach", see this post - Oracle Cloud using ARM64/Amprere Reported that experimental ARM64 7.17beta2 image worked (all other packages are Intel-only). See @BetaQuasi comment in #5 (comment)
Mikrotik's virtual machine version of RouterOS ("CHR") is downloadable as a RAW image. However, this image is incompatible with UEFI-based bootloaders. Specifically, Apple's Virtualization Framework for Intel-based MacOS to run RouterOS CHR
Non-EUFI raw images for "stable" and "testing" for latest version are downloaded. CI will convert the partitioning scheme from EXT2 to FAT16 using gdisk
& publish as a release.
- CI builder https://github.com/tikoci/fat-chr/blob/main/.github/workflows/build.yaml
- Raw Image Converter Script https://github.com/tikoci/fat-chr/blob/main/build.bash
There is "workflow_dispatch" on the "Build and Release" to manual trigger a specific build to fetch older/specific versions & select a script to run. All builds marked as "pre-release" in Releases and must be manually changed to remove the flag. No check is done if a version was already build, so duplicates can be deleted manually.
- @kriszos's posting on the Mikrotik forum "QG" bash script to convert the CHR raw image from EXT2 to FAT16 script, and do some modifications of the partition tables. All images prior to 7.15, are built using this script. CHR Version 7.15 introduced overlapping partitions, so @kriszos's script no longer worked.
- @jaclaz's hybrid diatribes create a newer version that processed the overlap in
gdisk
. This script is used in CHR 7.15 and above images. - @Amm0 added the "no-gdisk variant script, which does not change the partition table, instead it only does a conversion from
ext2
tofat
of the EFI partition. One use case for the CHR images here is Apple Virtualization support, which just need EFI partition to befat
(i.e. MacOS has no support for mounting ext2, and per UEFI specs it should befat
).