Another problem with packages, that Scheme is not yet facing, but which
it may actually face in the future, is that Linux distributions tend to
package individual libraries into their own package repositories, rather
than relying on language distributions' package repositories.
Excellent point.
It sounds like we might be able to solve that using the library search
path that Scheme implementations already have. If the Linux distro
installs Scheme packages in /usr/local/share/scheme, put
/usr/local/share/scheme in Guile's search path. If the language package
manager installs them into $HOME/scheme, also add that to Guile's search
path, but with higher precedence so that user-installed packages win
over system packages.
Linux distros tend to be quite picky about managing the distro-installed
packages and the files in those packages, so the user's Scheme package
manager most likely shouldn't touch the distro-installed packages.