Сборка пакетов-расширений для языка R
R — язык программирования для статистической обработки данных и работы с графикой. Среда, в которой производится обработка, также называется R. Для этой среды существует множество вспомогательных расширений, реализующих дополнительные функции. Каждое такое расширение, не входящее в базовую поставку R, оформляется в РОСЕ как отдельный пакет.
Пакеты создаются полуавтоматически скриптом R2spec, который необходимо запускать в установленной РОСЕ, имеющей доступ в интернет. Для получения скрипта необходимо установить пакет R2spec. Все последующие действия необходимо выполнять в консоли/терминале.
Пакет для расширения foo создается с помощью скрипта следующим образом:
$ R2spec -p foo
Скрипт ищет последнюю версию расширения foo в публичных репозиториях (в частности, в CRAN). В случае успеха архив с исходным кодом скачивается в директорию ~/rpmbuild/SOURCES, а также создается spec-файл ~/rpmbuild/SPECS/R-foo.spec с инструкциями для сборки rpm-пакета из этого кода. Этот файл надо передать утилите rpmbuild, чтобы она попробовала собрать пакет:
$ rpmbuild -bb ~/rpmbuild/SPECS/R-foo.spec
Если соберется сразу — отлично, можно делать src.rpm:
$ rpmbuild -bs ~/rpmbuild/SPECS/R-foo.spec
и затем делать из него проект на ABF в своем репозитории.
Но обычно пакет сразу не собирается, и приходится либо дорабатывать spec-файл, либо сначала собирать дополнительные пакеты (необходимые для сборки данного). Поэтому заранее сложно сказать, сколько в итоге пакетов придется обработать.