[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: lenny pidgin icq



On Thu, 12.03.2009 09:38:06 , Тихон Тарнавский wrote:
> On Wed, 11.03.2009 00:28:40 , Evgeny M. Zubok wrote:
> > И чем дальше, тем более масштабными будут
> > расхождения. Если просто тупо обновлять систему, соглашаясь на
> > обновления библиотек, то Lenny станет немножко беременным. Лучше уж
> > бэкпортить, пока это возможно в принципе.
> Я не сказал, что изменений не будет вообще. Я говорил, что они _не
> будут_ масштабными. Вот Вам живой пример моей текущей системы на ноуте
> (скрипт во вложении, если что):
> t:~$ apt-list -a | wc -l
> 49
> t:~$ apt-list -m | wc -l
> 33
> t:~$ dpkg-query -l | grep ^ii | wc -l
> 1437
> Т.е. пакетов, установленных автоматически не из stable, аж в полтора
> раза больше, чем установленных не из stable вручную. Причём из них
> часть я бы вручную тоже установил, если бы от них никто не зависел;
> т.е. в итоге выйдет где-то так на так, если не с обратным перевесом.
> Кроме того надо заметить, что значительной части всех этих пакетов в
> stable вообще нет. Да и на общее количество обратите внимание: едва
> перекрывает 5% от всех установленных. И это не точечная ситуация --
> это стандартное состояние моей системы начиная с выхода sarge за
> исключением тех недолгих периодов между заморозкой и релизом, когда я
> менял Default-Release на testing (далеко не сразу после заморозки).
Ах да, скрипт забыл. Не суть важно, да и был он тут уже, но обещал ведь.

-- 
С уважением,
Тихон Тарнавский.
http://linuxforum.ru
http://posix.ru
#!/bin/bash
eval $(apt-config shell r APT::Default-Release)
mask=~i; filter=t; unset notavail
while [ $# -gt 0 ]; do
  case "$1" in
    -m|--manual)   mask=~i!~M ;;
    -a|--auto)     mask=~M ;;
    -A|--all)      unset filter ;;
    -N|--notavail) notavail=t
  esac
  shift
done
for i in $(aptitude -F %p search "$mask"); do
  aa=$(apt-cache policy $i)
  a=$(echo "$aa"| grep -A 1 '\*\*\*' | tr -d \*)
  v=$(echo $a | cut -d ' ' -f 1)
  t=$(echo "$a" | tail -1 | tr -s ' ' | cut -d ' ' -f 4)
  [ -z "$filter" -o "${t%/*}" != "$r" -a -n "$t" ] &&
    ! { ! echo "$aa" | grep -q " $r/" && [ -n "$notavail" ]; } && 
    echo $i $v $t
done

Reply to: