[R-sig-Fedora] R.css missing in Fedora R-core rpm

Jeroen Ooms jeroenoom@ @end|ng |rom gm@||@com
Wed Mar 10 12:02:20 CET 2021


On Wed, Mar 10, 2021 at 12:18 AM Iñaki Ucar <iucar using fedoraproject.org> wrote:
>
> On Tue, 9 Mar 2021 at 23:55, Jeroen Ooms <jeroenooms using gmail.com> wrote:
> >
> > On Tue, Mar 9, 2021 at 2:27 PM Iñaki Ucar <iucar using fedoraproject.org> wrote:
> > >
> > > On Tue, 9 Mar 2021 at 13:26, Jeroen Ooms <jeroenooms using gmail.com> wrote:
> > > >
> > > > When installing an R package from source on Fedora using the standard
> > > > R-core rpm, we always get a warning at the end because of a missing
> > > > css file /usr/share/doc/R/html/R.css:
> > > >
> > > > ** byte-compile and prepare package for lazy loading
> > > > ** help
> > > > *** installing help indices
> > > > Error in file.copy(file.path(R.home("doc"), "html", "R.css"), outman) :
> > > >   (converted from warning) problem copying /usr/share/doc/R/html/R.css
> > > > to /usr/lib64/R/library/00LOCK-systemfonts/00new/systemfonts/html/R.css:
> > > > No such file or directory
> > > >
> > > > But when I try to install the missing file, yum says it is already installed:
> > > >
> > > >   yum install /usr/share/doc/R/html/R.css
> > > >   ## Package R-core-4.0.3-1.fc32.x86_64 is already installed.
> > > >
> > > > However it does not actually exist. Perhaps the rpm could make a copy
> > > > or symlink from /usr/lib64/R/library/base/html/R.css
> > >
> > > I assume you are doing this in a docker image. That file is not
> > > installed because our base images have "tsflags=nodocs" set in
> > > /etc/dnf/dnf.conf. Unset this before installing R-core, or, even
> > > better, install packages with --no-docs.
> >
> > Perhaps --no-docs should then be the default if tsflags=nodocs? The
> > default behavior is unfortunate, because it makes install.packages()
> > fail even if the user is not even interested in documentation, and
> > people come up with all sorts of workarounds eg:
> > https://github.com/r-lib/devtools/issues/2084
>
> install.packages doesn't fail. devtools does. I see:
>
> Warning in file.create(f.tg) :
>  cannot create file '/usr/share/doc/R/html/packages.html', reason 'No
> such file or directory'
> Warning in utils::make.packages.html(.Library, docdir = R.home("doc")) :
>  cannot update HTML package index
>
> The package is correctly installed and usable.

Many systems (including devtools, and many others) are set more strict
such that installation warnings are turned into errors, to ensure
users or applications never ends up installing broken packages.
Raising this warning by default for every install.packages() is really
unfortunate default behaviour, especially because it is evidently
unclear to users why this happens.



More information about the R-SIG-Fedora mailing list