unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: lle-bout <lle-bout@zaclys.net>
To: Chris Marusich <cmmarusich@gmail.com>
Cc: guix-devel@gnu.org, efraim@flashner.co.il
Subject: Re: Helping with powerpc64-linux
Date: Tue, 16 Jun 2020 04:05:38 +0200	[thread overview]
Message-ID: <7c999a3c-21f7-60e0-93c7-27aee80c3d79@zaclys.net> (raw)
In-Reply-To: <87mu56id2m.fsf@gmail.com>


[-- Attachment #1.1: Type: text/plain, Size: 4321 bytes --]

On 6/14/20 4:41 AM, Chris Marusich wrote:
> Hi Léo,
> 
> As you know, I'm still investigating why the powerpc64-linux bootstrap
> binaries (really just GCC) are not reproducible [1].  Eventually, if we
> can't figure it out, we might want to just bite the bullet and use the
> non-reproducible bootstrap binaries to get started, but I'm hopeful we
> can figure it out and have at least two different people build the same
> binaries before doing that.
> 
> The investigation is slow, partially because building things without
> substitutes is very slow (iteration time is in hours or days).  In the
> meantime, I understand you've been continuing to work on building more
> powerpc64-linux packages on top of your own bootstrap binaries [2].  I
> also understand you've had some trouble setting up Cuirass on your
> POWER9 PC.  I'd like to help (and invite others to help, if they want),
> but I'm not sure what the current status is.
> 
> Is Cuirass still not working?  I checked your POWER9 Gentoo VM, and I
> saw that Cuirass is not currently running.
> 
> Which branches in your Git repository are still relevant?  My
> understanding is that only the following branches in your repo might
> currently contain changes we would want to upstream into Guix:
> 
>   - master: the first attempts you made.
>   - wip-lle-bout-be1: your more recent attempts.
> 
> Do you think we should we try adding powerpc64le-linux?  Since the
> powerpc64-linux bootstrap binaries are not reproducible, I see no reason
> to expect that the powerpc64le-linux binaries would be reproducible,
> either, but you never know.  Maybe it's worth a try.
> 
> Is there something else I can help you with?  I will have time while
> waiting for long builds to finish, but please forgive me if my progress
> is slow.  Life is busy.  Slowly but surely, we can make progress, and
> hopefully we can keep collaborating to make it happen!
> 
> Footnotes: 
> [1]  https://debbugs.gnu.org/cgi/bugreport.cgi?bug=41669
> 
> [2]  https://gitlab.com/lle-bout/guix
> 

Hello!

I'm busy as well with many things that werent planned at all! (Not a
job, but matters I need to contribute to **now** because it will be
impossible later)

The most recent changes are uncommitted and inside the VM in /root/guix
- but if they werent committed it means things are in flux.

Things to fix would be Go bootstrapping, using gccgo instead of go@1.4
as specified in the comment, because go@1.4 doesnt support ppc64[le],
lots of tools are in go. And you could investigate creating bootable ISO
inspiring yourself from how Debian does it for ppc64el.

Cuirass still isnt working, I havent had time to continue since my last
messages.

To get the state I was at, you need to (as root):

# cd /root/cuirass-data
# cuirass -D cuirass.sqlite -S specfile.scm --web --cache-directory=cache &
# cuirass -D cuirass.sqlite -S specfile.scm --cache-directory=cache

The reason is that you can't get both the web interface and the
background service that runs builds at the same time, so you need to run
it twice.

After that, you can access through http://localhost:8080 (from the
machine itself, so make an SSH tunnel).

I ran it on the machine inside a screen session.

For powerpc64le, I installed an Ubuntu ppc64el VM using nested KVM in
/root/ubuntu-ppc64le.qcow2

You can run it with (as root):

# cd /root
# qemu-system-ppc64 -drive format=qcow2,file=ubuntu-ppc64le.qcow2
-device virtio-net,netdev=vmnic -netdev user,id=vmnic -enable-kvm -m 8G
-smp 16,sockets=16,cores=1,threads=1 -nodefaults -nographic -serial
stdio -machine cap-ccf-assist=off

This will give you a little endian VM from within the big endian VM with
minimal performance overhead.

I gave gentoo-ppc64 access to efraim as well, so they worked a little on
it as well. I initially investigated the nested KVM for them, but it's
done now.

We can also try little endian, but bootstrap-tarballs don't even build
right now, let alone reproducibility. I'll try to help as soon as I can
for investigating lack of reproducibility of these GCC binaries. I have
a beefier x86 server than you for this AFAICT, but I'm not sure I could
give access.

I hope to resume work again on GNU Guix soon!

Thanks a lot,
Leo



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

      reply	other threads:[~2020-06-16  2:38 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-14  2:41 Helping with powerpc64-linux Chris Marusich
2020-06-16  2:05 ` lle-bout [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=7c999a3c-21f7-60e0-93c7-27aee80c3d79@zaclys.net \
    --to=lle-bout@zaclys.net \
    --cc=cmmarusich@gmail.com \
    --cc=efraim@flashner.co.il \
    --cc=guix-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).