Leaving this topic in “Uncategorized” because it is more like mentioning a curiosity that won’t fit “Learn” and probably to verbose for “Links”…
Just found out about CernVM File System (CernVM-FS, CVMFS) which is a
software distribution service […] implemented as a POSIX read-only file system in user space (a FUSE module). Files and directories are hosted on standard web servers and mounted in the universal namespace
/cvmfs.
The CVMFS overview states that
In contrast to general purpose network file systems such as nfs or afs, CernVM-FS is particularly crafted for fast and scalable software distribution. Running and compiling software is a use case general purpose distributed file systems are not optimized for.
and it doesn’t seem to prescribe any specific build system or package manager to use it with, and so Nix could be a perfect fit for this purpose. In fact, similar research projects already exist:
- FOSDEM '18 talk - Combining CVMFS, Nix, Lmod, and EasyBuild at Compute Canada
(slides, follow-up paper) - Chris Burr - Nix for software deployment in high energy physics (NixCon 2018)
- Nix and LHCb
- siscia/nix-cvmfs-ubuntu-ok docker image
CVMFS with Nix sounds very similar to what flox is aiming for, but a direct comparison seems unfair because even after superficially looking at the resources above, CVMFS+Nix will require a lot of plumbing. An interesting idea though.
@siscia I initially found out about CVMFS from your post (just saw your announcement as well), and your name also popped up many times when I was doing the research. Are you still using this or similar setup? Would love to read about your experiences.