[cfarm-users] RISC-V emulated systems available in BETA

Christian Jullien eligis at orange.fr
Sat Nov 21 06:55:40 CET 2020

It's very cool to have a working and up to date Debian Risc-V emulated
directly accessible form Web. It's really nice to have both gcc and clang.
X-mas comes earlier this year it was near the top on my wish list (A RPI
like fueled with a Risc-V is still on top).

Many thanks.

I've just compiled the wonderful Tiny CC compiler (I modestly contribute) on
it and it works like a charm.

Are you planning a Risc-V 32 port the same way?


-----Original Message-----
From: cfarm-users [mailto:cfarm-users-bounces at lists.tetaneutral.net] On
Behalf Of Baptiste Jonglez via cfarm-users
Sent: Friday, November 20, 2020 21:05
To: cfarm-users at lists.tetaneutral.net
Cc: Baptiste Jonglez
Subject: [cfarm-users] RISC-V emulated systems available in BETA


I have just setup emulated RISC-V systems running Debian, accessible to all
farm users over SSH.  They are not shown yet in the list of machines, here
are the connection details (~/.ssh/config format):

Host gcc401.fsffrance.org
     Port 45061

Host gcc402.fsffrance.org
     Port 45062

It's still in BETA, but it seems to be working nicely so far.

All data in /home is shared with the host, gcc140.  It means you can edit
files and prepare your work on gcc140 (it will be faster because there is no
emulation), and then run your builds by connecting to one of the RISC-V

Some limitations:

- absolutely no service is running in the containers, except sshd

- in particular, cron is not yet supported

- all host CPU cores are usable, so please limit the number of
  concurrent jobs (usual rules [0] apply)

- I plan to rebuild the images regularly, which means rebooting the
  containers: any long-running task might be interrupted.  Data in
  /home will of course be preserved when upgrading.

The images are built using mmdebstrap [1] and the resulting rootfs is run in
Docker with qemu-user-static.

The idea is that you can reproduce this yourself if you want to run such
emulated containers locally, everything is documented [2].  But it's still
nice to have this as a service in the farm (easy access to a host with fast
CPU / lots of memory, thanks to OSUOSL).

Please let me know if you find this service useful or if you want to help
adding another OS, or if you run into issues.  For instance, I'm interested
to know if an emulated container is not enough for some use-cases.
Emulating full virtual machines is possible [3] and planned, but it's more
challenging to integrate in the farm.


[0] https://gcc.gnu.org/wiki/CompileFarm#Usage
[1] https://wiki.debian.org/RISC-V#Creating_a_riscv64_chroot
[2] https://framagit.org/compile-farm/risc-v-virtual-cloud
[3] https://wiki.debian.org/RISC-V#Setting_up_a_riscv64_virtual_machine

More information about the cfarm-users mailing list