Unix-way → Установка программ с Launchpad.net в Debian

Проект launchpad.net был запущен в 2004 году компанией Cannonical для управления свободными проектами поддерживающими Ubuntu. В Ubuntu по такому случаю добавлена команда add-apt-repository. Команда осуществляет простое добавление, не включенных в основные ветки, репозиториев персональных проектов launchpad, и автоматически добавляет ключи безопасности в систему управления пакетами.
Ubuntu построена на Debian и поэтому большинство программ с ланчпада с равным успехом работают и в последнем. Есть только одно неприятное но — приводимые убунтоводами команды типа:
sudo add-apt-repository ppa:blabla/ppa дебиан не понимает.
Нижеприведенный скрипт в некотором роде решает эту проблему, стоит только добавить его под именем add-apt-repository в папку /usr/sbin.
deb-пакет

#!/bin/bash
# add-apt-repository script for debian machine
# written Terechov Wladislav
# для удаления PPA из списка репозиториев добавьте опцию -r

distr=lucid
TFN='/tmp/tmp'$RANDOM'_apt_add_key'

err_mes()
{
echo "Ошибка: $1"; exit 1;
}

del_rep()
{
FN=/etc/apt/sources.list.d/"$(echo "$1" | cut -d":" -f2 -s | sed 's/\//-/g')"-${distr}.list
echo "Удаляю файл репозитори-лист: $FN"; rm -f "$FN"
echo "Обновляю кеш..."; apt-get update >> /dev/null 2>&1
exit 0
}

if [ $(whoami) != root ]; then err_mes "нужны права root"; fi
if [ $# -eq 2 ]; then
if [ $1 = "-r" ]; then del_rep "$2"
else if [ $2 = "-r" ];then del_rep "$1"
else err_mes "команда имеет только одну опцию -r удаление PPA!"
fi fi fi

if [ $# -eq 1 ]; then
 ppa_name=`echo "$1" | cut -d":" -f2 -s`
 FN=/etc/apt/sources.list.d/"$(echo "$ppa_name" | sed 's/\//-/g')"-${distr}.list
 if [ -z "$ppa_name" ];then err_mes "PPA неверный"
 else
  echo "$ppa_name"
  echo "deb http://ppa.launchpad.net/$ppa_name/ubuntu $distr main" > "$FN"
  echo "deb-src http://ppa.launchpad.net/$ppa_name/ubuntu $distr main" >> "$FN"
  apt-get update >> /dev/null 2> ${TFN}
  key=`cat ${TFN} | cut -d":" -f6 | cut -d" " -f3`
  if [ ! -z $key ];then apt-key adv --keyserver keyserver.ubuntu.com --recv-keys $key; fi
  rm -f ${TFN}
 fi
else if [ $# -eq 0 ];then err_mes "у команды должен быть параметр!"
else err_mes "слишком много параметров."
fi fi
  • avatar
  • terra
  • 3399
  • +32
  • 06 января 2012, 23:51

Комментариум (4)

RSS свернуть / развернуть
+
+2
avatar

pashtuun

  • 07 января 2012, 04:15

  • Warning: Smarty error: unable to read resource: "cmtedit_button.tpl" in /home/m/makenskiy/itbuben.org/public_html/engine/lib/external/Smarty-2.6.19/libs/Smarty.class.php on line 1092
Спасибо!
+
+2
avatar

makenskiy

  • 09 января 2012, 17:23

  • Warning: Smarty error: unable to read resource: "cmtedit_button.tpl" in /home/m/makenskiy/itbuben.org/public_html/engine/lib/external/Smarty-2.6.19/libs/Smarty.class.php on line 1092
По мне так лучше собрать самому, тем более это не сложно, нежели ставить не религиозныеафриканские сборки.
+
+2
avatar

Anonymous

  • 13 января 2012, 21:55

  • Warning: Smarty error: unable to read resource: "cmtedit_button.tpl" in /home/m/makenskiy/itbuben.org/public_html/engine/lib/external/Smarty-2.6.19/libs/Smarty.class.php on line 1092
Неправда.
> Ubuntu построена на Debian и поэтому большинство программ с ланчпада с равным успехом работают и в последнем.

Ubuntu "построена" на основе Debian sid (он же Unstable. Обычные версии) и Debian Testing (LTS) (пруфы вроде как есть в википедии или еще где-то)
Так что только для тестинга или сида есть некие гарантии, что подойдет софт из соответствующих реп. Ну то есть, если ты на сиде сидишь, то скорее всего ты сможешь поставить софт из ППА для текущей версии убунты.
Но нет никаких гарантий, что софт из ППА может поставиться и для аналогичной версии. Например, софт из ппа требует какой-то пакет с версией, которой тупо нет в репах дебиана.
Это не единственный вариант, когда поставить софтину не выйдет. Но простенький софт, который не имеет кучи зависимостей, скорее всего встанет. Даже порой и на стабильном дебиане и из реп не-лтс убунты. Но сломать систему врят ли выйдет, поэтому с некоторой осторожностью, но можно экспериментировать.
+
+1
avatar

terra

  • 13 января 2012, 23:26

  • Warning: Smarty error: unable to read resource: "cmtedit_button.tpl" in /home/m/makenskiy/itbuben.org/public_html/engine/lib/external/Smarty-2.6.19/libs/Smarty.class.php on line 1092
А в чем неправда-то? Я не говорил, что ВСЕ программы пойдут в ЛЮБОМ дебиане! Стабильные ветки используют в основном на серваках, за сим никто и не будет на них бубунтушный мусор устанавливать!!! Отсюда имеем только wheeze и sid где заявленное «большинство» запускается!

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.