неправильное поведение portage?[РЕШЕНО]

установлен games-strategy/wormux-0.8.5. Также по зависимостям установлен media-libs/sdl-mixer-1.2.8

Случайно заметил что этой версии sdl-mixer в портаже уже нет, есть стабильная 1.2.11. Однако:

emerge -DNupv world

These are the packages that would be merged, in order:

Calculating dependencies ... done!

Total: 0 packages, Size of downloads: 0 kB

Хотя wormux от него зависит, при чем с флагом vorbis.

 equery depends sdl-mixer 
[ Searching for packages depending on sdl-mixer... ]
games-strategy/wormux-0.8.5 (media-libs/sdl-mixer[vorbis])

Если предложить обновить конкретно обновить sdl-mixer, то

These are the packages that would be merged, in order:

Calculating dependencies / ... done!
[ebuild     U ] media-libs/sdl-mixer-1.2.11 [1.2.8] USE="midi%* wav%* -flac% -mad% -mikmod -mp3 -timidity -vorbis*" 0 kB

Total: 1 package (1 upgrade), Size of downloads: 0 kB

И предлагает выключить vorbis, хотя он нужен wormux'у.

Чтото тут не то.

emerge --info

Насколько я понял, vorbis

Насколько я понял, vorbis включен только для sdl-mixer, а не глобально?

Но почему-то sdl-mixer хочет пересобрать без него... Может, при указании vorbis была использована запись с указанием версии?

Дайте вывод /etc/portage/package.use

sdl* пакетов у меня в

sdl* пакетов у меня в /etc/portage/package.use нет, однако я веду репозиторий конфигов, и посмотрев туда я узнал, что там таки была запись media-libs/sdl-mixer vorbis. Однако как-то во время чистки я ее по ошибке удалил. Но портаж мне при обновления мира ничего не сказал. Видимо потому он и не хотел обновлять sdl-mixer, потому что был убран, тот флаг который был необходим wormux'у. Теперь я вернул запись и даже без флага -N портаж собирается его обновить.

Теперь вопрос, не должен ли портаж предупреждать о том, что есть новая версия пакета, однако из-за отсутствия флага(из-за моей ошибки) он не может обновить его? Как найти похожие ситуации у себя в системе?
А то получилось, что аж пол года назад я себе заблокировал обновление пакета и даже не знал об этом.

gry написал(а): sdl* пакетов

gry написал(а):
sdl* пакетов у меня в /etc/portage/package.use нет, однако я веду репозиторий конфигов, и посмотрев туда я узнал, что там таки была запись media-libs/sdl-mixer vorbis. Однако как-то во время чистки я ее по ошибке удалил. Но портаж мне при обновления мира ничего не сказал. Видимо потому он и не хотел обновлять sdl-mixer, потому что был убран, тот флаг который был необходим wormux'у. Теперь я вернул запись и даже без флага -N портаж собирается его обновить.

Параметр -N тут не при чем, когда вернулся на место vorbis, у media-libs/sdl-mixer флаги остались неизменными. А обновить он его хочет, т.к. у wormux "зависимость" от sdl-mixer с флагом vorbis, новая версия которого есть в системе.

gry написал(а):
Теперь вопрос, не должен ли портаж предупреждать о том, что есть новая версия пакета, однако из-за отсутствия флага(из-за моей ошибки) он не может обновить его? Как найти похожие ситуации у себя в системе?
А то получилось, что аж пол года назад я себе заблокировал обновление пакета и даже не знал об этом.

Вот тут я не подскажу. Внимательней нужно править конфиги :-)

Разве что emerge -pve world и посмотреть пакеты, кот. собираются обновиться. Но при этом нужно не забывать про build-dependencies, т.е. зависимости времени сборки - они тоже могут "захотеть" обновиться, но это нормально :-)
я обычно юзаю emerge -avuDNq --with-bdeps=y world где-то раз в 2-3 месяца, чтобы просмотреть, какие bdeps обновились

(:

blow написал(а):
Но при этом нужно не забывать про build-dependencies, т.е. зависимости времени сборки - они тоже могут "захотеть" обновиться, но это нормально :-)
я обычно юзаю emerge -avuDNq --with-bdeps=y world где-то раз в 2-3 месяца, чтобы просмотреть, какие bdeps обновились

Сделал проще:

$ grep DEF /etc/make.conf
EMERGE_DEFAULT_OPTS="--ask --with-bdeps=y --verbose --load-average 2 --jobs 2"

gry написал(а): Теперь

gry написал(а):
Теперь вопрос, не должен ли портаж предупреждать о том, что есть новая версия пакета, однако из-за отсутствия флага(из-за моей ошибки) он не может обновить его? Как найти похожие ситуации у себя в системе?
А то получилось, что аж пол года назад я себе заблокировал обновление пакета и даже не знал об этом.

Старая беда. Но на нее, похоже, до сих пор закрывают глаза.
Я тоже прожил с полгода в неведении о существующей проблеме. Более того - флаг -e не затрагивал установленный пакет. Это приведило к более невнятному поведению системы. То еть при необходимости пересборки мира, этот пакет был установлен и скопилирован по-старому.
Я поднимал эту тему, но она скатилась во флейм, потому как такое поведение было вызвано самописными пакетами. А вот появилось аналогичное поведение в родных билдах, что подтверждает существующую проблему и мои опасения о возможности повторения данной ситуации, высказанные ранее.
PS. Все мы люди и любому свойственно совершать ошибки.

а где тему поднимали? здесь

а где тему поднимали? здесь или на багзилле или в рассылке?

.

Пробежался я вскольз по этой

Пробежался я вскольз по этой теме... У меня была схожая ситуация.
Поставил joomla-1.5.15 (~), но, когда чистил /etc/portage/package.keywords случайно удалил рзмаскировку. Так вот, emerge при обновлениях постоянно писал мне о том, что установленный в системе пакет замаскирован. Сообщение выдавалось прямо под списком обновляемых пакетов до тех пор, пока я не исправил данную ситуацию. Возможно, Вы просто невнимательно смотрели? Хотя возможен вариант, что описанная Вами ситуация была на более ранних версиях portage, чем описанная мной.

сходил на #gentoo-portage

сходил на #gentoo-portage спросил, что они думают по этому поводу. Мне ответили, что скоро это поведение изменится на адекватное. Уже есть баг репорт и есть патч, видимо в каком-то из ближайших релизов это войдет.

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".