Here's a patch to inhibit the same package (in the sense of eq?) from being traversed more than once by fold-packages. One example where this helps is the guile-2.0 package in (gnu packages guile), which is exported in two different variables: guile-2.0 and guile-2.0/fixed. Note that even after applying this patch, there are still cases where "guix-package -A ." produces the same output twice, but that's a different problem. In the remaining cases, there are actually two distinct package objects being printed the same way because the 'location' field is inherited from one package to another. For example this happens with the 'gcc-boot0' and 'gcc-4.7' packages in (gnu packages base). What do you think? Mark