Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: Bash: проверить имеется/подключен в системе сторонний репозиторий  (Прочитано 1397 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Tolik_

  • Автор темы
  • Активист
  • *
  • Сообщений: 335
    • Просмотр профиля
имеется функция для установки deb пакета
Пакет может ставиться как с убунтовских репов так и с ppa: (add-apt-repository) , так и выкачиваться отдельно для установки
function ProcessPkg()
{
if [ $(uname -i) = "i386" ]; then
file="$file32"
get="$get32"
elif [ $(uname -i) = "x86_64" ]; then
file="$file64"
get="$get64"
fi
# Если первые 4 символа из get будут "ppa:" - проверяет и подключает репозиторий
# Если пусто в $get - тогда установка из стандартного репа, иначе содержит адрес для закачки
if [ $(echo $get | cut -c1-4)="ppa:"]; then
# здесь нужно проверить добавлен ли в систему ppa: и если нет добавить
if [ ]; then
# добавляем в систему ppa:
sudo add-apt-repository $get
fi
else
if [-n $get];then
GetFile
fi
fi
.
.
.
InstallPkg "$file"
}
Как в этой функции организовать проверку на возможно уже добавленный ppa:xxxxxx перед этим тот-же реп и добавлять уже в случае отсутствия
« Последнее редактирование: 25 Июля 2012, 15:07:11 от Tolik_ »

Оффлайн sash23

  • Участник
  • *
  • Сообщений: 130
    • Просмотр профиля

сторонние репы добавляются в директорию /etc/apt/sources.list.d/
видимо нужно в скрипте проверять наличие соответствующего файла в этой директории
можно еще для надежности парсить файл /etc/apt/sources.list

вот ссылка может поможет

Оффлайн Tolik_

  • Автор темы
  • Активист
  • *
  • Сообщений: 335
    • Просмотр профиля
Цитировать
сторонние репы добавляются в директорию /etc/apt/sources.list.d/
видимо нужно в скрипте проверять наличие соответствующего файла в этой директории
можно еще для надежности парсить файл /etc/apt/sources.list
да я как-бы знал про эту возможность но сильно увесистой будет процедура. Хочется чего-то малозатратного.
Спасибо за скриптик aptsources.sh попробую изучить код, может чего и выловлю.
Хотя кстати в нем есть такая функция
"-l,  --list        list repositories and status";
теоретически должен вывести список установленных репов, в которых можно покопаться, но к сожалению он у меня почему-то ничего не выводит. Чего-то он работать не хочет.
Может есть какая нибудь команда типа этой add-apt-repository, которая может вывести все подключенные активные репы на экран или в файл. Что-бы не заниматься ковырянием в директории /etc/apt/sources.

 

Страница сгенерирована за 0.028 секунд. Запросов: 25.