Debian GNU/Linux port for RISC-V 64-bit (riscv64) in Debian infrastructure (debian-ports)

Affichage de 16 messages sur 6
Debian GNU/Linux port for RISC-V 64-bit (riscv64) in Debian infrastructure (debian-ports) manuel.montezelo 01/04/18 19:45
Hello,

(My apologies if I post repeated information, I didn't have much time
available lately to follow all the mailing lists that I am subscribed
to).

We've been working in the last few weeks to do a (second) boostrap of
Debian for RISC-V, and after a few weeks of hard work it is now
bootstrapped and has been imported into the Debian infrastructure, in
particular, debian-ports (* description below).

All packages that are uploaded to the archive by any of the
hundreds/thousands of contributors are attempted to be built for each
one of the architectures/ABIs almost immediately, so having "riscv64"
as a Debian architecture is a quite critical step.

This means that, from now on, anybody can download .deb packages
targetted for riscv64 (rv64gc, to be precise) which compile
successfuly, often only a few hours after being uploaded to the
archive (as long as their build-dependencies are satisfied).  You can
download them from here:

  https://deb.debian.org/debian-ports/pool-riscv64/main/

  (We will attempt to provide more ready-to-use system images in the future).


One can follow the progress of this architecture (>4k packages, or
~30% of the arch-dependent packages, built successfully by now) from:

  https://buildd.debian.org/status/architecture.php?a=riscv64&suite=sid


And from here one can see the detailed output of all the compilations
of gcc-8 or nethack (only 1 version of each so far), to compare with
previous builds or versions, or with other distributions:

  https://buildd.debian.org/status/logs.php?pkg=gcc-8&ver=8-20180331-1&arch=riscv64

  clicking on the link of the "result" column:
    https://buildd.debian.org/status/fetch.php?pkg=gcc-8&arch=riscv64&ver=8-20180331-1&stamp=1522626639&raw=0

  https://buildd.debian.org/status/logs.php?pkg=nethack&arch=riscv64

  clicking on the link of the "result" column:
    https://buildd.debian.org/status/fetch.php?pkg=nethack&arch=riscv64&ver=3.6.0-4&stamp=1522496765&raw=0


So we hope that this is a valuable resource, and that it helps to
continue the development of RISC-V hardware, and that you can run it
on your devices in the near future ;-)


More background info about the process, if interested:

  https://people.debian.org/~mafm/posts/2018/20180402_debian-gnulinux-port-for-risc-v-64-bit-riscv64-in-debian-infrastructure-debian-ports/


Cheers.


(*) In Debian, "ports" are different ABI targets (sometimes they
evolve slightly over the years, like "i386", upgrading the baseline
ISA).  Those which are well established and have good support of
hardware, several developers behind and can keep up with building the
archive successfully, are designed as the main ones (amd64/x86_64,
arm64/-hf/-el, ppc64el, s390x, several mips*).

Those which are still "in the nursery" or do not have good support for
being old or similar reasons (sparc64, m68k, alpha) are in what's
known as "debian-ports", which means architectures/ABIs which are not
supported for the full lifetime of stable realeases, they cannot
compile 90% of the archive, etc.  They can lag behind in building
packages, without delaying or harming the main supported architectures
-- that's the main reason to have this separation.


--
Manuel A. Fernandez Montecelo <manuel.m...@gmail.com>
Re: [sw-dev] Debian GNU/Linux port for RISC-V 64-bit (riscv64) in Debian infrastructure (debian-ports) Luke Kenneth Casson Leighton 01/04/18 21:39
On Mon, Apr 2, 2018 at 3:44 AM, Manuel A. Fernandez Montecelo
<manuel.m...@gmail.com> wrote:

> We've been working in the last few weeks to do a (second) boostrap of
> Debian for RISC-V, and after a few weeks of hard work it is now
> bootstrapped and has been imported into the Debian infrastructure, in
> particular, debian-ports (* description below).

 this is fantastic, manuel - i've been watching the debian patches
being submitted and it's great to see the results of them being
accepted.  congratulations to everyone involved, this is a huge step
forward.

l.
Re: [sw-dev] Debian GNU/Linux port for RISC-V 64-bit (riscv64) in Debian infrastructure (debian-ports) Palmer Dabbelt 02/04/18 19:57
That's super exciting.  Thanks for all your hard work!
Re: Debian GNU/Linux port for RISC-V 64-bit (riscv64) in Debian infrastructure (debian-ports) wes...@sifive.com 03/04/18 11:46
Good afternoon!

I was trying to debootstrap this port but it does not install libraries, including libc6. Is this a known issue? How can I get a root filesystem out of the repository?

Thanks
Re: [lowrisc-dev] Re: Debian GNU/Linux port for RISC-V 64-bit (riscv64) in Debian infrastructure (debian-ports) Karsten Merker 03/04/18 15:09
On Tue, Apr 03, 2018 at 11:46:09AM -0700, wes...@sifive.com wrote:

[Debian riscv64 port in Debian-Ports]
> I was trying to debootstrap this port but it does not install libraries,
> including libc6. Is this a known issue? How can I get a root filesystem out
> of the repository?

Hello,

this is currently one of the known issues. The background for that is
slightly complicated:

- Debootstrap supports only one suite as its source.

- The Debian riscv64 packages are currently split over two suites
  within the Debian-Ports archive: "unstable" and "unreleased".

  The "unstable" suite can only contain binary packages that are
  built from unmodified sources from the main Debian archive,
  i.e. it includes those packages for which either no
  RISC-V-specific patches have been necessary or for which such
  patches have already been included in the primary (i.e.
  non-ports) archive.

  The "unreleased" suite contains (source and corresponding
  binary) packages which include RISC-V-specific patches that
  have not yet been included into the package sources in the
  primary (i.e. non-ports) archive.  In Debian, the maintainer
  of each package in principle has the authority over "his"
  packages and decides which patches get included when, and that
  sometimes takes a while, so not all patches that we have
  supplied have already been included in the package sources in
  the primary, non-ports archive.  There is the possibility of
  doing "Non-Maintainer Uploads" (NMUs) to the primary archive,
  but that is somewhat of a method of last resort and requires a
  rather longish procedure that is usually only invoked if the
  package maintainer is inactive for a really prolonged period of
  time.

  Unfortunately glibc is one of the packages in "unreleased".  In
  this case the reason is not maintainer inactivity, but a rather
  unfortunate infrastructure issue.  If somebody should be
  interested in the details, those can be seen in the Debian bug
  tracking system at

    https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=890791

  We hope to get this issue resolved soon.

We are working on providing an easy way to build a rootfs from
the ports archive despite these issues, but that will take a bit
of time.

Regards,
Karsten
--
Gem. Par. 28 Abs. 4 Bundesdatenschutzgesetz widerspreche ich der Nutzung
sowie der Weitergabe meiner personenbezogenen Daten für Zwecke der
Werbung sowie der Markt- oder Meinungsforschung.
Re: [sw-dev] Re: [lowrisc-dev] Re: Debian GNU/Linux port for RISC-V 64-bit (riscv64) in Debian infrastructure (debian-ports) Karsten Merker 04/04/18 07:19
On Wed, Apr 04, 2018 at 12:08:54AM +0200, Karsten Merker wrote:
> On Tue, Apr 03, 2018 at 11:46:09AM -0700, wes...@sifive.com wrote:
>
> [Debian riscv64 port in Debian-Ports]
> > I was trying to debootstrap this port but it does not install libraries,
> > including libc6. Is this a known issue? How can I get a root filesystem out
> > of the repository?
[...]
> this is currently one of the known issues. The background for that is
> slightly complicated:
>
> - Debootstrap supports only one suite as its source.
>
> - The Debian riscv64 packages are currently split over two suites
>   within the Debian-Ports archive: "unstable" and "unreleased".
[...]

I have added further documentation covering this issue and one
possible solution to the corresponding page in the Debian Wiki:

  https://wiki.debian.org/RISC-V#Creating_a_riscv64_chroot_from_the_Debian-Ports_repository

Many thanks to Wesley Terpstra for helping in researching this
topic.