Что означает хеш-символ в emerge output?
Когда я бегу emerge -avuDN world
Я получаю странный вывод для моего пакета grub:
[ebuild U #] sys-boot/grub-1.99-r2 [1.99_rc1] USE="nls%* sdl%* truetype -custom-cflags -debug -device-mapper% -efiemu% -static (-multislot%)" GRUB_PLATFORMS="-coreboot% -efi-32% -efi-64% -emu% -ieee1275% -multiboot% -pc% -qemu% -qemu-mips% -yeeloong%" 2,578 kB
Я не понимаю хэш-символ.
В моей конфигурации portage у меня есть две записи на grub:
$ grep "grub" *
package.keywords:<sys-boot/grub-9999 **
package.unmask:sys-boot/grub
Я не знаю почему, но удаление одной из записей заставляет portage попытаться установить grub-0.97 в новый слот, поэтому я оставляю оба.
Я был бы благодарен за некоторое объяснение этого загадочного хэша (и зачем мне эти две строки в конфигурации).
1 ответ
Вот отрывок из человека появляются:
[ebuild U *] sys-apps / portage-2.2.0_alpha6 [2.1.9.25] Portage 2.1.9.25 установлен, но если вы запустите команду, то portage обновится до версии 2.2.0_alpha6. В этом случае отображается символ *, чтобы указать, что версия 2.2.0_alpha6 замаскирована отсутствующим ключевым словом. Этот тип отображения маскирования отключается параметром --quiet, если параметр --verbose не включен одновременно. Следующие символы используются для обозначения различных типов маскирования: Тип маски символа # package.mask * отсутствует ключевое слово ~ нестабильное ключевое слово
Таким образом, символ # в вашем примере означает, что версия grub, которую он хочет установить, маскируется package.mask.
Ваша строка: package.unmask:sys-boot/grub заставляет его установить то, что в противном случае было бы замаскированным пакетом.
Ваша строка: package.keywords: Я ожидаю, что 0.97 - это последняя стабильная версия для вашей архитектуры, но поскольку у меня сейчас нет установленного gentoo, а http://gentoo-portage.com/sys-boot/grub похоже, не работает, я не могу проверить - извиняюсь!