[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: RISCV porting effort

From: Vagrant Cascadian
Subject: Re: RISCV porting effort
Date: Mon, 14 Jun 2021 18:00:21 -0700

On 2021-06-14, Efraim Flashner wrote:
> On Sun, Jun 13, 2021 at 10:24:13AM -0700, Vagrant Cascadian wrote:
>> On 2021-06-07, Efraim Flashner wrote:
>> > Last week my HiFive Umatched¹ board came
>> ...
>> > Ubuntu has an image for the board² which booted up just fine and I'm
>> > using, since I didn't want to spend too long getting Debian to run on
>> > the board.
>> I, on the other hand, went straight for Debian, of course! I stole the
>> vendor kernel and u-boot and built a Debian rootfs... and after a few
>> tries got it running.
>> live well,
>>   vagrant
> Do you have notes on what you did? Right now I was thinking of taking
> the Ubuntu image, keeping /boot with their kernel and u-boot and
> replacing the rest of it with Debian. (And copying the device-tree dtb
> files to /boot/firmware/kernel-version)

I didn't take notes, but off the top of my head something like this:

  Booted the OE image that shipped with it on the microSD

  add partition for new rootfs (cfdisk /dev/mmcblk?)

  mkfs.ext4 /dev/mmcblkXpY
  mount -o noatime /dev/mmcblkXpY /mnt

  git clone
  cd deboostrap
  sudo DEBOOTSTRAP_DIR=$(pwd) ./deboostrap --arch=riscv64 sid /mnt
  echo 'UUID=...  / ext4 errors=remount-ro 0 1' > /mnt/etc/fstab
  echo 'tmpfs /tmp tmpfs defaults,nosuid,nodev 0 0' >> /mnt/etc/fstab

  sudo chroot /mnt adduser vagrant --gecos ,,,
  sudo chroot /mnt adduser vagrant sudo
  sudo chroot /mnt passwd vagrant

  add another entry to /boot/extlinux/extlinux.conf using the
  appropriate root=/dev/mmcblkXpY and/or root=UUID=...

Probably missed something, but that's the jist.

Then, to build guix...

  git clone
  cd guix
  git remote add originguix
  git fetch
  git format-patch -o debian/patches originguix/master..originguix/wip-riscv
  # add new patches to debian/patches/series
  # adjust debian/rules and debian/control to use guile-3.0...

  # build the package!
  DEB_BUILD_OPTIONS='nocheck parallel=5' sbuild --chroot-mode=unshare -d 

Upgrading to use guile-3.0 required a manually rebuilt guile-gnutls
against guile-3.0 as well...

Just pushed debian/wip-riscv64 to
if you want to look at my most recent attempt.

Notably, this is just the wip-riscv patches applied against guix 1.3.0;
maybe building against guix master will be more successful?

live well,

Attachment: signature.asc
Description: PGP signature

reply via email to

[Prev in Thread] Current Thread [Next in Thread]