Greetings. Today we are happy to announce the new system release for our ROCK 4 family. The new system was in development for almost a year, and represents some significant changes to our older systems. We believe this release marks the foundation for better quality software in the future, and we are very eager to share it with you.
TL;DR
- Default account is now
radxa
/radxa
- New KDE desktop
-
rsetup
to manage overlays and more
New build system
The most notable change to this new image release is that they are built with a new set of tools. At the center is rbuild
Radxa image builder. Compared to our previous build script, rbuild
provides higher level of system abstraction, allowing us to deliver a unified experience across our products. Any improvements or bug fixes are applied across the entire portfolio by default, so our developers can work on a known environment to speed up feature delivery.
Additionally, we try to eliminate local non-tracable builds. From source codes to the final image, everything is performed by GitHub Workflows. With exceptions of some vendor pre-built packages, we are fully open about our software stacks.
We also mandate change log and version tagging as part of the release process, so we can better track the improvements and regressions with our development process.
Those may not affect you directly, but with improved infrastructure, we hope to deliver higher quality code that can benefit everyone.
New Desktop Environment ā KDE
With this release we also switched our default desktop to KDE. KDE is a fully featured desktop environment, with a modern look and a tightly integrated app ecosystem. We hope this switch can provide you a familiar control, comparable to your tried and true desktop.
For our more resource limited products, we still provide Xfce desktop as a lighter alternative. There is also a CLI version for advanced users to customize you own system. Vendor packages are not preinstalled in our CLI version.
New system configuration tool ā rsetup
For many of you that come from Windows, using Linux is a big enough challenge already. Running command line stuff? āThatās Greek to me!ā To be clear, here in Radxa, our work language is Chinese, although that doesnāt seem to make those tasks less daunting.
As part of our new system, we included a new system configuration tool called rsetup
. This tool is tightly integrated into our build system and pulls multiple duties, and one of them is to provide a system configuration interface for tasks not available in desktop environmentās settings app.
The most notable feature of rsetup
is managing overlays. Various hardware interfaces can only be enabled with overlays, which is a key selling point for using an ARM-based single board computer compared to something x86-based. We created a separate overlays repository to foster faster development cycle, and we also added custom metadata to annotate shipped overlays. The result is an intuitive list for user to choose from, instead of deciphering various file names that may or may not indicate what they are doing.
Another common request is controlling the LED. You guys love to run our products in the bedrooms, but the bright LEDs are annoying at night. We used to recommend tapes for that problem, but now we have a more environmental friendly solution, that also persists across boot.
The initially released feature set of rsetup
is limited, but we hope to discover more possibilities along with you.
First-boot configuration
To allow persistent settings to work, rsetup
implements an on-boot service to reapply them every time the system is booted. We also take advantage of this service to defer some default configurations till the first boot, so you could make some changes to it.
Currently the persistent settings and the first boot script are saved at the first partition of the image, properly named as config
partition. The old boot
partition was merged into the main rootfs
partition, so we can properly update the kernel via apt upgrade
.
Old on-disk partition layout:
Partition | Size | Mount point | File system |
---|---|---|---|
boot | first 512M | /boot | FAT32 |
rootfs | rest of the disk | / | ext4 |
New on-disk partition layout:
Partition | Size | Mount point | File system |
---|---|---|---|
config | first 16M | /config | FAT |
rootfs | rest of the disk | / | ext4 |
The config
partition is formatted in FAT, so it can be accessed by all major operating systems. The default first boot script can be viewed here, which creates the default account and disables some services among other things. The default account is changed to radxa
to better represent our diverse products. The services are disabled because our default account uses a weak password. If you want to enable SSH on boot, please also remember to change the default password after you log in.
Download
The following systems have been validated by Radxa for various use cases:
ROCK 4SE: 20230312-1521 Build 33
ROCK 4C+: 20230312-1521 Build 55
The following systems are built using the same code base as above releases, but have not been extensively tested by Radxa. As such, they are provided as testing images:
ROCK 4A: 20230314-1317 Build 11
ROCK 4A+: 20230314-1308 Build 10
ROCK 4B: 20230314-1307 Build 28
ROCK 4B+: 20230314-1328 Build 17
ROCK 4C: 20230314-1308 Build 22
More build variants can be found at radxa-build
.
Kernel version: 5.10.110-1
Known issues
- Ubuntu variants is not bootable. (Ubuntu is not currently supported by Radxa.)
- When MIPI-DSI display is enabled, HDMI will have DSIās output shown on top. Fix: run
sudo rm /etc/X11/xorg.conf.d/10-monitor.conf
and reboot. - When MIPI-DSI display is enabled and HDMI is set to 4K 60p, display artifacts may occur. Workaround: reduce HDMI to 4K 30p, as 4K 60p+DSI is beyond hardware spec.
- ROCK 4SE only: when system is suspended, it cannot be wake up via the USB OTG port.
- ROCK 4C+ only: some monitors are incompatible with the 2K HDMI port. Workaround: use 4K HDMI port instead.