Hi,

Quoting Jérôme Charaoui (2025-01-26 18:49:07)
> On Mon, 02 Dec 2024 15:03:48 +0100 Johannes Schauer Marin Rodrigues
> <jo...@debian.org> wrote:
> > On Sat, 23 Dec 2023 15:50:24 +0100 Santiago Vila <sanv...@debian.org> wrote:
> > > so maybe we would just need some new environment variable string to be 
> > > used
> > > as a prefix for that.
> > 
> > [...]
> > 
> > To prefix dpkg-buildpackage with something else, you can use BUILD_ENV_CMND 
> > or
> > $build_env_cmnd in your ~/.config/sbuild/conf.pl. Can you confirm that this
> > works for you?
> 
> I've been keen to try this out since I'm currently looking into one of 
> those "will FTBFS during trixie support period bugs".
> 
> Unfortunately, this doesn't work when added to the sbuild config:
> 
>      $build_env_cmnd = 'faketime -f "@2028-06-10 12:00:00"';
> 
> which results in:
> 
>      Can't exec "faketime -f "@2028-06-10 12:00:00"": No such file or 
> directory at /usr/libexec/sbuild-usernsexec line 515.
> 
> In addition, it seems that this configuration setting only accepts a 
> string, since using an array doesn't work, it tries to use the variable 
> reference in the command line rather than expand the array items.
> 
> So, it would be quite useful if $build_env_cmnd was adjusted to be able 
> to accept not only an executable but command-line arguments as well.

I agree. This can be added and I'll gladly accept patches.

Other users of this option have put their own custom script into the chroot to
work around this limitation: 
https://lists.reproducible-builds.org/pipermail/rb-general/2023-February/002876.html

It is rare that this option is getting used. Another potential use-case is
eatmydata.

In general though, I'd caution against the use of faketime for this purpose.
faketime uses the LD_PRELOAD mechanism. I'd expect that time bombs are
especially likely in package test suites. At the same time, any funkiness
surrounding a custom LD_PRELOAD is *also* most common in package tests.

I know that Santiago Vila does similar tests but sets the system time to carry
them out. I think doing it that way is the far superior approach. I think you
will miss breaking packages when you use faketime.

Thanks!

cheers, josch

Attachment: signature.asc
Description: signature

Reply via email to