Home :: Documentation :: Download :: Development :: Community :: Ports :: Packages :: Bugs :: Links :: About :: Donors


If you have in mind to use CRUX-ARM we assume that you are familiarized with CRUX. This is not a requisite but could answer many of the questions you have and maybe are not relevant to ARM devices in particular.

You can check About page for a detailed description about what's CRUX-ARM.

Why use CRUX-ARM?

In addition to what is true for CRUX for x86, CRUX's simplicity and lightweightness is especially valuable when you only have little disk space like you often do on ARM-powered devices. CRUX-ARM provides you a basic framework which you could extend and tweak without wasting too much time learning distribution-specific tools and configuration files, as CRUX one are very basic and simple.

Getting started

ARM devices are very different in their nature, so there cannot be one general guide for all of them, unlike x86 arch, so this section explains only basic steps you would need to perform.

First, make sure you can run a linux kernel on your device. Way to run Linux is very device-specific. Many devices are shipped with pre-installed Linux based operating systems, like Android or ChromeOS, others will require installing some bootloader and finding a suitable kernel sources or binaries.

Assuming you already can run Linux and can get to root shell, second step would be unpacking corresponding CRUX-ARM rootfs, which is shipped in tar archive. There are two options of running CRUX-ARM. First you could use other distribution's shell to chroot into CRUX-ARM and second is installing CRUX-ARM on place of other OS or into separate partition.

Obtaining and installing additional software.

CRUX-ARM uses same ports system as CRUX, but it also uses specific ports collections called overlays, like core-arm, opt-arm, xorg-arm and devices-arm. Overlays are just regular port collections containing ports which require specific build options or have different footprints. They are listed first in prt-get.conf in order to have higher priority over same packages located in general port collections.

You can check our supported devices to get the right rootfs for any of them. If your device isn't officially supported, you can get the generic rootfs and run it itself, or start with an optimized release for your device, rebuilding the entire core collection ports for it.

If you need additional ports you can use port collections from general CRUX. You can also try ports from other CRUX versions, it will probably work, but they aren't officially supported.

You can also obtain some pre-built core ARM packages here

Officially Supported Devices

Contributed or not yet documented supported devices