[freebsd] ports management

Anton Sayetsky vsasjason at gmail.com
Mon Jan 8 21:12:40 EET 2018


10 декабря 2017 г., 17:45 пользователь Владимир Друзенко
<vvd at unislabs.com> написал:
> 09.12.2017 22:48, Anton Sayetsky пишет:
>>
>> 9 декабря 2017 г., 16:43 пользователь Владимир Друзенко
>> <vvd at unislabs.com> написал:
>>>
>>> 09.12.2017 17:38, Anton Sayetsky пишет:
>>>
>>> 9 дек. 2017 г. 16:29 пользователь "George L. Yermulnik" <yz at yz.kiev.ua>
>>> написал:
>>>
>>> Hello!
>>>
>>> On Sat, 09 Dec 2017 at 16:26:53 (+0200), Anton Sayetsky wrote:
>>>
>>>> Я бы просто поставил ports-mgmt/poudriere и забыл об этих проблемах.
>>>
>>> Во-первых, топик стартер, судя по всему, вообще не часто порты
>>> обновляет. А во-вторых, если один сервер или один десктоп, то лично я не
>>> вижу смысла городить пудру.
>>>
>>> Отвечу с конца: ну, я уже говорил тебе в частной переписке, почему я за
>>> poudriere, даже если это для локалхоста. Кроме того, не могу согласиться,
>>> что тут применим глагол "городить", так как это довольно простая штука -
>>> всего лишь десяток шелл-скриптов по сути. Там, кстати, фича-реквест висел
>>> по
>>> поводу использования хост-системы в качестве источника для jail.
>>> А по поводу нечастого обновления - так оно эту проблему и решает,
>>> тащемта.
>>> Указал себе список нужных пакетов - они и соберутся в чистой,
>>> изолированной
>>> системе, так что во время сборки проблемы удалённых/перемещённых портов
>>> исключаются. А в итоге у тебя репа, и pkg upgrade в подавляющем
>>> большинстве
>>> случаев вышеописанную ситуацию тоже обрабатывает автоматически (привет,
>>> Perl
>>> 5.xx -> 5.xx+1).
>>>
>>>
>>> Место под jail,
>>
>> Аж целых полтора гига
>
> На виртуалке.
Arubacloud даёт 20 ГиБ за 1 ойро в месяц. Ладно, допустим, что у тебя
виртуалка с 8 ГиБ диска (меньше не видел) -  на такой виртуалке вряд
ли вообще имеет смысл что-то собирать, не так ли?

>>   без учёта сжатия!
>
> На UFS.
geom_uzip. Костыльно слегка, но можно ведь!

>>> регулярная его актуализация,
>>
>> Только при смене major release.
>
> И даже патчи (pN) ставить не надо.
Да, не нужно. Зачем (jail пороховницы, который ничего не делает, кроме
компиляния)?

>>> пересборка
>>
>> Логично, что для страховки зависящие пакеты удаляются при обновлении
>> версии того, от чего зависят. Зато нет link error: undefined symbol,
>> даже если глупый maintainer забыл бампнуть PORTREVISION.
>
> Хотели сэкономить на ресурсах CPU пересборкой только конкретных портов, а
> кто-то вдруг посчитал себя умнее нас и заставляет каждый раз пересобирать
> всё. Очень рационально.
> Ещё хин: pkg info -r <PORT> и пересборка всех зависимых.
Не "всё", а только то, что является прямой зависимостью.

>>> или как минимум переустановка
>>
>> Конечно - таким образом гарантируется чистое окружение.
>
> А потом появляются порты, которые собираются исключительно в лабораторных
> условиях и только с опциями по умолчанию. Нет уж, спасибо, маинтейнер обязан
> обеспечить сборку своего порта в живой системе с любым допустимым набором
> опций и любым допустимым набором установленных портов. Вот где действительно
> обленились, а не забывшие сделать бамп.
В Porter's Handbook есть что-то о сборке портов на "нечистой" системе?
Так ли _обязан_? А я вот имею информацию, что обязан - чтобы portlint
не матерился и чтобы в пороховнице собиралось.

>>> сотни портов только для того, чтобы обновить один единственный
>>> порт. Очень рациональное использование ресурсов! :-(
>>
>> TMPFS и ccache включаются одной строчкой в конфиге.
>
>
> На виртуалке с гигом памяти.
на такой виртуалке вряд ли вообще имеет смысл что-то собирать, не так ли? [x2]


More information about the freebsd mailing list