Hi, when I started (nut never finished) to package dtx some time ago, I already ask similar. No I'm packaging debops, and I'm questioning the answer I got last time. Assume some program, shell-script, whatever is calling an external program. What is the correct way to reference this? Shall it become an absolute path, or just the basename. In the DEB/RPM world, the basename is used, and package "pkgA"'s meta-data ensure that the required package "pkgB" is installed in an sufficient version. When "pkgB" is updated, "pkgA" does not need to be rebuild or updated, as long as "pkgA"'s requirements are still satisfied. Any installed "pkgA" will now use the new version of "pkgB". In Guix, I was told to do so, the absolute path is used. This will ensure the required package "pkgB" is installed in exact the version used when building "pkgA". When the "pkgB" is updated, "pkgA" need to be rebuild and updated. too. If not updated, existing installations of "pkgA" will still use the *old* version of "pkgB". I understand that in Guix package dependencies are not based ion meta-data, but are tracked based on references found in the files. I also understand that in many cases it is desirable to know exactly which version of pkgB was used when running pkgA. Yet in many cases the exact version of pkgB does not matter, a minimum version might be enough. And if the version of pkgB was new enough when bringing the pkgA to Guix, the version does not even really matter. E.g. if the external program is less, git, encfs, or which. So: What is the official recommendations? Is this already been stated in to manual? -- Regards Hartmut Goebel | Hartmut Goebel | h.goebel@crazy-compilers.com | | www.crazy-compilers.com | compilers which you thought are impossible |