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?
For the bordeaux build farm [1], the answer is yes, ignoring some things going wrong, everything that has been built has been kept. Note that the bordeaux build farm has only been around for the last 4 to 5 years, and won't have substitutes for Guix revisions before that (although this could change in the future). There are some public stats about this [2], but it needs to be displayed in a nice way. There are nearly 8 million nars, which take up around 26TiB of space. The project makes use of two copies of these nars, one which I host and another hosted at the MDC. 1: https://bordeaux.guix.gnu.org/ 2: https://bordeaux.guix.gnu.org/metrics Note that I do actually want to start removing nars, but only nars which aren't relevant to the master branch. Since the bordeaux build farm builds branches and patches, it's not helpful to store nars for these builds indefinitely, unless of course they're relevant to the master branch. > 2. If I am going to create a mirror of guix's official substitute > server, what is the requirement of the storage? If you want to store all the bordeaux nars, then you'd need at least 26TiB, but for running the mirrors listed on bordeaux.guix.gnu.org, they operate as a caching reverse proxy. For that approach, you only need say 60GiB of space, enough for the nar-herder database plus a few cached nars. If you want NGinx to cache more nars, then you simply increase the space allotted. > 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? Nope, you're right. If you want to explore the nar-herder database for bordeaux.guix.gnu.org, you can download a dump of it here [3] (it's 19G in size). You can also see the outputs changing over time through the data service [4]. 3: https://bordeaux.guix.gnu.org/latest-database-dump 4: https://data.guix.gnu.org/repository/1/branch/master/package/emacs/output-history
signature.asc
Description: PGP signature