From: Yann E. MORIN <yann.morin.1998@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 1/5 v2] support/download: make hash file optional
Date: Sat, 21 Mar 2015 18:00:41 +0100 [thread overview]
Message-ID: <20150321170041.GC4201@free.fr> (raw)
In-Reply-To: <550B3991.8090509@mind.be>
Arnout, All,
On 2015-03-19 22:03 +0100, Arnout Vandecappelle spake thusly:
> On 17/03/15 13:59, Yann E. MORIN wrote:
> > Currently, specifying a hash file for our download wrapper is mandatory.
> >
> > However, when we download a git, svn, bzr, hg or cvs tree, there's by
> > design no hash to check the download against.
> >
> > Since we're going to have hash checking mandatory when a hash file
> > exists, this would break those downloads from a repository.
> >
> > So, make specifying a hash file optional when calling our download
> > wrapper and bail out early from the check-hash script if no hash file is
> > specified.
>
> An alternative approach would be to allow an empty hash in the hash file, e.g.
Well, as I state below, we'll need that. But for git/hg/svn/bzr/cvs
clones/checkouts/... there is intrisically no reason to have a hash, by
design.
Yes, reproducibility. But that's soooo far away... :-/
However...
> # From git => no hash
> none xxx avrdude-eabe067c4527bc2eedc5db9288ef5cf1818ec720.tar.gz
At first, I was not too fond of this, but it turns out we'll have to
have it. Consider the following:
ifeq ($(FOO_BAR),y)
FOO_VERSION = long-git-hash
FOO_SITE = $(call github,foo,bar,$(FOO_VERSION))
else
FOO_VERSION = 1.2.3
FOO_SITE = http://foosoftware.org/download
endif
Say we add a hash for version 1.2.3; currently, we do not add hashes
for archives downloaded from github, because they seem to be
non-reproducible. However, the github helper is not using git-clone, but
us really just a way to generate an http:// UEL we download with wget.
So, what happens now is that, since hashes are mandatory as long as the
.hash file exists, downloads from github for this foo package is broken.
This is the case for gcc, for example, since we get the arc gcc from
github, and the other versions from the GNU mirror.
So, we'll need a way to state that there is no hash for a file, but that
will have to be explicit.
I'll rework the series to take that in considreation. Thanks! :-)
Regards,
Yann E. MORIN.
> This has the advantage that we don't have to revert this patch in the future
> when we _do_ make reproducible tarballs (which is not rocket science, the
> reproducible builds people in Debian and Fedora do it). Of course, we'll be
> stuck with a s*tload of hash files that have this empty hash...
>
> Regards,
> Arnout
>
> --
> Arnout Vandecappelle arnout at mind be
> Senior Embedded Software Architect +32-16-286500
> Essensium/Mind http://www.mind.be
> G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven
> LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
> GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
next prev parent reply other threads:[~2015-03-21 17:00 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-03-17 12:59 [Buildroot] [PATCH 0/5 v2] support/download: be more aggressive on missing hashes (branch yem/dl-hash) Yann E. MORIN
2015-03-17 12:59 ` [Buildroot] [PATCH 1/5 v2] support/download: make hash file optional Yann E. MORIN
2015-03-19 20:34 ` Arnout Vandecappelle
2015-03-19 21:03 ` Arnout Vandecappelle
2015-03-21 17:00 ` Yann E. MORIN [this message]
2015-03-21 17:28 ` Arnout Vandecappelle
2015-03-17 12:59 ` [Buildroot] [PATCH 2/5 v2] package infra: do not check hashes when downloading from a repository Yann E. MORIN
2015-03-19 20:36 ` Arnout Vandecappelle
2015-03-17 12:59 ` [Buildroot] [PATCH 3/5 v2] support/download: return different exit codes for different failures Yann E. MORIN
2015-03-19 20:44 ` Arnout Vandecappelle
2015-03-17 12:59 ` [Buildroot] [PATCH 4/5 v2] support/download: properly catch missing hashes Yann E. MORIN
2015-03-19 20:45 ` Arnout Vandecappelle
2015-03-17 12:59 ` [Buildroot] [PATCH 5/5 v2] support/download: always fail when there's no hash Yann E. MORIN
2015-03-19 20:51 ` Arnout Vandecappelle
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20150321170041.GC4201@free.fr \
--to=yann.morin.1998@free.fr \
--cc=buildroot@busybox.net \
/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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox