Pan Xie <xie...@skyguard.com.cn> writes:

1. Does a substitute server keeps all the packages it build? If the answer is yes, won't it consume huge storage resources? If the answer
is no, then the user who use time-machine travel back to

    years before have to build all the packages from scratch?

You are correct on all points. In practice some substitute servers will drop some substitutes that haven't been accessed in a while.

On ci.guix.gnu.org we have attached 100TB storage of which 37TB are in use (for the cache of substitutes, the active store, and the system).

2. If I am going to create a mirror of guix's official substitute
server, what is the requirement of the storage?

This depends on whether you intend to keep everything or only store a recent subset.

3. Does a package really has lots of build on a substitute server? For example, emacs-29.1 has lots of inputs. I guess each time there is a commit to guix repository which change the inputs, there will be a
build

    of it, so there must be lots of emacs-29.1 builds, with different
hash numbers. Or am I wrong?

You are not wrong. In this case many files will be shared among these different builds, though, so on a deduplicating file system this is not much of a problem. Storage requirements can go up when the similarities between builds are hidden from the deduplicating storage, e.g. when the substitutes are stored as compressed archives.

--
Ricardo

Reply via email to