2009-06-22 8 views
0

Я создал пакет Ubuntu/Debian, который устанавливает приложение, которое зависит от R. При установке я хочу, чтобы пакет установки R из репозитория на:Force мой пользовательский пакет Debian, чтобы разрешить R зависимость от конкретного репозитория

deb http://cran.uk.r-project.org/bin/linux/ubuntu jaunty/

потому что этот репозиторий содержит обновленную версию R. Я попытался добавить пакет в файл sources.list из сценария preinst пакетов, но он, похоже, не работает.

Любые идеи, как я могу заставить использовать этот репозиторий?

ответ

1

Вы действительно не должны устанавливать другие пакеты из сценария preinst. Это делает невозможным для apt или dpkg для определения зависимостей пакета. Правильный путь заявить версию уточненный как зависимость в файле debian/control:

Depends: R (>= x.y) 

Например:

Depends: libapr0 (>= 2.0.54) 

Это может означать, что пакет uninstallable для пользователей, которые делают не добавлять другой репозиторий; вы должны сообщить им о другом репозитории по другим каналам. Или вы можете подумать о включении пакета в свой репозиторий.

+0

Я не имею в виду на самом деле установить пакет из сценария preinst, просто добавляя другой репозиторий, содержащий версию вплоть до даты R. Мой сценарий preinst выглядит так: #!/Bin/sh # Добавить репозиторий для новой версии R echo "deb http://cran.uk.r-project.org/bin/linux/ ubuntu jaunty/"| sudo tee -a /etc/apt/sources.list sudo apt-get update Когда пакет был установлен, R по-прежнему загружался из обычного репозитория, хотя источник по умолчанию почему-то не изменился. –

+0

Похоже, что мой сценарий preinst появился на одной строке выше, он должен быть разделен на 4. –

 Смежные вопросы

  • Нет связанных вопросов^_^