[РЕШЕНО] Portage хочет обновить xorg-server до замаскированной версии
equeim 29 мая, 2014 - 15:33
При обновлении мира портеж выдает следующее:
WARNING: One or more updates/rebuilds have been skipped due to a dependency conflict: x11-base/xorg-server:0 (x11-base/xorg-server-1.15.99.902:0/1.15.99.902::gentoo, ebuild scheduled for merge) conflicts with <x11-base/xorg-server-1.15.99 required by (x11-drivers/nvidia-drivers-331.79:0/0::gentoo, installed) ^ ^^^^^^^ x11-base/xorg-server:0/1.15.1= required by (x11-drivers/xf86-input-evdev-2.8.4:0/0::gentoo, installed) ^^^^^^^^^^
На packages.gentoo.org эта версия замаскирована, при этом eix говорит обратное.
[U] x11-base/xorg-server Available versions: 1.9.5-r3(0/1.9.5) 1.10.6-r3(0/1.10.6) 1.11.4-r3(0/1.11.4) 1.12.4-r2(0/1.12.4) 1.13.4-r1(0/1.13.4) 1.14.3-r2(0/1.14.3) (~)1.14.4(0/1.14.4) 1.14.5(0/1.14.5) (~)1.14.6(0/1.14.6) 1.15.0(0/1.15.0) (~)1.15.1(0/1.15.1) (~)1.15.99.902(0/1.15.99.902) {dmx doc ipv6 kdrive minimal nptl selinux static-libs +suid systemd tslib +udev unwind wayland xnest xorg xvfb} Installed versions: 1.15.1(19:38:33 08.05.2014)(ipv6 nptl suid udev xorg -dmx -doc -kdrive -minimal -selinux -static-libs -tslib -unwind -xnest -xvfb) Homepage: http://xorg.freedesktop.org/ Description: X.Org X servers
Замаскированных пакетов не установлено, из лайв-ебилдов только компиз, в котором версия иксов не указана. Ветка тестовая.
»
- Для комментирования войдите или зарегистрируйтесь
eix вроде обновлять нужно
eix вроде обновлять нужно после каждого emerge --sync
творю непотребства и потом жалуюсь на форуме, ибо gentoo позволяет, since 2009
Я обновляю дерево через
Я обновляю дерево через eix-sync. К тому же emerge тоже говорит, что последняя доступная версия - 1.15.99.902
Ты вывод emerge пробовал
Ты вывод emerge пробовал читать?
=x11-drivers/nvidia-drivers-331.79 "хочет", что бы xorg-server был ниже версии x11-base/xorg-server-1.15.99, а у тебя сейчас уже размаскирована версия (~)1.15.99.902(0/1.15.99.902), которая и будет ставиться, замаскируй версии выше или равно версии x11-base/xorg-server-1.15.99 .
Т.е. официально проприетарный драйвер Nvidia не поддерживает версию xorg-server`а, которая у тебя сейчас размаскирована и будет ставиться.
При установке проприетарного драйвера Nvidia тебе выводилось сообщение:
Смысл его примерно в следующем: В Gentoo драйвер Nvidia поддерживает те же версии ядер, поддержку которых обеспечила Nvidia, сторонние патчи для обеспечения поддержки других версий ядер в ebuild`е установки драйвера Nvidia не используются, но пользователи могут использовать патчи по своему желанию посредством директивы epatch_user.
То же самое относится и к xorg-server.
Все бы хорошо, но я ничего не
Все бы хорошо, но я ничего не размаскировывал.
Покажи тогда вывод emerge
Покажи тогда вывод
http://pastebin.com/0EH10e4P
http://pastebin.com/0EH10e4P
equeim написал(а): я ничего
ACCEPT_KEYWORDS="amd64 ~amd64"
Вот это тогда что по твоему?
Добавив в ACCEPT_KEYWORDS "~amd64" ты по сути размаскировал все тестовые пакеты для архитектуры amd64. Если ты откуда-то скопировал готовый make.conf или не готовый, а лишь частями, то сходи почитай Gentoo Handbook и 'man make.conf'.
Так же почитай как маскировать версии пакетов.
Если вся система собрана на стабильной ветке ("amd64") и ты ещё ничего не пересобрал из тестовой ветки, то просто убери из ACCEPT_KEYWORDS разрешение на установку пакетов из тестовой ветки, если же ты уже пересобрал систему из тестовой ветки, то маскируй версии пакетов, которые конфликтуют по зависимостям, о том как это сделать читай в Gentoo Handbook и Gentoo Wiki.
ты упустил последнее
ты упустил последнее предложение в первом посте.
вот после него я заподозрил, что будет какая то шляпа.
творю непотребства и потом жалуюсь на форуме, ибо gentoo позволяет, since 2009
Цитата: вот после него я
Как показала практика ты не понимаешь, что и зачем ты вносил в make.conf.
Так что теперь маскируй версии xorg-server`а, которые конфликтуют с nvidia-drivers, ну или переходи на использование открытого драйвера Nouveau.
Хендбук я читал, и на
Хендбук я читал, и на тестовую ветку перешел намеренно, сразу после развертывания базовой системы. А что, на тильде уже сидеть нельзя? Зачем она нужна тогда? В хендбуке как раз одним из вариантов является полный переход на тестовую ветку.
Если на packages.gentoo.org версия отмечена как замаскированная, то она замаскирована и для тестовой ветки в том числе. Например замаскированную версию хромиума я установить не могу, а xorg-server - могу, хотя ничего не размаскировывал. И блоб здесь не причем.
мда? а еще там написано The
мда? а еще там написано
творю непотребства и потом жалуюсь на форуме, ибо gentoo позволяет, since 2009
Это-то понятно. Я хотел
Это-то понятно. Я хотел разобраться, в чем проблема - в моей системе или это баг портежа (ни на форуме, ни в багзилле ничего похожего не нашел). Ничего, что могло вызвать такую проблему, я вроде не делал (кроме перехода на тестовую ветку, конечно)
P.S. И да, я прекрасно знаю, что тестовая ветка предназначена для тестирования. Просто советовать перейти на стабильную при первой же проблеме выглядит несколько глупо - кто-то ведь должен это тестировать.
ну тогда напиши баг сам.
ну тогда напиши баг сам. приложи все, что там требуется. максимум скажут, что с системой действительно что то не так, но это будут уже разрабы.
творю непотребства и потом жалуюсь на форуме, ибо gentoo позволяет, since 2009
Цитата: А что, на тильде уже
Можно, но нужно понимать как происходит управление версиями пакетов и выбор конкретной версии для установки.
Только тот, кто переходит должен понимать то, что он делает и уметь решать ситуации разрешения блокировок конфликтов зависимостей.
Маскировка бывает разная.
+ - стабильная версия;
~ - тестовые версии;
* - hardmasked (жёстко замаскированная) версия.
Если в ACCEPT_KEYWORDS у тебя указано "amd64", то ты можешь ставить сразу только стабильные версии пакетов. Версии пакета из тестовой ветки "~amd64" для установки в твоей системе будут замаскированы до тех пор, пока ты их не размаскируешь в /etc/portage/package.keywords или глобально не разрешишь для установки все пакеты из ветки "~amd64" в ACCEPT_KEYWORDS, что ты и сделал.
Если говорить о chromium:
http://packages.gentoo.org/package/www-client/chromium
Сейчас в твоей системе при ACCEPT_KEYWORDS="amd64 ~amd64" для установки доступны версии до 36.0.1985.18, версии выше этой, на данный момент 37.0.208.2 и 37.0.2017.2, в твоей системе замаскированы. Размаскировать их можно только посредством /etc/portage/package.unmask и /etc/portage/package.keywords.
Если говорить о xorg-server, то у него нет hardmasked версий вообще, а есть лишь стабильные (amd64) и тестовые версии (~amd64), добавив в ACCEPT_KEYWORDS "~amd64" ты размаскировал для установки все тестовые версии для своей архитектуры.
Так и скажи, что ты ничего не понимаешь, хоть и читал Gentoo Handbook, то что тебе сообщает emerge и то, что я написал тебе уже здесь.
X? ( <x11-base/xorg-server-1.15.99 >=x11-libs/libvdpau-0.3-r1 multilib? ( || ( ( x11-libs/libX11[abi_x86_32] x11-libs/libXext[abi_x86_32] ) app-emulation/emul-linux-x86-xlibs ) ) ) "
http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/x11-drivers/nvidia-drivers/nvidia-drivers-331.79.ebuild
Я тебе уже написал, что и почему, а до тебя я смотрю всё еще не доходит:
Portage (emerge) при запросе пакета на установку или обновление всегда будет ставить последнюю разрешённую (размаскированную) для установки версию, несмотря на то, что с ней конфликтуют другие пакеты, или не разрешены все её зависимости.
Можешь добавить ключ '-t' к ключам emerge, что бы увидеть дерево зависимостей, ну и для начала замаскируй версию
1.15.99.902 xorg-server`а, сейчас она у тебя размаскирвоана:
[U] x11-base/xorg-server Available versions: 1.9.5-r3(0/1.9.5) 1.10.6-r3(0/1.10.6) 1.11.4-r3(0/1.11.4) 1.12.4-r2(0/1.12.4) 1.13.4-r1(0/1.13.4) 1.14.3-r2(0/1.14.3) (~)1.14.4(0/1.14.4) 1.14.5(0/1.14.5) (~)1.14.6(0/1.14.6) 1.15.0(0/1.15.0) (~)1.15.1(0/1.15.1) (~)1.15.99.902(0/1.15.99.902)
ну как нету
ну как нету то?
http://packages.gentoo.org/package/x11-base/xorg-server
alpha amd64 arm hppa ia64 ppc ppc64 sparc x86
1.15.99.902 M~ M~ M~ M~ M~ M~ M~ M~ M~
1.15.1 ~ ~ ~ ~ ~ ~ ~ ~ ~
1.15.0 + + ~ + + + + + +
творю непотребства и потом жалуюсь на форуме, ибо gentoo позволяет, since 2009
У тебя он всё равно
У тебя он всё равно размаскирован
кроме всего прочего иногда на packages.gentoo.org бывают ошибки.
кроме всего прочего иногда на
а, ну ок
PS глянь внимательно на ники, в этой теме)
творю непотребства и потом жалуюсь на форуме, ибо gentoo позволяет, since 2009
Про разные виды маскировки я
Про разные виды маскировки я знаю, я как раз и хотел понять, почему портеж хочет установить hardmasked-пакет. С ошибками на portage.gentoo.org я тоже сталкивался, но, насколько я знаю, еще не вышедшие версии не добавляют даже в тестовую ветку (или я не прав?). Т.е. xorg-server-1.15.99.902 действительно должен быть hardmasked.
Хотя меса тоже релиз-кандидат. Видимо, все же ошибка на сайте, пришло время добавлять новый ебилд в локальный оверлей :)
Если взять к примеру
Если взять к примеру x11-drivers/xf86-input-evdev - http://packages.gentoo.org/package/x11-drivers/xf86-input-evdev, то версия x11-drivers/xf86-input-evdev-2.9.0 действительно замаскирована hardmasked, т.е. в профиле, т.к. в /usr/portage/profiles/package.mask есть запись:
http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/profiles/package.mask
Записи о маскировании xorg-server`а версии 1.15.99.902 нет в этом файле и ни в одном из аналогичных файлов, лежащих в других профилях.
Поэтому на packages.gentoo.org действительно ошибка.
Вот строка с описанием KEYWORDS в указанном ebuild`е версии xorg-server`а:
Поэтому я говорю ещё раз, тебе нужно замаскировать версию xorg-server-1.15.99.902.
Что ты хочешь помещать в локальный оверлей и зачем непонятно.
nvidia-drivers же. Хотя это,
nvidia-drivers же. Хотя это, подозреваю, и не совсем правильный путь.
Вестимо с версией
Вестимо с версией xorg-server`а выше требуемой в ebuild`е nvidia-drivers просто не будут работать.
Ты думаешь там просто так поставили ограничение?
Нет, я вижу, что ты идёшь нестандартным путём, который предписывает тебе разводить флуд на 2 дня, вместо того, что бы просто замаскировать указанную версию xorg-server и обновлять систему далее. Теперь тебе путь предписывает попытаться запустить проприетарный драйвер на не поддерживаемой им версии xorg-server`а.
Возможно и не будет - тогда
Возможно и не будет - тогда откачусь назад и замаскирую. И кстати, я не флудил - просто у нас возникло недопонимание - я по ошибке думал, что новая версия hardmasked, а ты посчитал, что я не знаю, что такое маскировки и тестовая ветка.
В таком случае жду
В таком случае жду результатов о попытке использования nvidia-drivers на этой версии xorg-server`а.
Результаты: не работает
Результаты: не работает :D
Тем не менее, в данном случае, я считаю, лучше учиться на своих ошибках.
вот это поворот
вот это поворот
творю непотребства и потом жалуюсь на форуме, ибо gentoo позволяет, since 2009