GNU bug report logs - #41709
installed-os test failing

Previous Next

Package: guix;

Reported by: Mathieu Othacehe <othacehe <at> gnu.org>

Date: Thu, 4 Jun 2020 14:37:01 UTC

Severity: important

Done: Mathieu Othacehe <othacehe <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 41709 in the body.
You can then email your comments to 41709 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#41709; Package guix. (Thu, 04 Jun 2020 14:37:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Mathieu Othacehe <othacehe <at> gnu.org>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Thu, 04 Jun 2020 14:37:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Mathieu Othacehe <othacehe <at> gnu.org>
To: bug-guix <at> gnu.org
Subject: installed-os test failing
Date: Thu, 04 Jun 2020 16:36:38 +0200
Hello

The installed-os test is failing because the image closure is (again)
bigger than the allocated 1.4GiB in the test partition.

--8<---------------cut here---------------start------------->8---
guix size $(./pre-inst-env guix system build gnu/system/examples/bare-bones.tmpl)
--8<---------------cut here---------------end--------------->8---

reports 1397.3 MiB.

By reverting this commit 0eed77127592323d89f56c215a15374a1aaae110
(introducing an extra glibc to %default-locale-libcs), it drops down to:

1305.5 MiB.

Now multiple options:

* Revert this commit.
* Find other system closure improvements.
* Up the limit to 1.5GiB.

WDYT?

Thanks,

Mathieu




Information forwarded to bug-guix <at> gnu.org:
bug#41709; Package guix. (Thu, 04 Jun 2020 16:13:01 GMT) Full text and rfc822 format available.

Message #8 received at 41709 <at> debbugs.gnu.org (full text, mbox):

From: Mathieu Othacehe <othacehe <at> gnu.org>
To: 41709 <at> debbugs.gnu.org
Subject: Re: bug#41709: installed-os test failing
Date: Thu, 04 Jun 2020 18:12:22 +0200
> Now multiple options:
>
> * Revert this commit.
> * Find other system closure improvements.
> * Up the limit to 1.5GiB.
>
> WDYT?

Digging a bit more, I discovered multiple culprits in the image closure
size.

* "openssh" is dragging "xauth" which drags some X libraries (but this
does not account for much).

* "sudo" is dragging "python" for about 100MiB.

* "info-reader" is dragging "perl" (and is in fact the same size as
"texinfo" because of a mistake that I introduced with
614a1e3fa2d731d4719f03912b1b87fb4fd309cb) for about 100MiB.

* The switch to non-canonical version of "glibc" and "coreutils" to fix
system cross-compilation in dfc8ccbf5da96a67eb1cade499f0def21e7fdb02 is
also responsible for about 100MiB.

All in all, fixing all of this makes the closure size to drop below 1GiB
which is already a good first step.

I'll try to provide patches soon.

Thanks,

Mathieu





Information forwarded to bug-guix <at> gnu.org:
bug#41709; Package guix. (Fri, 05 Jun 2020 17:02:01 GMT) Full text and rfc822 format available.

Message #11 received at 41709 <at> debbugs.gnu.org (full text, mbox):

From: Mathieu Othacehe <othacehe <at> gnu.org>
To: 41709 <at> debbugs.gnu.org
Subject: Re: bug#41709: installed-os test failing
Date: Fri, 05 Jun 2020 19:01:13 +0200
> All in all, fixing all of this makes the closure size to drop below 1GiB
> which is already a good first step.
>
> I'll try to provide patches soon.

I also discovered that enabling CONFIG_MODULE_COMPRESS, the size of
linux-libre is reduced by 63%.

This makes the image way lighter.

--8<---------------cut here---------------start------------->8---
/gnu/store/6p01ki4iwdxp2bmlr2n27hfry3hp7yac-guix-1.1.0-6.da1b79f   477.4   278.3  29.5%
/gnu/store/158nawzghm4lwm7q7ah8zhh7624fw7zb-locale-2.31             91.9    91.9   9.7%
/gnu/store/la3bzdd032892xrm6sq5zz64rzjhp1yg-linux-libre-5.4.44      79.7    79.7   8.4%
...
total: 943.2 MiB
--8<---------------cut here---------------end--------------->8---

Now, the big source of improvement could be Guix itself (278MiB without
dependencies).

I think we can go further!

Thanks,

Mathieu





Severity set to 'important' from 'normal' Request was from Ludovic Courtès <ludo <at> gnu.org> to control <at> debbugs.gnu.org. (Sat, 06 Jun 2020 13:23:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-guix <at> gnu.org:
bug#41709; Package guix. (Sat, 06 Jun 2020 13:30:03 GMT) Full text and rfc822 format available.

Message #16 received at 41709 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Mathieu Othacehe <othacehe <at> gnu.org>
Cc: 41709 <at> debbugs.gnu.org
Subject: Re: bug#41709: installed-os test failing
Date: Sat, 06 Jun 2020 15:29:05 +0200
Hi!

Mathieu Othacehe <othacehe <at> gnu.org> skribis:

> By reverting this commit 0eed77127592323d89f56c215a15374a1aaae110
> (introducing an extra glibc to %default-locale-libcs), it drops down to:
>
> 1305.5 MiB.
>
> Now multiple options:
>
> * Revert this commit.
> * Find other system closure improvements.
> * Up the limit to 1.5GiB.

Let’s just set the ‘locale-libcs’ field in (gnu tests) so that it
contains a single libc.  WDYT?

> * "openssh" is dragging "xauth" which drags some X libraries (but this
> does not account for much).

Yes, but that’s necessary for “ssh -X”, so I think we consciously made
that choice long ago.

> * "sudo" is dragging "python" for about 100MiB.

Comes from the Python plugin added in
452244e670467afe0e8ccdfb9ca2980d5a3b4694.  No idea what it buys us.

> * "info-reader" is dragging "perl" (and is in fact the same size as
> "texinfo" because of a mistake that I introduced with
> 614a1e3fa2d731d4719f03912b1b87fb4fd309cb) for about 100MiB.

Ah would be nice to fix and add a #:disallowed-references flag there!

> * The switch to non-canonical version of "glibc" and "coreutils" to fix
> system cross-compilation in dfc8ccbf5da96a67eb1cade499f0def21e7fdb02 is
> also responsible for about 100MiB.

Yeah, that’s the price to pay.  :-/

> I also discovered that enabling CONFIG_MODULE_COMPRESS, the size of
> linux-libre is reduced by 63%.

Woohoo!

> Now, the big source of improvement could be Guix itself (278MiB without
> dependencies).

Yep, see my recent message on this topic.  :-)

Thanks,
Ludo’.




Information forwarded to bug-guix <at> gnu.org:
bug#41709; Package guix. (Tue, 09 Jun 2020 15:41:02 GMT) Full text and rfc822 format available.

Message #19 received at 41709 <at> debbugs.gnu.org (full text, mbox):

From: Mathieu Othacehe <othacehe <at> gnu.org>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 41709 <at> debbugs.gnu.org
Subject: Re: bug#41709: installed-os test failing
Date: Tue, 09 Jun 2020 17:40:48 +0200
Hey,

> Let’s just set the ‘locale-libcs’ field in (gnu tests) so that it
> contains a single libc.  WDYT?

I'll see first if I can get the closure smaller by other means. I think
it would be preferable to keep the tested operating-system as close as
possible to the default one.

>> * "openssh" is dragging "xauth" which drags some X libraries (but this
>> does not account for much).
>
> Yes, but that’s necessary for “ssh -X”, so I think we consciously made
> that choice long ago.

Ok, I proposed a work around by introducing openssh-sans-x.

>> * "sudo" is dragging "python" for about 100MiB.
>
> Comes from the Python plugin added in
> 452244e670467afe0e8ccdfb9ca2980d5a3b4694.  No idea what it buys us.

Some python bindings to sudo API, but I moved them to a separate
"python" output.

>
>> * "info-reader" is dragging "perl" (and is in fact the same size as
>> "texinfo" because of a mistake that I introduced with
>> 614a1e3fa2d731d4719f03912b1b87fb4fd309cb) for about 100MiB.
>
> Ah would be nice to fix and add a #:disallowed-references flag there!

In fact there were a #:disallowed-references already, but its argument
was also wrong so it went unnoticed. I fixed all of that on core-updates
branch.

>
>> * The switch to non-canonical version of "glibc" and "coreutils" to fix
>> system cross-compilation in dfc8ccbf5da96a67eb1cade499f0def21e7fdb02 is
>> also responsible for about 100MiB.
>
> Yeah, that’s the price to pay.  :-/

I'd like to re-introduce "canonical-packages", without breaking the
system cross-compilation, by using "let-system". See:
https://lists.gnu.org/archive/html/guix-devel/2020-06/msg00093.html.


>> Now, the big source of improvement could be Guix itself (278MiB without
>> dependencies).
>
> Yep, see my recent message on this topic.  :-)

Yes, thanks for your first analysis :)

Thanks,

Mathieu




Reply sent to Mathieu Othacehe <othacehe <at> gnu.org>:
You have taken responsibility. (Thu, 30 Jul 2020 19:03:01 GMT) Full text and rfc822 format available.

Notification sent to Mathieu Othacehe <othacehe <at> gnu.org>:
bug acknowledged by developer. (Thu, 30 Jul 2020 19:03:02 GMT) Full text and rfc822 format available.

Message #24 received at 41709-done <at> debbugs.gnu.org (full text, mbox):

From: Mathieu Othacehe <othacehe <at> gnu.org>
To: 41709-done <at> debbugs.gnu.org
Subject: Re: bug#41709: installed-os test failing
Date: Thu, 30 Jul 2020 21:02:40 +0200
Closing this one as the installed-os test has been fixed.

Mathieu




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Fri, 28 Aug 2020 11:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 3 years and 235 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.