Email or username:

Password:

Forgot your password?
Ludovic Courtès

Virtual build machines to the rescue of software archaeologists:
issues.guix.gnu.org/68677

Not just archaeologists actually: it’s something you need to rebuild packages that include “time traps” (fail to build after some time). It’s relatively rare, but when you need them, you’d rather have a simple way to work around the problem.

#Guix #ReproducibleBuilds #ReproducibleResearch

3 comments
Vagrant Cascadian

@civodul

Also, running builds in the future can help detect time bombs before they happen so that you can fix it now, before it is a more bothersome problem!

I am interested in using this to introduce problems...
changing the clock, kernel, CPU, hostname and username is really useful for #ReproducibleBuilds troubleshooting, as all of these things have been known to affect build results in the wild.

Looking forward to playing with this, thanks!

Ludovic Courtès

@vagrantc Yup, and reprotest has shown that this can indeed be very useful!

My ideal, in the spirit of Nix/Guix, would be to have a way to keep those details under control. But VMs are more expensive than mere processes in separate namespaces: we wouldn’t want to run every build in a VM. Plus that creates a bootstrap problem: how do you provision the VM?

For now, this tool should at least let us rebuild old packages.

Csepp 🌢

@civodul I was gonna ask if this could be achieved with namespace but apparently time is not namespaced. Sigh.

Go Up