Dear Gabor, I thought of this solution but rejected it, perhaps too hastily, because it seemed awkward. I suppose, however, that since the Rcmdr package would be unchanged, a user could choose to install it as at present with dependencies=TRUE, or alternatively install the RcmdrInstall package and avoid the recursive installation of suggested packages. Maybe the idea is a good one after all.
Thank you, John > -----Original Message----- > From: Gabor Grothendieck [mailto:ggrothendi...@gmail.com] > Sent: September-22-09 2:32 PM > To: John Fox > Cc: r-devel@r-project.org > Subject: Re: [Rd] Rcmdr package dependencies > > Create a package called RcmdrInstall, say, with no content and have it > depend on Rcmdr. RcmdrInstall would have all packages as dependencies > while Rcmdr would only have the essential packages as dependencies. > > Install RcmdrInstall. That would also force Rcmdr to be installed. > > Now issue: > > library(Rcmdr) > > as before and the non-essentials won't be loaded. > > Thus the only difference between the current procedure and the new > procedure as far as the user is concerned is that they install > RcmdrInstall rather than Rcmdr. They load and run Rcmdr in the same > way. > > On Tue, Sep 22, 2009 at 9:15 AM, John Fox <j...@mcmaster.ca> wrote: > > Dear r-devel members, > > > > My Rcmdr package "depends" on several other packages (tcltk, grDevices, > > utils, and car) and "suggests" a number of others (abind, aplpack, > > colorspace, effects, foreign, grid, Hmisc, lattice, leaps, lmtest, MASS, > > mgcv, multcomp, nlme, nnet, relimp, rgl, and RODBC). The reason for the > > distinction is that I don't want all of these packages to load when the > > Rcmdr loads; rather, the "suggested" packages are loaded as they're needed. > > But all of the packages -- both those under "depends" and those under > > "suggests" -- really are necessary for all of the features of the Rcmdr to > > work. For example, if the "leaps" package is absent, then the "Subset model > > selection" item in the "Models" menu is suppressed. > > > > This arrangement works reasonably well, but it makes it awkward to install > > the Rcmdr. If the user issues the command install.packages("Rcmdr"), then > > the "suggested" packages aren't installed. On the other hand, if the user > > issues the command install.packages("Rcmdr", dependencies=TRUE), which is > > what I currently recommend, then "suggested" packages are installed > > recursively, causing dozens of packages, most of them actually unnecessary, > > to be installed. This issue has been growing more acute, and at this point > > even with a fast Internet connection it takes quite a while for all of the > > dependencies to download and install. > > > > I wonder whether I've missed something. Is there a way for me to arrange > the > > Rcmdr package dependencies so that only the necessary packages (those > > currently listed under both "depends" and "suggests" and the packages on > > which they "depend") are installed along with the Rcmdr, but the currently > > "suggested" packages aren't loaded when the Rcmdr loads? > > > > Any help would be appreciated. > > > > John > > > > ------------------------------ > > John Fox, Professor > > Department of Sociology > > McMaster University > > Hamilton, Ontario, Canada > > web: socserv.mcmaster.ca/jfox > > > > ______________________________________________ > > R-devel@r-project.org mailing list > > https://stat.ethz.ch/mailman/listinfo/r-devel > > ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel