Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 684652 - dev-lang/go-1.12.4 downloads too many bootstrap tar files
Summary: dev-lang/go-1.12.4 downloads too many bootstrap tar files
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: William Hubbs
Depends on:
Reported: 2019-04-28 19:04 UTC by Michael Hofmann
Modified: 2020-01-27 01:12 UTC (History)
5 users (show)

See Also:
Package list:
Runtime testing required: ---

Introduce go-bootstrap package (go-bootstrap.patch,10.90 KB, patch)
2020-01-23 03:07 UTC, Mike Gilbert
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Hofmann 2019-04-28 19:04:57 UTC
I just started a first-time install of dev-lang/go-1.12.4 on an amd64 machine.

Emerge downloads bootstrap files for all architectures:

55.053.831 /usr/portage/distfiles/go-darwin-amd64-bootstrap-1.8.tbz
53.739.013 /usr/portage/distfiles/go-freebsd-386-bootstrap-1.8.tbz
55.103.927 /usr/portage/distfiles/go-freebsd-amd64-bootstrap-1.8.tbz
53.843.745 /usr/portage/distfiles/go-linux-386-bootstrap-1.8.tbz
55.399.105 /usr/portage/distfiles/go-linux-amd64-bootstrap-1.8.tbz
53.948.103 /usr/portage/distfiles/go-linux-arm-bootstrap-1.8.tbz
51.947.002 /usr/portage/distfiles/go-linux-arm64-bootstrap-1.8.tbz
52.315.782 /usr/portage/distfiles/go-linux-ppc64-bootstrap-1.8.tbz
52.211.575 /usr/portage/distfiles/go-linux-ppc64le-bootstrap-1.8.tbz
57.124.869 /usr/portage/distfiles/go-linux-s390x-bootstrap-1.8.tbz
54.926.326 /usr/portage/distfiles/go-solaris-amd64-bootstrap-1.8.tbz

Emerge also checks all of those files. But it unpacks only one of them:

>>> Emerging (1 of 1) dev-lang/go-1.12.4::gentoo
 * go1.12.4.src.tar.gz BLAKE2B SHA512 size ;-) ...
 * go-linux-amd64-bootstrap-1.8.tbz BLAKE2B SHA512 size ;-) ...
 * go-linux-arm-bootstrap-1.8.tbz BLAKE2B SHA512 size ;-) ...
 * go-linux-arm64-bootstrap-1.8.tbz BLAKE2B SHA512 size ;-) ...
 * go-linux-ppc64-bootstrap-1.8.tbz BLAKE2B SHA512 size ;-) ...
 * go-linux-ppc64le-bootstrap-1.8.tbz BLAKE2B SHA512 size ;-) ...
 * go-linux-s390x-bootstrap-1.8.tbz BLAKE2B SHA512 size ;-) ...
 * go-linux-386-bootstrap-1.8.tbz BLAKE2B SHA512 size ;-) ...
 * go-freebsd-amd64-bootstrap-1.8.tbz BLAKE2B SHA512 size ;-) ...
 * go-freebsd-386-bootstrap-1.8.tbz BLAKE2B SHA512 size ;-) ...
 * go-darwin-amd64-bootstrap-1.8.tbz BLAKE2B SHA512 size ;-) ...
 * go-solaris-amd64-bootstrap-1.8.tbz BLAKE2B SHA512 size ;-) ...
>>> Unpacking source...
>>> Unpacking go1.12.4.src.tar.gz to /var/tmp/portage/dev-lang/go-1.12.4/work
>>> Unpacking go-linux-amd64-bootstrap-1.8.tbz to /var/tmp/portage/dev-lang/go-1.12.4/work
>>> Source unpacked in /var/tmp/portage/dev-lang/go-1.12.4/work

Emerge should download only the bootstrap file which is required for the current architecture.

Reproducible: Always
Comment 1 William Hubbs gentoo-dev 2019-05-02 14:13:52 UTC
This is fixed in the following commit:
Comment 2 makepost 2019-05-11 23:29:59 UTC
William, can you please reopen? You're correct when commenting:

> on an amd64 box you should download the amd64 bootstrap binary, not the arm one.

Adding to everyone's first install a never used 600m download isn't okay. The ebuild still wants to spend an additional half hour wasting a significant fraction of monthly traffic. Crossdev support, forcing the user to fetch all binaries for every architecture, should be optional, with a USE flag of its own.
Comment 3 Michael Hofmann 2019-10-04 16:11:33 UTC
The problem seems to persist.

Comment 4 Mike Gilbert gentoo-dev 2020-01-23 03:07:43 UTC
Created attachment 604032 [details, diff]
Introduce go-bootstrap package

This patch series should address the issue.
Comment 5 William Hubbs gentoo-dev 2020-01-27 01:12:05 UTC
This is fixed in 1.13.6.