> How deep shall this go ? dd, awk, od, head, find, test, mv, rm, ... Ideally everything. That's why we don't use shell scripts that much: They are annoying to make behave. Compare with C which will link a library and with option "-Wl,-rpath" (which we use everywhere) will embed the absolute path to the library in the executable and NEVER use another one than the one it was compiled with. Usually, we just wrap the entire shell script in a wrapper that sets up PATH first. As long as there are no naming conflicts in the dependencies, it should be fine (since PATH just lists directories, not regular files, it could still be bad). I'm thinking of doing this PATH wrapper here, too. It's easily automated on the Guix side. The end goal (for the most part reached) is to have a package be a module that doesn't affect the rest of the system except when it is supposed to. Other distributions are spectacularily bad at this--to say nothing about Windows where it's normal that installing one application can break a totally unrelated application that had already been there. > But do all reasonable shells support -e ? > (I must dig in man ksh down to builtin command -set to get confirmation.) I don't know. > > For now, let's try the shell script and make it more paranoid. > > Please report all changes (and be ready to motivate them). Okay!