(also posted on @selfhost)

RISC-V is a non-proprietary instruction set that is an alternative to ARM. I had thought that we were still waiting for a stable Linux distribution on RISC-V devices, but it turns out many RISC-V machines can run Debian already.

Does anyone have a RISC-V device that they use regularly? How has it been working?

  • @aarroyoc@lemuria.es
    link
    fedilink
    98 months ago

    Yes, I have a VisionFive 2 and I use it to host some websites. I have am Arch Linux image compiled by a user in a forum, but the userspace packages are from a RISC-V repository from a other people working in Arch in general.

    I could run my websites but it wasn’t easy at first, because, yes I have Docker but there are almost no images for riscv64, so I had to do some compiling and build images in a local registry. Bu now it works pretty well.

    • tuckermOP
      link
      fedilink
      18 months ago

      It sounds like the answer to “can I run this application on RISC-V” is very dependent on what the backend for that application is. What’s the backend stack for your websites? Are they static HTML sites, or do they have other components? Someone else mentioned that they built postgres and mariadb Docker images for RISC-V, but I don’t even know which programming languages can be compiled for RISC-V right now.

      • @aarroyoc@lemuria.es
        link
        fedilink
        18 months ago

        Yes. My apps are not static: one is a Django app (Python) using Postgres. I had to compile both Postgres and Python but that’s because I wanted to use them in Docker but there were no images available (maybe there are now, things change fast in this world).

        Other was a Rust app, also using Postgres. For this I had to wait until a cryptography library (ring) added support to RISC-V since they use some assembly to improve the performance. After that, it was fine.

        I’ve been experimenting with more stuff, in general almost all important languages work, but beware that even if it works, they might not be as performant as in ARM or x86. Java for example, worked but the JVM didn’t have a JIT so it was very slow (this is fixed now, but some distros still ship it without JIT AFAIK).