Subject: bug#39941: Disk-image size increase on core-updates.

From: Marius Bakke <[email-masked]>
Date: Sat, 14 Mar 2020 13:30:00 +0100

Mathieu Othacehe <[email-masked]> writes:

> Hello,
>
> Here's a patch that adds a "lib" output to cross-gcc. This was indeed
> quite tricky!
>
> Anyway, with this patch the closure of "hello" for aarch64-linux-gnu is
> reduced from 469 MiB to 187 MiB.

Woohoo :-)

> I think we can go further.
>
> --8<---------------cut here---------------start------------->8---
> mathieu@elbruz ~/guix [env]$ guix size /gnu/store/14ygibryjr7mcly0q9mb8306hlg16nhq-hello-2.10
> store item                                                       total    self
> /gnu/store/vm2gaw5jk1zr1x9qzj4z52qjxvrh0nk9-glibc-cross-aarch64-linux-gnu-2.31   158.9    71.4  38.2%
> /gnu/store/w00jb174abikqpznadwzvvgwl3r7qfzd-glibc-2.31              38.4    36.7  19.6%
> /gnu/store/08vqg0s77dnff7rz90b0h87n2rfyaszg-gcc-7.5.0-lib           71.0    32.6  17.5%
> /gnu/store/vqsixs9ks4chpjynhizkpdd1gdshv87h-gcc-cross-aarch64-linux-gnu-7.5.0-lib   186.8    27.9  14.9%
> /gnu/store/fgrpk8r46k34pyqv6xkbi8gbv997dbpx-gcc-cross-sans-libc-aarch64-linux-gnu-7.5.0-lib    80.8     9.8   5.2%
> /gnu/store/zf5603c5l6ilgyg35gqfkn82v3k9hbri-linux-libre-headers-cross-aarch64-linux-gnu-5.4.20     5.1     5.1   2.7%
> /gnu/store/6hhsxa3vvbh8gvcfjw4k5sfk1qrhkcrf-bash-static-5.0.16       1.6     1.6   0.9%
> /gnu/store/nvc3r588745kkj159lm1pa4xz5g99rqd-bash-static-5.0.16       1.6     1.6   0.9%
> /gnu/store/14ygibryjr7mcly0q9mb8306hlg16nhq-hello-2.10             187.0     0.2   0.1%
> total: 187.0 MiB
> --8<---------------cut here---------------end--------------->8---
>
> There are still references to native glibc/gcc and two different bash,
> that may be removed?

Maybe file a different bug report for those so it does not get
forgotten?  One thing at the time...

FWIW I think the original problem with huge closure increase has been
fixed with 8e98f750e63e8723db0361f4e3e960193278fa47 and
7688dbbdd7a7a091c9a0fc4850e70725e3ff64e3.

I'm getting 1372 MiB for the cross-mini example at approximately commit
d594963856690f1aacf228c8a83e406d33bc44ce (cross-built for
arm-linux-gnueabihf).

> WDYT?

The patch is almost 40k lines!  Most of the changes are whitespace
changes in the ChangeLog files, could you remove the commit log and
ChangeLog entries altogether to make the patch easier to parse?

Where did you find this patch?