View previous topic :: View next topic |
Author |
Message |
Baritone n00b
Joined: 16 Aug 2016 Posts: 10 Location: Москва
|
Posted: Wed Feb 15, 2017 8:58 am Post subject: Флаг USE=libressl |
|
|
Решил перевести систему на libressl.
Просто есть одна вполне легальная и даже рекомендованная некоторыми правительственными чиновниками России программа, которая помогает исправлять некоторые косяки Роскомнадзора. Ну, Вы знаете, о чём я... и она требует libressl вместо openssl. Кроме того, вообще есть ощущение, что через некоторое время libressl будет в мэйнстриме вместо openssl.
Поскольку на живой системе переход не сработал, решил поиграться на простейшей, на базе образа stage3.
1) Установил USE="libressl, ssl ". Обновляемые пакеты требуют openssl
2) Пересобрал всё без ssl, удалил openssl, поставил libressl. Начал по одному ставить пакеты, которые на stage3 по умолчанию используют ssl, в варианте с поддержкой ssl: wget, python, ещё кой-чего... Все требуют удалить конфликтующий libressl и поставить openssl.
3) Грубо сделал свои версии .ebuild-ов, удалив возможность компиляции с openssl, и начал их ставить по одному. Сработало. Основа системы перешла на libressl.
4) Попробовал расширить систему, поставить X-ы, это потянуло curl. У curl зависимости по ssl - чёрт ногу сломит. Он может собираться с десятком различных библиотек по выбору. И тут он начинает изображать, что я не сделал выбор между библиотеками, предоставляющими ssl. Поигравшись с флагами USE, обнаружил, что в сообщениях об ошибке постоянно указывается наличие флага (-libressl), хотя глобально USE="libressl, ssl ", и даже локально, для пакета curl, этот флаг был установлен.
После этого я понял, что не понимаю настройку переменной USE.
Всвязи с этим есть два вопроса:
1) Что могло вызвать, что опция (-libressl) указывается в скобках? Может, имеется какая-то блокировка некоторых флагов USE? Читая документацию, я не смог найти такую возможность.
2) Как снять минус с флага libressl ? |
|
Back to top |
|
|
Baritone n00b
Joined: 16 Aug 2016 Posts: 10 Location: Москва
|
Posted: Thu Feb 16, 2017 5:33 am Post subject: |
|
|
Как говорится, сам дурак.
Действительно, опция USE=libressl заблокирована в 2015 году, потому что не работает для curl.
Способ блокировки флагов переменной USE описан в man portage, я просто невнимательно смотрел.
Я скомпилировал curl с nss.
Теперь у меня имеется система с libressl, буду смотреть, как она работает.
Там сейчас установлены устаревшие X-ы с частнособственническими драйверами ATI, которые уже намечены для исключения из древа портэжей, и устаревшее ядро 3-й ветки, для игры "War Thander". О результатах отпишусь. |
|
Back to top |
|
|
Baritone n00b
Joined: 16 Aug 2016 Posts: 10 Location: Москва
|
Posted: Sat Feb 25, 2017 11:21 am Post subject: |
|
|
Удалось перевести основную систему на libressl
При этом не стал воевать с разблокировкой флага USE=libressl, а просто скопировал нужные ebuildы из ветки портэжей libressl (подключается в layman, там, в отличие от основного древа, имеются все нужные патчи) в /ur/local/portage, и подредактировал их, чтобы они всегда использовали libressl, вне зависимости от состояния переменной USE.
Как и в тестовой системе, собрал curl с nss, остальное собралось с libressl.
Последняя проблема была с ядром - ветка 4.4 не соглашалась компилироваться без openssl, но всё прекрасно получилось с ядром ветки 4.9
Кой-чего пересобирал с emerge -e, но не уверен, что это было нужно. |
|
Back to top |
|
|
Pinkbyte Retired Dev
Joined: 01 Jun 2012 Posts: 128 Location: Rostov-on-Don, Russia
|
Posted: Sun Feb 26, 2017 3:26 pm Post subject: |
|
|
2 момента:
1) начинать эксперименты с libressl лучше на unstable - у многих стабильных ебилдов тупо нет поддержки libressl;
2) если уж хочется покрутить стабильную ветку, добавления USE="libressl" в make.conf недостаточно, нужно еще добавить "-libressl" в /etc/portage/profile/use.stable.mask - это разрешит использовать данный флаг в ебилдах(по умолчанию флаг замаскирован на всех стабильных ебилдах в профиле) |
|
Back to top |
|
|
Baritone n00b
Joined: 16 Aug 2016 Posts: 10 Location: Москва
|
Posted: Mon Feb 27, 2017 6:14 pm Post subject: |
|
|
Pinkbyte wrote: | 2 момента:
1) начинать эксперименты с libressl лучше на unstable - у многих стабильных ебилдов тупо нет поддержки libressl;
2) если уж хочется покрутить стабильную ветку, добавления USE="libressl" в make.conf недостаточно, нужно еще добавить "-libressl" в /etc/portage/profile/use.stable.mask - это разрешит использовать данный флаг в ебилдах(по умолчанию флаг замаскирован на всех стабильных ебилдах в профиле) |
Спасибо - я действительно не знал, как правильно разблокировать USE="libressl", и обходил проблему редактированием ebuildов в локальной ветке портэжей. Теперь уберу костыли.
Но во во всяком случае я уже собрал всю свою систему заново, нужды в нестабильных версиях почти не было: это =net-nds/openldap-2.4.44-r1, =net-libs/neon-0.30.1-r1, остальное было взято в ветке libressl, подключаемой с помощью layman. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|