Redox OS features
According to the OS website: «Redox is a Unix-like Operating System written in Rust, aiming to bring the innovations of Rust to a modern microkernel and full set of applications.
- Microkernel Design
- Includes optional GUI – Orbital
- Supports Rust Standard Library
- MIT Licensed
- Drivers run in Userspace
- Includes common Unix commands
- Custom libc written in Rust (relibc) »
That’s sound promising, let’s give it a try.
You can get Redox from https://www.redox-os.org/news/release-0.7.0/ . There are a couple of images, but two of them are the recommended ones: OVA for virtual machines and X86_64 uefi for real hardware.
I’m going to create a VM for Redox, so I choose the OVA format.
Trying Redox in a Virtual Machine
If you use for example VirtualBox, you just can import the ova file and this is it. With qemu-kvm (remember that gnome-boxes is just a front end) it’s a little bit complicated.
First we need to extract the disk image from the package. Fortunatelly an ova file is just a tar file containing the VM metadata and disk(s) image(s), so just extract with
tar xvf redox.ova
Then, import the .vmdk file into boxes by creating a new VM and using the last option (Operating System Image File) on the wizard.
On the next screen choose Unknown for the template then next to see a summary:
Click on create and wait a few seconds until your brand new VM starts:
The very first step is to choose your screen resolution, I have an old 19” 1280×1024 screen, I select 1024×768.
The second step is to boot the OS until it fails miserably:
At least, it didn’t work for me. The first thing I’ve tried is to convert the image format to qcow2 (the one used by gnome-boxes).
qemu-img convert -f vmdk -O qcow2 Redox-disk001.vmdk Redox-0.7.qcow
Then I’ve tried again, and it failed again. You may know, actually you should know, that often several of hours of trial-and-error will save you a few minutes of manuals reading.
Let’s go then to the official documentation. There they give you a command line for qemu. By the way, gnome-boxes is just a front-end for qemu. Run Redox like this:
qemu-system-x86_64 -serial mon:stdio -d cpu_reset -d guest_errors -smp 4 -m 1024 -s -machine q35 -device ich9-intel-hda -device hda-duplex -net nic,model=e1000 -net user -device nec-usb-xhci,id=xhci -device usb-tablet,bus=xhci.0 -enable-kvm -cpu host -drive file=redox-0.7.qcow2
On the official documentation they use a raw disk image, but this is for the previous release, I changed that part for running with the converted disk image.
Now it works!
The default password for root is password.
New problem: the mouse doesn’t move and I don’t know the keyboard shortcuts to work without a mouse. Also, it didn’t appear on my gnome-boxes VMs list.
Fix the metadata
I know the error I’ve got on my first try (or every try from gnome-boxes):
redoxfs: not able to mount uuid ...
is related with the harddrive. I’ve tried different disks format (ide, virtio,…) until I foundthe correct one. Right-click on the Redox vm to go to properties. Then go to the system tab and click on edit xml:
Then, find the highlighted section:
And change it like this:
If you want to copy and paste, you need to go from this:
<disk type="file" device="disk"> <driver name="qemu" type="qcow2"/> <source file="https://1118798822.rsc.cdn77.org/home/sfish/Descargas/iso_img/redox-0.7/redox-0.7.qcow2"/> <target dev="hda" bus="ide"/> <address type="drive" controller="0" bus="0" target="0" unit="0"/> </disk>
<disk type="file" device="disk"> <driver name="qemu" type="qcow2" cache="writeback"/> <source file="https://1118798822.rsc.cdn77.org/home/sfish/Descargas/iso_img/redox-0.7/redox-0.7.qcow2"/> <backingStore/> <target dev="sda" bus="sata"/> <address type="drive" controller="0" bus="0" target="0" unit="0"/> </disk>
Try again, from the icon on gnome-boxes and Redox will start. Also the mouse works this time. And this is how to run Redox OS with gnome-boxes.
Trying out Redox OS
Now that the OS works, lets see whats included:
A web browser, a command line terminal, file manager, editor, calculator, calendar, image viewer and a Character map. Enough to test a new Operating System on development. From the screenshots on the Redox site, I wanted to try a command:
Now, if you didn’t want to save reading time, this is the link to the Redox OS Manual.