Это не так просто, как кажется.
apt-get update хорошо, если и когда
пакеты существуют - но есть только около 150 или около того r-cran-* пакетов из пула из 2100+ пакетов в CRAN, так что охват довольно скудный
пакеты поддерживаются, не содержат ошибок и актуальны
вы достаточно довольны двухгодичными выпусками Ubuntu
install.packages() и более поздние update.packages() хороши, если и когда
вы знаете, что нужно для установки встроенных зависимостей (помимо r-base-dev)
вы не возражаете запускать update.packages() вручную, а также обновления apt-get.
На моей машине с Ubuntu на работе я выбираю второе решение. Но поскольку первый лучше, если у вас достаточно покрытия, мы создали < strong>cran2deb, который предоставляет более 2050 бинарных пакетов deb для amd64 и i386 --- но только для тестирования Debian. Это то, чем я пользуюсь дома.
Что касается последнего вопроса о том, «следует ли вам ожидать неприятностей»: нет, потому что R_LIBS_SITE установлено в /etc/R/Renvironment как
# edd Apr 2003 Allow local install in /usr/local, also add a directory for
# Debian packaged CRAN packages, and finally the default dir
# edd Jul 2007 Now use R_LIBS_SITE, not R_LIBS
R_LIBS_SITE=${R_LIBS_SITE-'/usr/local/lib/R/site-library:\
/usr/lib/R/site-library:/usr/lib/R/library'}
это означает, что ваши пакеты помещаются в /usr/local/lib/R/site-library, тогда как те, которыми управляет apt, переходят в /usr/lib/R/site-library и (в случае базовых пакетов) /usr/lib/R/library.
Надеюсь, это прояснит ситуацию. Список рассылки r-sig-debian является более информативным местом для подобных вопросов.
person
Dirk Eddelbuettel
schedule
31.01.2010