Hello! Thanks for investigating.
Maxim Cournoyer <maxim.courno...@gmail.com> skribis: > It'd be very cool to embed arbitrary logic such as sorting, filtering, > or whatever else we need doing directly in a search path specification > :-). Do you thing this could be done? Perhaps Gexps could be useful > for this? No, that sounds pretty unreasonable to me. :-) However, I’m sure we should be able to sort things appropriately in guix/build-system/gnu.scm and/or in ‘%final-inputs’, no? ‘%final-inputs’ order actually looks good: --8<---------------cut here---------------start------------->8--- scheme@(gnu packages commencement)> (map car %final-inputs) $2 = ("tar" "gzip" "bzip2" "xz" "file" "diffutils" "patch" "findutils" "gawk" "sed" "grep" "coreutils" "make" "bash" "ld-wrapper" "binutils" "gcc" "libc" "libc:static" "locales") --8<---------------cut here---------------end--------------->8--- But then it breaks when we add everything: --8<---------------cut here---------------start------------->8--- scheme@(guile-user)> (map car (bag-transitive-inputs (package->bag coreutils))) $5 = ("source" "perl" "tar" "gzip" "bzip2" "xz" "file" "diffutils" "patch" "findutils" "gawk" "sed" "grep" "coreutils" "make" "bash" "ld-wrapper" "binutils" "gcc" "libc" "libc:static" "locales" "acl" "gmp" "libcap" "kernel-headers") --8<---------------cut here---------------end--------------->8--- Here acl, gmp, and libcap should be before libc and all (‘bag-transitive-inputs’ is used by ‘bag->derivation’.) So I think we should arrange to have the right order in ‘bag->derivation’. WDYT? Ludo’.