lix/tests
Eelco Dolstra 276a40b31f Handle case collisions on case-insensitive systems
When running NixOps under Mac OS X, we need to be able to import store
paths built on Linux into the local Nix store. However, HFS+ is
usually case-insensitive, so if there are directories with file names
that differ only in case, then importing will fail.

The solution is to add a suffix ("~nix~case~hack~<integer>") to
colliding files. For instance, if we have a directory containing
xt_CONNMARK.h and xt_connmark.h, then the latter will be renamed to
"xt_connmark.h~nix~case~hack~1". If a store path is dumped as a NAR,
the suffixes are removed. Thus, importing and exporting via a
case-insensitive Nix store is round-tripping. So when NixOps calls
nix-copy-closure to copy the path to a Linux machine, you get the
original file names back.

Closes #119.
2014-07-16 16:02:05 +02:00
..
lang
add.sh
binary-cache.sh
binary-patching.nix
binary-patching.sh
build-hook.hook.sh
build-hook.nix
build-hook.sh
case-hack.sh Handle case collisions on case-insensitive systems 2014-07-16 16:02:05 +02:00
case.nar Handle case collisions on case-insensitive systems 2014-07-16 16:02:05 +02:00
check-refs.nix
check-refs.sh
common.sh.in
config.nix
dependencies.builder0.sh
dependencies.builder1.sh
dependencies.builder2.sh
dependencies.nix
dependencies.sh
dump-db.sh
export-graph.nix
export-graph.sh
export.sh
fallback.sh
fetchurl.nix
fetchurl.sh
filter-source.nix
filter-source.sh
fixed.builder1.sh
fixed.builder2.sh
fixed.nix
fixed.sh
gc-concurrent.builder.sh
gc-concurrent.nix
gc-concurrent.sh
gc-concurrent2.builder.sh
gc-runtime.nix
gc-runtime.sh
gc.sh
hash-check.nix
hash.sh
import-derivation.nix
import-derivation.sh
init.sh
install-package.sh
lang.sh
local.mk Handle case collisions on case-insensitive systems 2014-07-16 16:02:05 +02:00
logging.sh
misc.sh
multiple-outputs.nix
multiple-outputs.sh
negative-caching.nix
negative-caching.sh
nix-build.sh
nix-channel.sh
nix-copy-closure.nix
nix-profile.sh
nix-pull.sh
nix-push.sh
optimise-store.sh
parallel.builder.sh
parallel.nix
parallel.sh
referrers.sh
remote-builds.nix
remote-store.sh
repair.sh
secure-drv-outputs.nix
secure-drv-outputs.sh
simple.builder.sh
simple.nix
simple.sh
substituter.sh
substituter2.sh
substitutes.sh
substitutes2.sh
timeout.builder.sh
timeout.nix
timeout.sh
user-envs.builder.sh
user-envs.nix
user-envs.sh