Команда pacman -Sy имя_пакета вредит здоровью вашего Арча

Я давно выработал для себя методику установок, обновлений, настроек и жил себе спокойно, не делая все по вики. А тут поставил второй системой еще один Арч(!) и решил на нем делать все по рекомендациям. И я огреб столько косяков, которые раньше наблюдал только в топиках. Друзья, теперь и я вас понимаю. :)

На беспроблемном Арче я не использовал команду pacman -Sy (обжегся с пакманом, однажды), и пользовался исключительно pacman -Syu. Да, у меня система могла обновляться каждый час (потому что я ставлю очень много софта), но ни разу ничего не ломалось настолько, чтобы не помог простой откат.

На втором Арче я захотел собрать из AUR одну программу и для разрешения зависимостей обновил только репозитории. Программа никаких ошибок кроме segmentation fault не выдала, зато остальные программы начали сыпать в консоль ошибками. Отлаживать было некогда, поэтому я просто сделал полное обновление системы. Как я и ожидал, все починилось, включая и ту программу, которую собирал из аура. Так, после этого, я еще больше утвердился в мысли, что нельзя обновлять только репозитории. Нужно обновлять всю систему.

В поисках подтверждения своих выводов я перерыл весь bbs.archlinux.org и нашел несколько похожих высказываний. Но это же не официальная документация.

Кто-нибудь еще работает в режиме “always upgraded”? Так уж получается, что при установке/сносе большого числа пакетов выгоднее постоянно полностью обновляться.
Я надеюсь это на правах бреда написано.
Как обновление базы пакетов может разрешить зависимости?
Lupus pilum mutat, non mentem.
Интересно, какое вики рекомендует делать pacman -Sy и не обновлять пакеты?

Может быть автор читает какое-нибудь другое вики, от этого у него проблемы?

Воззрения автора в чём-то перекликаются с http://archlinux.org.ru/forum/viewtopic.php?f=8&t=7311&p=61410
Но он (автор) опытным путём дошёл до того, что так делать низзя!


grunewald
Так, после этого, я еще больше утвердился в мысли, что нельзя обновлять только репозитории.
Да, pacman не обновляет репозитарии. Он обновляет локальную базу пакетов.

$ pacman -S --help
...
  -y, --refresh        загрузить свежие базы данных пакетов с сервера
jim945
Я надеюсь это на правах бреда написано.
Как обновление базы пакетов может разрешить зависимости?
Ну я просто не стал много писать, что обновил базу и соответственно зависимости при установке разрешились автоматически.
А если бы не обновлял, то компилятор выплюнул бы ошибку еще на этапе сборки. Чего не понятно?
Можешь попробовать проверить сам, если хочешь.
Значит буду писать много, чтобы доходило. :)

Sirocco, да сплошь и рядом: для установки пакета используют pacman -Sy имя программы. У нас даже топик был как-то с вопросом, кто какой командой устанавливает пакеты. Это ты понимаешь, что если обновишь только один новый пакет, то у тебя останутся или появятся проблемы со старыми.
sirocco
Интересно, какое вики рекомендует делать pacman -Sy и не обновлять пакеты?
Ну, вики на эту тему я читал четыре года назад, сейчас переписали уже. Причем аж красным выделили, что новые пакеты нельзя ставить командой pacman -Sy. Потому что за годы люди настолько привыкли это делать, что багтрекер перестал выдерживать.
На вики я не живу, это твоя обязанность. :)

Ну и зачем мне нужно обновлять список пакетов из реп, если все равно обновлять всю систему.
Или зачем мне нужно сначала установить пакет, а потом все обновлять.
Лучше же обновиться, а потом установить.
А многие, как я понял, просто обновляют репы.

Вот пример из блога juev'a:
Затем выполняем обновление репозиториев и установку yaourt с помощью команды: # pacman -Sy yaourt.
Установка LAMP Server на ArchLinux
Во-первых видим, что термин “обновление репозиториев” придуман не мной и уже используется в рунете из-за краткости. Понятное дело, что я физически не могу обновить репозитории, поэтому придирки выглядят просто по-детски смешно.

Во-вторых видим, что человек читал вики до внесения правок и народ продолжает использовать pacman -Sy. Многие читают вот такие вот блоги и копипастят оттуда решения, получая таким образом проблемы.

sirocco
Но он (автор) опытным путём дошёл до того, что так делать низзя!
Я опытным путем дошел до того, что у меня волосы дыбом встают, когда я читаю на форуме, какие проблемы люди получают при обновлениях. Теперь я знаю, что у них проблемы с зависимостями, которые либо забыли учесть разрабы пакетов, либо pacman -Sy без последующего обновления.
© 2011 на правах бреда :D

Перенесите в /dev/null что-ли, там пообсуждаем. >:)
grunewald
На вики я не живу, это твоя обязанность. :)

Ничего себе (очень мягко говоря). Мне кто-т за эту обязанность платит деньги, видимо?

grunewald
Вот пример из блога juev'a:

При чём здесь этот блог (уже давно не про арч, а временами просто про винду) и вики?

grunewald
Понятное дело, что я физически не могу обновить репозитории, поэтому придирки выглядят просто по-детски смешно.
Я считаю, что Вы, используя не правильную терминологию, затуманиваете, запутываете себя.

Нельзя построить, например, стройную математическую теорию, наплевательски относясь к терминологии.
А математика - полезная штука, мозги прочищает.
grunewald, если не секрет - а зачем вы все это написали? Вроде бы очевидные вещи и все логично. Для установки пакета (S) нужно сначала синхронизировать базу (y), затем обновить систему (u) и уже потом, со спокойной совестью устанавливать новый пакет. Хотя если все эти манипуляции выполнялись сравнительно недавно, то можно просто pacman -S пакет или pacman -Syy пакет.
Короче смысл создания топика я лично не осознал.
grunewald
А если бы не обновлял, то компилятор выплюнул бы ошибку еще на этапе сборки.
Ну значит нужна была версия какого-то пакета посвежее. В чем проблема? Ставь посвежее. Правь пкгбилд.
grunewald
Ну я просто не стал много писать, что обновил базу и соответственно зависимости при установке разрешились автоматически.
Если пакету требуется версия либы, выше установленной, то, при pacman -Sy ‘имя пакета’, она скачается и поставится. А если она требуется тебе для сборки пакета будь добр ручками, или пользуйся аортой, пакером…
grunewald
Значит буду писать много, чтобы доходило. :)
Доходит ровно то, что написал.
Понимаешь, тут много не надо. Надо точно.
grunewald
Ну и зачем мне нужно обновлять список пакетов из реп, если все равно обновлять всю систему.
Или зачем мне нужно сначала установить пакет, а потом все обновлять.
Не хотел писать много
Вот, к примеру, стали доступны новое ядро, иксы, дрова и блендер, гимп и т.д.
Вот нехочу я пока это все обновлять, вдруг бажик какой, а гимп новый поюзать хочется. Поставлю гимп.
И в чем проблема? УМВР
Lupus pilum mutat, non mentem.
sirocco
Ничего себе (очень мягко говоря). Мне кто-т за эту обязанность платит деньги, видимо?
Вроде бы ты следишь за переводами и новостями. Что же это, если не обязанность, на которую ты добровольно согласился.
Даже быть админом на форуме - уже обязанность, а не развлечение. И не всегда за обязанности платят деньги. Если нет, то извини, обознался. :)
При чём здесь этот блог (уже давно не про арч, а временами просто про винду) и вики?
Показывает, что есть люди, которые читали старую вики и не обновляют пакеты после установки, а только репозитории. А по этим статьям многие начинают неправильно ставить софт с последствиями.
Я считаю, что Вы, используя не правильную терминологию, затуманиваете, запутываете себя.
А я считаю, что быть педантом и отказываться принимать устоявшиеся выражения - запутывать самого себя. Давайте писать не Арч, а Arch Linux, не линукс, а GNU/Linux. Но ведь жизнь это не облегчит.
vadik
grunewald, если не секрет - а зачем вы все это написали
Последнее обновление, после которого что-то отвалилось, было при переходе xorg на hal. Надоело читать, что гном не работает, кде не работает. Надоело читать, что кто-то там ушел на убунту. Или еще куда-то. Пускай люди задумаются, а так ли уж безопасно они ставят софт. Не это ли причина их проблем.
pacman -Syy пакет
Может кончиться плохо.
А в вики наконец-то внесли изменения:
Вики
Always upgrade before installing a package if you have refreshed the sync repositories.
vadik
Короче смысл создания топика я лично не осознал.
Так я тоже смысл разных топиков не осознаю, когда нет проблем.
jim945
Ставь посвежее. Правь пкгбилд.
Зачем? Оно само.
Вот, к примеру, стали доступны новое ядро, иксы, дрова и блендер, гимп и т.д.
Вот нехочу я пока это все обновлять, вдруг бажик какой, а гимп новый поюзать хочется. Поставлю гимп.
И как ты будешь застрахован, если при этом обновится какая-то библиотека, которая используется и гимпом и остальными программами? Будешь юзать новый гимп со старыми либами, или же старый софт с новой библиотекой. Оба решения небезопасны.
вдруг бажик какой
Даунгрейд?

Если хотите снесите тему. У меня тоже все всегда работает.
Как кто-то недавно написал вроде “за что люблю арчик, что нельзя найти две одинаковые системы, даже если они обе ставились по вики и по дефолту. ” Жаль, забыл автора, точно в десятку подметил!
grunewald
И как ты будешь застрахован, если при этом обновится какая-то библиотека, которая используется и гимпом и остальными программами? Будешь юзать новый гимп со старыми либами, или же старый софт с новой библиотекой. Оба решения небезопасны.
Обычно тянутся некритичные либы. А если ты увидел, что по зависимостям тянется еще и новая glibc, к примеру, и ничего не сделал, то зачем тебе Арч?
grunewald
вдруг бажик какой
Даунгрейд?
Зачем? Я пока новости почитаю, на форум загляну. Вдруг у кого-то сломалось. А через пару дней обновлю.
grunewald
Я считаю, что Вы, используя не правильную терминологию, затуманиваете, запутываете себя.
А я считаю, что быть педантом и отказываться принимать устоявшиеся выражения - запутывать самого себя. Давайте писать не Арч, а Arch Linux, не линукс, а GNU/Linux.
Устоявшееся где? В каком-то бложике? Самому не смешно?
Lupus pilum mutat, non mentem.
grunewald
vadik
grunewald, если не секрет - а зачем вы все это написали
Последнее обновление, после которого что-то отвалилось, было при переходе xorg на hal. Надоело читать, что гном не работает, кде не работает. Надоело читать, что кто-то там ушел на убунту. Или еще куда-то. Пускай люди задумаются, а так ли уж безопасно они ставят софт. Не это ли причина их проблем.
А что вы хотите увидеть на форуме? Истории успеха? Люди сюда приходят с проблемами, поэтому и имеем тучу тем “гном не работает, кде не работает”.
Если УМВР - то зачем я буду создавать тему и всем об этом сообщать?

Я кажется понял смысл создания темы. Вы пытаетесь предостеречь новичков от проблемы которой нет, по крайней мере у тех кто читает вики и хоть немного думает головой. Просто повторюсь
Для установки пакета (S) нужно сначала синхронизировать базу (y), затем обновить систему (u) и уже потом, со спокойной совестью устанавливать новый пакет.
Получаем команду:
pacman -Syu имя_пакета
 
Зарегистрироваться или войдите чтобы оставить сообщение.