LinuxForum.Fans
Тема

Недостающие фичи portage

Автор: fragment 18 сообщений 5525 просмотров
#389425

Вяленько попиливаю скрипт-обёртку для emerge ради облегчения использования (более короткие ключи, например), заодно пробую прилепить сбоку оригинальные фичи. Через пень-колоду запилил автоматическое внесение в сет всех устанавливающихся пакетов (включая зависимости), чтобы если вдруг свежеустановленная программа оказалась не нужна, её можно было бы снести одним движением вместе с притянутыми ею зависимостями.

Сейчас пришла идея сделать откат обновлённого пакета к прежней версии.

А чего не хватает в portage лично вам?

#389428
"fragment" написал:
А чего не хватает в portage лично вам?

Таки вроде все устраивает

"fragment" написал:
если вдруг свежеустановленная программа оказалась не нужна, её можно было бы снести одним движением вместе с притянутыми ею зависимостями

[console]# emerge -C package
# emerge --depclean[/console]

#389437

Silencer, depclean порой требует правки конфигов и пересборки, так что для быстрой уборки мне не подходит.

#389449
"fragment" написал:
порой требует правки конфигов и пересборки,

Брешешь. Какие конфиги нужно править и что пересобирать? depclean удалит пакеты, которые не являются чьими либо зависимостями и/или присутствуют в world.

#389480
"kostik87" написал:
Брешешь

Если я так говорю - значит так оно и есть.

"kostik87" написал:
Какие конфиги нужно править и что пересобирать?

Удалил я такой только что установленный пакет, хочу depclean'ом почистить его зависимости, а оно мне:

text

# emerge -av --depclean

* Always study the list of packages to be cleaned for any obvious * mistakes. Packages that are part of the world set will always * be kept. They can be manually added to this set with * `emerge --noreplace <atom>`. Packages that are listed in * package.provided (see portage(5)) will be removed by * depclean, even if they are part of the world set. * * As a safety measure, depclean will not remove any packages * unless *all* required dependencies have been resolved. As a * consequence, it is often necessary to run `emerge --update * --newuse --deep @world` prior to depclean.

Calculating dependencies... done! * Dependencies could not be completely resolved due to * the following required packages not being installed: * * sys-apps/busybox[mdev] pulled in by: * virtual/dev-manager-0 * * dev-util/valgrind pulled in by: * dev-qt/qt-creator-2.8.1 * * >=sys-fs/udev-208-r1 pulled in by: * virtual/udev-215 * * Have you forgotten to do a complete update prior to depclean? The * most comprehensive command for this purpose is as follows: * * emerge --update --newuse --deep --with-bdeps=y @world * * Note that the --with-bdeps=y option is not required in many * situations. Refer to the emerge manual page (run `man emerge`) * for more information about --with-bdeps. * * Also, note that it may be necessary to manually uninstall * packages that no longer exist in the portage tree, since it may * not be possible to satisfy their dependencies.

И подобная байда - как правило, а не как исключение. А мне всё это решать влом.

#389496
"fragment" написал:
Если я так говорю - значит так оно и есть.

Это всё голословно, ещё раз приведи пример, что ты удалил что-то посредством depclean, а потом тебе пришлось править конфиги, абсурд, ты просто не понимаешь, что делаешь.

"fragment" написал:
хочу depclean'ом почистить его зависимости, а оно мне:

Это нормальная ситуация, ты либо не обновляй дерево portage, либо сразу после его обновления делай обновление системы:

text

emerge -auvDN world

А так у тебя получается ситуация, что пакеты в системе не соответствуют версиям пакетов, которые сейчас присутствуют в дереве portage.

Выполни

text

emerge -auvDN world

а затем

text

emerge -avc

Пока у тебя система не будет соответствовать присутствующему в ней срезу дерева portage нормально depclean работать не будет. И ещё раз, если ты не собираешься делать

text

emerge -auvDN world

после

text

emerge --sync

то не надо сетовать, что depclean работает плохо.

Тебе об этом даже emerge сообщает:

"fragment" написал:
* Have you forgotten to do a complete update prior to depclean? The * most comprehensive command for this purpose is as follows: * * emerge --update --newuse --deep --with-bdeps=y @world * * Note that the --with-bdeps=y option is not required in many * situations. Refer to the emerge manual page (run `man emerge`) * for more information about --with-bdeps.

но ты же не читаешь, что написано, а строишь догадки. Так дело не пойдёт.

И не надо сетовать на неправильную работу, если не понимаешь, что делаешь.

#389497
"kostik87" написал:
ещё раз приведи пример, что ты удалил что-то посредством depclean, а потом тебе пришлось править конфиги

Читать научись сначала, потом лезь в разговоры, шалопай.

"kostik87" написал:
Это нормальная ситуация

И я уже сказал, что меня эти "нормальные ситуации" не устраивают. Ты опять влез в тему, не поняв её, но вопишь за семерых. Ты можешь просто не отписываться в темах людей, которые разбираются в вопросе? Иди пиши чего-нибудь полным новичкам, в качестве бота по копипасту мануалов ты неплох, в этой роли даже глупость твоя не так заметна.

#389498
"kostik87" написал:
И ещё раз, если ты не собираешься делать

emerge -auvDN world

после

emerge --sync

Естественно, я НЕ собираюсь обновлять мир после каждого синка дерева. Мне что, заняться больше нечем?

#389499
"fragment" написал:
Естественно, я НЕ собираюсь обновлять мир после каждого синка дерева.

Зачем тогда делать синхронизацию дерева portage? Ещё раз, если у тебя в системе будут установлены пакеты, которых нет в текущем срезе дерева portage, то это вызовает проблемы при просчёте emerge пакетов, которые не относятся ни к какому пакету по зависимостям.

Это проблема не emerge, а всей системы portage в целом. И либо ты играешь по правилам, а именно приводишь систему в соотстветствеи со срезом portage, либо помещаешь нужные тебе ebuild`ы в локальный оверлей, не обновляя основное дерево portage, либо не стоит говорить о проблемах depclean.

Пока ты этого не поймёшь у тебя так и будут проблемы.

#389500
"fragment" написал:
Читать научись сначала, потом лезь в разговоры, шалопай.

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

Переход на личности я проигнорирую, сделаю скидку на твой юный возраст.

#389501
"fragment" написал:
И я уже сказал, что меня эти "нормальные ситуации" не устраивают. Ты опять влез в тему, не поняв её, но вопишь за семерых. Ты можешь просто не отписываться в темах людей, которые разбираются в вопросе? Иди пиши чего-нибудь полным новичкам, в качестве бота по копипасту мануалов ты неплох, в этой роли даже глупость твоя не так заметна.

Кто бы говорил:


Блокирован 11.07.2012 20:00:17, модератором hibou по причине: 5.2 Оскорбление участников дискуссии

Повторю ещё раз, это ситуация нормальная, нечего говорить без понимания особенностей работы portage, если у тебя есть вопросы, то обращайся к разработчикам Gentoo на прямую, можешь создать bug report на bugs.gentoo.org с запросом на решение твоих хотелок, там тебе объяснят почему именно так и что такое rolling-release.

#389508
"kostik87" написал:
Зачем тогда делать синхронизацию дерева portage?

o_O Например, чтобы обновить один-единственный пакет, или поставить новый пакет самой последней версии.

"kostik87" написал:
Это проблема не emerge, а всей системы portage в целом

Пусть так. Проблемы можно и нужно решать, а не созерцать их.

"kostik87" написал:
Пока ты этого не поймёшь у тебя так и будут проблемы.

Тебя я как раз понял. Извини, но махровый буддизм - хуже педерастии :D

"kostik87" написал:
где ты видел необходимость правки конфигов

Чтобы обновить мир, нужно бывает иногда править флаги и маски. Это, прикинь, всё находится в конфигах.

"kostik87" написал:
сделаю скидку на твой юный возраст

А 87 - это разве не твой год рождения? Или это твой iq?

#389509
"kostik87" написал:
это ситуация нормальная

Я уже сказал, что лично я не люблю сидеть на гвоздике и думать "а может, так и надо?".

#389510
"fragment" написал:
Например, чтобы обновить один-единственный пакет, или поставить новый пакет самой последней версии.

Есть локальный оверлей, ну и с другой стороны это особенность дистрибутива rolling-release.

"fragment" написал:
Пусть так. Проблемы можно и нужно решать, а не созерцать их.

Ну так ты отписал bug report на bugs.gentoo.org?

"fragment" написал:
Чтобы обновить мир, нужно бывает иногда править флаги и маски. Это, прикинь, всё находится в конфигах.

Ну если всё несколько криво настроено, то да нужно, но мне почему-то хватает просто

text

emerge -auvDN world

наверное потому, что я на стабильной ветке.

"fragment" написал:
А 87 - это разве не твой год рождения? Или это твой iq?

Это мой год рождения.

#389514
"kostik87" написал:
это особенность дистрибутива rolling-release

Под особенностью ты имеешь в виду необходимость обновления мира после синка дерева? Это особенности твоего мышления.

"kostik87" написал:
Ну так ты отписал bug report на bugs.gentoo.org?

Я написал скрипт. Ты можешь идти писать багрепорты.

#389515
"fragment" написал:
Под особенностью ты имеешь в виду необходимость обновления мира после синка дерева? Это особенности твоего мышления.

Ты так ничего и не понял из того, что я написал. Это особенность твоего мышления.

"fragment" написал:
Я написал скрипт. Ты можешь идти писать багрепорты.

Ну молодец, ещё армия таких же как ты напишет свои "велоиспеды" для реализации сходных задач и будут писать на других форумах и на других языках, что де им не нравится как работает emerge (portage).

Пиши велосипеды дальше.

#389516
"kostik87" написал:
Ты так ничего и не понял из того, что я написал

Часто ты такого мнения об окружающих?

"kostik87" написал:
Ну молодец

Я знаю.

#389517

fragment, я считаю разговор оконченным, он давно уже вышел из плоскости конструктивной дискуссии.

Войдите или зарегистрируйтесь, чтобы ответить.