Hello,
My colleague recently received the following error message and it has
caused some concern among our system administrators. The
getProbePackage function tries to download and install a package
that's
not locally available and fails because the user doesn't have write
permission to the library directory. There are, however, a core group
of R users who do have write permission and we'd like to prevent
unintentional package installations. Is there an easy way to disable
this function?
Also, this has sparked some debate as to whether bioconductor software
also automatically updates existing packages. If so, can this also be
disabled?
Do automatic package installs/updates occur for all packages or just a
subset (e.g. annotation packages)?
I apologize if this is a redundant question, but I didn't see this
addressed in the online documentation and was unable to search the
mail
archive.
Thanks,
Pat
Patrick G. Votruba
Analyst/Programmer
Statistical Systems Unit
Mayo Clinic
> > library(gcrma);
> Loading required package: affy
> Loading required package: Biobase
> Loading required package: tools
>
> Welcome to Bioconductor
>
> Vignettes contain introductory material. To view, type
> 'openVignette()' or start with 'help(Biobase)'. For details
> on reading vignettes, see the openVignette help page.
>
> Loading required package: affyio
> Loading required package: matchprobes
> > affybatch=ReadAffy(filenames=c("/tmp/Test.cel"));
> > exprSet=gcrma(affybatch);
> Adjusting for optical effect.Done.
> Computing affinities[1] "Checking to see if your internet connection
> works..."
> Error in getProbePackage(probepackagename) :
> You do not have write access to
> /usr/local/biotools/r/R-2.3.1/lib/R/library
> Please check your permissions or provide a different 'lib'
parameter.
Hi Patrick,
Votruba, Patrick G. wrote:
> Hello,
>
> My colleague recently received the following error message and it
has
> caused some concern among our system administrators. The
> getProbePackage function tries to download and install a package
that's
> not locally available and fails because the user doesn't have write
> permission to the library directory. There are, however, a core
group
> of R users who do have write permission and we'd like to prevent
> unintentional package installations. Is there an easy way to
disable
> this function?
Not really, but if one is trying to run a function that requires a
particular package to work, is it really an unintentional package
installation?
Anyway, the canonical method to handle such situations is to create a
local library in one's home directory (or somewhere that the
particular
user has write access), and then set .libPaths() to include that
directory. Then the package will be installed there, the user can do
the
intended analysis, and the 'usual' R library directory is unaffected.
>
> Also, this has sparked some debate as to whether bioconductor
software
> also automatically updates existing packages. If so, can this also
be
> disabled?
I don't know of any BioC software that automatically updates existing
packages. If there are some, you would need to disable them
individually, as AFAIK, this isn't a common practice.
>
> Do automatic package installs/updates occur for all packages or just
a
> subset (e.g. annotation packages)?
I only know of two packages that do automatic installs of packages;
affy
and gcrma. These packages will install cdf packages (affy) or probe
packages (gcrma), both of which are necessary for the respective
packages to function. The only way to disable the automatic installs
for
these packages is to not have write access to the library, which as
you
found causes them to error out.
Best,
Jim
--
James W. MacDonald, M.S.
Biostatistician
Affymetrix and cDNA Microarray Core
University of Michigan Cancer Center
1500 E. Medical Center Drive
7410 CCGC
Ann Arbor MI 48109
734-647-5623
**********************************************************
Electronic Mail is not secure, may not be read every day, and should
not be used for urgent or sensitive issues.
So in case you are not too familiar with affy chips: in general you
can be certain that there is no automatic package installation in R/
BioC. The packages Jim is referring to is (kind of) annotation
packages for working with specific microarray chips. These packages
does not really contain code, but rather some data which is necessary
to manipulate the chip (basically the chip layout). When you read an
Affymetrix data file (CEL file) it contains information about the
type of chip. And then affy/gcrma tries to download the relevant chip
packages (of course this only happens if the packages are not already
installed). The package download only happens when the user tries to
do something that requires the data package. So in your case it is
perfectly fine to read in the cel file, but as soon as you try to
print it, it checks for the package.
I would guess the sys admins are primarily afraid of possible
versioning conflicts on a multi-user system. Generally these layout
packages (cdf, probe) are tied to the chip and there is no reason to
update the packages - unless there have been some internal changes in
R. As Jim is pointing out, it is possible to configure R so that by
default any package installation happens in the given user's home
directory, instead of in the system area. They might want to look
into the R function .libPaths and the environment variable R_LIBS.
Having said all of this, there is in principle nothing that prevents
a package writer from including code that installs arbitrary packages
when executed. And that will override the configuration settings
above. So if they are super paranoid, they should not allow people to
run R form an account that has write permission to the R_HOME folders.
Kasper
On Nov 3, 2006, at 1:27 PM, James W. MacDonald wrote:
> Hi Patrick,
>
> Votruba, Patrick G. wrote:
>> Hello,
>>
>> My colleague recently received the following error message and it
has
>> caused some concern among our system administrators. The
>> getProbePackage function tries to download and install a package
>> that's
>> not locally available and fails because the user doesn't have write
>> permission to the library directory. There are, however, a core
>> group
>> of R users who do have write permission and we'd like to prevent
>> unintentional package installations. Is there an easy way to
disable
>> this function?
>
> Not really, but if one is trying to run a function that requires a
> particular package to work, is it really an unintentional package
> installation?
>
> Anyway, the canonical method to handle such situations is to create
a
> local library in one's home directory (or somewhere that the
> particular
> user has write access), and then set .libPaths() to include that
> directory. Then the package will be installed there, the user can
> do the
> intended analysis, and the 'usual' R library directory is
unaffected.
>
>
>>
>> Also, this has sparked some debate as to whether bioconductor
>> software
>> also automatically updates existing packages. If so, can this
>> also be
>> disabled?
>
> I don't know of any BioC software that automatically updates
existing
> packages. If there are some, you would need to disable them
> individually, as AFAIK, this isn't a common practice.
>
>>
>> Do automatic package installs/updates occur for all packages or
>> just a
>> subset (e.g. annotation packages)?
>
> I only know of two packages that do automatic installs of packages;
> affy
> and gcrma. These packages will install cdf packages (affy) or probe
> packages (gcrma), both of which are necessary for the respective
> packages to function. The only way to disable the automatic
> installs for
> these packages is to not have write access to the library, which as
> you
> found causes them to error out.
>
> Best,
>
> Jim
>
>
>
>
> --
> James W. MacDonald, M.S.
> Biostatistician
> Affymetrix and cDNA Microarray Core
> University of Michigan Cancer Center
> 1500 E. Medical Center Drive
> 7410 CCGC
> Ann Arbor MI 48109
> 734-647-5623
>
>
> **********************************************************
> Electronic Mail is not secure, may not be read every day, and
> should not be used for urgent or sensitive issues.
>
> _______________________________________________
> Bioconductor mailing list
> Bioconductor at stat.math.ethz.ch
> https://stat.ethz.ch/mailman/listinfo/bioconductor
> Search the archives: http://news.gmane.org/
> gmane.science.biology.informatics.conductor