a9cbd67f90
This mounts an arbitrary Nix store on the specified mount point. Typical usage: $ /nix/store/d0am5d8gwh2kfdcgyxh4y684mb5b2v54-blender-2.79/bin/blender --version bash: /nix/store/d0am5d8gwh2kfdcgyxh4y684mb5b2v54-blender-2.79/bin/blender: No such file or directory $ nix mount-store /tmp/mp --store https://cache.nixos.org?local-nar-cache=/tmp/nars $ unshare -m -r $ mount -o bind /tmp/mp /nix/store $ /nix/store/d0am5d8gwh2kfdcgyxh4y684mb5b2v54-blender-2.79/bin/blender --version [after a lot of downloading...] Blender 2.79 (sub 0) One application is to replace the current remote store file access in hydra-server implemented via "nix {cat,ls}-store", which doesn't work all that well (e.g. it doesn't resolve symlinks properly). Another application would be on-demand fetching of build inputs on Hydra build slaves (to speed up builds that don't access their entire closure). However, that will require a lot more machinery. |
||
---|---|---|
.. | ||
add-to-store.cc | ||
build.cc | ||
cat.cc | ||
command.cc | ||
command.hh | ||
copy.cc | ||
dump-path.cc | ||
edit.cc | ||
eval.cc | ||
hash.cc | ||
installables.cc | ||
legacy.cc | ||
legacy.hh | ||
local.mk | ||
log.cc | ||
ls.cc | ||
main.cc | ||
mount.cc | ||
optimise-store.cc | ||
path-info.cc | ||
progress-bar.cc | ||
progress-bar.hh | ||
repl.cc | ||
run.cc | ||
search.cc | ||
show-config.cc | ||
show-derivation.cc | ||
sigs.cc | ||
verify.cc | ||
why-depends.cc |