Angie in FreeBSD official repos
Здравствуйте. В FreeBSD в официальных репозиториях до сих пор старенькая версия Angie 1.3.2
[root@srv /home/andrew]# pkg search angie | head -n 1
angie-1.3.2 Efficient, powerful and scalable reverse proxy and web server
В Ваших репозиториях я вижу новенькая версия. Может раз уже Angie размещен в официальных репозиториях FreeBSD, там тоже обновите? Спасибо.
Дополнительно поправьте на сайте инструкцию установки пакетов в FreeBSD:
https://angie.software/en/installation/oss_packages/#install-freebsd-oss
В пункте 3 надо заменить:
sudo curl -o /etc/apt/trusted.gpg.d/angie-signing.gpg \
https://angie.software/keys/angie-signing.gpg
На:
sudo curl -o /usr/local/etc/pkg/angie/angie-signing.rsa \
https://angie.software/keys/angie-signing.rsa
Спасибо.
В Ваших репозиториях я вижу новенькая версия. Может раз уже Angie размещен в официальных репозиториях FreeBSD, там тоже обновите? Спасибо.
У нас нет прямого доступа к официальным репозиториям FreeBSD. Предложенный патч с обновлением до 1.4.1 пролежал с марта месяца без движения, никто его не подобрал: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=277516 И, к сожалению, такая ситуация там повторяется регулярно.
Здравствуйте. В FreeBSD в официальных репозиториях до сих пор старенькая версия Angie 1.3.2
[root@srv /home/andrew]# pkg search angie | head -n 1 angie-1.3.2 Efficient, powerful and scalable reverse proxy and web serverВ Ваших репозиториях я вижу новенькая версия. Может раз уже Angie размещен в официальных репозиториях FreeBSD, там тоже обновите? Спасибо.
С обновлениями в портах FreeBSD у нас имеются некоторые сложности - как со своевременной реакцией коммитеров, так и с теми подходами, которые приняты к использованию в самой системе сборки.
С первой частью, выше вам показали наглядный пример.
А что касается второй - мы в ряде своих пакетов используем bundling для гарантированного поведения (собираем необходимые зависимости внутри пакета или используем статическую линковку). К сожалению, коммитеры портов это не одобряют и нам приходится переделывать патчи на использование тех зависимостей, которые имеются в портах на текущий момент.
Например: https://cgit.freebsd.org/ports/tree/www/angie-module-lua/Makefile
Как видно из GH_TUPLE, мы фиксируем версию модуля, которую считаем актуальной для работы с angie.
Но при этом, в USES мы вынужденно используем ту версию luajit-openresty, которую предоставляют порты в текущий момент. До кучи, все осложняется еще и тем, что в RUN_DEPENDS мы ссылаемся на lua-resty-core, а его версия жестко прибивается внутри lua-nginx-module автором модуля.
Итоговая конструкция получается весьма хрупкой и разваливающейся в момент, когда в портах luajit-openresty и/или lua-resty-core меняется версия.
В пакетах для своего репозитория мы не стеснены выбором подхода и используем bundling там, где считаем это полезным. Таким образом, еще и нарастает разница между портами, отдаваемыми в официальный репозиторий и используемыми для внутренней сборки, что тоже не выглядит здраво. По этой же причине, часть наших пакетов (например opentelemetry) даже не отправлялась в официальные порты.
Вероятно, какой-то усеченный вариант сборки мы все-таки будем поддерживать в портах, но я бы порекомендовал подключить наш репозиторий для получения более полного набора пакетов с более предсказуемым поведением.
Дополнительно поправьте на сайте инструкцию установки пакетов в FreeBSD:
https://angie.software/en/installation/oss_packages/#install-freebsd-oss
В пункте 3 надо заменить:
sudo curl -o /etc/apt/trusted.gpg.d/angie-signing.gpg \ https://angie.software/keys/angie-signing.gpgНа:
sudo curl -o /usr/local/etc/pkg/angie/angie-signing.rsa \ https://angie.software/keys/angie-signing.rsaСпасибо.
Да, это опечатка, обязательно поправим, спасибо.
Еще вопрос, я поставил angie + модуль brotli и теперь pkg, чтобы я не ставил выдает такое (но так-то всё работает):
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
Updating angie repository catalogue...
angie repository is up to date.
All repositories are up to date.
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
pkg: angie-module-brotli: duplicate dependency listing: angie
The following 1 package(s) will be affected (of 0 checked):
Еще вопрос, я поставил angie + модуль brotli и теперь pkg, чтобы я не ставил выдает такое (но так-то всё работает):
Updating FreeBSD repository catalogue... FreeBSD repository is up to date. Updating angie repository catalogue... angie repository is up to date. All repositories are up to date. pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie pkg: angie-module-brotli: duplicate dependency listing: angie The following 1 package(s) will be affected (of 0 checked):
Это следствие того, что pkg не очень приспособлен для работы с репозиторием, содержащим нескольких версий одного пакета. В Linux такое в порядке вещей, поэтому и для FreeBSD мы тоже поддерживаем в репозитории несколько версий, а не только последнюю. По нашим наблюдениям, pkg действительно выдает эти предупреждения, но ведет себя корректно.
Похоже ситуация улучшается. В официальных репозиториях FreeBSD версию обновили до текущей 1.8.1. Cпасибо неравнодушным пользователям.