On Thursday 23 October 2008 23:08:53 George N. White III wrote:
There have always been conflicts between the CRAN package system and
Fedora or other linux packaging Guidelines. Users can install CRAN
packages without root privileges, but then the search function won't know
about the user's packages, and packages that rely on other library (gsl,
hdf5, etc) still need -dev RPM's. Linux distros should not be trying to
for mainstream packages with their own robust package management and
Playing devil's advocate I should remark that first each language is building
its own repository and packaging system in a sense we have lots of equivalents
of (yum+rpm) for each language (perl, php, python, R, tex, ...).
On the other hand for the system to be really useful it must use the least
possible denominator (read the dumbest wins- pun intended ;-) ).
Instead, they should look for ways to improve support
for users who rely on those 3rd party systems. For example:
R-base: basic runtime without dev dependencies, for sites that provide
binary CRAN packages (e.g., on a shared directory) so users don't need to
R-core: R-base + -dev dependencies for those who want to install source
packages from CRAN (e.g., most individual R users)
R-X-sup(plement): -dev dependencies needed to build package X (e.g.,
R-hdf5-sup requires hdf5-dev for the hdf5 package from CRAN, gsl-dev
for gsl, etc.). These aren't strictly necessary, but would serve to
link package versions on CRAN with the versions of the support libs in
something that can take some effort (e.g., peeking in the sources) to
determine. For sites
where users need to ask admins to install libraries, this simplifies
the problem of telling the admin which libs to install.
I am not sure if this is right path or the right balance.
Another possible choice is to expand R2spec in scope and not only create rpm
spec files but to discover the different dependencies and how they are solved
There is no reason that we can not rebuild the whole CRAN (or almost all of
In the long run, linux distros should look at devising ways to
information from these
3rd party package managers to help resolve dependencies automatically.
As everything with free software the survival of the fittest means that this
will only happen if there are people interested in spending resources to make