From: ludo@gnu.org (Ludovic Courtès)
To: Gregor Giesen <giesen@zaehlwerk.net>
Cc: help-guix@gnu.org
Subject: Re: Extra files in build container
Date: Mon, 19 Jun 2017 16:49:43 +0200 [thread overview]
Message-ID: <87poe0uj5k.fsf@gnu.org> (raw)
In-Reply-To: <8c45d3ef-26d9-5818-69e9-c342c243c9e6@zaehlwerk.net> (Gregor Giesen's message of "Mon, 19 Jun 2017 13:44:40 +0200")
Hello,
Gregor Giesen <giesen@zaehlwerk.net> skribis:
> On Mon, Jun 19, 2017 at 13:26AM +0200 Ludovic Courtès wrote:
>>> On Fri, Jun 16, 2017 at 09:58:55AM +0200, Ludovic Courtès wrote:
>>>> In cases like the one you describe, we usually end up modifying tests to
>>>> use the numerical values for services and protocols rather than their
>>>> names.
>>> Unfortunately, this turns out to be quite cumbersome since in my case
>>> (unittests for unbound) there is a lot of test data to be modified and
>>> in many cases not only plain text but also encrypted records (DNSSEC
>>> tests). On the other hand the values to be looked up are mostly “udp”
>>> and “tcp” in /etc/protocols and “domain” in /etc/services, so I decided
>>> that using a preload library for these few glibc calls just in case of
>>> the unittest should do the trick rather than no checks at all.
>>
>> I think it would be easier to just use ‘substitute*’ to replace all the
>> occurrences of “tcp”, etc., wouldn’t it?
> alas many occurences of "tcp", "udp", etc. are hidden in
> encrypted/hashed records, so simple plain text substitutions would
> break the signatures.
Yes, I can imagine. But maybe (maybe not!), by selecting the right set
of files to modify, and by adjusting the regexp (let’s say “\<tcp\>” or
“"tcp"”) to match only what matters, it could work.
If that’s really not workable, then the LD_PRELOAD approach is fine.
>>> However, it is an ugly hack and bloats the package definition.
>> I agree, but it’s hard to improve on it without compromising
>> reproducibility.
> It's a good thing that the hack only affects the tests rather than any
> installation files.
>
> I have submitted the package in a patch yesterday (27419). I wonder
> whether one might want to put the source code of the preload library
> in an extra file rather than the package definition?
Since it’s small I think it’s OK as inline code.
Thanks,
Ludo’.
next prev parent reply other threads:[~2017-06-19 14:49 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-06-15 7:29 Extra files in build container Gregor Giesen
2017-06-16 7:58 ` Ludovic Courtès
2017-06-17 6:58 ` Gregor Giesen
2017-06-19 11:26 ` Ludovic Courtès
2017-06-19 11:44 ` Gregor Giesen
2017-06-19 14:49 ` Ludovic Courtès [this message]
2017-06-19 16:48 ` Gregor Giesen
2017-06-19 21:21 ` Ludovic Courtès
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
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87poe0uj5k.fsf@gnu.org \
--to=ludo@gnu.org \
--cc=giesen@zaehlwerk.net \
--cc=help-guix@gnu.org \
/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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).