From: "Sam James" <sam@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] data/gentoo-news:master commit in: 2022-12-27-alternatives-introduction/
Date: Wed, 28 Dec 2022 00:49:42 +0000 (UTC) [thread overview]
Message-ID: <1672188577.e9411435f572e21fb37e58f9560ae1f733d36f8b.sam@gentoo> (raw)
commit: e9411435f572e21fb37e58f9560ae1f733d36f8b
Author: Alexey Sokolov <alexey+gentoo <AT> asokolov <DOT> org>
AuthorDate: Tue Dec 27 12:51:25 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Dec 28 00:49:37 2022 +0000
URL: https://gitweb.gentoo.org/data/gentoo-news.git/commit/?id=e9411435
2022-12-27-alternatives-introduction: add Ru translation
Signed-off-by: Alexey Sokolov <alexey+gentoo <AT> asokolov.org>
Signed-off-by: Sam James <sam <AT> gentoo.org>
.../2022-12-27-alternatives-introduction.ru.txt | 98 ++++++++++++++++++++++
1 file changed, 98 insertions(+)
diff --git a/2022-12-27-alternatives-introduction/2022-12-27-alternatives-introduction.ru.txt b/2022-12-27-alternatives-introduction/2022-12-27-alternatives-introduction.ru.txt
new file mode 100644
index 0000000..254bb40
--- /dev/null
+++ b/2022-12-27-alternatives-introduction/2022-12-27-alternatives-introduction.ru.txt
@@ -0,0 +1,98 @@
+Title: Нововведение: пакеты app-alternatives
+Author: Sam James <sam@gentoo.org>
+Translator: Alexey Sokolov <alexey+gentoo@asokolov.org>
+Posted: 2022-12-24
+Revision: 1
+News-Item-Format: 2.0
+
+В Gentoo будет новая категория пакетов под названием «app-alternatives» для
+случаев, когда пользователь хочет поменять символическую ссылку, указывающую
+на распространённую программу, доступную в разных пакетах.
+
+По традиции, для этого использовался eselect, но, хотя eselect всё ещё бывает
+нужен, он плохо подходит для случаев, таких как /bin/awk и /bin/sh, потому что
+а) он предотвращает использование корневой файловой системы в режиме только
+для чтения, б) что более важно с точки зрения системы управления пакетами, он
+зависит от осиротевших символических ссылок: ни один пакет не владеет файлами
+/bin/awk, /bin/sh и т. д. Это не надёжно, и в некоторых случаях может привести
+к мёртвой ссылке или даже к отсутствию ссылки [0].
+
+При использовании для этих целей пакетного менеджера вместо ручной
+конфигурации вовне система станет более надёжной.
+
+Начальный список пакетов с поддержкой альтернатив такой:
+- app-alternatives/awk
+- app-alternatives/bzip2
+- app-alternatives/bc
+- app-alternatives/cpio
+- app-alternatives/gzip
+- app-alternatives/lex
+- app-alternatives/sh
+- app-alternatives/tar
+- app-alternatives/yacc
+
+Стабилизация этих пакетов, а также пакетов, от них зависящих, происходит в
+баге 886017 [1].
+
+## Требования для обновления
+
+Настройка по умолчанию для систем Gentoo выглядит так:
+FEATURES="protect-owned"; это работает подобно FEATURES="collision-protect",
+но позволяет конфликты между файлами-сиротами. В этом случае возникнет
+одноразовый конфликт, когда пакет из app-alternatives/ присвоит себе
+символическую ссылку, которая до этого не принадлежала ни одному пакету.
+
+Похожая ситуация была при миграции на libxcrypt, когда обновления ломались у
+пользователей при использовании старой, более агрессивной настройки
+FEATURES="collision-protect".
+
+Мы рекомендуем вам обновить свою конфигурацию, и убрать «collision-protect» из
+FEATURES. Вместо этого можете явно включить «protect-owned» или не указывать
+там ничего, потому что это итак настройка по умолчанию. Также можно выключить
+«collision-protect» временно, только для этого обновления, и затем включить
+обратно.
+
+ВНИМАНИЕ: Пользователи, использующие collision-protect, должны убрать его из
+FEATURES в /etc/portage/make.conf, либо установить
+FEATURES="-collision-protect". collision-protect находит конфликты между
+файлами, даже когда ни один пакет не владеет файлом.
+
+## Миграция
+
+Для миграции достаточно убрать eselect-awk и eselect-sh из world, и обновить
+систему как обычно:
+1. # emerge --deselect app-eselect/eselect-awk app-eselect/eselect-sh
+2. # emerge --sync
+3. # emerge -a -uvDU @world (или похожая команда для стандартного обновления
+системы)
+
+## Конфигурация
+
+Если вы не заинтересованны в использовании разных реализаций перечисленных
+выше инструментов, эту секцию можно пропустить.
+
+По умолчанию никакая конфигурация не требуется, но вы можете настраивать
+поведение пакетов из app-alternatives/, как раньше использовали для этого,
+например, eselect-sh и eselect-awk.
+
+Теперь для этого будет использоваться /etc/portage/package.use.
+
+Пожалуйста, просмотрите USE-флаги, доступные для различных пакетов из
+app-alternatives, таких как app-alternatives/sh, и настройте их на ваше
+усмотрение.
+
+Например, чтобы /usr/bin/gzip был предоставлен пакетом app-arch/pigz, это
+автоматически параллелизует gzip, нужен такой текст в /etc/portage/package.use:
+```
+# https://wiki.gentoo.org/wiki/Gzip#Parallelization
+# Пусть /usr/bin/gzip будет ссылкой на pigz для ускорения сжатия
+app-alternatives/gzip -reference pigz
+```
+
+## Дополнительные материалы
+
+Больше технических подробностей описано в вики [2].
+
+[0] https://wiki.gentoo.org/wiki/Project:Base/Alternatives#Why.3F
+[1] https://bugs.gentoo.org/886017
+[2] https://wiki.gentoo.org/wiki/Project:Base/Alternatives
next reply other threads:[~2022-12-28 0:49 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-12-28 0:49 Sam James [this message]
-- strict thread matches above, loose matches on Subject: below --
2022-12-30 6:48 [gentoo-commits] data/gentoo-news:master commit in: 2022-12-27-alternatives-introduction/ Sam James
2022-12-30 6:40 Sam James
2022-12-30 6:39 Sam James
2022-12-29 23:40 Sam James
2022-12-28 16:18 Sam James
2022-12-28 16:08 Sam James
2022-12-28 16:08 Sam James
2022-12-27 11:30 Sam James
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1672188577.e9411435f572e21fb37e58f9560ae1f733d36f8b.sam@gentoo \
--to=sam@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox