guix-devel
[Top][All Lists]
Advanced

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

Re: Supported architectures


From: Ludovic Courtès
Subject: Re: Supported architectures
Date: Fri, 07 Oct 2022 12:02:46 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.1 (gnu/linux)

Hi,

Efraim Flashner <efraim@flashner.co.il> skribis:

> I'd like to comment on armhf for a moment. My memory is a but rusty, but
> I'm pretty sure that in December of 2021 mesa was bumped from 21.2.x to
> 21.3.x, and at that time it stopped building on/for armhf. I noticed in
> May of 2022 (5 months later) and got the build working again. That we
> went 5 months without anyone saying anything in bug reports that mesa
> wasn't building shows that either everyone who is using it is using
> software that doesn't use mesa, or we really don't have any armhf-linux
> users. I'm not advocating dropping the architecture, but it does feel
> like we're already at a best-effort level with it. As far as the pieces
> needed for bootstrapping aarch64 software (go and probably others),
> those get built anyway as needed by aarch64, so there's no worry about
> losing support for those software bits.

We’re definitely on a best-effort basis.  I think we should try and see
if we can make the armhf-linux selection that’s in
‘etc/release-manifests.scm’ build (I think it doesn’t involve Mesa).  If
we realize it’s out of reach, then we mark armhf-linux as in the same
state as mips64el-linux.

> i586-gnu: Do we have a mini guide on how to setup a build environment?
> Something like "add the childhurd service and the secrets service, with
> these bits and you're all set to go"? I don't mind poking builds from
> time to time, but I'm not sure about how to set it up.

Set up a childhurd and offload to it:

  
https://guix.gnu.org/manual/devel/en/html_node/Virtualization-Services.html#index-childhurd_002c-offloading

The main issue at the moment is lack of substitutes, which is due to the
fact that childhurds won’t start on the build machines behind ci.guix.
I’m investigating this here:

  https://issues.guix.gnu.org/58320

Hopefully we’ll have a bug fix or a workaround soon.

> aarch64-linux: I tried a while ago to fix a bunch of the failed builds
> on ci.guix.gnu.org and I think I made it worse. Right now there are many
> build failures and pending builds. I might see about canceling some of
> them and then restarting individual builds to try to increase coverage
> again.

Right, currently there’s something wrong going on with aarch64-linux
builds on ci.guix, which Maxim and I have been looking at.  In
particular, some of the build machines are unreachable right now and may
need a kick.

The starting point for someone willing to help is this dashboard:

--8<---------------cut here---------------start------------->8---
$ make assert-binaries-available 
Compiling Scheme modules...
Compiling Scheme modules...
Compiling Scheme modules...
Compiling Scheme modules...
computing 400 package derivations for x86_64-linux...
looking for 512 store items on https://ci.guix.gnu.org...
https://ci.guix.gnu.org ☀
  91.6% substitutes available (469 out of 512)
  at least 3,699.6 MiB of nars (compressed)
  6,450.3 MiB on disk (uncompressed)
  0.021 seconds per request (1.1 seconds in total)
  47.1 requests per second

  7.0% (3 out of 43) of the missing items are queued
  at least 1,000 queued builds
      powerpc64le-linux: 699 (69.9%)
      aarch64-linux: 301 (30.1%)
  build rate: 11.31 builds per hour
      i686-linux: 2.31 builds per hour
      x86_64-linux: 7.08 builds per hour
      aarch64-linux: 2.45 builds per hour
      powerpc64le-linux: 0.49 builds per hour
      armhf-linux: 0.02 builds per hour

Substitutes are missing for the following items:
  /gnu/store/pjxakb6iqarajwj5xxbl4xibd40zrwzs-gettext-0.21-doc                  
 x86_64-linux
  /gnu/store/04wlmb4mlbhm3hwpp7cwzk45cc8wr7bm-gettext-0.21                      
 x86_64-linux
  /gnu/store/8xjxp2gmg1l3db1n18iq0y8mgilf7faf-zlib-1.2.11-static                
 x86_64-linux
  /gnu/store/xdvgaj90p1lr4wj0lvsn2m0sqcxs2zsk-xf86-video-sis-0.12.0             
 i686-linux
  /gnu/store/9gl116gdip5zkpzijk07j3kh3hkj21np-grub-hybrid-2.06                  
 i686-linux
  /gnu/store/55yxbr2fywkd6x3pzqhh0z22cl6kf3s3-libreoffice-7.3.5.2               
 i686-linux
  /gnu/store/v99pba09zv9m9wl3dgnrq4i26fkrragz-xf86-video-vesa-2.5.0             
 x86_64-linux
  /gnu/store/z47kyvcrxxq4xwczwlbnap9kfvvfigib-gnome-user-docs-42.0              
 x86_64-linux
  /gnu/store/475m6q7hp7a1gw98ki9l4g04gmvsa75y-xz-5.2.5                          
 i586-gnu
  /gnu/store/8fhdpb76nqy3v22jr33j18i1k07rl5n1-xz-5.2.5-static                   
 i586-gnu
  /gnu/store/6dvavfwg4zdih3rlvac4qqkx46my8gl6-tar-1.34                          
 i586-gnu
  /gnu/store/sa1ay72axmi9g75sll2wy9cqpfldfy40-gcc-toolchain-12.2.0-debug        
 i586-gnu
  /gnu/store/qxwclv8hx9z3gqwjil4hpwkwndh6f2zm-gcc-toolchain-12.2.0              
 i586-gnu
  /gnu/store/dypv1jgfzxlkbpp36z393xbdqal1v591-gcc-toolchain-12.2.0-static       
 i586-gnu
  /gnu/store/7bx9jykip9lc13yn2bck1m4q8ccds1mz-make-4.3-debug                    
 i586-gnu
  /gnu/store/422i4q46cisabwsxrs7raf67awwwzsys-make-4.3                          
 i586-gnu
  /gnu/store/f8jsczp72i49c79rjf8nv2q6jskqa5vy-gawk-5.1.0                        
 i586-gnu
  /gnu/store/d646qvpcdi0l9r2mqhqkxkrgwm0b50qh-findutils-4.8.0                   
 i586-gnu
  /gnu/store/zb0zbds0k2vjnln88dp4paldghl2mdwv-grep-3.6                          
 i586-gnu
  /gnu/store/62hb8sk7vnz26flasklrm0x0yh5pdnq4-coreutils-8.32-debug              
 i586-gnu
  /gnu/store/fmk805j58dig4076wy8q6fj1w47jxaw1-coreutils-8.32                    
 i586-gnu
  /gnu/store/g9jzhmhd841aqmmz2q7xqxq8v4269n9p-guix-1.3.0-30.17134b9             
 armhf-linux
  /gnu/store/nz1rw5cfrh4z3bl7fm2qsvxxpl955cqh-guile-3.0.8-debug                 
 armhf-linux
  /gnu/store/zmk1kmfk7wxm5w3ambajgnx7b0s5iq84-guile-3.0.8                       
 armhf-linux
  /gnu/store/26yb2pj71wg9cywmhpmsf6n1d81i43c5-python-3.9.9-idle                 
 armhf-linux
  /gnu/store/dh5rr8gd148afs3jzijs8i9gfwwi6igz-python-3.9.9                      
 armhf-linux
  /gnu/store/x0yzk738mm4if6kbc8i8q7x3ajz2rd27-python-3.9.9-tk                   
 armhf-linux
  /gnu/store/n7zl19njilpgisd80f63vwsli1gf8ykf-vim-9.0.0594                      
 armhf-linux
  /gnu/store/d4ab2pl3b3c7z9gcl1cb9c1xljh56wpj-emacs-no-x-28.1                   
 armhf-linux
  /gnu/store/7hwwpiplw46a3wjsfhl47g2d18zlyc26-openssh-8.9p1                     
 armhf-linux
  /gnu/store/5n3n87ybpmy3sh4k68xqv661wzs8zhs1-nss-certs-3.71                    
 armhf-linux
  /gnu/store/5nn8q80kywqvpzkhafpv3lppfbm5wm7n-bootstrap-tarballs-0              
 armhf-linux
  /gnu/store/vi0rxvwjkyds5dg5plqhzkrd3h0hmg96-guix-1.3.0-30.17134b9             
 i686-linux
  /gnu/store/7wx2f445piapz2mwii1mip9gsaxhmkqj-guix-1.3.0-30.17134b9             
 powerpc64le-linux
  /gnu/store/kpda3vy8qi2zv2lz7l9g736dv6w63yq0-vim-9.0.0594                      
 powerpc64le-linux
  /gnu/store/pgm8608mzhwxn86q48lpb77vp4pxp6g3-python-3.9.9-idle                 
 aarch64-linux
  /gnu/store/89qy7yb6c0wszq0686xcq4n66h5gy7mb-vim-9.0.0594                      
 aarch64-linux
  /gnu/store/fjqj99dav5wdqnmv2pdkr9y285sd5aam-emacs-28.1                        
 aarch64-linux
  /gnu/store/01k1v00g7vc7n90y5yr9bacrnr3ml46p-nss-certs-3.71                    
 aarch64-linux
  /gnu/store/pfk09jhc4fqalkv6bbv0cv7j00whydzm-gcc-toolchain-12.2.0-debug        
 aarch64-linux
  /gnu/store/kjcr6zmkh0gdraclp5v5kqqqsy4hdx9h-gcc-toolchain-12.2.0              
 aarch64-linux
  /gnu/store/ylhykr5g3yvbdarwb0h7smhhx2wga89m-gcc-toolchain-12.2.0-static       
 aarch64-linux
  /gnu/store/v14vx389rwshm5chr5llbrnjyrvgxbp7-bootstrap-tarballs-0              
 aarch64-linux
--8<---------------cut here---------------end--------------->8---

>From there one can try to build those things that are failing and
gradually fix things.  For example, if you want to see why Vim is
missing on aarch64-linux, you can run:

  guix build $(guix gc --derivers 
/gnu/store/89qy7yb6c0wszq0686xcq4n66h5gy7mb-vim-9.0.0594)

(This is assuming you’re on an aarch64-linux machine or that you set up
offloading or transparent emulation with binfmt_misc.)

Sometimes things build but substitutes are missing, in which case it
ends up being infrastructure work.

Looking at these issues can be tedious, so let’s join forces and share
our progress on IRC to begin with!

Thanks,
Ludo’.



reply via email to

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