aboutsummaryrefslogtreecommitdiff
path: root/gnu/tests/linux-modules.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/tests/linux-modules.scm')
0 files changed, 0 insertions, 0 deletions
‚Π²ΠΈΠ΅" #. type: Plain text #: guix-git/doc/contributing.texi:9 msgid "This project is a cooperative effort, and we need your help to make it grow! Please get in touch with us on @email{guix-devel@@gnu.org} and @code{#guix} on the LiberaΒ Chat IRC network. We welcome ideas, bug reports, patches, and anything that may be helpful to the project. We particularly welcome help on packaging (@pxref{Packaging Guidelines})." msgstr "Π­Ρ‚ΠΎΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ - совмСстная Ρ€Π°Π±ΠΎΡ‚Π°, ΠΈ Π½Π°ΠΌ Π½ΡƒΠΆΠ½Π° ваша ΠΏΠΎΠΌΠΎΡ‰ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ развивался! ΠŸΠΎΠΆΠ°Π»ΡƒΠΉΡΡ‚Π°, ΡΠ²ΡΠΆΠΈΡ‚Π΅ΡΡŒ с Π½Π°ΠΌΠΈ ΠΏΠΎ @email{guix-devel@@gnu.org} ΠΈ @code{#guix} Π² IRC-сСти Libera Chat. ΠœΡ‹ привСтствуСм ΠΈΠ΄Π΅ΠΈ, сообщСния ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ…, ΠΏΠ°Ρ‚Ρ‡ΠΈ ΠΈ всС, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ для ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. ΠœΡ‹ особСнно привСтствуСм ΠΏΠΎΠΌΠΎΡ‰ΡŒ Π² ΡƒΠΏΠ°ΠΊΠΎΠ²ΠΊΠ΅ (@pxref{Packaging Guidelines})." #. type: cindex #: guix-git/doc/contributing.texi:10 #, no-wrap msgid "code of conduct, of contributors" msgstr "кодСкс повСдСния участников" #. type: cindex #: guix-git/doc/contributing.texi:11 #, no-wrap msgid "contributor covenant" msgstr "соглашСниС для соавторов" #. type: Plain text #: guix-git/doc/contributing.texi:17 msgid "We want to provide a warm, friendly, and harassment-free environment, so that anyone can contribute to the best of their abilities. To this end our project uses a ``Contributor Covenant'', which was adapted from @url{https://contributor-covenant.org/}. You can find a local version in the @file{CODE-OF-CONDUCT} file in the source tree." msgstr "ΠœΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ‚Π΅ΠΏΠ»ΡƒΡŽ, Π΄Ρ€ΡƒΠΆΠ΅Π»ΡŽΠ±Π½ΡƒΡŽ срСду, ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΡƒΡŽ ΠΎΡ‚ оскорблСний, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΌΠΎΠ³ внСсти свой Π²ΠΊΠ»Π°Π΄ Π² ΠΌΠ΅Ρ€Ρƒ своих возмоТностСй. Для этого Π² нашСм ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ``БоглашСниС для Π°Π²Ρ‚ΠΎΡ€ΠΎΠ²'', основанноС Π½Π° @url {https://contributor-covenant.org/}. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΉΡ‚ΠΈ Π»ΠΎΠΊΠ°Π»ΡŒΠ½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Π² Ρ„Π°ΠΉΠ»Π΅ @file{CODE-OF-CONDUCT} Π² исходном Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ." #. type: Plain text #: guix-git/doc/contributing.texi:21 msgid "Contributors are not required to use their legal name in patches and on-line communication; they can use any name or pseudonym of their choice." msgstr "Π‘ΠΎΠ°Π²Ρ‚ΠΎΡ€Ρ‹ Π½Π΅ обязаны ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΈΠΌΠ΅Π½Π° Π² ΠΏΠ°Ρ‚Ρ‡Π°Ρ… ΠΈ Π² ΠΎΠ±Ρ‰Π΅Π½ΠΈΠΈ ΠΎΠ½Π»Π°ΠΉΠ½. Они ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π»ΡŽΠ±Ρ‹ΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΈΠ»ΠΈ псСводнимом ΠΏΠΎ своСму Π²Ρ‹Π±ΠΎΡ€Ρƒ." #. type: section #: guix-git/doc/contributing.texi:42 guix-git/doc/contributing.texi:44 #: guix-git/doc/contributing.texi:45 #, no-wrap msgid "Requirements" msgstr "ВрСбования" #. type: menuentry #: guix-git/doc/contributing.texi:42 msgid "Software needed to build and run Guix." msgstr "ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ΅ для запуска Guix." #. type: section #: guix-git/doc/contributing.texi:42 guix-git/doc/contributing.texi:132 #: guix-git/doc/contributing.texi:133 #, no-wrap msgid "Building from Git" msgstr "Π‘Π±ΠΎΡ€ΠΊΠ° ΠΈΠ· Git" #. type: menuentry #: guix-git/doc/contributing.texi:42 msgid "The latest and greatest." msgstr "НовСйший ΠΈ Π²Π΅Π»ΠΈΡ‡Π°ΠΉΡˆΠΈΠΉ." #. type: section #: guix-git/doc/contributing.texi:42 guix-git/doc/contributing.texi:324 #: guix-git/doc/contributing.texi:325 #, no-wrap msgid "Running the Test Suite" msgstr "Запуск Π½Π°Π±ΠΎΡ€Π° тСстов" #. type: menuentry #: guix-git/doc/contributing.texi:42 msgid "Testing Guix." msgstr "ВСстированиС Guix." #. type: section #: guix-git/doc/contributing.texi:42 guix-git/doc/contributing.texi:435 #: guix-git/doc/contributing.texi:436 #, no-wrap msgid "Running Guix Before It Is Installed" msgstr "Запуск Guix ΠΏΠ΅Ρ€Π΅Π΄ Π΅Π³ΠΎ установкой" #. type: menuentry #: guix-git/doc/contributing.texi:42 msgid "Hacker tricks." msgstr "Π₯акСрскиС Ρ‚Ρ€ΡŽΠΊΠΈ." #. type: section #: guix-git/doc/contributing.texi:42 guix-git/doc/contributing.texi:525 #: guix-git/doc/contributing.texi:526 #, no-wrap msgid "The Perfect Setup" msgstr "Π‘ΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½Π°Ρ установка" #. type: menuentry #: guix-git/doc/contributing.texi:42 msgid "The right tools." msgstr "ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Π΅ инструмСнты." #. type: section #: guix-git/doc/contributing.texi:42 guix-git/doc/contributing.texi:702 #: guix-git/doc/contributing.texi:703 #, no-wrap msgid "Alternative Setups" msgstr "ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ настройки" #. type: menuentry #: guix-git/doc/contributing.texi:42 msgid "Other possible tools that do the job." msgstr "Π”Ρ€ΡƒΠ³ΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ подходящиС инструмСнты." #. type: section #: guix-git/doc/contributing.texi:42 guix-git/doc/contributing.texi:779 #: guix-git/doc/contributing.texi:780 #, no-wrap msgid "Source Tree Structure" msgstr "Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° исходного ΠΊΠΎΠ΄Π°" #. type: menuentry #: guix-git/doc/contributing.texi:42 msgid "Source code guided tour." msgstr "ΠžΠ±Π·ΠΎΡ€ исходного ΠΊΠΎΠ΄Π°." #. type: section #: guix-git/doc/contributing.texi:42 guix-git/doc/contributing.texi:1030 #: guix-git/doc/contributing.texi:1031 #, no-wrap msgid "Packaging Guidelines" msgstr "Руководство ΠΏΠΎ ΡƒΠΏΠ°ΠΊΠΎΠ²ΠΊΠ΅" #. type: menuentry #: guix-git/doc/contributing.texi:42 msgid "Growing the distribution." msgstr "РазрастаниС дистрибутива." #. type: section #: guix-git/doc/contributing.texi:42 guix-git/doc/contributing.texi:1751 #: guix-git/doc/contributing.texi:1752 #, no-wrap msgid "Coding Style" msgstr "Π‘Ρ‚ΠΈΠ»ΡŒ написания ΠΊΠΎΠ΄Π°" #. type: menuentry #: guix-git/doc/contributing.texi:42 msgid "Hygiene of the contributor." msgstr "Π“ΠΈΠ³ΠΈΠ΅Π½Π° соавтора." #. type: section #: guix-git/doc/contributing.texi:42 guix-git/doc/contributing.texi:1858 #: guix-git/doc/contributing.texi:1859 #, no-wrap msgid "Submitting Patches" msgstr "ΠžΡ‚ΠΏΡ€Π°Π²ΠΊΠ° исправлСний" #. type: menuentry #: guix-git/doc/contributing.texi:42 msgid "Share your work." msgstr "ΠŸΠΎΠ΄Π΅Π»ΠΈΡ‚Π΅ΡΡŒ своСй Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ." #. type: section #: guix-git/doc/contributing.texi:42 guix-git/doc/contributing.texi:2228 #: guix-git/doc/contributing.texi:2229 #, no-wrap msgid "Tracking Bugs and Changes" msgstr "ΠžΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ ошибок ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ" #. type: menuentry #: guix-git/doc/contributing.texi:42 msgid "Keeping it all organized." msgstr "Π₯Ρ€Π°Π½Π΅Π½ΠΈΠ΅ всСго этого Π² Π½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰Π΅ΠΌ порядкС." #. type: section #: guix-git/doc/contributing.texi:42 guix-git/doc/contributing.texi:2633 #: guix-git/doc/contributing.texi:2634 #, no-wrap msgid "Teams" msgstr "" #. type: menuentry #: guix-git/doc/contributing.texi:42 msgid "Coordinating efforts." msgstr "" #. type: section #: guix-git/doc/contributing.texi:42 guix-git/doc/contributing.texi:2710 #: guix-git/doc/contributing.texi:2711 #, no-wrap msgid "Making Decisions" msgstr "" #. type: menuentry #: guix-git/doc/contributing.texi:42 msgid "Collectively choosing the way forward." msgstr "" #. type: section #: guix-git/doc/contributing.texi:42 guix-git/doc/contributing.texi:2729 #: guix-git/doc/contributing.texi:2730 #, no-wrap msgid "Commit Access" msgstr "Доступ ΠΊ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°ΠΌ" #. type: menuentry #: guix-git/doc/contributing.texi:42 msgid "Pushing to the official repository." msgstr "ВнСсСниС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ." #. type: section #: guix-git/doc/contributing.texi:42 guix-git/doc/contributing.texi:2959 #: guix-git/doc/contributing.texi:2960 #, no-wrap msgid "Reviewing the Work of Others" msgstr "ΠžΠ±Π·ΠΎΡ€ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π΄Ρ€ΡƒΠ³ΠΈΡ…" #. type: menuentry #: guix-git/doc/contributing.texi:42 msgid "Some guidelines for sharing reviews." msgstr "ΠŸΡ€Π°Π²ΠΈΠ»Π° ΠΏΠΎ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΎΡ‚Π·Ρ‹Π²ΠΎΠ²." #. type: section #: guix-git/doc/contributing.texi:42 guix-git/doc/contributing.texi:3058 #: guix-git/doc/contributing.texi:3059 #, no-wrap msgid "Updating the Guix Package" msgstr "ОбновлСниС ΠΏΠ°ΠΊΠ΅Ρ‚Π° Guix" #. type: menuentry #: guix-git/doc/contributing.texi:42 msgid "Updating the Guix package definition." msgstr "ОбновлСниС описания ΠΏΠ°ΠΊΠ΅Ρ‚Π° Π² Guix." #. type: section #: guix-git/doc/contributing.texi:42 guix-git/doc/contributing.texi:3095 #: guix-git/doc/contributing.texi:3096 #, no-wrap msgid "Deprecation Policy" msgstr "" #. type: menuentry #: guix-git/doc/contributing.texi:42 msgid "Commitments and tools for deprecation." msgstr "" #. type: section #: guix-git/doc/contributing.texi:42 guix-git/doc/contributing.texi:3286 #: guix-git/doc/contributing.texi:3287 #, no-wrap msgid "Writing Documentation" msgstr "НаписаниС Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ" #. type: menuentry #: guix-git/doc/contributing.texi:42 msgid "Improving documentation in GNU Guix." msgstr "Π£Π»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ GNU Guix." #. type: section #: guix-git/doc/contributing.texi:42 guix-git/doc/contributing.texi:3330 #: guix-git/doc/contributing.texi:3331 #, no-wrap msgid "Translating Guix" msgstr "ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ Guix Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ языки" #. type: menuentry #: guix-git/doc/contributing.texi:42 msgid "Make Guix speak your native language." msgstr "Π—Π°ΡΡ‚Π°Π²ΡŒΡ‚Π΅ Guix Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ Π½Π° вашСм Ρ€ΠΎΠ΄Π½ΠΎΠΌ языкС." #. type: Plain text #: guix-git/doc/contributing.texi:49 msgid "You can easily hack on Guix itself using Guix and Git, which we use for version control (@pxref{Building from Git})." msgstr "Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π»Π΅Π³ΠΊΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Guix, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ сам Guix ΠΈ Git, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ для контроля вСрсий (@pxref{Building from Git})." #. type: Plain text #: guix-git/doc/contributing.texi:54 msgid "But when packaging Guix for foreign distros or when bootstrapping on systems without Guix, and if you decide to not just trust and install our readily made binary (@pxref{Binary Installation}), you can download a release version of our reproducible source tarball and read on." msgstr "Однако, Ссли Π²Ρ‹ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ Guix Π½Π° внСшниС дистрибутивы ΠΈΠ»ΠΈ раскручиваСтС Π΅Π³ΠΎ Π½Π° систСмах Π±Π΅Π· Guix, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ссли Π²Ρ‹ Π½Π΅ довСряСтС ΠΏΡ€Π΅Π΄ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ Π½Π°ΠΌΠΈ сборкам (@pxref{Binary Installation}), Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ Ρ€Π΅Π»ΠΈΠ·Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ нашСго воспроизводимого tar-Π°Ρ€Ρ…ΠΈΠ²Π° с исходниками ΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ‚ΡŒ дальшС." #. type: Plain text #: guix-git/doc/contributing.texi:59 msgid "This section lists requirements when building Guix from source. The build procedure for Guix is the same as for other GNU software, and is not covered here. Please see the files @file{README} and @file{INSTALL} in the Guix source tree for additional details." msgstr "Π­Ρ‚ΠΎΡ‚ Ρ€Π°Π·Π΄Π΅Π» содСрТит трСбования для сборки Guix ΠΈΠ· исходников. ΠŸΠΎΠΆΠ°Π»ΡƒΠΉΡΡ‚Π°, смотритС Ρ„Π°ΠΉΠ»Ρ‹ @file{README} ΠΈ @file{INSTALL} Π² Π΄Π΅Ρ€Π΅Π²Π΅ исходников Guix для ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ." #. type: cindex #: guix-git/doc/contributing.texi:60 #, no-wrap msgid "official website" msgstr "ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π²Π΅Π±-сайт" #. type: Plain text #: guix-git/doc/contributing.texi:63 msgid "GNU Guix is available for download from its website at @url{https://www.gnu.org/software/guix/}." msgstr "GNU Guix доступСн для скачивания Π½Π° сайтС @url{https://www.gnu.org/software/guix/}." #. type: Plain text #: guix-git/doc/contributing.texi:65 msgid "GNU Guix depends on the following packages:" msgstr "GNU Guix зависит ΠΎΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²:" #. type: item #: guix-git/doc/contributing.texi:67 #, no-wrap msgid "@url{https://gnu.org/software/guile/, GNU Guile}, version 3.0.x," msgstr "@url{https://gnu.org/software/guile/, GNU Guile} вСрсии 3.0.x;" #. type: itemize #: guix-git/doc/contributing.texi:69 msgid "version 3.0.3 or later;" msgstr "3.0.3 ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½Π΅ΠΉ;" #. type: item #: guix-git/doc/contributing.texi:69 #, no-wrap msgid "@url{https://notabug.org/cwebber/guile-gcrypt, Guile-Gcrypt}, version" msgstr "@url{https://notabug.org/cwebber/guile-gcrypt, Guile-Gcrypt} вСрсии" #. type: itemize #: guix-git/doc/contributing.texi:71 msgid "0.1.0 or later;" msgstr "0.1.0 ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½Π΅ΠΉ;" #. type: itemize #: guix-git/doc/contributing.texi:77 msgid "@uref{https://gitlab.com/gnutls/guile/, Guile-GnuTLS} (@pxref{Guile Preparations, how to install the GnuTLS bindings for Guile,, gnutls-guile, GnuTLS-Guile})@footnote{The Guile bindings to @uref{https://gnutls.org/, GnuTLS} were distributed as part of GnuTLS until version 3.7.8 included.};" msgstr "" #. type: itemize #: guix-git/doc/contributing.texi:80 msgid "@uref{https://notabug.org/guile-sqlite3/guile-sqlite3, Guile-SQLite3}, version 0.1.0 or later;" msgstr "@uref{https://notabug.org/guile-sqlite3/guile-sqlite3, Guile-SQLite3} вСрсии 0.1.0 ΠΈΠ»ΠΈ Π½ΠΎΠ²Π΅Π΅;" #. type: item #: guix-git/doc/contributing.texi:80 #, no-wrap msgid "@uref{https://notabug.org/guile-zlib/guile-zlib, Guile-zlib}," msgstr "@uref{https://notabug.org/guile-zlib/guile-zlib, Guile-zlib}," #. type: itemize #: guix-git/doc/contributing.texi:82 msgid "version 0.1.0 or later;" msgstr "0.1.0 ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½Π΅ΠΉ;" #. type: item #: guix-git/doc/contributing.texi:82 #, no-wrap msgid "@uref{https://notabug.org/guile-lzlib/guile-lzlib, Guile-lzlib};" msgstr "@uref{https://notabug.org/guile-lzlib/guile-lzlib, Guile-lzlib};" #. type: item #: guix-git/doc/contributing.texi:83 #, no-wrap msgid "@uref{https://www.nongnu.org/guile-avahi/, Guile-Avahi};" msgstr "@uref{https://www.nongnu.org/guile-avahi/, Guile-Avahi};" #. type: itemize #: guix-git/doc/contributing.texi:87 msgid "@uref{https://gitlab.com/guile-git/guile-git, Guile-Git}, version 0.5.0 or later;" msgstr "@uref{https://gitlab.com/guile-git/guile-git, Guile-Git} ΠΎΡ‚ августа 2017 ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½Π΅ΠΉ;" #. type: item #: guix-git/doc/contributing.texi:87 #, no-wrap msgid "@uref{https://git-scm.com, Git} (yes, both!);" msgstr "@uref{https://git-scm.com, Git} (Π΄Π°, ΠΎΠ±Π°!);" #. type: item #: guix-git/doc/contributing.texi:88 #, no-wrap msgid "@uref{https://savannah.nongnu.org/projects/guile-json/, Guile-JSON}" msgstr "@uref{https://savannah.nongnu.org/projects/guile-json/, Guile-JSON}" #. type: itemize #: guix-git/doc/contributing.texi:90 msgid "4.3.0 or later;" msgstr "4.3.0 ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½Π΅ΠΉ;" #. type: item #: guix-git/doc/contributing.texi:90 #, no-wrap msgid "@url{https://www.gnu.org/software/make/, GNU Make}." msgstr "@url{https://www.gnu.org/software/make/, GNU Make}." #. type: Plain text #: guix-git/doc/contributing.texi:94 msgid "The following dependencies are optional:" msgstr "Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ зависимости Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹:" #. type: itemize #: guix-git/doc/contributing.texi:102 msgid "Support for build offloading (@pxref{Daemon Offload Setup}) and @command{guix copy} (@pxref{Invoking guix copy}) depends on @uref{https://github.com/artyom-poptsov/guile-ssh, Guile-SSH}, version 0.13.0 or later." msgstr "ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ€Π°Π·Π³Ρ€ΡƒΠ·ΠΊΠΈ сборки (@pxref{Daemon Offload Setup}) ΠΈ @command{guix copy} (@pxref{Invoking guix copy}) зависят ΠΎΡ‚ @uref{https://github.com/artyom-poptsov/guile-ssh, Guile-SSH} вСрсии 0.10.2 ΠΈΠ»ΠΈ Π½ΠΎΠ²Π΅Π΅." #. type: itemize #: guix-git/doc/contributing.texi:107 msgid "@uref{https://notabug.org/guile-zstd/guile-zstd, Guile-zstd}, for zstd compression and decompression in @command{guix publish} and for substitutes (@pxref{Invoking guix publish})." msgstr "@uref{https://notabug.org/guile-zstd/guile-zstd, Guile-zstd}, для zstd сТатия ΠΈ распаковки Π² @command{guix publish} ΠΈ для Π·Π°ΠΌΠ΅Π½ΠΈΡ‚Π΅Π»Π΅ΠΉ (@pxref{Invoking guix publish})." #. type: itemize #: guix-git/doc/contributing.texi:111 msgid "@uref{https://ngyro.com/software/guile-semver.html, Guile-Semver} for the @code{crate} importer (@pxref{Invoking guix import})." msgstr "@uref{https://ngyro.com/software/guile-semver.html, Guile-Semver} для @code{crate} ΠΈΠΌΠΏΠΎΡ€Ρ‚Π΅Ρ€Π° (@pxref{Invoking guix import})." #. type: itemize #: guix-git/doc/contributing.texi:116 msgid "@uref{https://www.nongnu.org/guile-lib/doc/ref/htmlprag/, Guile-Lib} for the @code{go} importer (@pxref{Invoking guix import}) and for some of the ``updaters'' (@pxref{Invoking guix refresh})." msgstr "@uref{https://ngyro.com/software/guile-semver.html, Guile-Semver} для @code{crate} ΠΈΠΌΠΏΠΎΡ€Ρ‚Π΅Ρ€Π° (@pxref{Invoking guix import})." #. type: itemize #: guix-git/doc/contributing.texi:120 msgid "When @url{http://www.bzip.org, libbz2} is available, @command{guix-daemon} can use it to compress build logs." msgstr "Если доступна @url{http://www.bzip.org, libbz2}, @command{guix-daemon} ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Ρ‘ для сТатия Π»ΠΎΠ³ΠΎΠ² сборки." #. type: Plain text #: guix-git/doc/contributing.texi:124 msgid "Unless @option{--disable-daemon} was passed to @command{configure}, the following packages are also needed:" msgstr "Если строка @code{--disable-daemon} Π½Π΅ использовалась Π² @command{configure}, Ρ‚ΠΎΠ³Π΄Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹:" #. type: item #: guix-git/doc/contributing.texi:126 #, no-wrap msgid "@url{https://gnupg.org/, GNU libgcrypt};" msgstr "@url{https://gnupg.org/, GNU libgcrypt};" #. type: item #: guix-git/doc/contributing.texi:127 #, no-wrap msgid "@url{https://sqlite.org, SQLite 3};" msgstr "@url{https://sqlite.org, SQLite 3};" #. type: item #: guix-git/doc/contributing.texi:128 #, no-wrap msgid "@url{https://gcc.gnu.org, GCC's g++}, with support for the" msgstr "@url{https://gcc.gnu.org, GCC's g++} с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ" #. type: itemize #: guix-git/doc/contributing.texi:130 msgid "C++11 standard." msgstr "стандарта C++11." #. type: Plain text #: guix-git/doc/contributing.texi:137 msgid "If you want to hack Guix itself, it is recommended to use the latest version from the Git repository:" msgstr "Если Π²Ρ‹ ΡΠΎΠ±ΠΈΡ€Π°Π΅Ρ‚Π΅ΡΡŒ Ρ…Π°ΠΊΠ°Ρ‚ΡŒ сам Guix, рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ послСднюю Π²Π΅Ρ€ΡΠΈΡŽ ΠΈΠ· рСпозитория Git:" #. type: example #: guix-git/doc/contributing.texi:140 #, no-wrap msgid "git clone https://git.savannah.gnu.org/git/guix.git\n" msgstr "git clone https://git.savannah.gnu.org/git/guix.git\n" #. type: cindex #: guix-git/doc/contributing.texi:142 #, no-wrap msgid "authentication, of a Guix checkout" msgstr "аутСнтификация Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° Guix" #. type: Plain text #: guix-git/doc/contributing.texi:147 msgid "How do you ensure that you obtained a genuine copy of the repository? To do that, run @command{guix git authenticate}, passing it the commit and OpenPGP fingerprint of the @dfn{channel introduction} (@pxref{Invoking guix git authenticate}):" msgstr "Как ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΡƒΡŽ копию рСпозитория? Для этого запуститС @command{guix git authenticate}, ΠΏΠ΅Ρ€Π΅Π΄Π°Π² Π΅ΠΌΡƒ ΠΊΠΎΠΌΠΌΠΈΡ‚ ΠΈ ΠΎΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚ΠΎΠΊ ΠΊΠ»ΡŽΡ‡Π° OpenPGP @dfn{channel introduction} (@pxref{Invoking guix git authenticate}):" #. type: example #: guix-git/doc/contributing.texi:154 #, no-wrap msgid "" "git fetch origin keyring:keyring\n" "guix git authenticate 9edb3f66fd807b096b48283debdcddccfea34bad \\\n" " \"BBB0 2DDF 2CEA F6A8 0D1D E643 A2A0 6DF2 A33A 54FA\"\n" msgstr "" "git fetch origin keyring:keyring\n" "guix git authenticate 9edb3f66fd807b096b48283debdcddccfea34bad \\\n" " \"BBB0 2DDF 2CEA F6A8 0D1D E643 A2A0 6DF2 A33A 54FA\"\n" #. type: Plain text #: guix-git/doc/contributing.texi:159 msgid "This command completes with exit code zero on success; it prints an error message and exits with a non-zero code otherwise." msgstr "Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π½ΡƒΠ»ΡŒ Π² случаС успСха; Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π½ΠΎ сообщСниС ΠΎΠ± ошибкС ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ, Π²Π΅Ρ€Π½ΡƒΠ² Π½Π΅Π½ΡƒΠ»Π΅Π²ΠΎΠΉ ΠΊΠΎΠ΄." #. type: Plain text #: guix-git/doc/contributing.texi:166 msgid "As you can see, there is a chicken-and-egg problem: you first need to have Guix installed. Typically you would install Guix System (@pxref{System Installation}) or Guix on top of another distro (@pxref{Binary Installation}); in either case, you would verify the OpenPGP signature on the installation medium. This ``bootstraps'' the trust chain." msgstr "Как Π²ΠΈΠ΄ΠΈΡ‚Π΅, здСсь Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° ΠΊΡƒΡ€ΠΈΡ†Ρ‹ ΠΈ яйца: сначала Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Guix. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ Π²Ρ‹ устанавливаСтС Guix System (@pxref{System Installation}) ΠΈΠ»ΠΈ Guix ΠΏΠΎΠ²Π΅Ρ€Ρ… Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ дистрибутива (@pxref{Binary Installation}); Π² любом случаС Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ подпись OpenPGP Π½Π° установочном носитСлС. Π­Ρ‚ΠΎ ``запускаСт'' Ρ†Π΅ΠΏΠΎΡ‡ΠΊΡƒ довСрия." #. type: Plain text #: guix-git/doc/contributing.texi:171 msgid "The easiest way to set up a development environment for Guix is, of course, by using Guix! The following command starts a new shell where all the dependencies and appropriate environment variables are set up to hack on Guix:" msgstr "Π‘Π°ΠΌΡ‹ΠΉ простой способ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ для Guix β€” это, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Guix! Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° запустит Π½ΠΎΠ²ΡƒΡŽ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΡƒ со всСми зависимостями ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ окруТСния:" #. type: example #: guix-git/doc/contributing.texi:174 #, no-wrap msgid "guix shell -D guix -CPW\n" msgstr "guix shell -D guix -CPW\n" #. type: Plain text #: guix-git/doc/contributing.texi:177 msgid "or even, from within a Git worktree for Guix:" msgstr "ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ ΠΈΠ·-ΠΏΠΎΠ΄ Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ Π²Π΅Ρ‚ΠΊΠΈ Git для Guix:" #. type: example #: guix-git/doc/contributing.texi:180 #, no-wrap msgid "guix shell -CPW\n" msgstr "guix shell -CPW\n" #. type: Plain text #: guix-git/doc/contributing.texi:185 msgid "If @option{-C} (short for @option{--container}) is not supported on your system, try @command{--pure} instead of @option{-CPW}. @xref{Invoking guix shell}, for more information on that command." msgstr "Если @option{-C} (сокр. ΠΎΡ‚ @option{--container}) Π½Π΅ поддСрТиваСтся Π½Π° вашСй систСмС, ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ @command{--pure} вмСсто @option{-CPW}. см. @xref{Invoking guix shell}, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΏΠΎ Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅." #. type: Plain text #: guix-git/doc/contributing.texi:189 msgid "If you are unable to use Guix when building Guix from a checkout, the following are the required packages in addition to those mentioned in the installation instructions (@pxref{Requirements})." msgstr "Если Π²Π°ΠΌ Guix Π½Π΅ удаётся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ сборкС ΠΈΠ· Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°, установитС ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ Π² Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π±Ρ‹Π»ΠΈ ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π² инструкции ΠΏΠΎ установкС (@pxref{ВрСбования})." #. type: item #: guix-git/doc/contributing.texi:191 #, no-wrap msgid "@url{https://gnu.org/software/autoconf/, GNU Autoconf};" msgstr "@url{https://gnu.org/software/autoconf/, GNU Autoconf};" #. type: item #: guix-git/doc/contributing.texi:192 #, no-wrap msgid "@url{https://gnu.org/software/automake/, GNU Automake};" msgstr "@url{https://gnu.org/software/automake/, GNU Automake};" #. type: item #: guix-git/doc/contributing.texi:193 #, no-wrap msgid "@url{https://gnu.org/software/gettext/, GNU Gettext};" msgstr "@url{https://gnu.org/software/gettext/, GNU Gettext};" #. type: item #: guix-git/doc/contributing.texi:194 #, no-wrap msgid "@url{https://gnu.org/software/texinfo/, GNU Texinfo};" msgstr "@url{https://gnu.org/software/texinfo/, GNU Texinfo};" #. type: item #: guix-git/doc/contributing.texi:195 #, no-wrap msgid "@url{https://www.graphviz.org/, Graphviz};" msgstr "@url{https://www.graphviz.org/, Graphviz};" #. type: item #: guix-git/doc/contributing.texi:196 #, no-wrap msgid "@url{https://www.gnu.org/software/help2man/, GNU Help2man (optional)}." msgstr "@url{https://www.gnu.org/software/help2man/, GNU Help2man (optional)}." #. type: Plain text #: guix-git/doc/contributing.texi:201 msgid "On Guix, extra dependencies can be added by instead running @command{guix shell}:" msgstr "Π’ Guix Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ зависимости ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ, запустив @command{guix shell}:" #. type: example #: guix-git/doc/contributing.texi:204 #, no-wrap msgid "guix shell -D guix help2man git strace --pure\n" msgstr "guix shell -D guix help2man git strace --pure\n" #. type: Plain text #: guix-git/doc/contributing.texi:208 msgid "From there you can generate the build system infrastructure using Autoconf and Automake:" msgstr "Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ инфраструктуру сборки систСмы, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Autoconf ΠΈ Automake:" #. type: example #: guix-git/doc/contributing.texi:211 #, no-wrap msgid "./bootstrap\n" msgstr "./bootstrap\n" #. type: Plain text #: guix-git/doc/contributing.texi:214 msgid "If you get an error like this one:" msgstr "Если Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ ΠΎΡˆΠΈΠ±ΠΊΡƒ, ΠΏΠΎΡ…ΠΎΠΆΡƒΡŽ Π½Π° эту:" #. type: example #: guix-git/doc/contributing.texi:217 #, no-wrap msgid "configure.ac:46: error: possibly undefined macro: PKG_CHECK_MODULES\n" msgstr "configure.ac:46: error: possibly undefined macro: PKG_CHECK_MODULES\n" #. type: Plain text #: guix-git/doc/contributing.texi:226 msgid "it probably means that Autoconf couldn’t find @file{pkg.m4}, which is provided by pkg-config. Make sure that @file{pkg.m4} is available. The same holds for the @file{guile.m4} set of macros provided by Guile. For instance, if you installed Automake in @file{/usr/local}, it wouldn’t look for @file{.m4} files in @file{/usr/share}. In that case, you have to invoke the following command:" msgstr "это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, скорСС всСго, Ρ‡Ρ‚ΠΎ Autoconf Π½Π΅ смог Π½Π°ΠΉΡ‚ΠΈ Ρ„Π°ΠΉΠ» @file{pkg.m4}, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ прСдоставляСтся pkg-config. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Ρ„Π°ΠΉΠ» @file{pkg.m4} доступСн. Π’ΠΎ ΠΆΠ΅ относится ΠΊ @file{guile.m4}, Π½Π°Π±ΠΎΡ€Ρƒ макросов, прСдоставляСмых Guile. НапримСр, Ссли Π²Ρ‹ установили Automake Π² @file{/usr/local}, ΠΎΠ½ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΊΠ°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ @file{.m4} Π² @file{/usr/share}. Π’ΠΎΠ³Π΄Π° Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:" #. type: example #: guix-git/doc/contributing.texi:229 #, no-wrap msgid "export ACLOCAL_PATH=/usr/share/aclocal\n" msgstr "export ACLOCAL_PATH=/usr/share/aclocal\n" #. type: Plain text #: guix-git/doc/contributing.texi:233 msgid "@xref{Macro Search Path,,, automake, The GNU Automake Manual}, for more information." msgstr "см. @xref{Macro Search Path,,, automake, The GNU Automake Manual}, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ большС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ." #. type: cindex #: guix-git/doc/contributing.texi:234 #, no-wrap msgid "state directory" msgstr "Π³Π»Π°Π²Π½Ρ‹ΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³" #. type: cindex #: guix-git/doc/contributing.texi:235 #, no-wrap msgid "localstatedir" msgstr "localstatedir" #. type: cindex #: guix-git/doc/contributing.texi:236 #, no-wrap msgid "system configuration directory" msgstr "дирСктория ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ систСмы" #. type: cindex #: guix-git/doc/contributing.texi:237 #, no-wrap msgid "sysconfdir" msgstr "sysconfdir" #. type: Plain text #: guix-git/doc/contributing.texi:239 msgid "Then, run:" msgstr "Π—Π°Ρ‚Π΅ΠΌ, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅:" #. type: example #: guix-git/doc/contributing.texi:242 #, no-wrap msgid "./configure\n" msgstr "./configure\n" #. type: Plain text #: guix-git/doc/contributing.texi:252 #, fuzzy #| msgid "... where @file{/var} is the normal @code{localstatedir} value (@pxref{The Store}, for information about this) and @file{/etc} is the normal @code{sysconfdir} value. Note that you will probably not run @command{make install} at the end (you don't have to) but it's still important to pass the right @code{localstatedir} and @code{sysconfdir} values, which get recorded in the @code{(guix config)} Guile module." msgid "Optionally, @code{--localstatedir} and @code{--sysconfdir} can also be provided as arguments. By default, @code{localstatedir} is @file{/var} (@pxref{The Store}, for information about this) and @code{sysconfdir} is @file{/etc}. Note that you will probably not run @command{make install} at the end (you don't have to) but it's still important to pass the right @code{localstatedir} and @code{sysconfdir} values, which get recorded in the @code{(guix config)} Guile module." msgstr "... Π³Π΄Π΅ @file{/var} - стандартноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ @code{localstatedir} (@pxref{The Store}, для получСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± этом), Π° @file{/etc} - стандартноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ @code{sysconfdir}. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π²Ρ‹, скорСС всСго, Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ @command{make install} Π² ΠΊΠΎΠ½Ρ†Π΅ (это Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ), Π½ΠΎ всС Ρ€Π°Π²Π½ΠΎ Π²Π°ΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Π΅ значСния @code{localstatedir} ΠΈ @code{sysconfdir}, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Π² ΠΌΠΎΠ΄ΡƒΠ»ΡŒ @code{(guix config)} Guile." #. type: Plain text #: guix-git/doc/contributing.texi:255 msgid "Finally, you can build Guix and, if you feel so inclined, run the tests (@pxref{Running the Test Suite}):" msgstr "НаконСц, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ Guix ΠΈ, Ссли сочтётС Π½ΡƒΠΆΠ½Ρ‹ΠΌ, запуститС тСсты (@pxref{Running the Test Suite}):" #. type: example #: guix-git/doc/contributing.texi:259 #, no-wrap msgid "" "make\n" "make check\n" msgstr "" "make\n" "make check\n" #. type: Plain text #: guix-git/doc/contributing.texi:265 msgid "If anything fails, take a look at installation instructions (@pxref{Installation}) or send a message to the @email{guix-devel@@gnu.org, mailing list}." msgstr "Если Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π½Π΅ получится, ΠΈΠ·ΡƒΡ‡ΠΈΡ‚Π΅ инструкции установки (@pxref{Installation}) ΠΈΠ»ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΡŒΡ‚Π΅ сообщСниС Π² рассылку @email{guix-devel@@gnu.org}." #. type: Plain text #: guix-git/doc/contributing.texi:268 msgid "From there on, you can authenticate all the commits included in your checkout by running:" msgstr "ПослС этого Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ всС ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹, запустив:" #. type: example #: guix-git/doc/contributing.texi:273 #, no-wrap msgid "" "guix git authenticate \\\n" " 9edb3f66fd807b096b48283debdcddccfea34bad \\\n" " \"BBB0 2DDF 2CEA F6A8 0D1D E643 A2A0 6DF2 A33A 54FA\"\n" msgstr "" "guix git authenticate \\\n" "9edb3f66fd807b096b48283debdcddccfea34bad \\\n" "\"BBB0 2DDF 2CEA F6A8 0D1D E643 A2A0 6DF2 A33A 54FA\"\n" #. type: Plain text #: guix-git/doc/contributing.texi:280 msgid "The first run takes a couple of minutes, but subsequent runs are faster. On subsequent runs, you can run the command without any arguments since the @dfn{introduction} (the commit ID and OpenPGP fingerprints above) will have been recorded@footnote{This requires a recent version of Guix, from May 2024 or more recent.}:" msgstr "ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ запуск Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ нСсколько ΠΌΠΈΠ½ΡƒΡ‚, Π½ΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ быстрСС. На ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π½Π΅ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ запуск Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ эту ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ @dfn{introduction} (ID ΠΊΠΎΠΌΠΌΠΈΡ‚Π° ΠΈ ΠΎΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚ΠΎΠΊ ΠΊΠ»ΡŽΡ‡Π° OpenPGP Π²Ρ‹ΡˆΠ΅) Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‚ΡΡ@footnote{Π­Ρ‚ΠΎ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΡΠ²Π΅ΠΆΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Guix мая 2024 ΠΈΠ»ΠΈ ΠΏΠΎΠ·Π΄Π½Π΅Π΅.}:" #. type: example #: guix-git/doc/contributing.texi:283 guix-git/doc/contributing.texi:2844 #, no-wrap msgid "guix git authenticate\n" msgstr "guix git authenticate\n" #. type: Plain text #: guix-git/doc/contributing.texi:290 msgid "When your configuration for your local Git repository doesn't match the default one, you can provide the reference for the @code{keyring} branch @i{via} the @option{-k} option. The following example assumes that you have a Git remote called @samp{myremote} pointing to the official repository:" msgstr "Если ваша конфигурация для локального git рСпозитория Π½Π΅ соотвСтствуСт ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ссылку для Π²Π΅Ρ‚ΠΊΠΈ @code{keyring} с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ»ΡŽΡ‡Π° @option{-k}. Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ прСдполагаСтся, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π²Ρ‹Π·Ρ‹Π²Π°Π»ΠΈ git remote @samp{myremote}, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ Π½Π° ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ:" #. type: example #: guix-git/doc/contributing.texi:296 #, no-wrap msgid "" "guix git authenticate \\\n" " -k myremote/keyring \\\n" " 9edb3f66fd807b096b48283debdcddccfea34bad \\\n" " \"BBB0 2DDF 2CEA F6A8 0D1D E643 A2A0 6DF2 A33A 54FA\"\n" msgstr "" "guix git authenticate \\\n" "-k myremote/keyring \\\n" "9edb3f66fd807b096b48283debdcddccfea34bad \\\n" "\"BBB0 2DDF 2CEA F6A8 0D1D E643 A2A0 6DF2 A33A 54FA\"\n" #. type: Plain text #: guix-git/doc/contributing.texi:300 msgid "@xref{Invoking guix git authenticate}, for more information on this command." msgstr "ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹Π΅ свСдСния ΠΎΠ± этой ΠΊΠΎΠΌΠ°Π½Π΄Π΅ см. Π² @xref{Invoking guix git authenticate}." #. type: quotation #: guix-git/doc/contributing.texi:301 guix-git/doc/contributing.texi:1489 #: guix-git/doc/contributing.texi:2101 guix-git/doc/contributing.texi:2146 #: guix-git/doc/contributing.texi:2169 guix-git/doc/contributing.texi:2817 #: guix-git/doc/guix.texi:808 guix-git/doc/guix.texi:834 #: guix-git/doc/guix.texi:1205 guix-git/doc/guix.texi:1230 #: guix-git/doc/guix.texi:1303 guix-git/doc/guix.texi:1690 #: guix-git/doc/guix.texi:1906 guix-git/doc/guix.texi:1981 #: guix-git/doc/guix.texi:2169 guix-git/doc/guix.texi:2391 #: guix-git/doc/guix.texi:3687 guix-git/doc/guix.texi:4092 #: guix-git/doc/guix.texi:4612 guix-git/doc/guix.texi:4626 #: guix-git/doc/guix.texi:4701 guix-git/doc/guix.texi:4716 #: guix-git/doc/guix.texi:4779 guix-git/doc/guix.texi:5009 #: guix-git/doc/guix.texi:5923 guix-git/doc/guix.texi:5956 #: guix-git/doc/guix.texi:6584 guix-git/doc/guix.texi:6863 #: guix-git/doc/guix.texi:6997 guix-git/doc/guix.texi:7026 #: guix-git/doc/guix.texi:7067 guix-git/doc/guix.texi:7113 #: guix-git/doc/guix.texi:7120 guix-git/doc/guix.texi:7164 #: guix-git/doc/guix.texi:8797 guix-git/doc/guix.texi:11137 #: guix-git/doc/guix.texi:11286 guix-git/doc/guix.texi:11356 #: guix-git/doc/guix.texi:13327 guix-git/doc/guix.texi:13367 #: guix-git/doc/guix.texi:13467 guix-git/doc/guix.texi:13692 #: guix-git/doc/guix.texi:13704 guix-git/doc/guix.texi:14607 #: guix-git/doc/guix.texi:16583 guix-git/doc/guix.texi:17113 #: guix-git/doc/guix.texi:17171 guix-git/doc/guix.texi:17204 #: guix-git/doc/guix.texi:17282 guix-git/doc/guix.texi:17683 #: guix-git/doc/guix.texi:18698 guix-git/doc/guix.texi:19261 #: guix-git/doc/guix.texi:19766 guix-git/doc/guix.texi:19827 #: guix-git/doc/guix.texi:22376 guix-git/doc/guix.texi:23294 #: guix-git/doc/guix.texi:23477 guix-git/doc/guix.texi:23538 #: guix-git/doc/guix.texi:24014 guix-git/doc/guix.texi:29038 #: guix-git/doc/guix.texi:29655 guix-git/doc/guix.texi:33109 #: guix-git/doc/guix.texi:37536 guix-git/doc/guix.texi:40913 #: guix-git/doc/guix.texi:42574 guix-git/doc/guix.texi:42648 #: guix-git/doc/guix.texi:42690 guix-git/doc/guix.texi:43036 #: guix-git/doc/guix.texi:43206 guix-git/doc/guix.texi:43374 #: guix-git/doc/guix.texi:43481 guix-git/doc/guix.texi:43527 #: guix-git/doc/guix.texi:43584 guix-git/doc/guix.texi:43611 #: guix-git/doc/guix.texi:43949 guix-git/doc/guix.texi:45361 #: guix-git/doc/guix.texi:45411 guix-git/doc/guix.texi:45467 #: guix-git/doc/guix.texi:45575 guix-git/doc/guix.texi:47477 #: guix-git/doc/guix.texi:47523 guix-git/doc/guix.texi:47617 #: guix-git/doc/guix.texi:47682 guix-git/doc/guix.texi:48078 #: guix-git/doc/guix.texi:48122 #, no-wrap msgid "Note" msgstr "ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅" #. type: quotation #: guix-git/doc/contributing.texi:305 msgid "By default, hooks are installed such that @command{guix git authenticate} is invoked anytime you run @command{git pull} or @command{git push}." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:309 msgid "After updating the repository, @command{make} might fail with an error similar to the following example:" msgstr "ПослС обновлСния рСпозитория ΠΊΠΎΠΌΠ°Π½Π΄Π° @command{make} ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π΄Π°Ρ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ, ΠΏΠΎΠ΄ΠΎΠ±Π½ΡƒΡŽ Π½ΠΈΠΆΠ΅ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΉ:" #. type: example #: guix-git/doc/contributing.texi:313 #, no-wrap msgid "" "error: failed to load 'gnu/packages/linux.scm':\n" "ice-9/eval.scm:293:34: In procedure abi-check: #<record-type <origin>>: record ABI mismatch; recompilation needed\n" msgstr "" "error: failed to load 'gnu/packages/linux.scm':\n" "ice-9/eval.scm:293:34: In procedure abi-check: #<record-type <origin>>: record ABI mismatch; recompilation needed\n" #. type: Plain text #: guix-git/doc/contributing.texi:319 msgid "This means that one of the record types that Guix defines (in this example, the @code{origin} record) has changed, and all of guix needs to be recompiled to take that change into account. To do so, run @command{make clean-go} followed by @command{make}." msgstr "Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Ρ‚ΠΈΠΏΠΎΠ² записСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ опрСдСляСт Guix (Π² Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅, запись @code{origin}) Π±Ρ‹Π»Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π°, ΠΈ вСсь guix Π½Π°Π΄ΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΡ‡Π΅ΡΡ‚ΡŒ это ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅.\tДля этого запуститС @command{make clean-go}, Π° Π·Π°Ρ‚Π΅ΠΌ @command{make}." #. type: Plain text #: guix-git/doc/contributing.texi:323 msgid "Should @command{make} fail with an Automake error message after updating, you need to repeat the steps outlined in this section, commencing with @command{./bootstrap}." msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:327 #, no-wrap msgid "test suite" msgstr "Π½Π°Π±ΠΎΡ€ тСстов" #. type: Plain text #: guix-git/doc/contributing.texi:333 msgid "After a successful @command{configure} and @code{make} run, it is a good idea to run the test suite. It can help catch issues with the setup or environment, or bugs in Guix itself---and really, reporting test failures is a good way to help improve the software. To run the test suite, type:" msgstr "ПослС ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ @command{configure} ΠΈ @code{make} Ρ…ΠΎΡ€ΠΎΡˆΠΎ Π±Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π½Π°Π±ΠΎΡ€ тСстов. Π­Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΡΠ²ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ установки ΠΈΠ»ΠΈ Π² ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ, ΠΊΠ°ΠΊ ΠΈ Π±Π°Π³ΠΈ самого Guix (Π½Π° самом Π΄Π΅Π»Π΅, ΠΎΡ‚Ρ‡Ρ‘Ρ‚Ρ‹ ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ… тСстов ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ ПО). Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ тСсты, Π½Π°ΠΏΠ΅Ρ‡Π°Ρ‚Π°ΠΉΡ‚Π΅:" #. type: example #: guix-git/doc/contributing.texi:336 #, no-wrap msgid "make check\n" msgstr "make check\n" #. type: Plain text #: guix-git/doc/contributing.texi:343 msgid "Test cases can run in parallel: you can use the @code{-j} option of GNU@tie{}make to speed things up. The first run may take a few minutes on a recent machine; subsequent runs will be faster because the store that is created for test purposes will already have various things in cache." msgstr "ВСсты ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ ΠΎΠΏΡ†ΠΈΠΈ @code{-j} Π² GNU@tie{}make, Ρ‚Π°ΠΊ быстрСС. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ запуск ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π»ΠΈΡ‚ΡŒΡΡ нСсколько ΠΌΠΈΠ½ΡƒΡ‚ Π½Π° Ρ‚ΠΎΠΏΠΎΠ²ΠΎΠΉ машинС, ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ запуски Π±ΡƒΠ΄ΡƒΡ‚ быстрСС, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ склад, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ создаётся для тСстов, ΡƒΠΆΠ΅ Π·Π°ΠΊΠ΅ΡˆΠΈΡ€ΡƒΠ΅Ρ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π²Π΅Ρ‰ΠΈ." #. type: Plain text #: guix-git/doc/contributing.texi:346 msgid "It is also possible to run a subset of the tests by defining the @code{TESTS} makefile variable as in this example:" msgstr "Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ Π½Π°Π±ΠΎΡ€Ρ‹ тСстов, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ @code{TESTS}, ΠΊΠ°ΠΊ Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅:" #. type: example #: guix-git/doc/contributing.texi:349 #, no-wrap msgid "make check TESTS=\"tests/store.scm tests/cpio.scm\"\n" msgstr "make check TESTS=\"tests/store.scm tests/cpio.scm\"\n" #. type: Plain text #: guix-git/doc/contributing.texi:354 msgid "By default, tests results are displayed at a file level. In order to see the details of every individual test cases, it is possible to define the @code{SCM_LOG_DRIVER_FLAGS} makefile variable as in this example:" msgstr "По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ тСстов выводятся Π² Ρ„Π°ΠΉΠ». Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ тСста, Π½ΡƒΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ makifile @code{SCM_LOG_DRIVER_FLAGS}, ΠΊΠ°ΠΊ Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅:" #. type: example #: guix-git/doc/contributing.texi:357 #, no-wrap msgid "make check TESTS=\"tests/base64.scm\" SCM_LOG_DRIVER_FLAGS=\"--brief=no\"\n" msgstr "make check TESTS=\"tests/base64.scm\" SCM_LOG_DRIVER_FLAGS=\"--brief=no\"\n" #. type: Plain text #: guix-git/doc/contributing.texi:365 msgid "The underlying SRFI 64 custom Automake test driver used for the 'check' test suite (located at @file{build-aux/test-driver.scm}) also allows selecting which test cases to run at a finer level, via its @option{--select} and @option{--exclude} options. Here's an example, to run all the test cases from the @file{tests/packages.scm} test file whose names start with ``transaction-upgrade-entry'':" msgstr "Π›Π΅ΠΆΠ°Ρ‰ΠΈΠΉ Π² основС кастомный SRFI 64 Automake тСстовый Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ для 'ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ' Π½Π°Π±ΠΎΡ€Π° тСстов (располоТСнный Π² @file{build-aux/test-driver.scm}) Ρ‚Π°ΠΊΠΆΠ΅ позволяСт Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ тСстовыС случаи Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π½Π° Π±ΠΎΠ»Π΅Π΅ высоком ΡƒΡ€ΠΎΠ²Π½Π΅, ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΎΠΏΡ†ΠΈΠΉ @option{--select} ΠΈ @option{--exclude}. Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ для запуска всСх тСстовых случаСв ΠΈΠ· Ρ„Π°ΠΉΠ»Π° @file{tests/packages.scm}, Ρ‡ΡŒΠΈ ΠΈΠΌΠ΅Π½Π° Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с ``transaction-upgrade-entry'':" #. type: example #: guix-git/doc/contributing.texi:369 #, no-wrap msgid "" "export SCM_LOG_DRIVER_FLAGS=\"--select=^transaction-upgrade-entry\"\n" "make check TESTS=\"tests/packages.scm\"\n" msgstr "" "export SCM_LOG_DRIVER_FLAGS=\"--select=^transaction-upgrade-entry\"\n" "make check TESTS=\"tests/packages.scm\"\n" #. type: Plain text #: guix-git/doc/contributing.texi:375 msgid "Those wishing to inspect the results of failed tests directly from the command line can add the @option{--errors-only=yes} option to the @code{SCM_LOG_DRIVER_FLAGS} makefile variable and set the @code{VERBOSE} Automake makefile variable, as in:" msgstr "Π–Π΅Π»Π°ΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Π½Π΅ΡƒΠ΄Π°Ρ‡Π½Ρ‹Ρ… тСстов прямо ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки ΠΌΠΎΠ³ΡƒΡ‚ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ @option{--errors-only=yes} ΠΊ makefile ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ@code{SCM_LOG_DRIVER_FLAGS} ΠΈ Π·Π°Π΄Π°Ρ‚ΡŒ Automake makefile ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ @code{VERBOSE}, ΠΊΠ°ΠΊ Π²:" #. type: example #: guix-git/doc/contributing.texi:378 #, no-wrap msgid "make check SCM_LOG_DRIVER_FLAGS=\"--brief=no --errors-only=yes\" VERBOSE=1\n" msgstr "make check TESTS=\"tests/base64.scm\" SCM_LOG_DRIVER_FLAGS=\"--brief=no\"\n" #. type: Plain text #: guix-git/doc/contributing.texi:383 msgid "The @option{--show-duration=yes} option can be used to print the duration of the individual test cases, when used in combination with @option{--brief=no}:" msgstr "ΠžΠΏΡ†ΠΈΡ @option{--show-duration=yes} ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использована Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… тСстовых случаСв, ΠΊΠΎΠ³Π΄Π° использована вмСстС с @option{--brief=no}:" #. type: example #: guix-git/doc/contributing.texi:386 #, no-wrap msgid "make check SCM_LOG_DRIVER_FLAGS=\"--brief=no --show-duration=yes\"\n" msgstr "make check TESTS=\"tests/base64.scm\" SCM_LOG_DRIVER_FLAGS=\"--brief=no\"\n" #. type: Plain text #: guix-git/doc/contributing.texi:390 msgid "@xref{Parallel Test Harness,,,automake,GNU Automake} for more information about the Automake Parallel Test Harness." msgstr "@xref{Parallel Test Harness,,,automake,GNU Automake} для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Automake Parallel Test Harness." #. type: Plain text #: guix-git/doc/contributing.texi:395 msgid "Upon failure, please email @email{bug-guix@@gnu.org} and attach the @file{test-suite.log} file. Please specify the Guix version being used as well as version numbers of the dependencies (@pxref{Requirements}) in your message." msgstr "Π’ случаС ошибки, поТалуйста, ΠΎΡ‚ΠΏΡ€Π°Π²ΡŒΡ‚Π΅ сообщСниС Π½Π° @email{bug-guix@@gnu.org} ΠΈ присоСдинитС Ρ„Π°ΠΉΠ» @file{test-suite.log}. ΠŸΠΎΠΆΠ°Π»ΡƒΠΉΡΡ‚Π°, ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡ΡŒΡ‚Π΅ Π² сообщСнии ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Guix, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½ΠΎΠΌΠ΅Ρ€Π° вСрсий зависимостСй (@pxref{Requirements})." #. type: Plain text #: guix-git/doc/contributing.texi:399 msgid "Guix also comes with a whole-system test suite that tests complete Guix System instances. It can only run on systems where Guix is already installed, using:" msgstr "Guix Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠ΄Ρ‘Ρ‚ с Π½Π°Π±ΠΎΡ€ΠΎΠΌ тСстов для всСй систСмы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ провСряСт Π½ΡΡ‚Ρ€Π°Π½Ρ†ΠΈΡŽ систСмы Guix. Π˜Ρ… ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² систСмах, Π³Π΄Π΅ Guix ΡƒΠΆΠ΅ установлСн, Ρ‚Π°ΠΊ:" #. type: example #: guix-git/doc/contributing.texi:402 #, no-wrap msgid "make check-system\n" msgstr "make check-system\n" #. type: Plain text #: guix-git/doc/contributing.texi:406 msgid "or, again, by defining @code{TESTS} to select a subset of tests to run:" msgstr "ΠΈΠ»ΠΈ, ΠΎΠΏΡΡ‚ΡŒ ΠΆΠ΅, Π·Π°Π΄Π°Π² @code{TESTS}, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ список тСстов для запуска:" #. type: example #: guix-git/doc/contributing.texi:409 #, no-wrap msgid "make check-system TESTS=\"basic mcron\"\n" msgstr "make check-system TESTS=\"basic mcron\"\n" #. type: Plain text #: guix-git/doc/contributing.texi:417 msgid "These system tests are defined in the @code{(gnu tests @dots{})} modules. They work by running the operating systems under test with lightweight instrumentation in a virtual machine (VM). They can be computationally intensive or rather cheap, depending on whether substitutes are available for their dependencies (@pxref{Substitutes}). Some of them require a lot of storage space to hold VM images." msgstr "ВСсты систСмы ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ Π² модулях @code{(gnu tests @dots{})}. ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΎΠ½ΠΈ Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΡƒΡŽ систСму ΠΏΠΎΠ΄ лСгковСсным инструмСнтариСм Π² Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ машинС. Они ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ тяТёлыС вычислСния ΠΈΠ»ΠΈ довольно простыС Π² зависимости ΠΎΡ‚ наличия подстановок ΠΈΡ… зависимостСй (@pxref{Substitutes}). НСкоторыС ΠΈΠ· Π½ΠΈΡ… Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ ΠΌΠ½ΠΎΠ³ΠΎ мСста для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΎΠ±Ρ€Π°Π·Π°ΠΌΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹." #. type: Plain text #: guix-git/doc/contributing.texi:419 msgid "If you encounter an error like:" msgstr "Если Π²Ρ‹ ΡΡ‚ΠΎΠ»ΠΊΠ½ΡƒΠ»ΠΈΡΡŒ с ошибкй, ΠΏΠΎΡ…ΠΎΠΆΠ΅ΠΉ Π½Π° эту:" #. type: example #: guix-git/doc/contributing.texi:425 #, no-wrap msgid "" "Compiling Scheme modules...\n" "ice-9/eval.scm:142:16: In procedure compile-top-call:\n" "error: all-system-tests: unbound variable\n" "hint: Did you forget `(use-modules (gnu tests))'?\n" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:431 msgid "there may be inconsistencies in the work tree from previous builds. To resolve this, try running @command{make clean-go} followed by @command{make}." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:434 msgid "Again in case of test failures, please send @email{bug-guix@@gnu.org} all the details." msgstr "ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π² случаС Π½Π΅ΡƒΠ΄Π°Ρ‡Π½Ρ‹Ρ… тСстов, поТалуйста, Π½Π°ΠΏΡ€Π°Π²ΡŒΡ‚Π΅ Π΄Π΅Ρ‚Π°Π»ΠΈ Π½Π° @email{bug-guix@@gnu.org}." #. type: Plain text #: guix-git/doc/contributing.texi:442 msgid "In order to keep a sane working environment, you will find it useful to test the changes made in your local source tree checkout without actually installing them. So that you can distinguish between your ``end-user'' hat and your ``motley'' costume." msgstr "Π§Ρ‚ΠΎΠ±Ρ‹ Π΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π² порядкС Ρ€Π°Π±ΠΎΡ‡Π΅Π΅ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅, ΡƒΠ΄ΠΎΠ±Π½ΠΎ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ измСнСния, сдСланныС Π² вашСм локальном Π΄Π΅Ρ€Π΅Π²Π΅ исходников, Π±Π΅Π· ΠΈΡ… установки. Π’Π°ΠΊ Π²Ρ‹ смоТСтС ΠΎΡ‚Π»ΠΈΡ‡ΠΈΡ‚ΡŒ ΡˆΠ»ΡΠΏΡƒ вашСго ``ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ'' ΠΎΡ‚ вашСго ``пёстрого'' наряда." #. type: Plain text #: guix-git/doc/contributing.texi:452 msgid "To that end, all the command-line tools can be used even if you have not run @code{make install}. To do that, you first need to have an environment with all the dependencies available (@pxref{Building from Git}), and then simply prefix each command with @command{./pre-inst-env} (the @file{pre-inst-env} script lives in the top build tree of Guix; @pxref{Building from Git} to generate it). As an example, here is how you would build the @code{hello} package as defined in your working tree (this assumes @command{guix-daemon} is already running on your system; it's OK if it's a different version):" msgstr "Π‘ этой Ρ†Π΅Π»ΡŒΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ всС инструмСнты ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки, Π΄Π°ΠΆΠ΅ Ссли Π²Ρ‹ Π½Π΅ запускали @code{make install}. Для этого Π²Π°ΠΌ сначала Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ со всСми доступными зависимостями (@pxref{Building from Git}), ΠΈ Π·Π°Ρ‚Π΅ΠΌ просто Π½Π°Ρ‡Π½ΠΈΡ‚Π΅ ΠΊΠ°ΠΆΠ΄ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ с @command{./pre-inst-env} (скрипт @file{pre-inst-env} находится Π½Π° Π²Π΅Ρ€Ρ…Ρƒ Π΄Π΅Ρ€Π΅Π²Π° сборки Guix; ΠΎΠ½ создаётся запуском @command{./bootstrap}, Π·Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ слСдуСт @command{./configure}). Π’ качСствС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°, Π²ΠΎΡ‚ ΠΊΠ°ΠΊ Π²Ρ‹ собрали Π±Ρ‹ ΠΏΠ°ΠΊΠ΅Ρ‚ @code{hello} ΠΊΠ°ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ Π² вашСм Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ Π΄Π΅Ρ€Π΅Π²Π΅ (подразумСваСтся, Ρ‡Ρ‚ΠΎ @command{guix-daemon} ΡƒΠΆΠ΅ Π·Π°ΠΏΡƒΡ‰Π΅Π½Π° Π½Π° вашСй систСмС; Π½ΠΈΡ‡Π΅Π³ΠΎ ΡΡ‚Ρ€Π°ΡˆΠ½ΠΎΠ³ΠΎ, Ссли это другая вСрсия):" #. type: example #: guix-git/doc/contributing.texi:455 #, no-wrap msgid "$ ./pre-inst-env guix build hello\n" msgstr "$ ./pre-inst-env guix build hello\n" #. type: Plain text #: guix-git/doc/contributing.texi:459 msgid "Similarly, an example for a Guile session using the Guix modules:" msgstr "Аналогично, ΠΏΡ€ΠΈΠΌΠ΅Ρ€ для Guile сСссии с использованиСм ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ Guix:" #. type: example #: guix-git/doc/contributing.texi:462 #, no-wrap msgid "" "$ ./pre-inst-env guile -c '(use-modules (guix utils)) (pk (%current-system))'\n" "\n" msgstr "" "$ ./pre-inst-env guile -c '(use-modules (guix utils)) (pk (%current-system))'\n" "\n" #. type: example #: guix-git/doc/contributing.texi:464 #, no-wrap msgid ";;; (\"x86_64-linux\")\n" msgstr ";;; (\"x86_64-linux\")\n" #. type: cindex #: guix-git/doc/contributing.texi:467 #, no-wrap msgid "REPL" msgstr "REPL" #. type: cindex #: guix-git/doc/contributing.texi:468 #, no-wrap msgid "read-eval-print loop" msgstr "Ρ†ΠΈΠΊΠ» Ρ‡Ρ‚Π΅Π½ΠΈΠ΅-вычислСниС-Π²Ρ‹Π²ΠΎΠ΄" #. type: Plain text #: guix-git/doc/contributing.texi:470 msgid "@dots{} and for a REPL (@pxref{Using Guix Interactively}):" msgstr "@dots{} ΠΈ для REPL (@pxref{Using Guix Interactively}):" #. type: example #: guix-git/doc/contributing.texi:485 #, no-wrap msgid "" "$ ./pre-inst-env guile\n" "scheme@@(guile-user)> ,use(guix)\n" "scheme@@(guile-user)> ,use(gnu)\n" "scheme@@(guile-user)> (define snakes\n" " (fold-packages\n" " (lambda (package lst)\n" " (if (string-prefix? \"python\"\n" " (package-name package))\n" " (cons package lst)\n" " lst))\n" " '()))\n" "scheme@@(guile-user)> (length snakes)\n" "$1 = 361\n" msgstr "" "$ ./pre-inst-env guile\n" "scheme@@(guile-user)> ,use(guix)\n" "scheme@@(guile-user)> ,use(gnu)\n" "scheme@@(guile-user)> (define snakes\n" " (fold-packages\n" " (lambda (package lst)\n" " (if (string-prefix? \"python\"\n" " (package-name package))\n" " (cons package lst)\n" " lst))\n" " '()))\n" "scheme@@(guile-user)> (length snakes)\n" "$1 = 361\n" #. type: Plain text #: guix-git/doc/contributing.texi:493 msgid "If you are hacking on the daemon and its supporting code or if @command{guix-daemon} is not already running on your system, you can launch it straight from the build tree@footnote{The @option{-E} flag to @command{sudo} guarantees that @code{GUILE_LOAD_PATH} is correctly set such that @command{guix-daemon} and the tools it uses can find the Guile modules they need.}:" msgstr "Если Π²Ρ‹ ΠΈΠ·ΡƒΡ‡Π°Π΅Ρ‚Π΅ Π΄Π΅ΠΌΠΎΠ½Π° ΠΈ Π΅Π³ΠΎ исходники, ΠΈΠ»ΠΈ Ссли @command{guix-daemon} Π΅Ρ‰Π΅ Π½Π΅ Π·Π°ΠΏΡƒΡ‰Π΅Π½Π° Π² вашСй систСмС, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π΅Π³ΠΎ прямо ΠΈΠ· Π΄Π΅Ρ€Π΅Π²Π° сборки@footnote{Π€Π»Π°Π³ @option{-E} ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ @command{sudo} Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ @code{GUILE_LOAD_PATH} настроСн ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ @command{guix-daemon} ΠΈ инструмСнты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚, ΠΌΠΎΠ³ΡƒΡ‚ Π½Π°ΠΉΡ‚ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ ΠΈΠΌ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ Guile.}:" #. type: example #: guix-git/doc/contributing.texi:496 #, no-wrap msgid "$ sudo -E ./pre-inst-env guix-daemon --build-users-group=guixbuild\n" msgstr "$ sudo -E ./pre-inst-env guix-daemon --build-users-group=guixbuild\n" #. type: Plain text #: guix-git/doc/contributing.texi:500 msgid "The @command{pre-inst-env} script sets up all the environment variables necessary to support this, including @env{PATH} and @env{GUILE_LOAD_PATH}." msgstr "Π‘ΠΊΡ€ΠΈΠΏΡ‚ @command{pre-inst-env} устанавливаСт всС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ окруТСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ для этой Π·Π°Π΄Π°Ρ‡ΠΈ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ @env{PATH} ΠΈ @env{GUILE_LOAD_PATH}." #. type: Plain text #: guix-git/doc/contributing.texi:505 msgid "Note that @command{./pre-inst-env guix pull} does @emph{not} upgrade the local source tree; it simply updates the @file{~/.config/guix/current} symlink (@pxref{Invoking guix pull}). Run @command{git pull} instead if you want to upgrade your local source tree." msgstr "Π—Π°ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ @command{./pre-inst-env guix pull} @emph{Π½Π΅} обновляСт локальноС Π΄Π΅Ρ€Π΅Π²ΠΎ исходников. Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° просто обновляСт ΡΠΈΠΌΠ²ΠΎΠ»ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ссылку @file{~/.config/guix/current} (@pxref{Invoking guix pull}). Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ @command{git pull}, Ссли Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ локальноС Π΄Π΅Ρ€Π΅Π²ΠΎ исходников." #. type: Plain text #: guix-git/doc/contributing.texi:509 msgid "Sometimes, especially if you have recently updated your repository, running @command{./pre-inst-env} will print a message similar to the following example:" msgstr "Иногда, особСнно Ссли Π²Ρ‹ Π½Π΅Π΄Π°Π²Π½ΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΠ»ΠΈ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ @command{./pre-inst-env} Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ сообщСниС, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ:" #. type: example #: guix-git/doc/contributing.texi:513 #, no-wrap msgid "" ";;; note: source file /home/user/projects/guix/guix/progress.scm\n" ";;; newer than compiled /home/user/projects/guix/guix/progress.go\n" msgstr "" ";;; note: source file /home/user/projects/guix/guix/progress.scm\n" ";;; newer than compiled /home/user/projects/guix/guix/progress.go\n" #. type: Plain text #: guix-git/doc/contributing.texi:519 msgid "This is only a note and you can safely ignore it. You can get rid of the message by running @command{make -j4}. Until you do, Guile will run slightly slower because it will interpret the code instead of using prepared Guile object (@file{.go}) files." msgstr "Π­Ρ‚ΠΎ всСго лишь ΠΏΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ смСло ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.\tΠ’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ сообщСния, запустив @command{make -j4}.\tПока Π²Ρ‹ этого Π½Π΅ сдСлаСтС, Guile Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ вмСсто использования ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² (@file{.go}) ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Guile." #. type: Plain text #: guix-git/doc/contributing.texi:524 msgid "You can run @command{make} automatically as you work using @command{watchexec} from the @code{watchexec} package. For example, to build again each time you update a package file, run @samp{watchexec -w gnu/packages -- make -j4}." msgstr "Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ @command{make} автоматичСски Π²ΠΎ врСмя Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ @command{watchexec} ΠΈΠ· ΠΏΠ°ΠΊΠ΅Ρ‚Π° @code{watchexec}.\tНапримСр, для ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠΉ сборки ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ Ρ„Π°ΠΉΠ»Π° ΠΏΠ°ΠΊΠ΅Ρ‚Π°, Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ @samp{watchexec -w gnu/packages -- make -j4}." #. type: Plain text #: guix-git/doc/contributing.texi:533 msgid "The Perfect Setup to hack on Guix is basically the perfect setup used for Guile hacking (@pxref{Using Guile in Emacs,,, guile, Guile Reference Manual}). First, you need more than an editor, you need @url{https://www.gnu.org/software/emacs, Emacs}, empowered by the wonderful @url{https://nongnu.org/geiser/, Geiser}. To set that up, run:" msgstr "Π‘ΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½Π°Ρ установка для программирования Guix β€” это, ΠΏΠΎ сути, ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½Π°Ρ установка, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ для программирования Π½Π° Guile (@pxref{Using Guile in Emacs,,, guile, Guile Reference Manual}). Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π½Π΅Ρ‡Ρ‚ΠΎ, большСС, Ρ‡Π΅ΠΌ тСкстовый Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€, Π²Π°ΠΌ Π½ΡƒΠΆΠ΅Π½ @url{https://www.gnu.org/software/emacs, Emacs}, Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹ΠΉ Π·Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ @url{https://nongnu.org/geiser/, Geiser}. Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ всё это, Π²Π²Π΅Π΄ΠΈΡ‚Π΅:" #. type: example #: guix-git/doc/contributing.texi:536 #, no-wrap msgid "guix install emacs guile emacs-geiser emacs-geiser-guile\n" msgstr "guix install emacs guile emacs-geiser emacs-geiser-guile\n" #. type: Plain text #: guix-git/doc/contributing.texi:546 msgid "Geiser allows for interactive and incremental development from within Emacs: code compilation and evaluation from within buffers, access to on-line documentation (docstrings), context-sensitive completion, @kbd{M-.} to jump to an object definition, a REPL to try out your code, and more (@pxref{Introduction,,, geiser, Geiser User Manual}). If you allow Emacs to load the @file{.dir-locals.el} file at the root of the project checkout, it will cause Geiser to automatically add the local Guix sources to the Guile load path." msgstr "Geiser добавляСт возмоТности ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ пошаговой Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π²Π½ΡƒΡ‚Ρ€ΠΈ Emacs: компиляция ΠΈ запуск ΠΊΠΎΠ΄Π° Π² Π±ΡƒΡ„Π΅Ρ€Π°Ρ…, доступ ΠΊ ΠΎΠ½Π»Π°ΠΉΠ½-Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ (docstrings), контСкстныС дополнСния, @kbd{M-.} для пСрСмСщСния ΠΊ опрСдСлСниям ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², REPL для тСстирования ΠΊΠΎΠ΄Π° ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ΅ (@pxref{Introduction,,, geiser, Geiser User Manual}). Если Π²Ρ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚Π΅ Emacs Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» @file{.dir-locals.el} Π² ΠΊΠΎΡ€Π½Π΅ Π²Π΅Ρ‚ΠΊΠΈ вашСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Geiser автоматичСски Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ исходники Guix Π² ΠΏΡƒΡ‚ΠΈ Guile." #. type: Plain text #: guix-git/doc/contributing.texi:553 msgid "To actually edit the code, Emacs already has a neat Scheme mode. But in addition to that, you must not miss @url{https://www.emacswiki.org/emacs/ParEdit, Paredit}. It provides facilities to directly operate on the syntax tree, such as raising an s-expression or wrapping it, swallowing or rejecting the following s-expression, etc." msgstr "Π’ΠΎΠΎΠ±Ρ‰Π΅, для рСдактирования ΠΊΠΎΠ΄Π°, Π² Emacs ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ классный Scheme Ρ€Π΅ΠΆΠΈΠΌ. Но Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° @url{https://www.emacswiki.org/emacs/ParEdit, Paredit}. Π”Π°Π½Π½Ρ‹ΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚ прСдоставляСт срСдства для нСпосрСдствСнной Ρ€Π°Π±ΠΎΡ‚Ρ‹ с синтаксичСским Π΄Π΅Ρ€Π΅Π²ΠΎΠΌ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ объявлСниС s-Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, ΠΈΡ… ΡƒΠΏΠ°ΠΊΠΎΠ²ΠΊΠ°, ΠΎΡ‚ΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ s-выраТСния ΠΈ Ρ‚.Π΄." #. type: cindex #: guix-git/doc/contributing.texi:554 #, no-wrap msgid "code snippets" msgstr "сниппСты с ΠΊΠΎΠ΄ΠΎΠΌ" #. type: cindex #: guix-git/doc/contributing.texi:555 #, no-wrap msgid "templates" msgstr "ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹" #. type: cindex #: guix-git/doc/contributing.texi:556 #, no-wrap msgid "reducing boilerplate" msgstr "сокращСниС шаблонов" #. type: Plain text #: guix-git/doc/contributing.texi:566 msgid "We also provide templates for common git commit messages and package definitions in the @file{etc/snippets} directory. These templates can be used to expand short trigger strings to interactive text snippets. If you use @url{https://joaotavora.github.io/yasnippet/, YASnippet}, you may want to add the @file{etc/snippets/yas} snippets directory to the @var{yas-snippet-dirs} variable. If you use @url{https://github.com/minad/tempel/, Tempel}, you may want to add the @file{etc/snippets/tempel/*} path to the @var{tempel-path} variable in Emacs." msgstr "ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ прСдоставляСм ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ для стандартных git-ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ @file{etc/snippets}. Π­Ρ‚ΠΈ ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ для Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΡ… строк Ρ‚Ρ€ΠΈΠ³Π³Π΅Ρ€Π° Π΄ΠΎ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΎΠ² тСкста. Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ @url{https://joaotavora.github.io/yasnippet/, YASnippet}, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ Π·Π°Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ сниппСтов @file{etc/snippets/yas} Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ @var{yas-snippet-dirs}. Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ @url{https://github.com/minad/tempel/, Tempel}, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ Π·Π°Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΏΡƒΡ‚ΡŒ @file{etc/snippets/tempel/*} Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ @var{tempel-path} Π² Emacs." #. type: lisp #: guix-git/doc/contributing.texi:578 #, no-wrap msgid "" ";; @r{Assuming the Guix checkout is in ~/src/guix.}\n" ";; @r{Yasnippet configuration}\n" "(with-eval-after-load 'yasnippet\n" " (add-to-list 'yas-snippet-dirs \"~/src/guix/etc/snippets/yas\"))\n" ";; @r{Tempel configuration}\n" "(with-eval-after-load 'tempel\n" " ;; Ensure tempel-path is a list -- it may also be a string.\n" " (unless (listp 'tempel-path)\n" " (setq tempel-path (list tempel-path)))\n" " (add-to-list 'tempel-path \"~/src/guix/etc/snippets/tempel/*\"))\n" msgstr "" ";; @r{Assuming the Guix checkout is in ~/src/guix.}\n" ";; @r{Yasnippet configuration}\n" "(with-eval-after-load 'yasnippet\n" " (add-to-list 'yas-snippet-dirs \"~/src/guix/etc/snippets/yas\"))\n" ";; @r{Tempel configuration}\n" "(with-eval-after-load 'tempel\n" " ;; Ensure tempel-path is a list -- it may also be a string.\n" " (unless (listp 'tempel-path)\n" " (setq tempel-path (list tempel-path)))\n" " (add-to-list 'tempel-path \"~/src/guix/etc/snippets/tempel/*\"))\n" #. type: Plain text #: guix-git/doc/contributing.texi:586 msgid "The commit message snippets depend on @url{https://magit.vc/, Magit} to display staged files. When editing a commit message type @code{add} followed by @kbd{TAB} to insert a commit message template for adding a package; type @code{update} followed by @kbd{TAB} to insert a template for updating a package; type @code{https} followed by @kbd{TAB} to insert a template for changing the home page URI of a package to HTTPS." msgstr "ВСксты сообщСний ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² зависят ΠΎΡ‚ отобраТСния Π·Π°Ρ‚Ρ€ΠΎΠ½ΡƒΡ‚Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² @url{https://magit.vc/, Magit}. Π’ΠΎ врСмя рСдактирования сообщСния ΠΊΠΎΠΌΠΌΠΈΡ‚Π° Ρ‚ΠΈΠΏΠ° @code{add} Π½Π°ΠΆΠΌΠΈΡ‚Π΅ @kbd{TAB} послС Π΅Π³ΠΎ Π²Π²ΠΎΠ΄Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ шаблон сообщСния ΠΊΠΎΠΌΠΌΠΈΡ‚Π° добавлСния ΠΏΠ°ΠΊΠ΅Ρ‚Π°; рСдактируя Ρ‚ΠΈΠΏ @code{update}, Π½Π°ΠΆΠΌΠΈΡ‚Π΅ @kbd{TAB}, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ шаблон обновлСния ΠΏΠ°ΠΊΠ΅Ρ‚Π°; Ρ‚ΠΈΠΏ @code{https} - ΠΊΠ½ΠΎΠΏΠΊΠ° @kbd{TAB} вставит шаблон измСнСния адрСса домашнСй страницы ΠΏΠ°ΠΊΠ΅Ρ‚Π° Π½Π° HTTPS." #. type: Plain text #: guix-git/doc/contributing.texi:592 msgid "The main snippet for @code{scheme-mode} is triggered by typing @code{package...} followed by @kbd{TAB}. This snippet also inserts the trigger string @code{origin...}, which can be expanded further. The @code{origin} snippet in turn may insert other trigger strings ending on @code{...}, which also can be expanded further." msgstr "Основной ΠΊΠΎΠ΄ для @code{scheme-mode} вызываСтся ΠΏΡ€ΠΈ Π²Π²ΠΎΠ΄Π΅ @code{package...} ΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ @kbd{TAB}. Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠ΄ Ρ‚Π°ΠΊΠΆΠ΅ вставляСт строку Ρ‚Ρ€ΠΈΠ³Π³Π΅Ρ€Π° @code{origin...}, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ Π² дальнСйшСм. Код @code{origin...}, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ строки Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ‚Ρ€ΠΈΠ³Π³Π΅Ρ€ΠΎΠ², Π·Π°Π²Π΅Ρ€ΡˆΠ°ΡŽΡ‰ΠΈΡ…ΡΡ @code{...}, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ Π² дальнСйшСм." #. type: cindex #: guix-git/doc/contributing.texi:593 #, no-wrap msgid "insert or update copyright" msgstr "внСсти ΠΈΠ»ΠΈ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ авторскиС ΠΏΡ€Π°Π²Π°" #. type: code{#1} #: guix-git/doc/contributing.texi:594 #, no-wrap msgid "M-x guix-copyright" msgstr "M-x guix-copyright" #. type: code{#1} #: guix-git/doc/contributing.texi:595 #, no-wrap msgid "M-x copyright-update" msgstr "M-x copyright-update" #. type: Plain text #: guix-git/doc/contributing.texi:599 msgid "We additionally provide insertion and automatic update of a copyright in @file{etc/copyright.el}. You may want to set your full name, mail, and load a file." msgstr "ΠœΡ‹ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ обСспСчиваСм автоматичСскоС ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± авторских ΠΏΡ€Π°Π²Π°Ρ… Π² @file{etc/copyright.el}. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ своС ΠΏΠΎΠ»Π½ΠΎΠ΅ имя, ΠΏΠΎΡ‡Ρ‚Ρƒ ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ»." #. type: lisp #: guix-git/doc/contributing.texi:605 #, no-wrap msgid "" "(setq user-full-name \"Alice Doe\")\n" "(setq user-mail-address \"alice@@mail.org\")\n" ";; @r{Assuming the Guix checkout is in ~/src/guix.}\n" "(load-file \"~/src/guix/etc/copyright.el\")\n" msgstr "" "(setq user-full-name \"Alice Doe\")\n" "(setq user-mail-address \"alice@@mail.org\")\n" ";; @r{Assuming the Guix checkout is in ~/src/guix.}\n" "(load-file \"~/src/guix/etc/copyright.el\")\n" #. type: Plain text #: guix-git/doc/contributing.texi:608 msgid "To insert a copyright at the current line invoke @code{M-x guix-copyright}." msgstr "Π§Ρ‚ΠΎΠ±Ρ‹ ввСсти авторскоС ΠΏΡ€Π°Π²ΠΎ Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ строкС, Π²Ρ‹Π·ΠΎΠ²ΠΈΡ‚Π΅ @code{M-x guix-copyright}." #. type: Plain text #: guix-git/doc/contributing.texi:610 msgid "To update a copyright you need to specify a @code{copyright-names-regexp}." msgstr "Для обновлСния авторских ΠΏΡ€Π°Π² Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ @code{copyright-names-regexp}." #. type: lisp #: guix-git/doc/contributing.texi:614 #, no-wrap msgid "" "(setq copyright-names-regexp\n" " (format \"%s <%s>\" user-full-name user-mail-address))\n" msgstr "" "(setq copyright-names-regexp\n" " (format \"%s <%s>\" user-full-name user-mail-address))\n" #. type: Plain text #: guix-git/doc/contributing.texi:620 msgid "You can check if your copyright is up to date by evaluating @code{M-x copyright-update}. If you want to do it automatically after each buffer save then add @code{(add-hook 'after-save-hook 'copyright-update)} in Emacs." msgstr "Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ своих авторских ΠΏΡ€Π°Π², Π²Ρ‹Π·Π²Π°Π² @code{M-x copyright-update}. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π΄Π΅Π»Π°Ρ‚ΡŒ это автоматичСски послС ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ сохранСния Π² Π±ΡƒΡ„Π΅Ρ€, Ρ‚ΠΎ Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ @code{(add-hook 'after-save-hook 'copyright-update)} Π² Emacs." #. type: subsection #: guix-git/doc/contributing.texi:621 guix-git/doc/contributing.texi:622 #, no-wrap msgid "Viewing Bugs within Emacs" msgstr "ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ошибок Π²Π½ΡƒΡ‚Ρ€ΠΈ Emacs" #. type: Plain text #: guix-git/doc/contributing.texi:632 msgid "Emacs has a nice minor mode called @code{bug-reference}, which, when combined with @samp{emacs-debbugs} (the Emacs package), can be used to open links such as @samp{<https://bugs.gnu.org/58697>} or @samp{<https://issues.guix.gnu.org/58697>} as bug report buffers. From there you can easily consult the email thread via the Gnus interface, reply or modify the bug status, all without leaving the comfort of Emacs! Below is a sample configuration to add to your @file{~/.emacs} configuration file:" msgstr "Π£ Emacs Π΅ΡΡ‚ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ второстСпСнный Ρ€Π΅ΠΆΠΈΠΌ @code{bug-reference}, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ вмСстС с @samp{emacs-debbugs} (ΠΏΠ°ΠΊΠ΅Ρ‚ Emacs) ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ ссылки Ρ‚ΠΈΠΏΠ° @samp{<https://bugs.gnu.org/58697>} ΠΈΠ»ΠΈ @samp{<https://issues.guix.gnu.org/58697>} ΠΊΠ°ΠΊ Π±ΡƒΡ„Π΅Ρ€ рСдактирования ΠΎΡ‚Ρ‡Ρ‘Ρ‚Π° ΠΎΠ± ошибкС. ΠžΡ‚Ρ‚ΡƒΠ΄Π° ΠΆΠ΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π»Π΅Π³ΠΊΠΎ ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ Π²Π΅Ρ‚ΠΊΡƒ элСктронной ΠΏΠΎΡ‡Ρ‚Ρ‹ Ρ‡Π΅Ρ€Π΅Π· интСрфСйс Gnus, ΠΎΡ‚Π²Π΅Ρ‡Π°Ρ‚ΡŒ, ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ статус ошибки, ΠΈ всё Π½Π΅ выходя ΠΈΠ· ΡƒΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ Emacs! НиТС Π΅ΡΡ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² свой Ρ„Π°ΠΉΠ» ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ @file{~/.emacs}:" #. type: lisp #: guix-git/doc/contributing.texi:641 #, no-wrap msgid "" ";;; Bug references.\n" "(require 'bug-reference)\n" "(add-hook 'prog-mode-hook #'bug-reference-prog-mode)\n" "(add-hook 'gnus-mode-hook #'bug-reference-mode)\n" "(add-hook 'erc-mode-hook #'bug-reference-mode)\n" "(add-hook 'gnus-summary-mode-hook #'bug-reference-mode)\n" "(add-hook 'gnus-article-mode-hook #'bug-reference-mode)\n" "\n" msgstr "" #. type: lisp #: guix-git/doc/contributing.texi:673 #, no-wrap msgid "" ";;; This extends the default expression (the top-most, first expression\n" ";;; provided to 'or') to also match URLs such as\n" ";;; <https://issues.guix.gnu.org/58697> or <https://bugs.gnu.org/58697>.\n" ";;; It is also extended to detect \"Fixes: #NNNNN\" git trailers.\n" "(setq bug-reference-bug-regexp\n" " (rx (group (or (seq word-boundary\n" " (or (seq (char \"Bb\") \"ug\"\n" " (zero-or-one \" \")\n" " (zero-or-one \"#\"))\n" " (seq (char \"Pp\") \"atch\"\n" " (zero-or-one \" \")\n" " \"#\")\n" " (seq (char \"Ff\") \"ixes\"\n" " (zero-or-one \":\")\n" " (zero-or-one \" \") \"#\")\n" " (seq \"RFE\"\n" " (zero-or-one \" \") \"#\")\n" " (seq \"PR \"\n" " (one-or-more (char \"a-z+-\")) \"/\"))\n" " (group (one-or-more (char \"0-9\"))\n" " (zero-or-one\n" " (seq \"#\" (one-or-more\n" " (char \"0-9\"))))))\n" " (seq (? \"<\") \"https://bugs.gnu.org/\"\n" " (group-n 2 (one-or-more (char \"0-9\")))\n" " (? \">\"))\n" " (seq (? \"<\") \"https://issues.guix.gnu.org/\"\n" " (? \"issue/\")\n" " (group-n 2 (one-or-more (char \"0-9\")))\n" " (? \">\"))))))\n" "(setq bug-reference-url-format \"https://issues.guix.gnu.org/%s\")\n" "\n" msgstr "" #. type: lisp #: guix-git/doc/contributing.texi:678 #, no-wrap msgid "" "(require 'debbugs)\n" "(require 'debbugs-browse)\n" "(add-hook 'bug-reference-mode-hook #'debbugs-browse-mode)\n" "(add-hook 'bug-reference-prog-mode-hook #'debbugs-browse-mode)\n" "\n" msgstr "" #. type: lisp #: guix-git/doc/contributing.texi:689 #, no-wrap msgid "" ";; The following allows Emacs Debbugs user to open the issue directly within\n" ";; Emacs.\n" "(setq debbugs-browse-url-regexp\n" " (rx line-start\n" " \"http\" (zero-or-one \"s\") \"://\"\n" " (or \"debbugs\" \"issues.guix\" \"bugs\")\n" " \".gnu.org\" (one-or-more \"/\")\n" " (group (zero-or-one \"cgi/bugreport.cgi?bug=\"))\n" " (group-n 3 (one-or-more digit))\n" " line-end))\n" "\n" msgstr "" #. type: lisp #: guix-git/doc/contributing.texi:692 #, no-wrap msgid "" ";; Change the default when run as 'M-x debbugs-gnu'.\n" "(setq debbugs-gnu-default-packages '(\"guix\" \"guix-patches\"))\n" "\n" msgstr "" #. type: lisp #: guix-git/doc/contributing.texi:696 #, no-wrap msgid "" ";; Show feature requests.\n" "(setq debbugs-gnu-default-severities\n" " '(\"serious\" \"important\" \"normal\" \"minor\" \"wishlist\"))\n" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:701 msgid "For more information, refer to @ref{Bug Reference,,, emacs, The GNU Emacs Manual} and @ref{Minor Mode,,, debbugs-ug, The Debbugs User Guide}." msgstr "Для Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, см. @ref{Bug Reference,,, emacs, The GNU Emacs Manual} ΠΈ @ref{Minor Mode,,, debbugs-ug, The Debbugs User Guide}." #. type: Plain text #: guix-git/doc/contributing.texi:708 msgid "Alternative setups than Emacs may let you work on Guix with a similar development experience and they might work better with the tools you currently use or help you make the transition to Emacs." msgstr "Π”Ρ€ΡƒΠ³ΠΈΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΏΠΎΠΌΠΈΠΌΠΎ Emacs позволят Π²Π°ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π°Π΄ Guix с ΠΏΠΎΡ…ΠΎΠΆΠΈΠΌ ΠΎΠΏΡ‹Ρ‚ΠΎΠΌ, ΠΈ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π»ΡƒΡ‡ΡˆΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Ρ‚Π΅ΠΌΠΈ инструмСнтами, Ρ‡Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Π²Ρ‹ ΠΈΠ»ΠΈ ΠΏΠΎΠΌΠΎΠ³Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° Emacs." #. type: Plain text #: guix-git/doc/contributing.texi:714 msgid "The options listed below only provide the alternatives to the Emacs based setup, which is the most widely used in the Guix community. If you want to really understand how is the perfect setup for Guix development supposed to work, we encourage you to read the section before this regardless the editor you choose to use." msgstr "" #. type: subsection #: guix-git/doc/contributing.texi:718 guix-git/doc/contributing.texi:720 #: guix-git/doc/contributing.texi:721 #, no-wrap msgid "Guile Studio" msgstr "" #. type: menuentry #: guix-git/doc/contributing.texi:718 msgid "First step in your transition to Emacs." msgstr "ΠŸΠ΅Ρ€Π²Ρ‹Π΅ шаги ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π΅ Π½Π° Emacs." #. type: subsection #: guix-git/doc/contributing.texi:718 guix-git/doc/contributing.texi:733 #: guix-git/doc/contributing.texi:734 #, no-wrap msgid "Vim and NeoVim" msgstr "Vim ΠΈ NeoVim" #. type: menuentry #: guix-git/doc/contributing.texi:718 msgid "When you are evil to the root." msgstr "Если вас объяла Ρ‚ΡŒΠΌΠ°." #. type: Plain text #: guix-git/doc/contributing.texi:726 msgid "Guile Studio is a pre-configured Emacs with mostly everything you need to start hacking in Guile. If you are not familiar with Emacs it makes the transition easier for you." msgstr "Guile Studio - это ΠΏΡ€Π΅Π΄ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Emacs со всСм Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ ΠΏΡ€ΠΈΠ³ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ для Π½Π°Ρ‡Π°Π»Π° Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Guile. Если Π²Ρ‹ Π½Π΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹ с Emacs, ΠΎΠ½ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π²Π°ΠΌ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° Π½Π΅Π³ΠΎ Π΅Ρ‰Ρ‘ быстрСС." #. type: example #: guix-git/doc/contributing.texi:729 #, no-wrap msgid "guix install guile-studio\n" msgstr "guix install guile-studio\n" #. type: Plain text #: guix-git/doc/contributing.texi:732 msgid "Guile Studio comes with Geiser preinstalled and prepared for action." msgstr "Π’ Guile Studio прСдустановлСн Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅ Geiser." #. type: Plain text #: guix-git/doc/contributing.texi:739 msgid "Vim (and NeoVim) are also packaged in Guix, just in case you decided to go for the evil path." msgstr "Π’ Guix Ρ‚Π°ΠΊΠΆΠ΅ Π΅ΡΡ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ с Vim (ΠΈ NeoVim) Π½Π° случай, Ссли Π²Ρ‹ Ρ€Π΅ΡˆΠΈΠ»ΠΈ Π²ΡΡ‚Π°Ρ‚ΡŒ Π½Π° Ρ‚Ρ‘ΠΌΠ½ΡƒΡŽ сторону." #. type: example #: guix-git/doc/contributing.texi:742 #, no-wrap msgid "guix install vim\n" msgstr "guix install vim\n" #. type: Plain text #: guix-git/doc/contributing.texi:750 msgid "If you want to enjoy a similar development experience to that in the perfect setup, you should install several plugins to configure the editor. Vim (and NeoVim) have the equivalent to Paredit, @uref{https://www.vim.org/scripts/script.php?script_id=3998, @code{paredit.vim}}, that will help you with the structural editing of Scheme files (the support for very large files is not great, though)." msgstr "Если Ρ…ΠΎΠΈΡ‚ΠΈΡ‚Π΅ Π½Π°ΡΠ»Π°Π΄ΠΈΡ‚ΡŒΡΡ ΠΏΠΎΡ…ΠΎΠΆΠΈΠΌ ΠΎΠΏΡ‹Ρ‚ΠΎΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Ρ‡Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Ρƒ Emacs, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ нСсколько ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ² ΠΈ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ ΠΊΠΎΠ΄Π°. Π£ Vim (ΠΈ NeoVim) Π΅ΡΡ‚ΡŒ Π°Π½Π°Π»ΠΎΠ³ Paredit, @uref{https://www.vim.org/scripts/script.php?script_id=3998, @code{paredit.vim}}, ΠΎΠ½ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ со структурированным Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Ρ„Π°ΠΉΠ»ΠΎΠ² Scheme (ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ„Π°ΠΉΠ»ΠΎΠ² большого Ρ€Π°Π·ΠΌΠ΅Ρ€Π°, ΠΎΠ΄Π½Π°ΠΊΠΎ, Π½Π΅ ΡΡ‚ΠΎΠ»ΡŒ прСкрасная)." #. type: example #: guix-git/doc/contributing.texi:753 #, no-wrap msgid "guix install vim-paredit\n" msgstr "guix install vim-paredit\n" #. type: Plain text #: guix-git/doc/contributing.texi:757 msgid "We also recommend that you run @code{:set autoindent} so that your code is automatically indented as you type." msgstr "ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ Π²Π°ΠΌ ΠΏΡ€ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ @code{:set autoindent}, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρƒ вас автоматичСски дСлались отступы." #. type: Plain text #: guix-git/doc/contributing.texi:761 msgid "For the interaction with Git, @uref{https://www.vim.org/scripts/script.php?script_id=2975, @code{fugitive.vim}} is the most commonly used plugin:" msgstr "Для взаимодСйствия с Git, @uref{https://www.vim.org/scripts/script.php?script_id=2975, @code{fugitive.vim}} - самый распространённый ΠΏΠ»Π°Π³ΠΈΠ½:" #. type: example #: guix-git/doc/contributing.texi:764 #, no-wrap msgid "guix install vim-fugitive\n" msgstr "guix install vim-fugitive\n" #. type: Plain text #: guix-git/doc/contributing.texi:769 msgid "And of course if you want to interact with Guix directly from inside of vim, using the built-in terminal emulator, we have our very own @code{guix.vim} package!" msgstr "И ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅, Ссли Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ с Guix Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΠΈΠ· Vim, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ встроСнный эмулятор Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°, Ρƒ нас Π΅ΡΡ‚ΡŒ собствСнный ΠΏΠ°ΠΊΠ΅Ρ‚ @code{guix.vim}!" #. type: example #: guix-git/doc/contributing.texi:772 #, no-wrap msgid "guix install vim-guix-vim\n" msgstr "guix install vim-guix-vim\n" #. type: Plain text #: guix-git/doc/contributing.texi:777 msgid "In NeoVim you can even make a similar setup to Geiser using @url{https://conjure.fun/, Conjure} that lets you connect to a running Guile process and inject your code there live (sadly it's not packaged in Guix yet)." msgstr "Π’ NeoVim Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΠΎΡ…ΠΎΠΆΡƒΡŽ схСму, ΠΊΠ°ΠΊ Ρƒ Geiser, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ @url{https://conjure.fun/, Conjure}, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΊ процСссу Guile ΠΈ Π²ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ваш ΠΊΠΎΠ΄ Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ (ΠΊ соТалСнию, Π² Guix Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Π° Π΅Ρ‰Ρ‘ Π½Π΅Ρ‚)." #. type: cindex #: guix-git/doc/contributing.texi:782 #, fuzzy, no-wrap #| msgid "integrity, of the store" msgid "structure, of the source tree" msgstr "Ρ†Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ, склада" #. type: Plain text #: guix-git/doc/contributing.texi:786 msgid "If you're willing to contribute to Guix beyond packages, or if you'd like to learn how it all fits together, this section provides a guided tour in the code base that you may find useful." msgstr "Если Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ внСсти Π²ΠΊΠ»Π°Π΄ Π² Guix ΠΏΠΎΠΌΠΈΠΌΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², ΠΈΠ»ΠΈ Ссли Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π·Π½Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊ всё Ρ‚ΡƒΡ‚ устроСно, этот Ρ€Π°Π·Π΄Π΅Π» Π±ΡƒΠ΄Π΅Ρ‚ экскурсиСй ΠΏΠΎ ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΉ Π±Π°Π·Π΅, которая Π²Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Π°." #. type: Plain text #: guix-git/doc/contributing.texi:790 msgid "Overall, the Guix source tree contains almost exclusively Guile @dfn{modules}, each of which can be seen as an independent library (@pxref{Modules,,, guile, GNU Guile Reference Manual})." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:795 msgid "The following table gives an overview of the main directories and what they contain. Remember that in Guile, each module name is derived from its file name---e.g., the module in file @file{guix/packages.scm} is called @code{(guix packages)}." msgstr "" #. type: item #: guix-git/doc/contributing.texi:797 guix-git/doc/contributing.texi:3408 #: guix-git/doc/guix.texi:11315 #, no-wrap msgid "guix" msgstr "guix" #. type: table #: guix-git/doc/contributing.texi:801 msgid "This is the location of core Guix mechanisms. To illustrate what is meant by ``core'', here are a few examples, starting from low-level tools and going towards higher-level tools:" msgstr "" #. type: item #: guix-git/doc/contributing.texi:803 #, no-wrap msgid "(guix store)" msgstr "(guix store)" #. type: table #: guix-git/doc/contributing.texi:805 msgid "Connecting to and interacting with the build daemon (@pxref{The Store})." msgstr "" #. type: item #: guix-git/doc/contributing.texi:805 #, fuzzy, no-wrap #| msgid "derivation" msgid "(guix derivations)" msgstr "дСривация" #. type: table #: guix-git/doc/contributing.texi:807 #, fuzzy #| msgid "Return the derivation(s) leading to the given store items (@pxref{Derivations})." msgid "Creating derivations (@pxref{Derivations})." msgstr "Π’Π΅Ρ€Π½ΡƒΡ‚ΡŒ Π΄Π΅Ρ€ΠΈΠ²Π°Ρ†ΠΈΡŽ(-ΠΈΠΈ), производящиС Π΄Π°Π½Π½Ρ‹Π΅ элСмСнты склада (@pxref{Derivations})." #. type: item #: guix-git/doc/contributing.texi:807 #, fuzzy, no-wrap #| msgid "guix pull" msgid "(guix gexps)" msgstr "guix pull" #. type: table #: guix-git/doc/contributing.texi:809 msgid "Writing G-expressions (@pxref{G-Expressions})." msgstr "" #. type: item #: guix-git/doc/contributing.texi:809 #, fuzzy, no-wrap #| msgid "Invoking guix package" msgid "(guix packages)" msgstr "Π’Ρ‹Π·ΠΎΠ² guix package" #. type: table #: guix-git/doc/contributing.texi:811 msgid "Defining packages and origins (@pxref{package Reference})." msgstr "" #. type: item #: guix-git/doc/contributing.texi:811 #, no-wrap msgid "(guix download)" msgstr "(guix download)" #. type: itemx #: guix-git/doc/contributing.texi:812 #, no-wrap msgid "(guix git-download)" msgstr "(guix git-download)" #. type: table #: guix-git/doc/contributing.texi:815 msgid "The @code{url-fetch} and @code{git-fetch} origin download methods (@pxref{origin Reference})." msgstr "" #. type: item #: guix-git/doc/contributing.texi:815 #, fuzzy, no-wrap #| msgid "guix shell\n" msgid "(guix swh)" msgstr "guix shell\n" #. type: table #: guix-git/doc/contributing.texi:818 msgid "Fetching source code from the @uref{https://archive.softwareheritage.org,Software Heritage archive}." msgstr "" #. type: item #: guix-git/doc/contributing.texi:818 #, fuzzy, no-wrap #| msgid "--search-paths" msgid "(guix search-paths)" msgstr "--search-paths" #. type: table #: guix-git/doc/contributing.texi:820 msgid "Implementing search paths (@pxref{Search Paths})." msgstr "" #. type: item #: guix-git/doc/contributing.texi:820 #, fuzzy, no-wrap #| msgid "build-system" msgid "(guix build-system)" msgstr "систСма сборки" #. type: table #: guix-git/doc/contributing.texi:822 #, fuzzy #| msgid "The build system that should be used to build the package (@pxref{Build Systems})." msgid "The build system interface (@pxref{Build Systems})." msgstr "БистСма сборки, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ слСдуСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для сборки ΠΏΠ°ΠΊΠ΅Ρ‚Π° (@pxref{Build Systems})." #. type: item #: guix-git/doc/contributing.texi:822 #, fuzzy, no-wrap #| msgid "Invoking guix processes" msgid "(guix profiles)" msgstr "Запуск guix processes" #. type: table #: guix-git/doc/contributing.texi:824 #, fuzzy #| msgid "Implementing data structures." msgid "Implementing profiles." msgstr "Π’ΠΎΠΏΠ»ΠΎΡ‰Π΅Π½ΠΈΠ΅ структур Π΄Π°Π½Π½Ρ‹Ρ…." #. type: cindex #: guix-git/doc/contributing.texi:826 #, no-wrap msgid "build system, directory structure" msgstr "" #. type: item #: guix-git/doc/contributing.texi:827 #, fuzzy, no-wrap #| msgid "build-system" msgid "guix/build-system" msgstr "систСма сборки" #. type: table #: guix-git/doc/contributing.texi:830 msgid "This directory contains specific build system implementations (@pxref{Build Systems}), such as:" msgstr "" #. type: item #: guix-git/doc/contributing.texi:832 #, fuzzy, no-wrap #| msgid "build-system" msgid "(guix build-system gnu)" msgstr "систСма сборки" #. type: table #: guix-git/doc/contributing.texi:834 #, fuzzy #| msgid "GNU Build System" msgid "the GNU build system;" msgstr "БистСма сборки GNU" #. type: item #: guix-git/doc/contributing.texi:834 #, fuzzy, no-wrap #| msgid "build-system" msgid "(guix build-system cmake)" msgstr "систСма сборки" #. type: table #: guix-git/doc/contributing.texi:836 #, fuzzy #| msgid "emacs-build-system" msgid "the CMake build system;" msgstr "emacs-build-system" #. type: item #: guix-git/doc/contributing.texi:836 #, fuzzy, no-wrap #| msgid "build-system" msgid "(guix build-system pyproject)" msgstr "систСма сборки" #. type: table #: guix-git/doc/contributing.texi:838 #, fuzzy #| msgid "emacs-build-system" msgid "The Python ``pyproject'' build system." msgstr "emacs-build-system" #. type: item #: guix-git/doc/contributing.texi:840 #, fuzzy, no-wrap #| msgid "guix build" msgid "guix/build" msgstr "guix build" #. type: table #: guix-git/doc/contributing.texi:845 msgid "This contains code generally used on the ``build side'' (@pxref{G-Expressions, strata of code}). This includes code used to build packages or other operating system components, as well as utilities:" msgstr "" #. type: item #: guix-git/doc/contributing.texi:847 #, fuzzy, no-wrap #| msgid "guix build" msgid "(guix build utils)" msgstr "guix build" #. type: table #: guix-git/doc/contributing.texi:849 #, fuzzy #| msgid "Helpers for your package definitions and more." msgid "Utilities for package definitions and more (@pxref{Build Utilities})." msgstr "Π˜ΠΌΠΏΠΎΡ€Ρ‚ описаниий ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²." #. type: item #: guix-git/doc/contributing.texi:849 #, fuzzy, no-wrap #| msgid "build-system" msgid "(guix build gnu-build-system)" msgstr "систСма сборки" #. type: itemx #: guix-git/doc/contributing.texi:850 #, fuzzy, no-wrap #| msgid "emacs-build-system" msgid "(guix build cmake-build-system)" msgstr "emacs-build-system" #. type: itemx #: guix-git/doc/contributing.texi:851 #, fuzzy, no-wrap #| msgid "emacs-build-system" msgid "(guix build pyproject-build-system)" msgstr "emacs-build-system" #. type: table #: guix-git/doc/contributing.texi:854 msgid "Implementation of build systems, and in particular definition of their build phases (@pxref{Build Phases})." msgstr "" #. type: item #: guix-git/doc/contributing.texi:854 #, fuzzy, no-wrap #| msgid "guix build bash\n" msgid "(guix build syscalls)" msgstr "guix build bash\n" #. type: table #: guix-git/doc/contributing.texi:856 msgid "Interface to the C library and to Linux system calls." msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:858 #, no-wrap msgid "command-line tools, as Guile modules" msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:859 #, fuzzy, no-wrap #| msgid "Package Modules" msgid "command modules" msgstr "ΠŸΠ°ΠΊΠ΅Ρ‚Π½Ρ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ" #. type: item #: guix-git/doc/contributing.texi:860 #, fuzzy, no-wrap #| msgid "guix describe" msgid "guix/scripts" msgstr "guix describe" #. type: table #: guix-git/doc/contributing.texi:865 msgid "This contains modules corresponding to @command{guix} sub-commands. For example, the @code{(guix scripts shell)} module exports the @code{guix-shell} procedure, which directly corresponds to the @command{guix shell} command (@pxref{Invoking guix shell})." msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:866 #, fuzzy, no-wrap #| msgid "with-imported-modules" msgid "importer modules" msgstr "with-imported-modules" #. type: item #: guix-git/doc/contributing.texi:867 #, fuzzy, no-wrap #| msgid "--import" msgid "guix/import" msgstr "--import" #. type: table #: guix-git/doc/contributing.texi:872 msgid "This contains supporting code for the importers and updaters (@pxref{Invoking guix import}, and @pxref{Invoking guix refresh}). For example, @code{(guix import pypi)} defines the interface to PyPI, which is used by the @command{guix import pypi} command." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:887 msgid "The directories we have seen so far all live under @file{guix/}. The other important place is the @file{gnu/} directory, which contains primarily package definitions as well as libraries and tools for Guix System (@pxref{System Configuration}) and Guix Home (@pxref{Home Configuration}), all of which build upon functionality provided by @code{(guix @dots{})} modules@footnote{For this reason, @code{(guix @dots{})} modules must generally not depend on @code{(gnu @dots{})} modules, with notable exceptions: @code{(guix build-system @dots{})} modules may look up packages at run time---e.g., @code{(guix build-system cmake)} needs to access the @code{cmake} variable at run time---, @code{(guix scripts @dots{})} often rely on @code{(gnu @dots{})} modules, and the same goes for some of the @code{(guix import @dots{})} modules.}." msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:889 #, no-wrap msgid "package modules" msgstr "ΠŸΠ°ΠΊΠ΅Ρ‚Π½Ρ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ" #. type: item #: guix-git/doc/contributing.texi:890 #, fuzzy, no-wrap #| msgid "packages" msgid "gnu/packages" msgstr "ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹" #. type: table #: guix-git/doc/contributing.texi:894 msgid "This is by far the most crowded directory of the source tree: it contains @dfn{package modules} that export package definitions (@pxref{Package Modules}). A few examples:" msgstr "" #. type: item #: guix-git/doc/contributing.texi:896 #, fuzzy, no-wrap #| msgid "" #| "(use-modules (gnu packages base) (guix packages))\n" #| "\n" msgid "(gnu packages base)" msgstr "" "(use-modules (gnu packages base) (guix packages))\n" "\n" #. type: table #: guix-git/doc/contributing.texi:899 msgid "Module providing ``base'' packages: @code{glibc}, @code{coreutils}, @code{grep}, etc." msgstr "" #. type: item #: guix-git/doc/contributing.texi:899 #, fuzzy, no-wrap #| msgid "Invoking guix package" msgid "(gnu packages guile)" msgstr "Π’Ρ‹Π·ΠΎΠ² guix package" #. type: table #: guix-git/doc/contributing.texi:901 #, fuzzy #| msgid "Building packages." msgid "Guile and core Guile packages." msgstr "Π‘Π±ΠΎΡ€ΠΊΠ° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²." #. type: item #: guix-git/doc/contributing.texi:901 #, fuzzy, no-wrap #| msgid "Invoking guix package" msgid "(gnu packages linux)" msgstr "Π’Ρ‹Π·ΠΎΠ² guix package" #. type: table #: guix-git/doc/contributing.texi:903 msgid "The Linux-libre kernel and related packages." msgstr "" #. type: item #: guix-git/doc/contributing.texi:903 #, fuzzy, no-wrap #| msgid "guix package @var{options}\n" msgid "(gnu packages python)" msgstr "guix package @var{options}\n" #. type: table #: guix-git/doc/contributing.texi:905 #, fuzzy #| msgid "inputs, for Python packages" msgid "Python and core Python packages." msgstr "Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, для ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Python" #. type: item #: guix-git/doc/contributing.texi:905 #, no-wrap msgid "(gnu packages python-xyz)" msgstr "" #. type: table #: guix-git/doc/contributing.texi:907 msgid "Miscellaneous Python packages (we were not very creative)." msgstr "" #. type: table #: guix-git/doc/contributing.texi:912 #, fuzzy #| msgid "You can obtain this information using @code{guix download} (@pxref{Invoking guix download}) or @code{guix hash} (@pxref{Invoking guix hash})." msgid "In any case, you can jump to a package definition using @command{guix edit} (@pxref{Invoking guix edit}) and view its location with @command{guix show} (@pxref{Invoking guix package})." msgstr "Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ эту ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ @code{guix download} (@pxref{Invoking guix download}) ΠΈΠ»ΠΈ @code{guix hash} (@pxref{Invoking guix hash})." #. type: findex #: guix-git/doc/contributing.texi:913 #, fuzzy, no-wrap #| msgid "--search-paths" msgid "search-patches" msgstr "--search-paths" #. type: item #: guix-git/doc/contributing.texi:914 #, no-wrap msgid "gnu/packages/patches" msgstr "" #. type: table #: guix-git/doc/contributing.texi:917 msgid "This directory contains patches applied against packages and obtained using the @code{search-patches} procedure." msgstr "" #. type: item #: guix-git/doc/contributing.texi:918 #, fuzzy, no-wrap #| msgid "Services" msgid "gnu/services" msgstr "БСрвисы" #. type: table #: guix-git/doc/contributing.texi:922 msgid "This contains service definitions, primarily for Guix System (@pxref{Services}) but some of them are adapted and reused for Guix Home as we will see below. Examples:" msgstr "" #. type: item #: guix-git/doc/contributing.texi:924 #, fuzzy, no-wrap #| msgid "Linux Services" msgid "(gnu services)" msgstr "Π‘Π»ΡƒΠΆΠ±Ρ‹ Linux" #. type: table #: guix-git/doc/contributing.texi:927 msgid "The service framework itself, which defines the service and service type data types (@pxref{Service Composition})." msgstr "" #. type: item #: guix-git/doc/contributing.texi:927 #, fuzzy, no-wrap #| msgid "Linux Services" msgid "(gnu services base)" msgstr "Π‘Π»ΡƒΠΆΠ±Ρ‹ Linux" #. type: table #: guix-git/doc/contributing.texi:929 msgid "``Base'' services (@pxref{Base Services})." msgstr "" #. type: item #: guix-git/doc/contributing.texi:929 #, fuzzy, no-wrap #| msgid "Monitoring services." msgid "(gnu services desktop)" msgstr "БСрвисы ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π°." #. type: table #: guix-git/doc/contributing.texi:931 #, fuzzy #| msgid "Desktop Services" msgid "``Desktop'' services (@pxref{Desktop Services})." msgstr "БСрвисы Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ стола" #. type: item #: guix-git/doc/contributing.texi:931 #, no-wrap msgid "(gnu services shepherd)" msgstr "" #. type: table #: guix-git/doc/contributing.texi:933 msgid "Support for Shepherd services (@pxref{Shepherd Services})." msgstr "" #. type: table #: guix-git/doc/contributing.texi:938 #, fuzzy #| msgid "You can obtain this information using @code{guix download} (@pxref{Invoking guix download}) or @code{guix hash} (@pxref{Invoking guix hash})." msgid "You can jump to a service definition using @command{guix system edit} and view its location with @command{guix system search} (@pxref{Invoking guix system})." msgstr "Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ эту ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ @code{guix download} (@pxref{Invoking guix download}) ΠΈΠ»ΠΈ @code{guix hash} (@pxref{Invoking guix hash})." #. type: item #: guix-git/doc/contributing.texi:939 #, fuzzy, no-wrap #| msgid "Guix System" msgid "gnu/system" msgstr "БистСма Guix" #. type: table #: guix-git/doc/contributing.texi:941 msgid "These are core Guix System modules, such as:" msgstr "" #. type: item #: guix-git/doc/contributing.texi:943 #, fuzzy, no-wrap #| msgid "Guix System" msgid "(gnu system)" msgstr "БистСма Guix" #. type: table #: guix-git/doc/contributing.texi:945 msgid "Defines @code{operating-system} (@pxref{operating-system Reference})." msgstr "" #. type: item #: guix-git/doc/contributing.texi:945 #, fuzzy, no-wrap #| msgid "build-system" msgid "(gnu system file-systems)" msgstr "систСма сборки" #. type: table #: guix-git/doc/contributing.texi:947 msgid "Defines @code{file-system} (@pxref{File Systems})." msgstr "" #. type: item #: guix-git/doc/contributing.texi:947 #, fuzzy, no-wrap #| msgid "Specifying system services." msgid "(gnu system mapped-devices)" msgstr "Настройка систСмных слуТб." #. type: table #: guix-git/doc/contributing.texi:949 msgid "Defines @code{mapped-device} (@pxref{Mapped Devices})." msgstr "" #. type: item #: guix-git/doc/contributing.texi:951 #, fuzzy, no-wrap #| msgid "guix build" msgid "gnu/build" msgstr "guix build" #. type: table #: guix-git/doc/contributing.texi:955 msgid "These are modules that are either used on the ``build side'' when building operating systems or packages, or at run time by operating systems." msgstr "" #. type: item #: guix-git/doc/contributing.texi:957 #, fuzzy, no-wrap #| msgid "guix build bash\n" msgid "(gnu build accounts)" msgstr "guix build bash\n" #. type: table #: guix-git/doc/contributing.texi:960 msgid "Creating @file{/etc/passwd}, @file{/etc/shadow}, etc. (@pxref{User Accounts})." msgstr "" #. type: item #: guix-git/doc/contributing.texi:960 #, fuzzy, no-wrap #| msgid "Do not build the derivations." msgid "(gnu build activation)" msgstr "НС собирайтС ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹Π΅." #. type: table #: guix-git/doc/contributing.texi:962 #, fuzzy #| msgid "Manage the operating system configuration." msgid "Activating an operating system at boot time or reconfiguration time." msgstr "Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠ΅ΠΉ ОБ." #. type: item #: guix-git/doc/contributing.texi:962 #, fuzzy, no-wrap #| msgid "build-system" msgid "(gnu build file-systems)" msgstr "систСма сборки" #. type: table #: guix-git/doc/contributing.texi:964 msgid "Searching, checking, and mounting file systems." msgstr "" #. type: item #: guix-git/doc/contributing.texi:964 #, no-wrap msgid "(gnu build linux-boot)" msgstr "" #. type: itemx #: guix-git/doc/contributing.texi:965 #, no-wrap msgid "(gnu build hurd-boot)" msgstr "" #. type: table #: guix-git/doc/contributing.texi:967 #, fuzzy #| msgid "Configuring the operating system." msgid "Booting GNU/Linux and GNU/Hurd operating systems." msgstr "ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы." #. type: item #: guix-git/doc/contributing.texi:967 #, no-wrap msgid "(gnu build linux-initrd)" msgstr "" #. type: table #: guix-git/doc/contributing.texi:969 msgid "Creating a Linux initial RAM disk (@pxref{Initial RAM Disk})." msgstr "" #. type: item #: guix-git/doc/contributing.texi:971 #, fuzzy, no-wrap #| msgid "guix shell\n" msgid "gnu/home" msgstr "guix shell\n" #. type: table #: guix-git/doc/contributing.texi:974 msgid "This contains all things Guix Home (@pxref{Home Configuration}); examples:" msgstr "" #. type: item #: guix-git/doc/contributing.texi:976 #, fuzzy, no-wrap #| msgid "Other services." msgid "(gnu home services)" msgstr "Π”Ρ€ΡƒΠ³ΠΈΠ΅ слуТбы." #. type: table #: guix-git/doc/contributing.texi:978 #, fuzzy #| msgid "This is the data type representing the configuration for the hurd-getty-service." msgid "Core services such as @code{home-files-service-type}." msgstr "Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠ΅ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы." #. type: item #: guix-git/doc/contributing.texi:978 #, fuzzy, no-wrap #| msgid "Other services." msgid "(gnu home services ssh)" msgstr "Π”Ρ€ΡƒΠ³ΠΈΠ΅ слуТбы." #. type: table #: guix-git/doc/contributing.texi:980 msgid "SSH-related services (@pxref{Secure Shell})." msgstr "" #. type: item #: guix-git/doc/contributing.texi:982 #, fuzzy, no-wrap #| msgid "install" msgid "gnu/installer" msgstr "установка" #. type: table #: guix-git/doc/contributing.texi:985 msgid "This contains the text-mode graphical system installer (@pxref{Guided Graphical Installation})." msgstr "" #. type: item #: guix-git/doc/contributing.texi:986 #, fuzzy, no-wrap #| msgid "machine" msgid "gnu/machine" msgstr "ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€" #. type: table #: guix-git/doc/contributing.texi:989 #, fuzzy #| msgid "Once installed, Guix can be updated by running @command{guix pull} (@pxref{Invoking guix pull})." msgid "These are the @dfn{machine abstractions} used by @command{guix deploy} (@pxref{Invoking guix deploy})." msgstr "УстановлСнный Guix ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ @command{guix pull} (@pxref{Invoking guix pull})." #. type: item #: guix-git/doc/contributing.texi:990 #, no-wrap msgid "gnu/tests" msgstr "" #. type: table #: guix-git/doc/contributing.texi:993 msgid "This contains system tests---tests that spawn virtual machines to check that system services work as expected (@pxref{Running the Test Suite})." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:997 msgid "Last, there's also a few directories that contain files that are @emph{not} Guile modules:" msgstr "" #. type: item #: guix-git/doc/contributing.texi:999 #, fuzzy, no-wrap #| msgid "unix" msgid "nix" msgstr "unix" #. type: table #: guix-git/doc/contributing.texi:1002 #, fuzzy #| msgid "The @option{--listen} option of @command{guix-daemon} can be used to instruct it to listen for TCP connections (@pxref{Invoking guix-daemon, @option{--listen}})." msgid "This is the C++ implementation of @command{guix-daemon}, inherited from Nix (@pxref{Invoking guix-daemon})." msgstr "ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ @option{--listen} ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ @command{guix-daemon} ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для указания Π΅ΠΌΡƒ ΠΏΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Ρ‚ΡŒ TCP-соСдинСния (@pxref{Invoking guix-daemon, @option{--listen}})." #. type: item #: guix-git/doc/contributing.texi:1003 #, fuzzy, no-wrap #| msgid "#:tests?" msgid "tests" msgstr "#:tests?" #. type: table #: guix-git/doc/contributing.texi:1007 msgid "These are unit tests, each file corresponding more or less to one module, in particular @code{(guix @dots{})} modules (@pxref{Running the Test Suite})." msgstr "" #. type: item #: guix-git/doc/contributing.texi:1008 #, fuzzy, no-wrap #| msgid "docker" msgid "doc" msgstr "docker" #. type: table #: guix-git/doc/contributing.texi:1012 msgid "This is the documentation in the form of Texinfo files: this manual and the Cookbook. @xref{Writing a Texinfo File,,, texinfo, GNU Texinfo}, for information on Texinfo markup language." msgstr "" #. type: item #: guix-git/doc/contributing.texi:1013 #, no-wrap msgid "po" msgstr "" #. type: table #: guix-git/doc/contributing.texi:1018 msgid "This is the location of translations of Guix itself, of package synopses and descriptions, of the manual, and of the cookbook. Note that @file{.po} files that live here are pulled directly from Weblate (@pxref{Translating Guix})." msgstr "" #. type: item #: guix-git/doc/contributing.texi:1019 #, no-wrap msgid "etc" msgstr "" #. type: table #: guix-git/doc/contributing.texi:1022 msgid "Miscellaneous files: shell completions, support for systemd and other init systems, Git hooks, etc." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:1029 msgid "With all this, a fair chunk of your operating system is at your fingertips! Beyond @command{grep} and @command{git grep}, @pxref{The Perfect Setup} on how to navigate code from your editor, and @pxref{Using Guix Interactively} for information on how to use Scheme modules interactively. Enjoy!" msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:1033 #, no-wrap msgid "packages, creating" msgstr "созданиС, ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²" #. type: Plain text #: guix-git/doc/contributing.texi:1037 msgid "The GNU distribution is nascent and may well lack some of your favorite packages. This section describes how you can help make the distribution grow." msgstr "Дистрибутив GNU - Ρ‚ΠΎΠ»ΡŒΠΊΠΎ зароТдаСтся ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ваши Π»ΡŽΠ±ΠΈΠΌΡ‹Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹. Π­Ρ‚ΠΎΡ‚ Ρ€Π°Π·Π΄Π΅Π» описываСт ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΌΠΎΡ‡ΡŒ с Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ΠΌ дистрибутива." #. type: Plain text #: guix-git/doc/contributing.texi:1045 msgid "Free software packages are usually distributed in the form of @dfn{source code tarballs}---typically @file{tar.gz} files that contain all the source files. Adding a package to the distribution means essentially two things: adding a @dfn{recipe} that describes how to build the package, including a list of other packages required to build it, and adding @dfn{package metadata} along with that recipe, such as a description and licensing information." msgstr "ΠŸΠ°ΠΊΠ΅Ρ‚Ρ‹ свободного ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡŽΡ‚ΡΡ Π² Π²ΠΈΠ΄Π΅ @dfn{Π°Ρ€Ρ…ΠΈΠ²ΠΎΠ² исходного ΠΊΠΎΠ΄Π°}‐‐‐скорСС всСго @file{tar.gz}, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ содСрТат всС исходныС Ρ„Π°ΠΉΠ»Ρ‹. Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ Π² дистрибутив ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, ΠΏΠΎ сущСству, Π΄Π²Π΅ Π²Π΅Ρ‰ΠΈ: Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ @dfn{Ρ€Π΅Ρ†Π΅ΠΏΡ‚Π°}, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΎ, ΠΊΠ°ΠΊ ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ список Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… для сборки Π΄Π°Π½Π½ΠΎΠ³ΠΎ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ @dfn{ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠ°ΠΊΠ΅Ρ‚Π°} вмСстС с Ρ‚Π΅ΠΌ Ρ€Π΅Ρ†Π΅ΠΏΡ‚ΠΎΠΌ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ описаниС ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Π»ΠΈΡ†Π΅Π½Π·ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ." #. type: Plain text #: guix-git/doc/contributing.texi:1054 msgid "In Guix all this information is embodied in @dfn{package definitions}. Package definitions provide a high-level view of the package. They are written using the syntax of the Scheme programming language; in fact, for each package we define a variable bound to the package definition, and export that variable from a module (@pxref{Package Modules}). However, in-depth Scheme knowledge is @emph{not} a prerequisite for creating packages. For more information on package definitions, @pxref{Defining Packages}." msgstr "Π’ Guix вся эта информация Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° Π² @dfn{опрСдСлСния ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²}. ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой высокоуровнСвый ΠΎΠ±Π·ΠΎΡ€ ΠΏΠ°ΠΊΠ΅Ρ‚Π°. Они написаны с использованиСм синтаксиса языка программирования Scheme. Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Π° задаётся Π½Π°Π±ΠΎΡ€ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Π°, ΠΈ Π·Π°Ρ‚Π΅ΠΌ это ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Π° экспортируСтся ΠΈΠ· модуля (@pxref{Package Modules}). Однако ΠΎΡΠ½ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ знания Scheme @emph{not} Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ для создания ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ². Для ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² см. @pxref{Defining Packages}." #. type: Plain text #: guix-git/doc/contributing.texi:1060 msgid "Once a package definition is in place, stored in a file in the Guix source tree, it can be tested using the @command{guix build} command (@pxref{Invoking guix build}). For example, assuming the new package is called @code{gnew}, you may run this command from the Guix build tree (@pxref{Running Guix Before It Is Installed}):" msgstr "Когда ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Π° создано, сохранСно Π² Ρ„Π°ΠΉΠ»Π΅ Π² Π΄Π΅Ρ€Π΅Π²Π΅ исходников Guix, ΠΎΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ протСстировано ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ @command{guix build} (@pxref{Invoking guix build}). НапримСр, допустим, Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚ называСтся @code{gnew}, Ρ‚ΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ эту ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ ΠΈΠ· Π΄Π΅Ρ€Π΅Π²Π° сборки Guix (@pxref{Running Guix Before It Is Installed}):" #. type: example #: guix-git/doc/contributing.texi:1063 #, no-wrap msgid "./pre-inst-env guix build gnew --keep-failed\n" msgstr "./pre-inst-env guix build gnew --keep-failed\n" #. type: Plain text #: guix-git/doc/contributing.texi:1069 msgid "Using @code{--keep-failed} makes it easier to debug build failures since it provides access to the failed build tree. Another useful command-line option when debugging is @code{--log-file}, to access the build log." msgstr "ИспользованиС @code{--keep-failed} ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΏΡ€ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠ΅ ошибок сборки, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ эта опция прСдоставляСт доступ ΠΊ Π΄Π΅Ρ€Π΅Π²Ρƒ Π½Π΅ΡƒΠ΄Π°Ρ‡Π½Ρ‹Ρ… сборок. Другая полСзная опция ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки ΠΏΡ€ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠ΅ - @code{--log-file}, которая Π΄Π°Ρ‘Ρ‚ доступ ΠΊ Π»ΠΎΠ³Ρƒ сборки." #. type: Plain text #: guix-git/doc/contributing.texi:1074 msgid "If the package is unknown to the @command{guix} command, it may be that the source file contains a syntax error, or lacks a @code{define-public} clause to export the package variable. To figure it out, you may load the module from Guile to get more information about the actual error:" msgstr "Если ΠΏΠ°ΠΊΠ΅Ρ‚ Π½Π΅ извСстСн ΠΊΠΎΠΌΠ°Π½Π΄Π΅ @command{guix}, это ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ·Π½Π°Ρ‡Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ„Π°ΠΉΠ» исходника содСрТит ΡΠΈΠ½Ρ‚Π°ΠΊΡΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΎΡˆΠΈΠ±ΠΊΡƒ ΠΈΠ»ΠΈ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ прСдлоТСния @code{define-public}, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ экспортируСт ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΠΏΠ°ΠΊΠ΅Ρ‚Π°. Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ, ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΈΠ· Guile ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ большС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ошибкС:" #. type: example #: guix-git/doc/contributing.texi:1077 #, no-wrap msgid "./pre-inst-env guile -c '(use-modules (gnu packages gnew))'\n" msgstr "./pre-inst-env guile -c '(use-modules (gnu packages gnew))'\n" #. type: Plain text #: guix-git/doc/contributing.texi:1084 msgid "Once your package builds correctly, please send us a patch (@pxref{Submitting Patches}). Well, if you need help, we will be happy to help you too. Once the patch is committed in the Guix repository, the new package automatically gets built on the supported platforms by @url{https://@value{SUBSTITUTE-SERVER-1}, our continuous integration system}." msgstr "Если ваш ΠΏΠ°ΠΊΠ΅Ρ‚ собираСтся Π±Π΅Π· ошибок, ΠΏΡ€ΠΈΡˆΠ»ΠΈΡ‚Π΅ Π½Π°ΠΌ свой ΠΏΠ°Ρ‚Ρ‡ (@pxref{Submitting Patches}). Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½Π° ΠΏΠΎΠΌΠΎΡ‰ΡŒ, ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Ρ€Π°Π΄Ρ‹ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π²Π°ΠΌ со своСй стороны. ПослС фиксации ΠΏΠ°Ρ‚Ρ‡Π° Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ Guix Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ автоматичСски собран для всСх ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ нашСй @url{https://@value{SUBSTITUTE-SERVER-1} CI-систСмой}." #. type: cindex #: guix-git/doc/contributing.texi:1085 #, no-wrap msgid "substituter" msgstr "Π·Π°ΠΌΠ΅Π½ΡΡŽΡ‰ΠΈΠΉ" #. type: Plain text #: guix-git/doc/contributing.texi:1092 msgid "Users can obtain the new package definition simply by running @command{guix pull} (@pxref{Invoking guix pull}). When @code{@value{SUBSTITUTE-SERVER-1}} is done building the package, installing the package automatically downloads binaries from there (@pxref{Substitutes}). The only place where human intervention is needed is to review and apply the patch." msgstr "ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ доступныС опрСдСлСния ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² простым запуском @command{guix pull} (@pxref{Invoking guix pull}). Если @code{@value{SUBSTITUTE-SERVER-1}} Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ» сборку ΠΏΠ°ΠΊΠ΅Ρ‚Π°, установка ΠΏΠ°ΠΊΠ΅Ρ‚Π° Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ автоматичСскоС скачиваниС Π±ΠΈΠ½Π°Ρ€Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΎΡ‚Ρ‚ΡƒΠ΄Π° (@pxref{Substitutes}). ЕдинствСнноС мСсто, Π³Π΄Π΅ Π½ΡƒΠΆΠ½Π° Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ°, - ΠΎΠ±Π·ΠΎΡ€ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΠ°Ρ‚Ρ‡Π°." #. type: subsection #: guix-git/doc/contributing.texi:1108 guix-git/doc/contributing.texi:1110 #: guix-git/doc/contributing.texi:1111 #, no-wrap msgid "Software Freedom" msgstr "Π‘Π²ΠΎΠ±ΠΎΠ΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния" #. type: menuentry #: guix-git/doc/contributing.texi:1108 msgid "What may go into the distribution." msgstr "Π§Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ принято Π² дистрибутив." #. type: subsection #: guix-git/doc/contributing.texi:1108 guix-git/doc/contributing.texi:1138 #: guix-git/doc/contributing.texi:1139 #, no-wrap msgid "Package Naming" msgstr "Как Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹" #. type: menuentry #: guix-git/doc/contributing.texi:1108 msgid "What's in a name?" msgstr "Π§Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π² ΠΈΠΌΠ΅Π½ΠΈ?" #. type: subsection #: guix-git/doc/contributing.texi:1108 guix-git/doc/contributing.texi:1171 #: guix-git/doc/contributing.texi:1172 #, no-wrap msgid "Version Numbers" msgstr "НомСра вСрсий" #. type: menuentry #: guix-git/doc/contributing.texi:1108 msgid "When the name is not enough." msgstr "Когда ΠΈΠΌΠ΅Π½ΠΈ Π½Π΅ достаточно." #. type: subsection #: guix-git/doc/contributing.texi:1108 guix-git/doc/contributing.texi:1278 #: guix-git/doc/contributing.texi:1279 #, no-wrap msgid "Synopses and Descriptions" msgstr "ΠšΡ€Π°Ρ‚ΠΊΠΈΠ΅ ΠΎΠ±Π·ΠΎΡ€Ρ‹ ΠΈ описания" #. type: menuentry #: guix-git/doc/contributing.texi:1108 msgid "Helping users find the right package." msgstr "ΠŸΠΎΠΌΠΎΡ‰ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π² поискС Π½ΡƒΠΆΠ½ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Π°." #. type: subsection #: guix-git/doc/contributing.texi:1108 guix-git/doc/contributing.texi:1357 #: guix-git/doc/contributing.texi:1358 #, no-wrap msgid "Snippets versus Phases" msgstr "Π‘Π½ΠΈΠΏΠΏΠ΅Ρ‚Ρ‹ ΠΏΡ€ΠΎΡ‚ΠΈΠ² Π€Π°Π·" #. type: menuentry #: guix-git/doc/contributing.texi:1108 msgid "Whether to use a snippet, or a build phase." msgstr "Π“Π΄Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ сниппСт, Π° Π³Π΄Π΅ Ρ„Π°Π·Ρƒ сборки." #. type: subsection #: guix-git/doc/contributing.texi:1108 guix-git/doc/contributing.texi:1372 #: guix-git/doc/contributing.texi:1373 #, fuzzy, no-wrap #| msgid "Declaring Channel Dependencies" msgid "Cyclic Module Dependencies" msgstr "ОбъявлСниС зависимостСй ΠΊΠ°Π½Π°Π»Π°" #. type: menuentry #: guix-git/doc/contributing.texi:1108 #, fuzzy #| msgid "Going further" msgid "Going full circle." msgstr "Π‘ΠΎΠ»ΡŒΡˆΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ" #. type: subsection #: guix-git/doc/contributing.texi:1108 guix-git/doc/contributing.texi:1427 #: guix-git/doc/contributing.texi:1428 guix-git/doc/guix.texi:1887 #, no-wrap msgid "Emacs Packages" msgstr "ΠŸΠ°ΠΊΠ΅Ρ‚Ρ‹ Emacs" #. type: menuentry #: guix-git/doc/contributing.texi:1108 msgid "Your Elisp fix." msgstr "Π’Π°Ρˆ Elisp фикс." #. type: subsection #: guix-git/doc/contributing.texi:1108 guix-git/doc/contributing.texi:1467 #: guix-git/doc/contributing.texi:1468 #, no-wrap msgid "Python Modules" msgstr "ΠœΠΎΠ΄ΡƒΠ»ΠΈ Python" #. type: menuentry #: guix-git/doc/contributing.texi:1108 msgid "A touch of British comedy." msgstr "Английский ΡŽΠΌΠΎΡ€." #. type: subsection #: guix-git/doc/contributing.texi:1108 guix-git/doc/contributing.texi:1562 #: guix-git/doc/contributing.texi:1563 #, no-wrap msgid "Perl Modules" msgstr "ΠœΠΎΠ΄ΡƒΠ»ΠΈ Perl" #. type: menuentry #: guix-git/doc/contributing.texi:1108 msgid "Little pearls." msgstr "Π–Π΅ΠΌΡ‡ΡƒΠΆΠΈΠ½ΠΊΠΈ." #. type: subsection #: guix-git/doc/contributing.texi:1108 guix-git/doc/contributing.texi:1578 #: guix-git/doc/contributing.texi:1579 #, no-wrap msgid "Java Packages" msgstr "ΠŸΠ°ΠΊΠ΅Ρ‚Ρ‹ Java" #. type: menuentry #: guix-git/doc/contributing.texi:1108 msgid "Coffee break." msgstr "ΠšΠΎΡ„Π΅-Π±Ρ€Π΅ΠΉΠΊ." #. type: subsection #: guix-git/doc/contributing.texi:1108 guix-git/doc/contributing.texi:1598 #: guix-git/doc/contributing.texi:1599 #, no-wrap msgid "Rust Crates" msgstr "Rust Crates ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹" #. type: menuentry #: guix-git/doc/contributing.texi:1108 msgid "Beware of oxidation." msgstr "ΠžΡΡ‚Π΅Ρ€Π΅Π³Π°ΠΉΡ‚Π΅ΡΡŒ окислСния." #. type: subsection #: guix-git/doc/contributing.texi:1108 guix-git/doc/contributing.texi:1632 #: guix-git/doc/contributing.texi:1633 #, no-wrap msgid "Elm Packages" msgstr "ΠŸΠ°ΠΊΠ΅Ρ‚Ρ‹ Elm" #. type: menuentry #: guix-git/doc/contributing.texi:1108 msgid "Trees of browser code" msgstr "ЛСсок Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°" #. type: subsection #: guix-git/doc/contributing.texi:1108 guix-git/doc/contributing.texi:1713 #: guix-git/doc/contributing.texi:1714 #, no-wrap msgid "Fonts" msgstr "Π¨Ρ€ΠΈΡ„Ρ‚Ρ‹" #. type: menuentry #: guix-git/doc/contributing.texi:1108 msgid "Fond of fonts." msgstr "Π›ΡŽΠ±ΠΈΡ‚Π΅Π»ΡΠΌ ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ²." #. type: cindex #: guix-git/doc/contributing.texi:1114 #, no-wrap msgid "free software" msgstr "свободноС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС" #. type: Plain text #: guix-git/doc/contributing.texi:1122 msgid "The GNU operating system has been developed so that users can have freedom in their computing. GNU is @dfn{free software}, meaning that users have the @url{https://www.gnu.org/philosophy/free-sw.html,four essential freedoms}: to run the program, to study and change the program in source code form, to redistribute exact copies, and to distribute modified versions. Packages found in the GNU distribution provide only software that conveys these four freedoms." msgstr "ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π°Ρ систСма GNU Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΈΠΌΠ΅Π»ΠΈ свободу ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ Π·Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠΌ. GNU --- это @dfn{свободноС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС}, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ @url{http://www.gnu.org/philosophy/free-sw.html,Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ ваТнСйшиС свободы}: Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ исходный ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚ΡŒ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ‚ΠΎΡ‡Π½Ρ‹Π΅ ΠΊΠΎΠΏΠΈΠΈ ΠΈ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Ρ‘Π½Π½Ρ‹Π΅ вСрсии. ΠŸΠ°ΠΊΠ΅Ρ‚Ρ‹, Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Π΅ Π² дистрибутив GNU, ΠΏΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π΄Π°Ρ‘Ρ‚ эти Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ свободы." #. type: Plain text #: guix-git/doc/contributing.texi:1128 msgid "In addition, the GNU distribution follow the @url{https://www.gnu.org/distros/free-system-distribution-guidelines.html,free software distribution guidelines}. Among other things, these guidelines reject non-free firmware, recommendations of non-free software, and discuss ways to deal with trademarks and patents." msgstr "Π’Π°ΠΊΠΆΠ΅ дистрибутив GNU слСдуСт @url{http://www.gnu.org/distros/free-system-distribution-guidelines.html,рСкомСндациям для свободных дистрибутивов}. Π­Ρ‚ΠΈ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ, срСди ΠΏΡ€ΠΎΡ‡ΠΈΡ… ΡƒΠΊΠ°Π·Π°Π½ΠΈΠΉ, Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡ‚ΠΊΠ»ΠΎΠ½ΡΡŽΡ‚ нСсвободныС встроСнныС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ нСсвободного ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ΠΈ содСрТат Π΄ΠΎΠ²ΠΎΠ΄Ρ‹ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ с Ρ‚ΠΎΡ€Π³ΠΎΠ²Ρ‹ΠΌΠΈ ΠΌΠ°Ρ€ΠΊΠ°ΠΌΠΈ ΠΈ ΠΏΠ°Ρ‚Π΅Π½Ρ‚Π°ΠΌΠΈ." #. type: Plain text #: guix-git/doc/contributing.texi:1136 msgid "Some otherwise free upstream package sources contain a small and optional subset that violates the above guidelines, for instance because this subset is itself non-free code. When that happens, the offending items are removed with appropriate patches or code snippets in the @code{origin} form of the package (@pxref{Defining Packages}). This way, @code{guix build --source} returns the ``freed'' source rather than the unmodified upstream source." msgstr "Но Ρ‚Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ источники ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π² ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Π΅ содСрТат нСбольшиС Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°Ρ€ΡƒΡˆΠ°ΡŽΡ‚ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, это ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ нСсвободный ΠΊΠΎΠ΄. Если это происходит, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΡƒΠ΄Π°Π»ΡΡŽΡ‚ΡΡ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΏΠ°Ρ‚Ρ‡Π΅ΠΉ ΠΈΠ»ΠΈ сниппСтов Π² @code{исходный} ΠΊΠΎΠ΄ ΠΏΠ°ΠΊΠ΅Ρ‚Π° @pxref{Defining Packages}). Π’Π°ΠΊ @code{guix build --source} Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ \"восстановлСнный свободный\" исходный ΠΊΠΎΠ΄ вмСсто ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ исходника." #. type: cindex #: guix-git/doc/contributing.texi:1141 #, no-wrap msgid "package name" msgstr "имя ΠΏΠ°ΠΊΠ΅Ρ‚Π°" #. type: Plain text #: guix-git/doc/contributing.texi:1149 msgid "A package actually has two names associated with it. First, there is the name of the @emph{Scheme variable}, the one following @code{define-public}. By this name, the package can be made known in the Scheme code, for instance as input to another package. Second, there is the string in the @code{name} field of a package definition. This name is used by package management commands such as @command{guix package} and @command{guix build}." msgstr "ΠŸΠ°ΠΊΠ΅Ρ‚, Π² Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, ΠΈΠΌΠ΅Π΅Ρ‚ Π΄Π²Π° ΠΈΠΌΠ΅Π½ΠΈ, ассоциированных с Π½ΠΈΠΌ: ΠΏΠ΅Ρ€Π²ΠΎΠ΅ --- это имя @emph{ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Scheme}, которая ΡƒΠΊΠ°Π·Π°Π½Π° Π² @code{define-public}. Π­Ρ‚ΠΎ имя Π΄Π΅Π»Π°Π΅Ρ‚ ΠΏΠ°ΠΊΠ΅Ρ‚ доступным Π² ΠΊΠΎΠ΄Π΅ Scheme, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΊ Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Π°. Π’Ρ‚ΠΎΡ€ΠΎΠ΅ --- это строка Π² ΠΏΠΎΠ»Π΅ @code{name} Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Π°. Π­Ρ‚ΠΎ имя ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ управлСния ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, @command{guix package} ΠΈ @command{guix build}." #. type: Plain text #: guix-git/doc/contributing.texi:1154 msgid "Both are usually the same and correspond to the lowercase conversion of the project name chosen upstream, with underscores replaced with hyphens. For instance, GNUnet is available as @code{gnunet}, and SDL_net as @code{sdl-net}." msgstr "Оба ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой строки Π² Π½ΠΈΠΆΠ½Π΅ΠΌ рСгистрС, содСрТащиС имя ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° с дСфисами вмСсто символов Π½ΠΈΠΆΠ½Π΅Π³ΠΎ подчёркивания. НапримСр, GNUnet доступСн ΠΊΠ°ΠΊ @code{gnunet}, Π° SDL_net --- ΠΊΠ°ΠΊ @code{sdl-net}." #. type: Plain text #: guix-git/doc/contributing.texi:1162 msgid "A noteworthy exception to this rule is when the project name is only a single character, or if an older maintained project with the same name already exists---regardless of whether it has already been packaged for Guix. Use common sense to make such names unambiguous and meaningful. For example, Guix's package for the shell called ``s'' upstream is @code{s-shell} and @emph{not} @code{s}. Feel free to ask your fellow hackers for inspiration." msgstr "Π—Π°ΡΠ»ΡƒΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠΌ внимания ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΈΠ· этого ΠΏΡ€Π°Π²ΠΈΠ»Π° являСтся случай, ΠΊΠΎΠ³Π΄Π° имя ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° состоит Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ символа, ΠΈΠ»ΠΈ Ссли ΡƒΠΆΠ΅ сущСствуСт Π±ΠΎΠ»Π΅Π΅ старый ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ с Ρ‚Π°ΠΊΠΈΠΌ ΠΆΠ΅ ΠΈΠΌΠ΅Π½Π΅ΠΌ---нСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Π±Ρ‹Π» Π»ΠΈ ΠΎΠ½ ΡƒΠΆΠ΅ ΡƒΠΏΠ°ΠΊΠΎΠ²Π°Π½ для Guix. ΠŸΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ Π·Π΄Ρ€Π°Π²Ρ‹ΠΌ смыслом, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ ΠΈΠΌΠ΅Π½Π° ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½Ρ‹ΠΌΠΈ ΠΈ Π·Π½Π°Ρ‡ΠΈΠΌΡ‹ΠΌΠΈ. НапримСр, ΠΏΠ°ΠΊΠ΅Ρ‚ Guix для ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ (shell) ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ ``s ''---это @code{s-shell} ΠΈ @emph{Π½Π΅Ρ‚} @code{s}. НС ΡΡ‚Π΅ΡΠ½ΡΠΉΡ‚Π΅ΡΡŒ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ своим ΠΊΠΎΠ»Π»Π΅Π³Π°ΠΌ-Ρ…Π°ΠΊΠ΅Ρ€Π°ΠΌ Π·Π° Π²Π΄ΠΎΡ…Π½ΠΎΠ²Π΅Π½ΠΈΠ΅ΠΌ." #. type: Plain text #: guix-git/doc/contributing.texi:1167 msgid "We do not add @code{lib} prefixes for library packages, unless these are already part of the official project name. But @pxref{Python Modules} and @ref{Perl Modules} for special rules concerning modules for the Python and Perl languages." msgstr "ΠœΡ‹ Π½Π΅ добавляСм приставку @code{lib} для ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, нСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ это ΡƒΠΆΠ΅ Ρ‡Π°ΡΡ‚ΡŒ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Π°. Но для @pxref{Python Modules} ΠΈ @ref{Perl Modules} Π΅ΡΡ‚ΡŒ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, ΠΊΠ°ΡΠ°ΡŽΡ‰ΠΈΠ΅ΡΡ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ для языков Python ΠΈ Perl." #. type: Plain text #: guix-git/doc/contributing.texi:1169 msgid "Font package names are handled differently, @pxref{Fonts}." msgstr "ΠŸΡ€ΠΈ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ² ΠΈΠΌΠ΅Π½Π° ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ, @pxref{Fonts}." #. type: cindex #: guix-git/doc/contributing.texi:1174 #, no-wrap msgid "package version" msgstr "вСрсия ΠΏΠ°ΠΊΠ΅Ρ‚Π°" #. type: Plain text #: guix-git/doc/contributing.texi:1183 msgid "We usually package only the latest version of a given free software project. But sometimes, for instance for incompatible library versions, two (or more) versions of the same package are needed. These require different Scheme variable names. We use the name as defined in @ref{Package Naming} for the most recent version; previous versions use the same name, suffixed by @code{-} and the smallest prefix of the version number that may distinguish the two versions." msgstr "ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΌΡ‹ ΠΎΠΏΠ°ΠΊΠ΅Ρ‡ΠΈΠ²Π°Π΅ΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ послСднюю Π²Π΅Ρ€ΡΠΈΡŽ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. Но ΠΈΠ½ΠΎΠ³Π΄Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ нСсовмСстимых вСрсий Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, Π½ΡƒΠΆΠ½Ρ‹ Π΄Π²Π΅ (ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅) вСрсии ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Π°. Вакая ситуация Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΈΠΌΡ‘Π½ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π² Scheme. ΠœΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ имя, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠ΅ Π² @ref{Package Naming}, для самой послСднСй вСрсии; ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠ΅ ΠΆΠ΅ вСрсии ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Ρ‚Π°ΠΊΠΎΠ΅ ΠΆΠ΅ имя с Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ @code{-} ΠΈ ΠΊΡ€Π°Ρ‚Ρ‡Π°ΠΉΡˆΠΈΠΌ числом вСрсии, Ρ‡Ρ‚ΠΎ позволяСт Ρ€Π°Π·Π»ΠΈΡ‡Π°Ρ‚ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ двумя вСрсиями." #. type: Plain text #: guix-git/doc/contributing.texi:1186 msgid "The name inside the package definition is the same for all versions of a package and does not contain any version number." msgstr "Имя Π²Π½ΡƒΡ‚Ρ€ΠΈ описания ΠΏΠ°ΠΊΠ΅Ρ‚Π° постоянно для всСх вСрсий ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΈ Π½Π΅ содСрТит Π½ΠΎΠΌΠ΅Ρ€Π° вСрсии." #. type: Plain text #: guix-git/doc/contributing.texi:1188 msgid "For instance, the versions 2.24.20 and 3.9.12 of GTK+ may be packaged as follows:" msgstr "НапримСр, вСрсии GTK+ 2.24.20 ΠΈ 3.9.12 ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠΏΠ°ΠΊΠ΅Ρ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ Ρ‚Π°ΠΊ:" #. type: lisp #: guix-git/doc/contributing.texi:1200 #, no-wrap msgid "" "(define-public gtk+\n" " (package\n" " (name \"gtk+\")\n" " (version \"3.9.12\")\n" " ...))\n" "(define-public gtk+-2\n" " (package\n" " (name \"gtk+\")\n" " (version \"2.24.20\")\n" " ...))\n" msgstr "" "(define-public gtk+\n" " (package\n" " (name \"gtk+\")\n" " (version \"3.9.12\")\n" " ...))\n" "(define-public gtk+-2\n" " (package\n" " (name \"gtk+\")\n" " (version \"2.24.20\")\n" " ...))\n" #. type: Plain text #: guix-git/doc/contributing.texi:1202 msgid "If we also wanted GTK+ 3.8.2, this would be packaged as" msgstr "Если Π½Π°ΠΌ Ρ‚Π°ΠΊΠΆΠ΅ Π½ΡƒΠΆΠ΅Π½ GTK+ 3.8.2, ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π·ΠΌΠ΅Ρ‰Ρ‘Π½ Π² ΠΏΠ°ΠΊΠ΅Ρ‚Π΅" #. type: lisp #: guix-git/doc/contributing.texi:1208 #, no-wrap msgid "" "(define-public gtk+-3.8\n" " (package\n" " (name \"gtk+\")\n" " (version \"3.8.2\")\n" " ...))\n" msgstr "" "(define-public gtk+-3.8\n" " (package\n" " (name \"gtk+\")\n" " (version \"3.8.2\")\n" " ...))\n" #. type: cindex #: guix-git/doc/contributing.texi:1212 #, no-wrap msgid "version number, for VCS snapshots" msgstr "Π½ΠΎΠΌΠ΅Ρ€ вСрсии, для снимков Π‘ΠšΠ’" #. type: Plain text #: guix-git/doc/contributing.texi:1218 msgid "Occasionally, we package snapshots of upstream's version control system (VCS) instead of formal releases. This should remain exceptional, because it is up to upstream developers to clarify what the stable release is. Yet, it is sometimes necessary. So, what should we put in the @code{version} field?" msgstr "ΠŸΠΎΡ€ΠΎΠΉ ΠΌΡ‹ ΠΎΠΏΠ°ΠΊΠ΅Ρ‡ΠΈΠ²Π°Π΅ΠΌ снимки исходников ΠΈΠ· систСмы контроля вСрсий (Π‘ΠšΠ’) вмСсто ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ€Π΅Π»ΠΈΠ·ΠΎΠ². Π’Π°ΠΊΠΎΠ΅ слСдуСт Π΄Π΅Π»Π°Ρ‚ΡŒ Π² лишь порядкС ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ самим Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ являСтся ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΌ Ρ€Π΅Π»ΠΈΠ·ΠΎΠΌ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΈΠ½ΠΎΠ³Π΄Π° приходится это Π΄Π΅Π»Π°Ρ‚ΡŒ. Π§Ρ‚ΠΎ ΠΆΠ΅ ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ‚ΠΎΠ³Π΄Π° пишСм Π² ΠΏΠΎΠ»Π΅ @code{вСрсия}?" #. type: Plain text #: guix-git/doc/contributing.texi:1226 msgid "Clearly, we need to make the commit identifier of the VCS snapshot visible in the version string, but we also need to make sure that the version string is monotonically increasing so that @command{guix package --upgrade} can determine which version is newer. Since commit identifiers, notably with Git, are not monotonically increasing, we add a revision number that we increase each time we upgrade to a newer snapshot. The resulting version string looks like this:" msgstr "Ясно, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΊΠΎΠΌΠΌΠΈΡ‚Π° снимка Π‘ΠšΠ’ явным Π²Π½ΡƒΡ‚Ρ€ΠΈ строки вСрсии, Π½ΠΎ ΠΌΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ строка вСрсии ΠΌΠΎΠ½ΠΎΡ‚ΠΎΠ½Π½ΠΎ увСличиваСтся, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠΎΠΌΠ°Π½Π΄Π° @command{guix package --upgrade} ΠΌΠΎΠ³Π»Π° Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ, какая вСрсия Π½ΠΎΠ²Π΅Π΅. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², ΠΈ особСнно Π² Git, Π½Π΅ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΌΠΎΠ½ΠΎΡ‚ΠΎΠ½Π½ΠΎ, ΠΌΡ‹ дописываСм Π½ΠΎΠΌΠ΅Ρ€ Ρ€Π΅Π²ΠΈΠ·ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅ΠΌ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ обновляСм Π΄ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ снимка. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ строка вСрсии выглядит Ρ‚Π°ΠΊ:" #. type: example #: guix-git/doc/contributing.texi:1235 #, no-wrap msgid "" "2.0.11-3.cabba9e\n" " ^ ^ ^\n" " | | `-- upstream commit ID\n" " | |\n" " | `--- Guix package revision\n" " |\n" "latest upstream version\n" msgstr "" "2.0.11-3.cabba9e\n" " ^ ^ ^\n" " | | `-- ID ΠΊΠΎΠΌΠΌΠΈΡ‚Π° ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Π°\n" " | |\n" " | `--- вСрсия ΠΏΠ°ΠΊΠ΅Ρ‚Π° Guix \n" " |\n" "послСдняя вСрсия ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Π°\n" #. type: Plain text #: guix-git/doc/contributing.texi:1245 msgid "It is a good idea to strip commit identifiers in the @code{version} field to, say, 7 digits. It avoids an aesthetic annoyance (assuming aesthetics have a role to play here) as well as problems related to OS limits such as the maximum shebang length (127 bytes for the Linux kernel). There are helper functions for doing this for packages using @code{git-fetch} or @code{hg-fetch} (see below). It is best to use the full commit identifiers in @code{origin}s, though, to avoid ambiguities. A typical package definition may look like this:" msgstr "Π₯ΠΎΡ€ΠΎΡˆΠ°Ρ идСя ΠΎΠ±Ρ€Π΅Π·Π°Ρ‚ΡŒ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² Π² ΠΏΠΎΠ»Π΅ @code{version}, скаТСм, Π΄ΠΎ 7 Ρ†ΠΈΡ„Ρ€. Π­Ρ‚ΠΎ позволяСт ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΡΡΡ‚Π΅Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Π½Π΅ΠΏΡ€ΠΈΡΡ‚Π½ΠΎΡΡ‚ΡŒ (Ρ‚Π°ΠΌ, Π³Π΄Π΅ это ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅), Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с ограничСниями ОБ, ΠΊΠ°ΠΊ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, максимальная Π΄Π»ΠΈΠ½Π° шСбанга Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅ скрипта (127 Π±Π°ΠΉΡ‚ для ядра Linux). Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π΄Π°Π±Ρ‹ Π΄Π΅Π»Π°Ρ‚ΡŒ это Π² ΠΏΠ°ΠΊΠ΅Ρ‚Π°Ρ…, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ @code{git-fetch} ΠΈΠ»ΠΈ @code{hg-fetch} (см. Π½ΠΈΠΆΠ΅). Π’ ΠΏΠΎΠ»Π΅ источника --- @code{origin} --- Π»ΡƒΡ‡ΡˆΠ΅Π΅ всСго ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ двоякости. Π’ΠΈΠΏΠΈΡ‡Π½ΠΎΠ΅ описаниС ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Ρ‚Π°ΠΊ:" #. type: lisp #: guix-git/doc/contributing.texi:1262 #, no-wrap msgid "" "(define my-package\n" " (let ((commit \"c3f29bc928d5900971f65965feaae59e1272a3f7\")\n" " (revision \"1\")) ;Guix package revision\n" " (package\n" " (version (git-version \"0.9\" revision commit))\n" " (source (origin\n" " (method git-fetch)\n" " (uri (git-reference\n" " (url \"git://example.org/my-package.git\")\n" " (commit commit)))\n" " (sha256 (base32 \"1mbikn@dots{}\"))\n" " (file-name (git-file-name name version))))\n" " ;; @dots{}\n" " )))\n" msgstr "" "(define my-package\n" " (let ((commit \"c3f29bc928d5900971f65965feaae59e1272a3f7\")\n" " (revision \"1\")) ;Guix package revision\n" " (package\n" " (version (git-version \"0.9\" revision commit))\n" " (source (origin\n" " (method git-fetch)\n" " (uri (git-reference\n" " (url \"git://example.org/my-package.git\")\n" " (commit commit)))\n" " (sha256 (base32 \"1mbikn@dots{}\"))\n" " (file-name (git-file-name name version))))\n" " ;; @dots{}\n" " )))\n" #. type: deffn #: guix-git/doc/contributing.texi:1264 #, fuzzy, no-wrap #| msgid "{Scheme Procedure} git-version @var{VERSION} @var{REVISION} @var{COMMIT}" msgid "{Procedure} git-version @var{VERSION} @var{REVISION} @var{COMMIT}" msgstr "{ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Scheme} git-version @var{VERSION} @var{REVISION} @var{COMMIT}" #. type: deffn #: guix-git/doc/contributing.texi:1266 msgid "Return the version string for packages using @code{git-fetch}." msgstr "Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ строку вСрсии для ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ @code{git-fetch}." #. type: lisp #: guix-git/doc/contributing.texi:1270 #, no-wrap msgid "" "(git-version \"0.2.3\" \"0\" \"93818c936ee7e2f1ba1b315578bde363a7d43d05\")\n" "@result{} \"0.2.3-0.93818c9\"\n" msgstr "" "(git-version \"0.2.3\" \"0\" \"93818c936ee7e2f1ba1b315578bde363a7d43d05\")\n" "@result{} \"0.2.3-0.93818c9\"\n" #. type: deffn #: guix-git/doc/contributing.texi:1273 #, fuzzy, no-wrap #| msgid "{Scheme Procedure} hg-version @var{VERSION} @var{REVISION} @var{CHANGESET}" msgid "{Procedure} hg-version @var{VERSION} @var{REVISION} @var{CHANGESET}" msgstr "{ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Scheme} hg-version @var{VERSION} @var{REVISION} @var{CHANGESET}" #. type: deffn #: guix-git/doc/contributing.texi:1276 msgid "Return the version string for packages using @code{hg-fetch}. It works in the same way as @code{git-version}." msgstr "Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ строку вСрсии для ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ @code{hg-fetch}.\tΠ Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ @code{git-version}." #. type: cindex #: guix-git/doc/contributing.texi:1281 #, no-wrap msgid "package description" msgstr "описаниС ΠΏΠ°ΠΊΠ΅Ρ‚Π°" #. type: cindex #: guix-git/doc/contributing.texi:1282 #, no-wrap msgid "package synopsis" msgstr "ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΉ ΠΎΠ±Π·ΠΎΡ€ ΠΏΠ°ΠΊΠ΅Ρ‚Π°" #. type: Plain text #: guix-git/doc/contributing.texi:1289 msgid "As we have seen before, each package in GNU@tie{}Guix includes a synopsis and a description (@pxref{Defining Packages}). Synopses and descriptions are important: They are what @command{guix package --search} searches, and a crucial piece of information to help users determine whether a given package suits their needs. Consequently, packagers should pay attention to what goes into them." msgstr "Как ΠΌΡ‹ Π²ΠΈΠ΄Π΅Π»ΠΈ Ρ€Π°Π½Π΅Π΅, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚ Π² GNU@tie{}Guix Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС ΠΈ ΠΏΠΎΠ»Π½ΠΎΠ΅ описаниС (@pxref{Defining Packages}). ΠšΡ€Π°Ρ‚ΠΊΠΈΠ΅ описания ΠΈ ΠΏΠΎΠ»Π½Ρ‹Π΅ описания Π²Π°ΠΆΠ½Ρ‹: ΠΏΠΎ Π½ΠΈΠΌ производится поиск @command{guix package --search}, ΠΈ это ваТная информация, которая ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, насколько ΠΏΠ°ΠΊΠ΅Ρ‚ соотвСтствуСт ΠΈΡ… потрСбностям. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, сборщики ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ Π·Π° Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Ρ‚ΡƒΠ΄Π° прописываСтся." #. type: Plain text #: guix-git/doc/contributing.texi:1297 msgid "Synopses must start with a capital letter and must not end with a period. They must not start with ``a'' or ``the'', which usually does not bring anything; for instance, prefer ``File-frobbing tool'' over ``A tool that frobs files''. The synopsis should say what the package is---e.g., ``Core GNU utilities (file, text, shell)''---or what it is used for---e.g., the synopsis for GNU@tie{}grep is ``Print lines matching a pattern''." msgstr "ΠšΡ€Π°Ρ‚ΠΊΠΈΠ΅ описания Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒΡΡ с Π·Π°Π³Π»Π°Π²Π½ΠΎΠΉ Π±ΡƒΠΊΠ²Ρ‹ ΠΈ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π·Π°ΠΊΠ°Π½Ρ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ. Они Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒΡΡ с артикля (Π°Π½Π³Π». \"a\" ΠΈΠ»ΠΈ \"the\"), Ρ‡Ρ‚ΠΎ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π·Π½Π°Ρ‡ΠΈΡ‚; Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π»ΡƒΡ‡ΡˆΠ΅ Π½Π°Ρ‡Π°Ρ‚ΡŒ \"File-frobbing tool\" вмСсто \"A tool that frobs files\". ΠšΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠΎΠ±Ρ‰Π°Ρ‚ΡŒ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ прСдставляСт собой ΠΏΠ°ΠΊΠ΅Ρ‚, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ: \"ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ GNU (Ρ„Π°ΠΉΠ»Ρ‹, тСкст, ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ°)\", - ΠΈΠ»ΠΈ для Ρ‡Π΅Π³ΠΎ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ. НапримСр, ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС для GNU@tie{}grep Ρ‚Π°ΠΊΠΎΠ²ΠΎ: \"ΠŸΠ΅Ρ‡Π°Ρ‚ΡŒ строк, содСрТащих ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½\"." #. type: Plain text #: guix-git/doc/contributing.texi:1307 msgid "Keep in mind that the synopsis must be meaningful for a very wide audience. For example, ``Manipulate alignments in the SAM format'' might make sense for a seasoned bioinformatics researcher, but might be fairly unhelpful or even misleading to a non-specialized audience. It is a good idea to come up with a synopsis that gives an idea of the application domain of the package. In this example, this might give something like ``Manipulate nucleotide sequence alignments'', which hopefully gives the user a better idea of whether this is what they are looking for." msgstr "ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ понятным для ΠΎΡ‡Π΅Π½ΡŒ ΡˆΠΈΡ€ΠΎΠΊΠΎΠΉ Π°ΡƒΠ΄ΠΈΡ‚ΠΎΡ€ΠΈΠΈ. НапримСр, \"ΠœΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ SAM\" ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ понятно ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Ρ‹ΠΌ исслСдоватСлям Π² области Π±ΠΈΠΎΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊΠΈ, Π½ΠΎ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ бСсполСзно ΠΈΠ»ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ввСсти Π² Π·Π°Π±Π»ΡƒΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ спСциалистов. Π₯ΠΎΡ€ΠΎΡˆΠ°Ρ идСя --- Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π² ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС идСю Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ относится ΠΏΠ°ΠΊΠ΅Ρ‚. Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚: \"ΠœΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ Π½ΡƒΠΊΠ»Π΅ΠΎΡ‚ΠΈΠ΄Π½Ρ‹Ρ… ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚Π΅ΠΉ\", Ρ‡Ρ‚ΠΎ, Π² Ρ†Π΅Π»ΠΎΠΌ, Π΄Π°Ρ‘Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π»ΡƒΡ‡ΡˆΠ΅Π΅ прСдставлСниС ΠΎ Ρ‚ΠΎΠΌ, Π½Π° Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ смотрят." #. type: Plain text #: guix-git/doc/contributing.texi:1315 msgid "Descriptions should take between five and ten lines. Use full sentences, and avoid using acronyms without first introducing them. Please avoid marketing phrases such as ``world-leading'', ``industrial-strength'', and ``next-generation'', and avoid superlatives like ``the most advanced''---they are not helpful to users looking for a package and may even sound suspicious. Instead, try to be factual, mentioning use cases and features." msgstr "Описания Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΎΡ‚ 5 Π΄ΠΎ 10 строк. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΏΠΎΠ»Π½Ρ‹Π΅ прСдлоТСния ΠΈ ΠΎΡΡ‚Π΅Ρ€Π΅Π³Π°ΠΉΡ‚Π΅ΡΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π°Π±Π±Ρ€Π΅Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ Π½Π΅ Π±Ρ‹Π»ΠΈ Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Ρ‹. ΠŸΠΎΠΆΠ°Π»ΡƒΠΉΡΡ‚Π°, Π½Π΅ ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΌΠ°Ρ€ΠΊΠ΅Ρ‚ΠΈΠ½Π³ΠΎΠ²Ρ‹Π΅ Ρ„Ρ€Π°Π·Ρ‹ Ρ‚ΠΈΠΏΠ° ``ΠΌΠΈΡ€ΠΎΠ²ΠΎΠΉ Π»ΠΈΠ΄Π΅Ρ€'', ``ΠΏΡ€ΠΎΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΎ устойчивый'', ``ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ поколСния'', ΠΈ ΠΈΠ·Π±Π΅Π³Π°ΠΉΡ‚Π΅ ΠΏΡ€Π΅Π²ΠΎΡΡ…ΠΎΠ΄Π½ΡƒΡŽ ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ Ρ‚ΠΈΠΏΠ° \"самый ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Ρ‹ΠΉ\" --- это Π½Π΅ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ Π½Π°ΠΉΡ‚ΠΈ ΠΆΠ΅Π»Π°Π½Π½Ρ‹ΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚, ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π°ΠΆΠ΅ Π·Π²ΡƒΡ‡Π°Ρ‚ΡŒ ΡΠΎΠΌΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ. ВмСсто этого рассказывайтС ΠΎ Ρ„Π°ΠΊΡ‚Π°Ρ…, упоминая особСнности ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅." #. type: cindex #: guix-git/doc/contributing.texi:1316 #, no-wrap msgid "Texinfo markup, in package descriptions" msgstr "Π Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ° Texinfo, Π² описаниях ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²" #. type: Plain text #: guix-git/doc/contributing.texi:1325 msgid "Descriptions can include Texinfo markup, which is useful to introduce ornaments such as @code{@@code} or @code{@@dfn}, bullet lists, or hyperlinks (@pxref{Overview,,, texinfo, GNU Texinfo}). However you should be careful when using some characters for example @samp{@@} and curly braces which are the basic special characters in Texinfo (@pxref{Special Characters,,, texinfo, GNU Texinfo}). User interfaces such as @command{guix show} take care of rendering it appropriately." msgstr "Описания ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΡƒ Texinfo, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ для использования подсвСтки, Ρ‚Π°ΠΊΠΎΠΉ, ΠΊΠ°ΠΊ @code{@@code} ΠΈΠ»ΠΈ @code{@@dfn}, списков ΠΈΠ»ΠΈ гипСрссылок (@pxref{Overview,,, texinfo, GNU Texinfo}). Π‘ΡƒΠ΄ΡŒΡ‚Π΅, ΠΎΠ΄Π½Π°ΠΊΠΎ, Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ ΠΏΡ€ΠΈ пользовании Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… символов, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ @samp{@@} ΠΈ Ρ„ΠΈΠ³ΡƒΡ€Π½Ρ‹Ρ… скобок, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ основными спСцсимволами Π² Texinfo (@pxref{Special Characters,,, texinfo, GNU Texinfo}). ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ интСрфСйсы, Π²Ρ€ΠΎΠ΄Π΅ @command{guix show}, ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΡƒ ΠΏΡ€ΠΈ построСнии Π²Ρ‹Π²ΠΎΠ΄Π°." #. type: Plain text #: guix-git/doc/contributing.texi:1331 msgid "Synopses and descriptions are translated by volunteers @uref{https://translate.fedoraproject.org/projects/guix/packages, at Weblate} so that as many users as possible can read them in their native language. User interfaces search them and display them in the language specified by the current locale." msgstr "ΠšΡ€Π°Ρ‚ΠΊΠΈΠ΅ ΠΈ ΠΏΠΎΠ»Π½Ρ‹Π΅ описания пСрСводятся Π΄ΠΎΠ±Ρ€ΠΎΠ²ΠΎΠ»ΡŒΡ†Π°ΠΌΠΈ @uref{https://translate.fedoraproject.org/projects/guix/packages, Π² Weblate}, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ большС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΌΠΎΠ³Π»ΠΈ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈΡ… Π½Π° своСм Ρ€ΠΎΠ΄Π½ΠΎΠΌ языкС. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ интСрфСйсы производят поиск ΠΏΠΎ Π½ΠΈΠΌ ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ ΠΈΡ… Π½Π° языкС, Π·Π°Π΄Π°Π½Π½ΠΎΠΌ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ локалью." #. type: Plain text #: guix-git/doc/contributing.texi:1336 msgid "To allow @command{xgettext} to extract them as translatable strings, synopses and descriptions @emph{must be literal strings}. This means that you cannot use @code{string-append} or @code{format} to construct these strings:" msgstr "Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ @command{xgettext} ΠΈΠ·Π²Π»Π΅ΠΊΠ°Ρ‚ΡŒ ΠΈΡ… ΠΊΠ°ΠΊ тСкст для ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π°, ΠΊΡ€Π°Ρ‚ΠΊΠΈΠ΅ ΠΈ ΠΏΠΎΠ»Π½Ρ‹Π΅ описания @emph{Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π±ΡƒΠΊΠ²Π΅Π½Π½Ρ‹ΠΌΠΈ строками}. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ нСльзя ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ @code{string-append} ΠΈΠ»ΠΈ @code{format} ΠΏΡ€ΠΈ составлСнии этих строк:" #. type: lisp #: guix-git/doc/contributing.texi:1342 #, no-wrap msgid "" "(package\n" " ;; @dots{}\n" " (synopsis \"This is translatable\")\n" " (description (string-append \"This is \" \"*not*\" \" translatable.\")))\n" msgstr "" "(package\n" " ;; @dots{}\n" " (synopsis \"Π­Ρ‚Ρƒ строку ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ΡŒ\")\n" " (description (string-append \"Π­Ρ‚Π° строка \" \"*Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚*\" \" ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄.\")))\n" #. type: Plain text #: guix-git/doc/contributing.texi:1350 msgid "Translation is a lot of work so, as a packager, please pay even more attention to your synopses and descriptions as every change may entail additional work for translators. In order to help them, it is possible to make recommendations or instructions visible to them by inserting special comments like this (@pxref{xgettext Invocation,,, gettext, GNU Gettext}):" msgstr "ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ --- трудоёмкая Ρ€Π°Π±ΠΎΡ‚Π°. Как Π°Π²Ρ‚ΠΎΡ€ ΠΏΠ°ΠΊΠ΅Ρ‚Π°, поТалуйста, ΡƒΠ΄Π΅Π»ΠΈΡ‚Π΅ особоС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΌ ΠΈ ΠΏΠΎΠ»Π½Ρ‹ΠΌ описаниям, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅ ΠΏΠΎΠ²Π»Π΅Ρ‡ΡŒ Π·Π° собой Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ для ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Ρ‡ΠΈΠΊΠΎΠ². Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΠΈΠΌ, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Π²ΠΈΠ΄ΠΈΠΌΡ‹Π΅ ΠΈΠΌ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ инструкции, вставив особСнныС ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ Π²ΠΎΡ‚ Ρ‚Π°ΠΊ (@pxref{xgettext Invocation,,, gettext, GNU Gettext}):" #. type: lisp #: guix-git/doc/contributing.texi:1355 #, no-wrap msgid "" ";; TRANSLATORS: \"X11 resize-and-rotate\" should not be translated.\n" "(description \"ARandR is designed to provide a simple visual front end\n" "for the X11 resize-and-rotate (RandR) extension. @dots{}\")\n" msgstr "" ";; TRANSLATORS: \"X11 resize-and-rotate\" should not be translated.\n" "(description \"ARandR is designed to provide a simple visual front end\n" "for the X11 resize-and-rotate (RandR) extension. @dots{}\")\n" #. type: cindex #: guix-git/doc/contributing.texi:1360 #, no-wrap msgid "snippets, when to use" msgstr "сниппСты, Π³Π΄Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ" #. type: Plain text #: guix-git/doc/contributing.texi:1371 msgid "The boundary between using an origin snippet versus a build phase to modify the sources of a package can be elusive. Origin snippets are typically used to remove unwanted files such as bundled libraries, nonfree sources, or to apply simple substitutions. The source derived from an origin should produce a source that can be used to build the package on any system that the upstream package supports (i.e., act as the corresponding source). In particular, origin snippets must not embed store items in the sources; such patching should rather be done using build phases. Refer to the @code{origin} record documentation for more information (@pxref{origin Reference})." msgstr "Π“Ρ€Π°Π½ΠΈΡ†Π° раздСлСния ΠΌΠ΅ΠΆΠ΄Ρƒ использованиСм Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π° ΠΊΠΎΠ΄Π° Π² ΠΏΠΎΠ»Π΅ origin ΠΈ Ρ„Π°Π·Ρ‹ сборки для ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ исходных ΠΊΠΎΠ΄ΠΎΠ² ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎΠΉ. ΠžΠ±Ρ‹ΠΊΠ½ΠΎΠ²Π΅Π½Π½ΠΎ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρ‹ ΠΊΠΎΠ΄Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для удалСния Π½Π΅ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ², Ρ‚Π°ΠΊΠΈΡ…, ΠΊΠ°ΠΊ поставляСмыС с ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, нСсвободныС исходники, ΠΈΠ»ΠΈ для простых подстановок. ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ ΠΈΠ· ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Π° исходник Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для сборки ΠΏΠ°ΠΊΠ΅Ρ‚Π° Π² любой систСмС, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠΉ апстримом ΠΏΠ°ΠΊΠ΅Ρ‚Π° (Ρ‚.Π΅. Π΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ эквивалСнтный исходный ΠΊΠΎΠ΄). Π’ частности, объявлСния с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π° ΠΊΠΎΠ΄Π° Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ содСрТимоС Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚. Π’Π°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ исправлСний Π»ΡƒΡ‡ΡˆΠ΅ Π΄Π΅Π»Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„Π°Π· сборки. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ΡΡŒ ΠΊ @code{origin} Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ Π·Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ (@pxref{origin Reference})." #. type: Plain text #: guix-git/doc/contributing.texi:1379 msgid "While there cannot be circular dependencies between packages, Guile's lax module loading mechanism allows circular dependencies between Guile modules, which doesn't cause problems as long as the following conditions are followed for two modules part of a dependency cycle:" msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:1380 #, no-wrap msgid "rules to cope with circular module dependencies" msgstr "" #. type: enumerate #: guix-git/doc/contributing.texi:1384 msgid "Macros are not shared between the co-dependent modules" msgstr "" #. type: enumerate #: guix-git/doc/contributing.texi:1388 msgid "Top-level variables are only referenced in delayed (@i{thunked}) package fields: @code{arguments}, @code{native-inputs}, @code{inputs}, @code{propagated-inputs} or @code{replacement}" msgstr "" #. type: enumerate #: guix-git/doc/contributing.texi:1391 msgid "Procedures referencing top-level variables from another module are not called at the top level of a module themselves." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:1397 msgid "Straying away from the above rules may work while there are no dependency cycles between modules, but given such cycles are confusing and difficult to troubleshoot, it is best to follow the rules to avoid introducing problems down the line." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:1400 msgid "Here is a common trap to avoid:" msgstr "" #. type: lisp #: guix-git/doc/contributing.texi:1406 #, no-wrap msgid "" "(define-public avr-binutils\n" " (package\n" " (inherit (cross-binutils \"avr\"))\n" " (name \"avr-binutils\")))\n" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:1415 msgid "In the above example, the @code{avr-binutils} package was defined in the module @code{(gnu packages avr)}, and the @code{cross-binutils} procedure in @code{(gnu packages cross-base)}. Because the @code{inherit} field is not delayed (thunked), it is evaluated at the top level at load time, which is problematic in the presence of module dependency cycles. This could be resolved by turning the package into a procedure instead, like:" msgstr "" #. type: lisp #: guix-git/doc/contributing.texi:1421 #, no-wrap msgid "" "(define (make-avr-binutils)\n" " (package\n" " (inherit (cross-binutils \"avr\"))\n" " (name \"avr-binutils\")))\n" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:1426 msgid "Care would need to be taken to ensure the above procedure is only ever used in a package delayed fields or within another procedure also not called at the top level." msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:1430 #, no-wrap msgid "emacs, packaging" msgstr "Emacs, ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅" #. type: cindex #: guix-git/doc/contributing.texi:1431 #, no-wrap msgid "elisp, packaging" msgstr "elisp, ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅" #. type: Plain text #: guix-git/doc/contributing.texi:1443 msgid "Emacs packages should preferably use the Emacs build system (@pxref{emacs-build-system}), for uniformity and the benefits provided by its build phases, such as the auto-generation of the autoloads file and the byte compilation of the sources. Because there is no standardized way to run a test suite for Emacs packages, tests are disabled by default. When a test suite is available, it should be enabled by setting the @code{#:tests?} argument to @code{#true}. By default, the command to run the test is @command{make check}, but any command can be specified via the @code{#:test-command} argument. The @code{#:test-command} argument expects a list containing a command and its arguments, to be invoked during the @code{check} phase." msgstr "Для ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² emacs ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ систСму сборки emacs (@pxref{emacs-build-system}), Ρ€Π°Π΄ΠΈ однородности ΠΈ полСзностСй ΠΎΡ‚ Π΅Ρ‘ Ρ„Π°Π· сборки, Ρ‚Π°ΠΊΠΈΡ…, ΠΊΠ°ΠΊ автоматичСскоС созданиС Ρ„Π°ΠΉΠ»Π° Π°Π²Ρ‚ΠΎΠ·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈ байтовая компиляция исходного ΠΊΠΎΠ΄Π°. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π½Π΅ сущСствуСт стандартизированного способа запуска Π½Π°Π±ΠΎΡ€Π° тСстов для ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Emacs, тСсты ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹. Если Ρƒ ΠΏΠ°ΠΊΠ΅Ρ‚Π° Π΅ΡΡ‚ΡŒ Π½Π°Π±ΠΎΡ€ тСстов, Π΅Π³ΠΎ слСдуСт Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ, Π΄Π°Π² Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρƒ @code{#:tests?} Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ @code{#true}. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Π° для запуска тСста---@command{make check}, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использована любая ΠΊΠΎΠΌΠ°Π½Π΄Π° , указанная Π² Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π΅ @code{#:test-command}. АргумСнт @code{#:test-command} ΠΎΠΆΠΈΠ΄Π°Π΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ список, содСрТащий ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ ΠΈ Π΅Π΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹, для Π΅Π΅ Π²Ρ‹Π·ΠΎΠ²Π° Π²ΠΎ врСмя Ρ„Π°Π·Ρ‹ @code{check}." #. type: Plain text #: guix-git/doc/contributing.texi:1448 msgid "The Elisp dependencies of Emacs packages are typically provided as @code{propagated-inputs} when required at run time. As for other packages, build or test dependencies should be specified as @code{native-inputs}." msgstr "Elisp-зависимости ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² emacs ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ @code{propagated-inputs}, Ссли ΠΎΠ½ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ Π²ΠΎ врСмя Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π§Ρ‚ΠΎ касаСтся Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², зависимости сборки ΠΈΠ»ΠΈ тСстирования Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Π½Ρ‹ ΠΊΠ°ΠΊ @code{native-inputs}." #. type: Plain text #: guix-git/doc/contributing.texi:1457 msgid "Emacs packages sometimes depend on resources directories that should be installed along the Elisp files. The @code{#:include} argument can be used for that purpose, by specifying a list of regexps to match. The best practice when using the @code{#:include} argument is to extend rather than override its default value (accessible via the @code{%default-include} variable). As an example, a yasnippet extension package typically include a @file{snippets} directory, which could be copied to the installation directory using:" msgstr "ΠŸΠ°ΠΊΠ΅Ρ‚Ρ‹ emacs ΠΈΠ½ΠΎΠ³Π΄Π° зависят ΠΎΡ‚ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ с рСсурсами, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ установлСны вмСстС с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ Elisp. Для этого ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ @code{#:include}, указывая список рСгулярных Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΠ²ΠΏΠ°Π΄Π°Ρ‚ΡŒ. Π₯ΠΎΡ€ΠΎΡˆΠ΅ΠΉ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠΉ ΠΏΡ€ΠΈ использовании Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π° @code{#:include} являСтся Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅, Π° Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π΅Π³ΠΎ значСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ доступно Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ @code{%default-include}. НапримСр, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ для yasnippet ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ содСрТат Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ @file{snippets}, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ установки, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ:" #. type: lisp #: guix-git/doc/contributing.texi:1460 #, no-wrap msgid "#:include (cons \"^snippets/\" %default-include)\n" msgstr "#:include (cons \"^snippets/\" %default-include)\n" #. type: Plain text #: guix-git/doc/contributing.texi:1466 msgid "When encountering problems, it is wise to check for the presence of the @code{Package-Requires} extension header in the package main source file, and whether any dependencies and their versions listed therein are satisfied." msgstr "ΠŸΡ€ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ цСлСсообразно ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ @code{Package-Requires} Π² основном исходном Ρ„Π°ΠΉΠ»Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ удостовСрится, Ρ‡Ρ‚ΠΎ всС пСрСчислСнныС Ρ‚Π°ΠΌ зависимости ΠΈ ΠΈΡ… вСрсии ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€Π΅Π½Ρ‹." #. type: cindex #: guix-git/doc/contributing.texi:1470 #, no-wrap msgid "python" msgstr "python" #. type: Plain text #: guix-git/doc/contributing.texi:1476 msgid "We currently package Python 2 and Python 3, under the Scheme variable names @code{python-2} and @code{python} as explained in @ref{Version Numbers}. To avoid confusion and naming clashes with other programming languages, it seems desirable that the name of a package for a Python module contains the word @code{python}." msgstr "Π’ настоящСС врСмя ΠΌΡ‹ поставляСм ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ Python 2 ΠΈ Python 3 Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Scheme ΠΏΠΎΠ΄ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ @code{python-2} ΠΈ @code{python} Π² соотвСтствии с @ref{Version Numbers}. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΏΡƒΡ‚Π°Π½ΠΈΡ†Ρƒ ΠΈ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹ ΠΈΠΌΡ‘Π½ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ языками программирования, ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠΌΠ΅Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² с модулями Python содСрТали слово @code{python}." #. type: Plain text #: guix-git/doc/contributing.texi:1482 msgid "Some modules are compatible with only one version of Python, others with both. If the package Foo is compiled with Python 3, we name it @code{python-foo}. If it is compiled with Python 2, we name it @code{python2-foo}. Python 2 packages are being removed from the distribution; please do no not submit any new Python 2 packages." msgstr "НСкоторыС ΠΌΠΎΠ΄ΡƒΠ»ΠΈ совмСстимы Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с ΠΎΠ΄Π½ΠΎΠΉ вСрсиСй Python, Π΄Ρ€ΡƒΠ³ΠΈΠ΅ - с ΠΎΠ±Π΅ΠΈΠΌΠΈ. Если ΠΏΠ°ΠΊΠ΅Ρ‚ Foo скомпилирован с Python 3, ΠΌΡ‹ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌ Π΅Π³ΠΎ @code{python-foo}. Если ΠΎΠ½ скомпилирован с Python 2, ΠΌΡ‹ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌ Π΅Π³ΠΎ @code{python2-foo}. ΠŸΠ°ΠΊΠ΅Ρ‚Ρ‹ Python 2 ΡƒΠ΄Π°Π»ΡΡŽΡ‚ΡΡ ΠΈΠ· дистрибутива; поТалуйста, Π½Π΅ присылайтС Π½ΠΎΠ²Ρ‹Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ Python 2." #. type: Plain text #: guix-git/doc/contributing.texi:1488 msgid "If a project already contains the word @code{python}, we drop this; for instance, the module python-dateutil is packaged under the names @code{python-dateutil} and @code{python2-dateutil}. If the project name starts with @code{py} (e.g.@: @code{pytz}), we keep it and prefix it as described above." msgstr "Если ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΡƒΠΆΠ΅ содСрТит слово @code{python}, ΠΎΠ½ΠΎ отбрасываСтся; Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠΎΠ΄ΡƒΠ»ΡŒ python-dateutil упаковываСтся ΠΏΠΎΠ΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ @code{python-dateutil} ΠΈ @code{python2-dateutil}. Если имя ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° начинаСтся с @code{py} (Ρ‚.Π΅.@: @code{pytz}), ΠΌΡ‹ оставляСм Ρ‚Π°ΠΊΠΎΠ΅ имя ΠΈ добавляСм прСфикс, ΠΊΠ°ΠΊ это описано Π²Ρ‹ΡˆΠ΅." #. type: quotation #: guix-git/doc/contributing.texi:1502 msgid "Currently there are two different build systems for Python packages in Guix: @var{python-build-system} and @var{pyproject-build-system}. For the longest time, Python packages were built from an informally specified @file{setup.py} file. That worked amazingly well, considering Python's success, but was difficult to build tooling around. As a result, a host of alternative build systems emerged and the community eventually settled on a @url{https://peps.python.org/pep-0517/, formal standard} for specifying build requirements. @var{pyproject-build-system} is Guix's implementation of this standard. It is considered ``experimental'' in that it does not yet support all the various PEP-517 @emph{build backends}, but you are encouraged to try it for new Python packages and report any problems. It will eventually be deprecated and merged into @var{python-build-system}." msgstr "Π’ настоящий ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π² Guix сущСствуСт Π΄Π²Π΅ систСмы сборки для ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Python: @var{python-build-system} and @var{pyproject-build-system}. Π’ Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π΄ΠΎΠ»Π³ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ Python ΡΠΎΠ±ΠΈΡ€Π°Π»ΠΈΡΡŒ ΠΈΠ· Ρ„Π°ΠΉΠ»Π° @file{setup.py} file, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π½Π΅Ρ‚ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ спСцификации. Π­Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΎ ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ прСкрасно, учитывая успСх языка Python, Π½ΠΎ ΠΏΡ€ΠΈ Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π΅ Π±Ρ‹Π»ΠΎ тяТСло ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ инструмСнтаТ. Π’ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΌ ΠΈΡ‚ΠΎΠ³Π΅, появилось нСсколько Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… систСм сборки, ΠΈ сообщСство Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠΎΠ½Ρ†ΠΎΠ² сошлось Π½Π° @url{https://peps.python.org/pep-0517/, Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΌ стандартС} для описания Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ сборки. БистСма @var{pyproject-build-system} являСтся Guixовским Π²ΠΎΠΏΠ»ΠΎΡ‰Π΅Π½ΠΈΠ΅ΠΌ этого стандарта. Она считаСтся ``ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ'' Π² Ρ‚ΠΎΠΌ смыслС, Ρ‡Ρ‚ΠΎ Π΅Ρ‰Ρ‘ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ всС ΠΈΠ· Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… @emph{бэкСндов сборки} PEP-517, Π½ΠΎ ΠΌΡ‹ поощряСм Π΅Ρ‘ использованиС для Π½ΠΎΠ²Ρ‹Ρ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Python, ΠΈ просим ΡΠΎΠΎΠ±Ρ‰Π°Ρ‚ΡŒ ΠΎΠ± ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°Ρ…. Π Π°Π½ΠΎ ΠΈΠ»ΠΈ ΠΏΠΎΠ·Π΄Π½ΠΎ ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΏΡ€Π°Π·Π΄Π½Π΅Π½Π° ΠΈ объСдинСна Π² @var{python-build-system}." #. type: subsubsection #: guix-git/doc/contributing.texi:1504 #, no-wrap msgid "Specifying Dependencies" msgstr "ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅ зависимостСй" #. type: cindex #: guix-git/doc/contributing.texi:1505 #, no-wrap msgid "inputs, for Python packages" msgstr "Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, для ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Python" #. type: Plain text #: guix-git/doc/contributing.texi:1512 msgid "Dependency information for Python packages is usually available in the package source tree, with varying degrees of accuracy: in the @file{pyproject.toml} file, the @file{setup.py} file, in @file{requirements.txt}, or in @file{tox.ini} (the latter mostly for test dependencies)." msgstr "Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ ΠΎ зависимостях для ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Python ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ находится Π² исходном ΠΊΠΎΠ΄Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚Π°, с Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎΠΉ ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒΡŽ точности: Π² Ρ„Π°ΠΉΠ»Π°Ρ… @file{pyproject.toml}, @file{setup.py}, @file{requirements.txt}, ΠΈ Π² Ρ„Π°ΠΉΠ»Π΅ @file{tox.ini} (Π² послСднСм ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π² основном зависимости для выполнСния тСстов)." #. type: Plain text #: guix-git/doc/contributing.texi:1518 msgid "Your mission, when writing a recipe for a Python package, is to map these dependencies to the appropriate type of ``input'' (@pxref{package Reference, inputs}). Although the @code{pypi} importer normally does a good job (@pxref{Invoking guix import}), you may want to check the following check list to determine which dependency goes where." msgstr "ΠŸΡ€ΠΈ написании Ρ€Π΅Ρ†Π΅ΠΏΡ‚Π° сборки ΠΏΠ°ΠΊΠ΅Ρ‚Π° Python ваша Π·Π°Π΄Π°Ρ‡Π° --- ΡΠΎΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ эти зависимости ΠΊ Π΄ΠΎΠ»ΠΆΠ½ΠΎΠΌΡƒ Ρ‚ΠΈΠΏΡƒ ``input'' (@pxref{package Reference, inputs}). Π₯отя ΠΈΠΌΠΏΠΎΡ€Ρ‚Ρ‘Ρ€ @code{pypi} ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΎΡ‚Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Ρ…ΠΎΡ€ΠΎΡˆΠΎ (@pxref{Invoking guix import}), ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΠΉΡ‚ΠΈΡΡŒ ΠΏΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½Π½ΠΎΠΌΡƒ Ρ‡Π΅ΠΊ-листу, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ, какая зависимости ΠΊΡƒΠ΄Π° ΡƒΡ…ΠΎΠ΄ΠΈΡ‚." #. type: itemize #: guix-git/doc/contributing.texi:1525 msgid "We currently package Python with @code{setuptools} and @code{pip} installed per default. This is about to change, and users are encouraged to use @code{python-toolchain} if they want a build environment for Python." msgstr "Π’ настоящСС врСмя ΠΌΡ‹ поставляСм Python с @code{setuptools} ΠΈ @code{pip}, установлСнными ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. Π­Ρ‚ΠΎ скоро измСнится, ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ @code{python-toolchain}, Ссли Π½ΡƒΠΆΠ½ΠΎ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ сборки для Python." #. type: itemize #: guix-git/doc/contributing.texi:1528 msgid "@command{guix lint} will warn if @code{setuptools} or @code{pip} are added as native-inputs because they are generally not necessary." msgstr "@command{guix lint} выдаст ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅, Ссли @code{setuptools} ΠΈΠ»ΠΈ @code{pip} Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ ΠΊΠ°ΠΊ native-inputs, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ΠΈ ΠΏΠΎΡ‡Ρ‚ΠΈ всСгда Π½Π΅ Π½ΡƒΠΆΠ½Ρ‹." #. type: itemize #: guix-git/doc/contributing.texi:1534 msgid "Python dependencies required at run time go into @code{propagated-inputs}. They are typically defined with the @code{install_requires} keyword in @file{setup.py}, or in the @file{requirements.txt} file." msgstr "Зависимости Python, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ Π²ΠΎ врСмя Ρ€Π°Π±ΠΎΡ‚Ρ‹, ΠΈΠ΄ΡƒΡ‚ Π² @code{propagated-inputs}. Они ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ΡΡ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ словом @code{install_requires} Π² @file{setup.py} ΠΈΠ»ΠΈ Π² Ρ„Π°ΠΉΠ»Π΅ @file{requirements.txt}." #. type: itemize #: guix-git/doc/contributing.texi:1543 msgid "Python packages required only at build time---e.g., those listed under @code{build-system.requires} in @file{pyproject.toml} or with the @code{setup_requires} keyword in @file{setup.py}---or dependencies only for testing---e.g., those in @code{tests_require} or @file{tox.ini}---go into @code{native-inputs}. The rationale is that (1) they do not need to be propagated because they are not needed at run time, and (2) in a cross-compilation context, it's the ``native'' input that we'd want." msgstr "ΠŸΠ°ΠΊΠ΅Ρ‚Ρ‹ Python, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²ΠΎ врСмя сборки, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, пСрСчислСнныС Π² @code{build-system.requires} Ρ„Π°ΠΉΠ»Π° @file{pyproject.toml}, ΠΈΠ»ΠΈ с ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ словом @code{setup_requires} Π² @file{setup.py}, ΠΈΠ»ΠΈ ΠΆΠ΅ зависимости, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для тСстирования, ΠΊΠ°ΠΊ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² @code{setup_requires} ΠΈΠ»ΠΈ @file{tox.ini}, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ, ΠΊΠ°ΠΊ @code{native-inputs}. Π Π΅Π·ΠΎΠ½ этого Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ, Π²ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, ΠΈΡ… Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Π² ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π½Π΅ Π½ΡƒΠΆΠ½Ρ‹ для Π΅Π³ΠΎ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹, Π° Π²ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, Π² контСкстС кросс-компиляции ΠΎΠ½ΠΈ ΠΈ Π΅ΡΡ‚ΡŒ \"Ρ€ΠΎΠ΄Π½Ρ‹Π΅\" Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚Π°ΠΌ Π½ΡƒΠΆΠ½Ρ‹." #. type: itemize #: guix-git/doc/contributing.texi:1547 msgid "Examples are the @code{pytest}, @code{mock}, and @code{nose} test frameworks. Of course if any of these packages is also required at run-time, it needs to go to @code{propagated-inputs}." msgstr "ΠŸΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ тСстирования @code{pytest}, @code{mock} ΠΈ @code{nose}. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Ссли ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΠΈΠ· этих ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ Π²ΠΎ врСмя запуска ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹, Π΅Π³ΠΎ слСдуСт ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π² @code{propagated-inputs}." #. type: itemize #: guix-git/doc/contributing.texi:1552 msgid "Anything that does not fall in the previous categories goes to @code{inputs}, for example programs or C libraries required for building Python packages containing C extensions." msgstr "Всё, Ρ‡Ρ‚ΠΎ Π½Π΅ ΠΏΠΎΠΏΠ°Π»ΠΎ Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠ΅ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ, указываСтся Π² @code{inputs}, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈΠ»ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ C, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для сборки ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ содСрТат Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ Python Π½Π° C." #. type: itemize #: guix-git/doc/contributing.texi:1558 msgid "If a Python package has optional dependencies (@code{extras_require}), it is up to you to decide whether to add them or not, based on their usefulness/overhead ratio (@pxref{Submitting Patches, @command{guix size}})." msgstr "Если Ρƒ ΠΏΠ°ΠΊΠ΅Ρ‚Π° Python Π΅ΡΡ‚ΡŒ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ зависимости (@code{extras_require}), Ρ€Π΅ΡˆΠ°ΠΉΡ‚Π΅ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ, Π½ΡƒΠΆΠ½ΠΎ Π»ΠΈ ΠΈΡ… Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ, судя ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·Ρ‹ ΠΊ Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹ΠΌ расходам (@pxref{Submitting Patches, @command{guix size}})." #. type: cindex #: guix-git/doc/contributing.texi:1565 #, no-wrap msgid "perl" msgstr "perl" #. type: Plain text #: guix-git/doc/contributing.texi:1576 msgid "Perl programs standing for themselves are named as any other package, using the lowercase upstream name. For Perl packages containing a single class, we use the lowercase class name, replace all occurrences of @code{::} by dashes and prepend the prefix @code{perl-}. So the class @code{XML::Parser} becomes @code{perl-xml-parser}. Modules containing several classes keep their lowercase upstream name and are also prepended by @code{perl-}. Such modules tend to have the word @code{perl} somewhere in their name, which gets dropped in favor of the prefix. For instance, @code{libwww-perl} becomes @code{perl-libwww}." msgstr "Π‘Π°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Perl ΠΈΠΌΠ΅Π½ΡƒΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ ΠΈ любой Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ исходноС имя Π² Π½ΠΈΠΆΠ½Π΅ΠΌ рСгистрС. Для ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Perl, содСрТащих СдинствСнный класс, ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ имя класса Π² Π½ΠΈΠΆΠ½Π΅ΠΌ рСгистрС, замСняя всС появлСния @code{::} Π½Π° дСфисы ΠΈ добавляСм приставку @code{perl-}. Π’Π°ΠΊ, класс @code{XML::Parser} становится @code{perl-xml-parser}. ΠœΠΎΠ΄ΡƒΠ»ΠΈ, содСрТащиС нСсколько классов, ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ свои ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΈΠΌΠ΅Π½Π° Π² Π½ΠΈΠΆΠ½Π΅ΠΌ рСгистрС ΠΈ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‚ прСфикс @code{perl-}. ΠŸΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ‚Π΅Π½Π΄Π΅Π½Ρ†ΠΈΡŽ ΠΏΠΈΡΠ°Ρ‚ΡŒ слово @code{perl} Π³Π΄Π΅-Π»ΠΈΠ±ΠΎ Π² ΠΈΡ… ΠΈΠΌΠ΅Π½ΠΈ, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ это слово удаляСтся Π² ΠΏΠΎΠ»ΡŒΠ·Ρƒ прСфикса. НапримСр, @code{libwww-perl} становится @code{perl-libwww}." #. type: cindex #: guix-git/doc/contributing.texi:1581 #, no-wrap msgid "java" msgstr "java" #. type: Plain text #: guix-git/doc/contributing.texi:1584 msgid "Java programs standing for themselves are named as any other package, using the lowercase upstream name." msgstr "Π‘Π°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Java ΠΈΠΌΠ΅Π½ΡƒΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ ΠΈ любой Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ исходноС ΠΈΠΌ Π² Π½ΠΈΠΆΠ½Π΅ΠΌ рСгистрС." #. type: Plain text #: guix-git/doc/contributing.texi:1590 msgid "To avoid confusion and naming clashes with other programming languages, it is desirable that the name of a package for a Java package is prefixed with @code{java-}. If a project already contains the word @code{java}, we drop this; for instance, the package @code{ngsjava} is packaged under the name @code{java-ngs}." msgstr "Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΏΡƒΡ‚Π°Π½ΠΈΡ†Ρ‹ ΠΈ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ² Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠΉ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ языками программирования, ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚, ΠΏΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Java, с прСфиксом @code{java-}. Если ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΡƒΠΆΠ΅ содСрТит слово @code{java}, ΠΌΡ‹ ΠΎΠ±Ρ€Π΅Π·Π°Π΅ΠΌ Π΅Π³ΠΎ. НапримСр, ΠΏΠ°ΠΊΠ΅Ρ‚ @code{ngsjava} опакСчиваСтся ΠΏΠΎΠ΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ @code{java-ngs}." #. type: Plain text #: guix-git/doc/contributing.texi:1596 msgid "For Java packages containing a single class or a small class hierarchy, we use the lowercase class name, replace all occurrences of @code{.} by dashes and prepend the prefix @code{java-}. So the class @code{apache.commons.cli} becomes package @code{java-apache-commons-cli}." msgstr "Для ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Java, содСрТащих ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ класс ΠΈΠ»ΠΈ Π½Π΅Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΡŽ классов, ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ имя Π² Π½ΠΈΠΆΠ½Π΅ΠΌ рСгистрС, замСняя всС появлСния @code{.} Π½Π° дСфисы, ΠΈ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ прСфикс @code{java-}. Π’Π°ΠΊ класс @code{apache.commons.cli} становится ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠΌ @code{java-apache-commons-cli}." #. type: cindex #: guix-git/doc/contributing.texi:1601 #, no-wrap msgid "rust" msgstr "rust" #. type: Plain text #: guix-git/doc/contributing.texi:1604 msgid "Rust programs standing for themselves are named as any other package, using the lowercase upstream name." msgstr "Π‘Π°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Rust ΠΈΠΌΠ΅Π½ΡƒΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ ΠΈ любой Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ исходноС имя Π² Π½ΠΈΠΆΠ½Π΅ΠΌ рСгистрС." #. type: Plain text #: guix-git/doc/contributing.texi:1608 msgid "To prevent namespace collisions we prefix all other Rust packages with the @code{rust-} prefix. The name should be changed to lowercase as appropriate and dashes should remain in place." msgstr "Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹ пространства ΠΈΠΌΠ΅Π½, ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ прСфикс @code{rust-} для всСх ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Rust. Имя Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ Π½Π° строчныС Π±ΡƒΠΊΠ²Ρ‹, Ссли Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, ΠΈ дСфисы Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΡΡ‚Π°Ρ‚ΡŒΡΡ Π½Π° мСстС." #. type: Plain text #: guix-git/doc/contributing.texi:1614 msgid "In the rust ecosystem it is common for multiple incompatible versions of a package to be used at any given time, so all package definitions should have a versioned suffix. The versioned suffix is the left-most non-zero digit (and any leading zeros, of course). This follows the ``caret'' version scheme intended by Cargo. Examples@: @code{rust-clap-2}, @code{rust-rand-0.6}." msgstr "Π’ экосистСмС rust использованиС Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… нСсовмСстимых вСрсий ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ являСтся Π½ΠΎΡ€ΠΌΠΎΠΉ, поэтому Ρƒ всСх ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ вСрсионный суффикс. ВСрсионный суффикс --- самая лСвая нСнулСвая Ρ†ΠΈΡ„Ρ€Π°, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ всС ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠ΅ Π½ΡƒΠ»ΠΈ. Π­Ρ‚ΠΎ слСдуСт систСмС назначСния вСрсий ``caret'', ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ Π² Cargo. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹: @code{rust-clap-2}, @code{rust-rand-0.6}." #. type: Plain text #: guix-git/doc/contributing.texi:1624 msgid "Because of the difficulty in reusing rust packages as pre-compiled inputs for other packages the Cargo build system (@pxref{Build Systems, @code{cargo-build-system}}) presents the @code{#:cargo-inputs} and @code{cargo-development-inputs} keywords as build system arguments. It would be helpful to think of these as similar to @code{propagated-inputs} and @code{native-inputs}. Rust @code{dependencies} and @code{build-dependencies} should go in @code{#:cargo-inputs}, and @code{dev-dependencies} should go in @code{#:cargo-development-inputs}. If a Rust package links to other libraries then the standard placement in @code{inputs} and the like should be used." msgstr "Из-Π·Π° трудности ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ использования ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² rust Π² качСствС Π·Π°Ρ€Π°Π½Π΅Π΅ скомпилированных Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… для Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², систСма сборки Cargo (@pxref{Build Systems, @code{cargo-build-system}}) прСдоставляСт ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова @code{#:cargo-input} ΠΈ @code{cargo-development-input} Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² для систСмы сборки. Π˜Ρ… ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ @code{propagated-inputs} ΠΈ @code{native-inputs}. @code{dependencies} ΠΈ @code{build-dependencies} ΠΈΠ· Rust Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠ΄Ρ‚ΠΈ Π² @code{#:cargo-input}, Π° @code{dev-dependencies} Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠ΄Ρ‚ΠΈ Π² @code{#:cargo-development-input}. Если ΠΏΠ°ΠΊΠ΅Ρ‚ Rust линкуСтся с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ, Ρ‚ΠΎ слСдуСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ стандартноС Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ Π² @code{input} ΠΈ Ρ‚.ΠΏ." #. type: Plain text #: guix-git/doc/contributing.texi:1630 msgid "Care should be taken to ensure the correct version of dependencies are used; to this end we try to refrain from skipping the tests or using @code{#:skip-build?} when possible. Of course this is not always possible, as the package may be developed for a different Operating System, depend on features from the Nightly Rust compiler, or the test suite may have atrophied since it was released." msgstr "Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΠΏΠΎΠ·Π°Π±ΠΎΡ‚ΠΈΡ‚ΡŒΡΡ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±Ρ‹Π»Π° использована коррСктная вСрсия зависимостСй; с этой Ρ†Π΅Π»ΡŒΡŽ ΠΌΡ‹ стараСмся ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ Π±Π΅Π· пропускания тСсты ΠΈΠ»ΠΈ использования @code{#:skip-build?}, ΠΊΠΎΠ³Π΄Π° это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, это получаСтся Π½Π΅ всСгда, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΏΠ°ΠΊΠ΅Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒΡ‚ΡΡ для Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы, Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ ΠΎΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎΠΉ вСрсии компилятора Rust для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² (Nightly), ΠΈΠ»ΠΈ ΠΆΠ΅ тСсты ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΌΠΈ с ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° выпуска." #. type: cindex #: guix-git/doc/contributing.texi:1635 #, no-wrap msgid "Elm" msgstr "Elm" #. type: Plain text #: guix-git/doc/contributing.texi:1638 msgid "Elm applications can be named like other software: their names need not mention Elm." msgstr "ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Elm ΠΌΠΎΠ³ΡƒΡ‚ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹: Π² ΠΈΡ… ΠΈΠΌΠ΅Π½Π°Ρ… Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Ρ‚ΡŒ Elm." #. type: Plain text #: guix-git/doc/contributing.texi:1644 msgid "Packages in the Elm sense (see @code{elm-build-system} under @ref{Build Systems}) are required use names of the format @var{author}@code{/}@var{project}, where both the @var{author} and the @var{project} may contain hyphens internally, and the @var{author} sometimes contains uppercase letters." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:1648 msgid "To form the Guix package name from the upstream name, we follow a convention similar to Python packages (@pxref{Python Modules}), adding an @code{elm-} prefix unless the name would already begin with @code{elm-}." msgstr "Для формирования ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Π° Guix ΠΈΠ· исходного, ΠΌΡ‹ придСрТиваСмся ΠΊΠΎΠ½Π²Π΅Π½Ρ†ΠΈΠΈ, ΠΏΠΎΡ…ΠΎΠΆΠ΅ΠΉ Π½Π° ΠΊΠΎΠ½Π²Π΅Π½Ρ†ΠΈΡŽ для ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Python (@pxref{Python Modules}), добавляя прСфикс @code{elm-}, Ссли имя ΡƒΠΆΠ΅ Π½Π° Π½Π΅Π³ΠΎ Π½Π΅ начинаСтся." #. type: Plain text #: guix-git/doc/contributing.texi:1655 msgid "In many cases we can reconstruct an Elm package's upstream name heuristically, but, since conversion to a Guix-style name involves a loss of information, this is not always possible. Care should be taken to add the @code{'upstream-name} property when necessary so that @samp{guix import elm} will work correctly (@pxref{Invoking guix import}). The most notable scenarios when explicitly specifying the upstream name is necessary are:" msgstr "Π’ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… случаях ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ эвристичСски Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ имя ΠΏΠ°ΠΊΠ΅Ρ‚Π° Elm, Π½ΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π² имя Π² стилС Guix связано с ΠΏΠΎΡ‚Π΅Ρ€Π΅ΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, это Π½Π΅ всСгда Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΠΏΠΎΠ·Π°Π±ΠΎΡ‚ΠΈΡ‚ΡŒΡΡ ΠΎ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ свойства @code{'upstream-name}, ΠΊΠΎΠ³Π΄Π° это Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ @samp{guix import elm} Ρ€Π°Π±ΠΎΡ‚Π°Π» ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ (@pxref{Invoking guix import}). НаиболСС Π·Π°ΠΌΠ΅Ρ‚Π½Ρ‹ΠΌΠΈ сцСнариями, ΠΊΠΎΠ³Π΄Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ явно ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ имя upstream, ΡΠ²Π»ΡΡŽΡ‚ΡΡ:" #. type: enumerate #: guix-git/doc/contributing.texi:1660 msgid "When the @var{author} is @code{elm} and the @var{project} contains one or more hyphens, as with @code{elm/virtual-dom}; and" msgstr "Когда @var{author} являСтся @code{elm}, Π° @var{project} содСрТит ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ нСсколько дСфисов, ΠΊΠ°ΠΊ Π² случаС @code{elm/virtual-dom}; ΠΈ" #. type: enumerate #: guix-git/doc/contributing.texi:1667 msgid "When the @var{author} contains hyphens or uppercase letters, as with @code{Elm-Canvas/raster-shapes}---unless the @var{author} is @code{elm-explorations}, which is handled as a special case, so packages like @code{elm-explorations/markdown} do @emph{not} need to use the @code{'upstream-name} property." msgstr "Когда @var{author} содСрТит дСфисы ΠΈΠ»ΠΈ Π·Π°Π³Π»Π°Π²Π½Ρ‹Π΅ Π±ΡƒΠΊΠ²Ρ‹, ΠΊΠ°ΠΊ Π² @code{Elm-Canvas/raster-shapes}---Ссли @var{author} Π½Π΅ являСтся @code{elm-explorations}, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ обрабатываСтся ΠΊΠ°ΠΊ особый случай, поэтому Ρ‚Π°ΠΊΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ ΠΊΠ°ΠΊ @code{elm-explorations/markdown} Π½Π΅ @emph{not} Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ свойство @code{'upstream-name}." #. type: Plain text #: guix-git/doc/contributing.texi:1671 msgid "The module @code{(guix build-system elm)} provides the following utilities for working with names and related conventions:" msgstr "ΠœΠΎΠ΄ΡƒΠ»ΡŒ @code{(guix build-system elm)} прСдоставляСт ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ ΠΈ связанными с Π½ΠΈΠΌΠΈ соглашСниями:" #. type: deffn #: guix-git/doc/contributing.texi:1672 #, fuzzy, no-wrap #| msgid "{Scheme procedure} elm-package-origin @var{elm-name} @var{version} @" msgid "{Procedure} elm-package-origin @var{elm-name} @var{version} @" msgstr "{ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Scheme} elm-package-origin @var{elm-name} @var{version} @" #. type: deffn #: guix-git/doc/contributing.texi:1677 msgid "@var{hash} Returns a Git origin using the repository naming and tagging regime required for a published Elm package with the upstream name @var{elm-name} at version @var{version} with sha256 checksum @var{hash}." msgstr "@var{hash} Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Git origin ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ имСнования рСпозитория ΠΈ ΠΌΠ΅Ρ‚ΠΊΠΈ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚ Elm с ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ @var{elm-name} Π² вСрсии @var{version} с ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠΉ суммой sha256 @var{hash}." #. type: deffn #: guix-git/doc/contributing.texi:1679 guix-git/doc/guix.texi:37393 #: guix-git/doc/guix.texi:41598 msgid "For example:" msgstr "НапримСр:" #. type: lisp #: guix-git/doc/contributing.texi:1689 #, no-wrap msgid "" "(package\n" " (name \"elm-html\")\n" " (version \"1.0.0\")\n" " (source\n" " (elm-package-origin\n" " \"elm/html\"\n" " version\n" " (base32 \"15k1679ja57vvlpinpv06znmrxy09lbhzfkzdc89i01qa8c4gb4a\")))\n" " ...)\n" msgstr "" "(package\n" " (name \"elm-html\")\n" " (version \"1.0.0\")\n" " (source\n" " (elm-package-origin\n" " \"elm/html\"\n" " version\n" " (base32 \"15k1679ja57vvlpinpv06znmrxy09lbhzfkzdc89i01qa8c4gb4a\")))\n" " ...)\n" #. type: deffn #: guix-git/doc/contributing.texi:1692 #, fuzzy, no-wrap #| msgid "{Scheme procedure} elm->package-name @var{elm-name}" msgid "{Procedure} elm->package-name @var{elm-name}" msgstr "{ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Scheme} elm->package-name @var{elm-name}" #. type: deffn #: guix-git/doc/contributing.texi:1695 msgid "Returns the Guix-style package name for an Elm package with upstream name @var{elm-name}." msgstr "Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Π° Π² стилС Guix для Elm ΠΏΠ°ΠΊΠ΅Ρ‚Π° с ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ @var{elm-name}." #. type: deffn #: guix-git/doc/contributing.texi:1698 msgid "Note that there is more than one possible @var{elm-name} for which @code{elm->package-name} will produce a given result." msgstr "ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ сущСствуСт Π±ΠΎΠ»Π΅Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠ³ΠΎ @var{elm-name}, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ @code{elm->package-name} выдаст Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚." #. type: deffn #: guix-git/doc/contributing.texi:1700 #, fuzzy, no-wrap #| msgid "{Scheme procedure} guix-package->elm-name @var{package}" msgid "{Procedure} guix-package->elm-name @var{package}" msgstr "{ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Scheme} guix-package->elm-name @var{package}" #. type: deffn #: guix-git/doc/contributing.texi:1704 msgid "Given an Elm @var{package}, returns the possibly-inferred upstream name, or @code{#f} the upstream name is not specified via the @code{'upstream-name} property and can not be inferred by @code{infer-elm-package-name}." msgstr "ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠ² имя ΠΏΠ°ΠΊΠ΅Ρ‚Π° Elm @var{package}, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ (Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π²Π΅Π΄Π΅Π½Π½ΠΎΠ΅) ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠ΅ имя, ΠΈΠ»ΠΈ @code{#f}, Ссли ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠ΅ имя Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½ΠΎ Ρ‡Π΅Ρ€Π΅Π· свойство @code{'upstream-name} ΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Π²Π΅Π΄Π΅Π½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ @code{infer-elm-package-name}." #. type: deffn #: guix-git/doc/contributing.texi:1706 #, fuzzy, no-wrap #| msgid "{Scheme procedure} infer-elm-package-name @var{guix-name}" msgid "{Procedure} infer-elm-package-name @var{guix-name}" msgstr "{ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Scheme} infer-elm-package-name @var{guix-name}" #. type: deffn #: guix-git/doc/contributing.texi:1711 msgid "Given the @var{guix-name} of an Elm package, returns the inferred upstream name, or @code{#f} if the upstream name can't be inferred. If the result is not @code{#f}, supplying it to @code{elm->package-name} would produce @var{guix-name}." msgstr "ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠ² Ρ‡Π΅Ρ€Π΅Π· @var{guix-name} имя ΠΏΠ°ΠΊΠ΅Ρ‚Π° Elm, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π²Ρ‹Π²Π΅Π΄Π΅Π½Π½ΠΎΠ΅ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠ΅ имя, ΠΈΠ»ΠΈ @code{#f}, Ссли Π΅Π³ΠΎ вывСсти нСльзя. Если Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π½Π΅ @code{#f}, Ρ‚ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Π΅Π³ΠΎ Π² @code{elm->package-name} Π²Π΅Ρ€Π½Ρ‘Ρ‚ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ @var{guix-name}." #. type: cindex #: guix-git/doc/contributing.texi:1716 guix-git/doc/guix.texi:1822 #, no-wrap msgid "fonts" msgstr "ΡˆΡ€ΠΈΡ„Ρ‚Ρ‹" #. type: Plain text #: guix-git/doc/contributing.texi:1722 msgid "For fonts that are in general not installed by a user for typesetting purposes, or that are distributed as part of a larger software package, we rely on the general packaging rules for software; for instance, this applies to the fonts delivered as part of the X.Org system or fonts that are part of TeX Live." msgstr "Для ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π½Π΅ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ для ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ, ΠΈΠ»ΠΈ распространяСмыС ΠΊΠ°ΠΊ Ρ‡Π°ΡΡ‚ΡŒ большСго ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, ΠΌΡ‹ примСняСм ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° опакСчивания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. НапримСр, это относится ΠΊ ΡˆΡ€ΠΈΡ„Ρ‚Π°ΠΌ, поставляСмым ΠΊΠ°ΠΊ Ρ‡Π°ΡΡ‚ΡŒ систСмы X.Org, ΠΈΠ»ΠΈ ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ² TeX Live." #. type: Plain text #: guix-git/doc/contributing.texi:1726 msgid "To make it easier for a user to search for fonts, names for other packages containing only fonts are constructed as follows, independently of the upstream package name." msgstr "Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ поиск ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ², ΠΈΠΌΠ΅Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², содСрТащих Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡˆΡ€ΠΈΡ„Ρ‚Ρ‹, ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, нСзависимо ΠΎΡ‚ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Π°." #. type: Plain text #: guix-git/doc/contributing.texi:1734 msgid "The name of a package containing only one font family starts with @code{font-}; it is followed by the foundry name and a dash @code{-} if the foundry is known, and the font family name, in which spaces are replaced by dashes (and as usual, all upper case letters are transformed to lower case). For example, the Gentium font family by SIL is packaged under the name @code{font-sil-gentium}." msgstr "Имя ΠΏΠ°ΠΊΠ΅Ρ‚Π°, содСрТащСго Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½ΠΎ сСмСйство ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ², начинаСтся с @code{font-}; Π΄Π°Π»Π΅Π΅ ΠΈΠ΄Ρ‘Ρ‚ имя ΠΊΡƒΠ·Π½ΠΈΡ†Ρ‹ ΠΈ дСфис @code{-}, Ссли имя ΠΊΡƒΠ·Π½ΠΈΡ†Ρ‹ извСстно, Π° Π·Π°Ρ‚Π΅ΠΌ - имя сСмСйства ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ², Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ Π·Π°ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ дСфисами (ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ всС Π±ΡƒΠΊΠ²Ρ‹ Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ рСгистрС Π·Π°ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Π½Π° Π½ΠΈΠΆΠ½ΠΈΠΉ рСгистр). НапримСр, сСмСйство ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ² Gentium ΠΎΡ‚ SIL опакСчиваСтся ΠΏΠΎΠ΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ @code{font-sil-gentium}." #. type: Plain text #: guix-git/doc/contributing.texi:1743 msgid "For a package containing several font families, the name of the collection is used in the place of the font family name. For instance, the Liberation fonts consist of three families, Liberation Sans, Liberation Serif and Liberation Mono. These could be packaged separately under the names @code{font-liberation-sans} and so on; but as they are distributed together under a common name, we prefer to package them together as @code{font-liberation}." msgstr "ΠŸΠ°ΠΊΠ΅Ρ‚ с нСсколькими сСмСйствами ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ² ΠΈΠΌΠ΅Π΅Ρ‚ Π² Π½Π°Π·Π²Π°Π½ΠΈΠΈ имя ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ вмСсто ΠΈΠΌΠ΅Π½ΠΈ сСмСйства. НапримСр, ΡˆΡ€ΠΈΡ„Ρ‚Ρ‹ Liberation состоят ΠΈΠ· Ρ‚Ρ€Ρ‘Ρ… сСмСйств: Liberation Sans, Liberation Serfif ΠΈ Liberation Mono. Они ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹ ΠΎΠΏΠ°ΠΊΠ΅Ρ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ΄ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ @code{font-liberation-sans} ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅, Π½ΠΎ ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ΠΈ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡŽΡ‚ΡΡ вмСстС ΠΏΠΎΠ΄ ΠΎΠ±Ρ‰ΠΈΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ, ΠΌΡ‹ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌ ΠΎΠΏΠ°ΠΊΠ΅Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ ΠΈΡ… вмСстС ΠΊΠ°ΠΊ @code{font-liberation}." #. type: Plain text #: guix-git/doc/contributing.texi:1749 msgid "In the case where several formats of the same font family or font collection are packaged separately, a short form of the format, prepended by a dash, is added to the package name. We use @code{-ttf} for TrueType fonts, @code{-otf} for OpenType fonts and @code{-type1} for PostScript Type 1 fonts." msgstr "Π’ случаС, ΠΊΠΎΠ³Π΄Π° нСсколько Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ сСмСйства ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ² ΠΈΠ»ΠΈ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ² ΠΎΠΏΠ°ΠΊΠ΅Ρ‡Π΅Π½Ρ‹ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ, Π² ΠΈΠΌΠ΅Π½ΠΈ присутствуСт нСбольшая ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΊΠ° с ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΡΡŽΡ‰ΠΈΠΌ дСфисом. ΠœΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ @code{-ttf} для ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ² TrueType, @code{-otf} - для ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ² OpenType - ΠΈ @code{-type1} - для ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ² PostScript Type 1." #. type: Plain text #: guix-git/doc/contributing.texi:1757 msgid "In general our code follows the GNU Coding Standards (@pxref{Top,,, standards, GNU Coding Standards}). However, they do not say much about Scheme, so here are some additional rules." msgstr "Π’ основном наш ΠΊΠΎΠ΄ слСдуСт стандартам кодирования GNU (@pxref{Top,,, standards, GNU Coding Standards}). Они Π½Π΅ ΡΠΎΠΎΠ±Ρ‰Π°ΡŽΡ‚ ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΎ Scheme, поэтому Π²ΠΎΡ‚ нСсколько Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€Π°Π²ΠΈΠ»." #. type: subsection #: guix-git/doc/contributing.texi:1763 guix-git/doc/contributing.texi:1765 #: guix-git/doc/contributing.texi:1766 #, no-wrap msgid "Programming Paradigm" msgstr "ΠŸΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΠ° программирования" #. type: menuentry #: guix-git/doc/contributing.texi:1763 msgid "How to compose your elements." msgstr "Как ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Π°Ρ‚ΡŒ элСмСнты." #. type: subsection #: guix-git/doc/contributing.texi:1763 guix-git/doc/contributing.texi:1772 #: guix-git/doc/contributing.texi:1773 #, no-wrap msgid "Modules" msgstr "ΠœΠΎΠ΄ΡƒΠ»ΠΈ" #. type: menuentry #: guix-git/doc/contributing.texi:1763 msgid "Where to store your code?" msgstr "Π“Π΄Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ ваш ΠΊΠΎΠ΄?" #. type: subsection #: guix-git/doc/contributing.texi:1763 guix-git/doc/contributing.texi:1788 #: guix-git/doc/contributing.texi:1789 #, no-wrap msgid "Data Types and Pattern Matching" msgstr "Π’ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ поиск ΠΏΠΎ ΠΎΠ±Ρ€Π°Π·Ρ†Π°ΠΌ" #. type: menuentry #: guix-git/doc/contributing.texi:1763 msgid "Implementing data structures." msgstr "Π’ΠΎΠΏΠ»ΠΎΡ‰Π΅Π½ΠΈΠ΅ структур Π΄Π°Π½Π½Ρ‹Ρ…." #. type: subsection #: guix-git/doc/contributing.texi:1763 guix-git/doc/contributing.texi:1819 #: guix-git/doc/contributing.texi:1820 #, no-wrap msgid "Formatting Code" msgstr "Π€ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°" #. type: menuentry #: guix-git/doc/contributing.texi:1763 msgid "Writing conventions." msgstr "ΠšΠΎΠ½Π²Π΅Π½Ρ†ΠΈΠΈ написания." #. type: Plain text #: guix-git/doc/contributing.texi:1771 msgid "Scheme code in Guix is written in a purely functional style. One exception is code that involves input/output, and procedures that implement low-level concepts, such as the @code{memoize} procedure." msgstr "Код Scheme Π² Guix написан Π² чисто Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΌ стилС. Одно ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ - это ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ Π²Π²ΠΎΠ΄/Π²Ρ‹Π²ΠΎΠ΄ ΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹Π΅ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ, ΠΊΠ°ΠΊ, для ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°, ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° @code{memoize}." #. type: cindex #: guix-git/doc/contributing.texi:1774 #, fuzzy, no-wrap #| msgid "build users" msgid "build-side modules" msgstr "ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ сборки" #. type: cindex #: guix-git/doc/contributing.texi:1775 #, no-wrap msgid "host-side modules" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:1784 #, fuzzy #| msgid "Guile modules that are meant to be used on the builder side must live in the @code{(guix build @dots{})} name space. They must not refer to other Guix or GNU modules. However, it is OK for a ``host-side'' module to use a build-side module." msgid "Guile modules that are meant to be used on the builder side must live in the @code{(guix build @dots{})} name space. They must not refer to other Guix or GNU modules. However, it is OK for a ``host-side'' module to use a build-side module. As an example, the @code{(guix search-paths)} module should not be imported and used by a package since it isn't meant to be used as a ``build-side'' module. It would also couple the module with the package's dependency graph, which is undesirable." msgstr "ΠœΠΎΠ΄ΡƒΠ»ΠΈ Guile, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Π΅ для использования Π½Π° сторонС сборщика, Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΆΠΈΡ‚ΡŒ Π² пространствС ΠΈΠΌΡ‘Π½ @code{(guix build @dots{})}. Они Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΡΡ‹Π»Π°Ρ‚ΡŒΡΡ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ Guix ΠΈΠ»ΠΈ GNU. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ считаСтся Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ, Ссли ΠΌΠΎΠ΄ΡƒΠ»ΡŒ стороны ΡΠΎΠ±ΠΈΡ€Π°ΡŽΡ‰Π΅ΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ стороны сборщика." #. type: Plain text #: guix-git/doc/contributing.texi:1787 msgid "Modules that deal with the broader GNU system should be in the @code{(gnu @dots{})} name space rather than @code{(guix @dots{})}." msgstr "ΠœΠΎΠ΄ΡƒΠ»ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±Ρ€Π°Ρ‰Π°ΡŽΡ‚ΡΡ ΠΊ систСмС GNU Π² Π±ΠΎΠ»Π΅Π΅ ΡˆΠΈΡ€ΠΎΠΊΠΎΠΌ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠΈ, Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π² пространствС ΠΈΠΌΡ‘Π½ @code{(gnu @dots{})}, Π° Π½Π΅ @code{(guix @dots{})}." #. type: Plain text #: guix-git/doc/contributing.texi:1796 msgid "The tendency in classical Lisp is to use lists to represent everything, and then to browse them ``by hand'' using @code{car}, @code{cdr}, @code{cadr}, and co. There are several problems with that style, notably the fact that it is hard to read, error-prone, and a hindrance to proper type error reports." msgstr "Π’ классичСском LispΠ΅ Π΅ΡΡ‚ΡŒ ΡΠΊΠ»ΠΎΠ½Π½ΠΎΡΡ‚ΡŒ ΠΊ использованию списков для прСдставлСния Ρ‡Π΅Π³ΠΎ ΡƒΠ³ΠΎΠ΄Π½ΠΎ, Π° Π·Π°Ρ‚Π΅ΠΌ гуляния ΠΏΠΎ Π½ΠΈΠΌ \"Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ\", ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ @code{car}, @code{cdr}, @code{cadr} ΠΈ Ρ‚ΠΎΠΌΡƒ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅. Π’Π°ΠΊΠΎΠΉ ΡΡ‚ΠΈΠ»ΡŒ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ нСсколько ослоТнСний, Π° особСнно Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ тяТСло читаСтся, ΠΏΠΎΠ΄Π²Π΅Ρ€ΠΆΠ΅Π½ ошибкам, ΠΈ ΠΌΠ΅ΡˆΠ°Π΅Ρ‚ компилятору ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π½Π° ошибки Ρ‚ΠΈΠΏΠΎΠ²." #. type: findex #: guix-git/doc/contributing.texi:1797 #, no-wrap msgid "define-record-type*" msgstr "define-record-type*" #. type: findex #: guix-git/doc/contributing.texi:1798 #, no-wrap msgid "match-record" msgstr "match-record" #. type: cindex #: guix-git/doc/contributing.texi:1799 #, no-wrap msgid "pattern matching" msgstr "Поиск ΠΏΠΎ ΠΎΠ±Ρ€Π°Π·Ρ†Π°ΠΌ" #. type: Plain text #: guix-git/doc/contributing.texi:1807 msgid "Guix code should define appropriate data types (for instance, using @code{define-record-type*}) rather than abuse lists. In addition, it should use pattern matching, via Guile’s @code{(ice-9 match)} module, especially when matching lists (@pxref{Pattern Matching,,, guile, GNU Guile Reference Manual}); pattern matching for records is better done using @code{match-record} from @code{(guix records)}, which, unlike @code{match}, verifies field names at macro-expansion time." msgstr "Код Guix Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ подходящиС Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… (ΠΏΠΎΠ»ΡŒΠ·ΡƒΡΡΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, @code{define-record-type*}) вмСсто злоупотрСблСния списками. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ поиск ΠΏΠΎ ΠΎΠ±Ρ€Π°Π·Ρ†Π°ΠΌ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ модуля Guile @code{(ice-9 match)}, особСнно для поиска ΠΏΠΎ ΠΎΠ±Ρ€Π°Π·Ρ†Π°ΠΌ Π² списках (@pxref{Pattern Matching,,, guile, GNU Guile Reference Manual}); для поиска ΠΏΠΎ ΠΎΠ±Ρ€Π°Π·Ρ†Π°ΠΌ Π² записях Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ @code{match-record} ΠΈΠ· @code{(guix records)}, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ @code{match}, провСряСт названия ΠΏΠΎΠ»Π΅ΠΉ Π²ΠΎ врСмя Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ макросов." #. type: Plain text #: guix-git/doc/contributing.texi:1818 msgid "When defining a new record type, keep the @dfn{record type descriptor} (RTD) private (@pxref{Records,,, guile, GNU Guile Reference Manual}, for more on records and RTDs). As an example, the @code{(guix packages)} module defines @code{<package>} as the RTD for package records but it does not export it; instead, it exports a type predicate, a constructor, and field accessors. Exporting RTDs would make it harder to change the application binary interface (because code in other modules might be matching fields by position) and would make it trivial for users to forge records of that type, bypassing any checks we may have in the official constructor (such as ``field sanitizers'')." msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:1822 #, no-wrap msgid "formatting code" msgstr "Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°" #. type: cindex #: guix-git/doc/contributing.texi:1823 #, no-wrap msgid "coding style" msgstr "ΡΡ‚ΠΈΠ»ΡŒ кодирования" #. type: Plain text #: guix-git/doc/contributing.texi:1830 msgid "When writing Scheme code, we follow common wisdom among Scheme programmers. In general, we follow the @url{https://mumble.net/~campbell/scheme/style.txt, Riastradh's Lisp Style Rules}. This document happens to describe the conventions mostly used in Guile’s code too. It is very thoughtful and well written, so please do read it." msgstr "ΠŸΡ€ΠΈ написании ΠΊΠΎΠ΄Π° Π½Π° Scheme ΠΌΡ‹ полагаСмся Π½Π° ΠΏΡ€Π΅ΠΌΡƒΠ΄Ρ€ΠΎΡΡ‚ΡŒ, ΠΎΠ±Ρ‰Π΅ΠΏΡ€ΠΈΠ½ΡΡ‚ΡƒΡŽ срСди программистов Scheme. Π’ основном ΠΌΡ‹ слСдуСм @url{http://mumble.net/~campbell/scheme/style.txt, ΠŸΡ€Π°Π²ΠΈΠ»Π° лисповского стиля Riastradh}. Π­Ρ‚ΠΎΡ‚ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ содСрТит Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ соглашСний, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ часто Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ ΠΈ Π² исходном ΠΊΠΎΠ΄Π΅ Guile Ρ‚ΠΎΠΆΠ΅. Π­Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ продуманная ΠΈ Ρ…ΠΎΡ€ΠΎΡˆΠΎ написанная Ρ€Π°Π±ΠΎΡ‚Π°, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π½Π΅ ΠΏΠΎΠ»Π΅Π½ΠΈΡ‚Π΅ΡΡŒ Π΅Ρ‘ ΠΏΡ€ΠΎΡ‡Π΅ΡΡ‚ΡŒ." #. type: Plain text #: guix-git/doc/contributing.texi:1837 msgid "Some special forms introduced in Guix, such as the @code{substitute*} macro, have special indentation rules. These are defined in the @file{.dir-locals.el} file, which Emacs automatically uses. Also note that Emacs-Guix provides @code{guix-devel-mode} mode that indents and highlights Guix code properly (@pxref{Development,,, emacs-guix, The Emacs-Guix Reference Manual})." msgstr "НСкоторыС ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΠΎΡ€ΠΌΡ‹, прСдставлСнныС Π² Guix, ΠΊΠ°ΠΊ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, макрос @code{substitute*}, ΠΈΠΌΠ΅ΡŽΡ‚ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° отступов. Они ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ Π² Ρ„Π°ΠΉΠ»Π΅ @file{.dir-locals.el}, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Emacs ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ автоматичСски. Π’Π°ΠΊΠΆΠ΅ Π·Π°ΠΌΠ΅Ρ‚ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ Emacs-Guix прСдоставляСт Ρ€Π΅ΠΆΠΈΠΌ @code{guix-devel-mode}, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ вставляСт отступы ΠΈ подсвСчиваСт ΠΊΠΎΠ΄ Guix Π΄ΠΎΠ»ΠΆΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ (@pxref{Development,,, emacs-guix, The Emacs-Guix Reference Manual})." #. type: cindex #: guix-git/doc/contributing.texi:1838 #, no-wrap msgid "indentation, of code" msgstr "отступы, Π² ΠΊΠΎΠ΄Π΅" #. type: cindex #: guix-git/doc/contributing.texi:1839 #, no-wrap msgid "formatting, of code" msgstr "Π€ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, ΠΊΠΎΠ΄Π°" #. type: Plain text #: guix-git/doc/contributing.texi:1842 msgid "If you do not use Emacs, please make sure to let your editor knows these rules. To automatically indent a package definition, you can also run:" msgstr "Если Π²Ρ‹ Π½Π΅ ΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ΡΡŒ Emacs, поТалуйста ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ваш Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ Π·Π½Π°Π΅Ρ‚ эти ΠΏΡ€Π°Π²ΠΈΠ»Π°. Для автоматичСской расстановки отступов Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ:" #. type: example #: guix-git/doc/contributing.texi:1845 #, no-wrap msgid "./pre-inst-env guix style @var{package}\n" msgstr "./pre-inst-env guix style @var{package}\n" #. type: Plain text #: guix-git/doc/contributing.texi:1849 msgid "@xref{Invoking guix style}, for more information." msgstr "@xref{Invoking guix style} для Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ." #. type: Plain text #: guix-git/doc/contributing.texi:1853 msgid "We require all top-level procedures to carry a docstring. This requirement can be relaxed for simple private procedures in the @code{(guix build @dots{})} name space, though." msgstr "ΠœΡ‹ Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ всС ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ уровня содСрТали строку Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ, хотя это Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ для простых ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½Ρ‹Ρ… ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ Π² пространствС ΠΈΠΌΡ‘Π½ @code{(guix build @dots{})}." #. type: Plain text #: guix-git/doc/contributing.texi:1856 msgid "Procedures should not have more than four positional parameters. Use keyword parameters for procedures that take more than four parameters." msgstr "ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ Π½Π΅ Π±ΠΎΠ»Π΅Π΅ Ρ‡Π΅Ρ‚Ρ‹Ρ€Ρ‘Ρ… ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ². ΠŸΠ΅Ρ€Π΅Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΏΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ словам Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‚ Π±ΠΎΠ»Π΅Π΅ Ρ‡Π΅Ρ‚Ρ‹Ρ€Ρ‘Ρ… Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²." #. type: Plain text #: guix-git/doc/contributing.texi:1870 msgid "Development is done using the Git distributed version control system. Thus, access to the repository is not strictly necessary. We welcome contributions in the form of patches as produced by @code{git format-patch} sent to the @email{guix-patches@@gnu.org} mailing list (@pxref{Submitting patches to a project,,, git, Git User Manual}). Contributors are encouraged to take a moment to set some Git repository options (@pxref{Configuring Git}) first, which can improve the readability of patches. Seasoned Guix developers may also want to look at the section on commit access (@pxref{Commit Access})." msgstr "Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° проводится Π² систСмС управлСния вСрсиями Git. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, доступ ΠΊ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡŽ Π½Π΅ обязатСлСн. ΠœΡ‹ привСтствуСм Π²ΠΊΠ»Π°Π΄Ρ‹ Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Π² Π²ΠΈΠ΄Π΅ ΠΏΠ°Ρ‚Ρ‡Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ @code{git format-patch}, ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹Π΅ Π² рассылку @email{guix-patches@@gnu.org} (@pxref{Submitting patches to a project,,, git, Git User Manual}). Участникам рСкомСндуСтся ΠΏΠΎΡ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΏΠ°Ρ€Ρƒ ΠΌΠΈΠ½ΡƒΡ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ настройки рСпозитория Git (@pxref{Configuring Git}), Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ ΠΏΠ°Ρ‚Ρ‡Π΅ΠΉ. ΠžΠΏΡ‹Ρ‚Π½Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Guix, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Ρ‚Π°ΠΊΠΆΠ΅ захотят Π²Π·Π³Π»ΡΠ½ΡƒΡ‚ΡŒ Π½Π° Ρ€Π°Π·Π΄Π΅Π» ΠΎ доступС ΠΊ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°ΠΌ (@pxref{Commit Access})." #. type: Plain text #: guix-git/doc/contributing.texi:1877 #, fuzzy #| msgid "This mailing list is backed by a Debbugs instance, which allows us to keep track of submissions (@pxref{Tracking Bugs and Patches}). Each message sent to that mailing list gets a new tracking number assigned; people can then follow up on the submission by sending email to @code{@var{ISSUE_NUMBER}@@debbugs.gnu.org}, where @var{ISSUE_NUMBER} is the tracking number (@pxref{Sending a Patch Series})." msgid "This mailing list is backed by a Debbugs instance, which allows us to keep track of submissions (@pxref{Tracking Bugs and Changes}). Each message sent to that mailing list gets a new tracking number assigned; people can then follow up on the submission by sending email to @code{@var{ISSUE_NUMBER}@@debbugs.gnu.org}, where @var{ISSUE_NUMBER} is the tracking number (@pxref{Sending a Patch Series})." msgstr "Π­Ρ‚Π° рассылка Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ Debbugs, Ρ‡Ρ‚ΠΎ позволяСт Π½Π°ΠΌ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ присылаСмыС ΠΏΠ°Ρ‚Ρ‡ΠΈ (@pxref{Tracking Bugs and Patches}). ΠšΠ°ΠΆΠ΄ΠΎΠΌΡƒ ΡΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΡŽ, ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½Π½ΠΎΠΌΡƒ Π² эту рассылку, присваиваСтся Π½ΠΎΠ²Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€ Ρ‚Ρ€Π΅ΠΊΠΈΠ½Π³Π°. Π­Ρ‚ΠΎ позволяСт ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ ΠΎΠ±Ρ‰Π°Ρ‚ΡŒΡΡ ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌ ΠΏΠ°Ρ‚Ρ‡Π΅, отправляя элСктронныС письма Π½Π° адрСс @code{@var{ISSUE_NUMBER}@@debbugs.gnu.org}, Π³Π΄Π΅ @var{ISSUE_NUMBER} β€” это Π½ΠΎΠΌΠ΅Ρ€ Ρ‚Ρ€Π΅ΠΊΠΈΠ½Π³Π° (@pxref{Sending a Patch Series})." #. type: Plain text #: guix-git/doc/contributing.texi:1881 msgid "Please write commit logs in the ChangeLog format (@pxref{Change Logs,,, standards, GNU Coding Standards}); you can check the commit history for examples." msgstr "ΠŸΠΎΠΆΠ°Π»ΡƒΠΉΡΡ‚Π°, ΠΏΠΈΡˆΠΈΡ‚Π΅ Π»ΠΎΠ³ΠΈ ΠΊΠΎΠΌΠΌΠΈΡ‚Π° Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ ChangeLog (@pxref{Change Logs,,, standards, GNU Coding Standards}); для ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² заглянитС Π² ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ²." #. type: Plain text #: guix-git/doc/contributing.texi:1891 msgid "You can help make the review process more efficient, and increase the chance that your patch will be reviewed quickly, by describing the context of your patch and the impact you expect it to have. For example, if your patch is fixing something that is broken, describe the problem and how your patch fixes it. Tell us how you have tested your patch. Will users of the code changed by your patch have to adjust their workflow at all? If so, tell us how. In general, try to imagine what questions a reviewer will ask, and answer those questions in advance." msgstr "Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ процСсс рассмотрСния Π±ΠΎΠ»Π΅Π΅ эффСктивным ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ваш ΠΏΠ°Ρ‚Ρ‡ Π±ΡƒΠ΄Π΅Ρ‚ быстро рассмотрСн, описав контСкст вашСго ΠΏΠ°Ρ‚Ρ‡Π° ΠΈ влияниС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²Ρ‹ ΠΎΠΆΠΈΠ΄Π°Π΅Ρ‚Π΅ ΠΎΡ‚ Π½Π΅Π³ΠΎ. НапримСр, Ссли ваш ΠΏΠ°Ρ‚Ρ‡ исправляСт Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ сломанноС, ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ ΠΈ Ρ‚ΠΎ, ΠΊΠ°ΠΊ ваш ΠΏΠ°Ρ‚Ρ‡ Π΅Π΅ устраняСт. РасскаТитС, ΠΊΠ°ΠΊ Π²Ρ‹ протСстировали свой ΠΏΠ°Ρ‚Ρ‡. ΠŸΡ€ΠΈΠ΄Π΅Ρ‚ΡΡ Π»ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ ΠΊΠΎΠ΄Π°, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΠΎΠ³ΠΎ вашим ΠΏΠ°Ρ‚Ρ‡Π΅ΠΌ, Π²Π½ΠΎΡΠΈΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ измСнСния Π² свой Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ процСсс? Если Π΄Π°, расскаТитС, ΠΊΠ°ΠΊ. Π’ Ρ†Π΅Π»ΠΎΠΌ, ΠΏΠΎΡΡ‚Π°Ρ€Π°ΠΉΡ‚Π΅ΡΡŒ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ вопросы задаст Ρ€Π΅Ρ†Π΅Π½Π·Π΅Π½Ρ‚, ΠΈ ΠΎΡ‚Π²Π΅Ρ‚ΡŒΡ‚Π΅ Π½Π° Π½ΠΈΡ… Π·Π°Ρ€Π°Π½Π΅Π΅." #. type: Plain text #: guix-git/doc/contributing.texi:1894 msgid "Before submitting a patch that adds or modifies a package definition, please run through this check list:" msgstr "ΠŸΠ΅Ρ€Π΅Π΄ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΎΠΉ ΠΏΠ°Ρ‚Ρ‡Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ добавляСт ΠΈΠ»ΠΈ измСняСт описаниС ΠΏΠ°ΠΊΠ΅Ρ‚Π°, поТалуйста, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ:" #. type: enumerate #: guix-git/doc/contributing.texi:1901 msgid "If the authors of the packaged software provide a cryptographic signature for the release tarball, make an effort to verify the authenticity of the archive. For a detached GPG signature file this would be done with the @code{gpg --verify} command." msgstr "Если Π°Π²Ρ‚ΠΎΡ€Ρ‹ ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ подпись для Π°Ρ€Ρ…ΠΈΠ²Π° Ρ€Π΅Π»ΠΈΠ·Π°, Π½Π΅ ΠΏΠΎΠ»Π΅Π½ΠΈΡ‚Π΅ΡΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΠΎΡΡ‚ΡŒ Π°Ρ€Ρ…ΠΈΠ²Π°. Для Ρ„Π°ΠΉΠ»Π° ΠΎΡ‚Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠΉ GPG-подписи это ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ @code{gpg --verify}." #. type: enumerate #: guix-git/doc/contributing.texi:1905 msgid "Take some time to provide an adequate synopsis and description for the package. @xref{Synopses and Descriptions}, for some guidelines." msgstr "ΠŸΠΎΡ‚Ρ€Π°Ρ‚ΡŒΡ‚Π΅ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π°Π΄Π΅ΠΊΠ²Π°Ρ‚Π½ΠΎΠ΅ ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС ΠΈ ΠΏΠΎΠ»Π½ΠΎΠ΅ описаниС ΠΏΠ°ΠΊΠ΅Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ @xref{Synopses and Descriptions} для подробностСй." #. type: enumerate #: guix-git/doc/contributing.texi:1910 msgid "Run @command{guix lint @var{package}}, where @var{package} is the name of the new or modified package, and fix any errors it reports (@pxref{Invoking guix lint})." msgstr "ЗапуститС @command{guix lint @var{package}}, Π³Π΄Π΅ @var{package} - это имя Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Ρ‘Π½Π½ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Π°, ΠΈ устранитС Π»ΡŽΠ±Ρ‹Π΅ ошибки ΠΈΠ· ΠΎΡ‚Ρ‡Ρ‘Ρ‚Π° (@pxref{Invoking guix lint})." #. type: enumerate #: guix-git/doc/contributing.texi:1914 msgid "Run @command{guix style @var{package}} to format the new package definition according to the project's conventions (@pxref{Invoking guix style})." msgstr "ЗапуститС @command{guix style @var{package}} для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π½ΠΎΠ²ΠΎΠ³ΠΎ опрСдСлСния ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π² соотвСтствии с соглашСниями ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° (@pxref{Invoking guix style})." #. type: enumerate #: guix-git/doc/contributing.texi:1918 msgid "Make sure the package builds on your platform, using @command{guix build @var{package}}." msgstr "Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚ собираСтся Π½Π° вашСй ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ @command{guix build @var{package}}." #. type: enumerate #: guix-git/doc/contributing.texi:1926 msgid "We recommend you also try building the package on other supported platforms. As you may not have access to actual hardware platforms, we recommend using the @code{qemu-binfmt-service-type} to emulate them. In order to enable it, add the @code{virtualization} service module and the following service to the list of services in your @code{operating-system} configuration:" msgstr "ΠœΡ‹ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ Π²Π°ΠΌ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ…. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρƒ вас ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ Π±Ρ‹Ρ‚ΡŒ доступа ΠΊ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹ΠΌ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΌ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°ΠΌ, ΠΌΡ‹ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ @code{qemu-binfmt-service-type}, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ…. Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΡΠΌΡƒΠ»ΡΡ†ΠΈΡŽ, Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ сСрвиса @code{virtualization} ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ сСрвис Π² список сСрвисов @code{operating-system} Π² вашСй ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ:" #. type: lisp #: guix-git/doc/contributing.texi:1931 #, no-wrap msgid "" "(service qemu-binfmt-service-type\n" " (qemu-binfmt-configuration\n" " (platforms (lookup-qemu-platforms \"arm\" \"aarch64\"))))\n" msgstr "" "(service qemu-binfmt-service-type\n" " (qemu-binfmt-configuration\n" " (platforms (lookup-qemu-platforms \"arm\" \"aarch64\"))))\n" #. type: enumerate #: guix-git/doc/contributing.texi:1934 msgid "Then reconfigure your system." msgstr "ПослС этого запуститС ΠΏΠ΅Ρ€Π΅ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ систСмы." #. type: enumerate #: guix-git/doc/contributing.texi:1939 msgid "You can then build packages for different platforms by specifying the @code{--system} option. For example, to build the \"hello\" package for the armhf or aarch64 architectures, you would run the following commands, respectively:" msgstr "Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ ΠΏΠΎΠ΄ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡ΠΈΠ² ΠΎΠΏΡ†ΠΈΡŽ @code{--system}. НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ \"hello\" для Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ armhf, aarch64, ΠΈΠ»ΠΈ mips64 Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, соотвСтствСнно:" #. type: example #: guix-git/doc/contributing.texi:1942 #, no-wrap msgid "" "guix build --system=armhf-linux --rounds=2 hello\n" "guix build --system=aarch64-linux --rounds=2 hello\n" msgstr "" "guix build --system=armhf-linux --rounds=2 hello\n" "guix build --system=aarch64-linux --rounds=2 hello\n" #. type: cindex #: guix-git/doc/contributing.texi:1945 #, fuzzy, no-wrap msgid "bundling" msgstr "сборка" #. type: enumerate #: guix-git/doc/contributing.texi:1948 msgid "Make sure the package does not use bundled copies of software already available as separate packages." msgstr "Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ встроСнныС ΠΊΠΎΠΏΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΆΠ΅ доступны Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ°ΠΊΠ΅Ρ‚Π°Ρ…." #. type: enumerate #: guix-git/doc/contributing.texi:1957 msgid "Sometimes, packages include copies of the source code of their dependencies as a convenience for users. However, as a distribution, we want to make sure that such packages end up using the copy we already have in the distribution, if there is one. This improves resource usage (the dependency is built and stored only once), and allows the distribution to make transverse changes such as applying security updates for a given software package in a single place and have them affect the whole system---something that bundled copies prevent." msgstr "Иногда ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ ΠΊΠΎΠΏΠΈΠΈ исходных ΠΊΠΎΠ΄ΠΎΠ² своих зависимостСй, исходя ΠΈΠ· удобства для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ. Однако ΠΊΠ°ΠΊ дистрибутив, ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ Π² ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΌ ΠΈΡ‚ΠΎΠ³Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ копию, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΡ‹ ΡƒΠΆΠ΅ ΠΈΠΌΠ΅Π΅ΠΌ Π² дистрибутивС, Ссли таковая имССтся. Π­Ρ‚ΠΎ ΡƒΠ»ΡƒΡ‡ΡˆΠ°Π΅Ρ‚ использованиС рСсурсов (Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ собираСтся ΠΈ сохраняСтся лишь ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·) ΠΈ позволяСт дистрибутиву ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΏΠΎΠΏΠ΅Ρ€Π΅Ρ‡Π½Ρ‹Π΅ измСнСния, ΠΊΠ°ΠΊ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ бСзопасности для поставляСмого ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния Π² СдинствСнном мСстС, ΠΈ эти измСнСния Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ силу Π²ΠΎ всСй систСмС --- встроСнныС Π² ΠΏΠ°ΠΊΠ΅Ρ‚ ΠΊΠΎΠΏΠΈΠΈ этому ΠΌΠ΅ΡˆΠ°ΡŽΡ‚." #. type: enumerate #: guix-git/doc/contributing.texi:1966 #, fuzzy #| msgid "Take a look at the profile reported by @command{guix size} (@pxref{Invoking guix size}). This will allow you to notice references to other packages unwillingly retained. It may also help determine whether to split the package (@pxref{Packages with Multiple Outputs}), and which optional dependencies should be used. In particular, avoid adding @code{texlive} as a dependency: because of its extreme size, use the @code{texlive-tiny} package or @code{texlive-union} procedure instead." msgid "Take a look at the profile reported by @command{guix size} (@pxref{Invoking guix size}). This will allow you to notice references to other packages unwillingly retained. It may also help determine whether to split the package (@pxref{Packages with Multiple Outputs}), and which optional dependencies should be used. In particular, avoid adding @code{texlive} as a dependency: because of its extreme size, use @code{texlive-updmap.cfg} procedure instead." msgstr "ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ ΠΎΡ‚Ρ‡Π΅Ρ‚Ρ‹ @command{guix size} (@pxref{Invoking guix size}). Π­Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π½Π°ΠΉΡ‚ΠΈ связь с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌΠΈ, ΡΠΎΡ…Ρ€Π°Π½ΠΈΠ²ΡˆΡƒΡŽΡΡ Π±Π΅Π· нСобходимости. Π­Ρ‚ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ позволяСт Ρ€Π΅ΡˆΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ (@pxref{Packages with Multiple Outputs}) ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ зависимости. Π’ частности, это способ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ использованиС большого @code{texlive} ΠΊΠ°ΠΊ зависимости ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ @code{texlive-tiny} ΠΈΠ»ΠΈ @code{texlive-union} вмСсто Π½Π΅Π³ΠΎ." #. type: enumerate #: guix-git/doc/contributing.texi:1971 #, fuzzy #| msgid "For important changes, check that dependent packages (if applicable) are not affected by the change; @code{guix refresh --list-dependent @var{package}} will help you do that (@pxref{Invoking guix refresh})." msgid "Check that dependent packages (if applicable) are not affected by the change; @command{guix refresh --list-dependent @var{package}} will help you do that (@pxref{Invoking guix refresh})." msgstr "Для Π²Π°ΠΆΠ½Ρ‹Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ зависимости ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² (Ссли ΠΎΠ½ΠΈ Π΅ΡΡ‚ΡŒ) Π½Π΅ Π·Π°Ρ‚Ρ€ΠΎΠ½ΡƒΡ‚Ρ‹ измСнСниями. @code{guix refresh --list-dependent @var{package}} ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это (@pxref{Invoking guix refresh})." #. type: cindex #: guix-git/doc/contributing.texi:1973 #, no-wrap msgid "determinism, of build processes" msgstr "Π΄Π΅Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΈΠ·ΠΌ, процСсса сборки" #. type: cindex #: guix-git/doc/contributing.texi:1974 #, no-wrap msgid "reproducible builds, checking" msgstr "воспроизводимыС сорки, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°" #. type: enumerate #: guix-git/doc/contributing.texi:1978 msgid "Check whether the package's build process is deterministic. This typically means checking whether an independent build of the package yields the exact same result that you obtained, bit for bit." msgstr "ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, являСтся Π»ΠΈ процСсс сборки ΠΏΠ°ΠΊΠ΅Ρ‚Π° дСтСминистичСским. Π­Ρ‚ΠΎ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ нСзависимая сборка ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π²Ρ‹ располагаСтС, Π±ΠΈΡ‚ ΠΊ Π±ΠΈΡ‚Ρƒ." #. type: enumerate #: guix-git/doc/contributing.texi:1981 msgid "A simple way to do that is by building the same package several times in a row on your machine (@pxref{Invoking guix build}):" msgstr "ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ способ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ это - ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚ нСсколько Ρ€Π°Π· подряд Π½Π° вашСй машинС (@pxref{Invoking guix build}):" #. type: example #: guix-git/doc/contributing.texi:1984 #, no-wrap msgid "guix build --rounds=2 my-package\n" msgstr "guix build --rounds=2 my-package\n" #. type: enumerate #: guix-git/doc/contributing.texi:1988 msgid "This is enough to catch a class of common non-determinism issues, such as timestamps or randomly-generated output in the build result." msgstr "Π­Ρ‚ΠΎΠ³ΠΎ достаточно, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚Π»ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, Π½Π°Ρ€ΡƒΡˆΠ°ΡŽΡ‰ΠΈΡ… Π΄Π΅Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΈΠ·ΠΌ, ΠΊΠ°ΠΊ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΎΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚ΠΎΠΊ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈΠ»ΠΈ случайно Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ Π²Ρ‹Ρ…ΠΎΠ΄ Π½Π° Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ сборкС." #. type: enumerate #: guix-git/doc/contributing.texi:1998 msgid "Another option is to use @command{guix challenge} (@pxref{Invoking guix challenge}). You may run it once the package has been committed and built by @code{@value{SUBSTITUTE-SERVER-1}} to check whether it obtains the same result as you did. Better yet: Find another machine that can build it and run @command{guix publish}. Since the remote build machine is likely different from yours, this can catch non-determinism issues related to the hardware---e.g., use of different instruction set extensions---or to the operating system kernel---e.g., reliance on @code{uname} or @file{/proc} files." msgstr "Π”Ρ€ΡƒΠ³ΠΎΠΉ способ --- ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ @command{guix challenge} (@pxref{Invoking guix challenge}). МоТно Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ это ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠΌΠΌΠΈΡ‚ ΠΏΠ°ΠΊΠ΅Ρ‚Π° Π±Ρ‹Π» ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½, ΠΈ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ @code{@value{SUBSTITUTE-SERVER-1}}, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ это Π΄Π°Ρ‘Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅, ΠΊΠ°ΠΊ Ρƒ вас. Π•Ρ‰Ρ‘ Π»ΡƒΡ‡ΡˆΠ΅ Π½Π°ΠΉΡ‚ΠΈ Π΄Ρ€ΡƒΠ³ΡƒΡŽ ΠΌΠ°ΡˆΠΈΠ½Ρƒ, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ это ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ @command{guix publish}. Π’Π°ΠΊ ΠΊΠ°ΠΊ другая удалённая машина Π΄Π» сборки отличаСтся ΠΎΡ‚ вашСй, это ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΡΠ²ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, Π½Π°Ρ€ΡƒΡˆΠ°ΡŽΡ‰ΠΈΠ΅ Π΄Π΅Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΈΠ·ΠΌ, связанныС с Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΌ обСспСчСниСм, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π²Ρ‹Π·Π²Π°Π½Π½Ρ‹Π΅ использованиСм Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ ассСмблСра ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ ядра ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΠ°ΡΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Ρ„Π°ΠΉΠ»ΠΎΠ² @code{uname} ΠΈΠ»ΠΈ @file{/proc}." #. type: enumerate #: guix-git/doc/contributing.texi:2004 msgid "When writing documentation, please use gender-neutral wording when referring to people, such as @uref{https://en.wikipedia.org/wiki/Singular_they, singular ``they''@comma{} ``their''@comma{} ``them''}, and so forth." msgstr "ΠŸΡ€ΠΈ написании Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ, поТалуйста, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π½Π΅ΠΉΡ‚Ρ€Π°Π»ΡŒΠ½ΡƒΡŽ ΠΏΠΎ Π³Π΅Π½Π΄Π΅Ρ€Ρƒ лСксику, ΠΊΠΎΠ³Π΄Π° Ρ€Π΅Ρ‡ΡŒ ΠΈΠ΄Ρ‘Ρ‚ ΠΎ Π»ΡŽΠ΄ΡΡ…, ΠΊΠ°ΠΊ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‚ΡƒΡ‚ @uref{https://en.wikipedia.org/wiki/Singular_they, singular \"they\"@comma{} \"their\"@comma{} \"them\"} ΠΈ Ρ‚.Π΄." #. type: enumerate #: guix-git/doc/contributing.texi:2008 msgid "Verify that your patch contains only one set of related changes. Bundling unrelated changes together makes reviewing harder and slower." msgstr "ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ ваш ΠΏΠ°Ρ‚Ρ‡ содСрТит измСнСния, связанныС Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с ΠΎΠ΄Π½ΠΎΠΉ Ρ‚Π΅ΠΌΠΎΠΉ. Бвязывая вмСстС измСнСния, ΠΊΠ°ΡΠ°ΡŽΡ‰ΠΈΠ΅ΡΡ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ‚Π΅ΠΌ, Π΄Π΅Π»Π°Π΅Ρ‚ ΠΎΠ±Π·ΠΎΡ€ слоТным ΠΈ ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΌ." #. type: enumerate #: guix-git/doc/contributing.texi:2011 msgid "Examples of unrelated changes include the addition of several packages, or a package update along with fixes to that package." msgstr "ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ нСсвязанных ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚, Π² Ρ‚ΠΎΠΌ числС, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΈΠ»ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Π° вмСстС с исправлСниями Π² этом ΠΏΠ°ΠΊΠ΅Ρ‚Π΅." #. type: enumerate #: guix-git/doc/contributing.texi:2016 msgid "Please follow our code formatting rules, possibly running @command{guix style} script to do that automatically for you (@pxref{Formatting Code})." msgstr "ΠŸΠΎΠΆΠ°Π»ΡƒΠΉΡΡ‚Π°, слСдуйтС нашим ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ форматирования ΠΊΠΎΠ΄Π°, ΠΏΠΎ возмоТности запуская скрипт @command{guix style}, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ сдСлаСт это автоматичСски (@pxref{Formatting Code})." #. type: enumerate #: guix-git/doc/contributing.texi:2024 msgid "When possible, use mirrors in the source URL (@pxref{Invoking guix download}). Use reliable URLs, not generated ones. For instance, GitHub archives are not necessarily identical from one generation to the next, so in this case it's often better to clone the repository. Don't use the @code{name} field in the URL: it is not very useful and if the name changes, the URL will probably be wrong." msgstr "Если это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π·Π΅Ρ€ΠΊΠ°Π»Π° ΠΏΡ€ΠΈ ΡƒΠΊΠ°Π·Π°Π½ΠΈΠΈ URL исходников (@pxref{Invoking guix download}). Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π½Π°Π΄Ρ‘ΠΆΠ½Ρ‹Π΅ URL'Ρ‹, Π° Π½Π΅ сгСнСрированныС. НапримСр, Π°Ρ€Ρ…ΠΈΠ²Ρ‹ GitHub Π½Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ поколСниями, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π² этом случаС часто Π»ΡƒΡ‡ΡˆΠ΅ ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. НС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΏΠΎΠ»Π΅ @code{name} Π² URL, это Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎ: Ссли имя измСнится, Ρ‚ΠΎΠ³Π΄Π° URL Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΌ." #. type: enumerate #: guix-git/doc/contributing.texi:2028 msgid "Check if Guix builds (@pxref{Building from Git}) and address the warnings, especially those about use of undefined symbols." msgstr "ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, собираСтся Π»ΠΈ Guix (@pxref{Building from Git}), ΠΈ устранитС прСдупрСТдСния, особСнно Ρ‚Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠ°ΡΠ°ΡŽΡ‚ΡΡ использования Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… символов." #. type: enumerate #: guix-git/doc/contributing.texi:2032 msgid "Make sure your changes do not break Guix and simulate a @command{guix pull} with:" msgstr "Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ваши измСнСния Π½Π΅ Π»ΠΎΠΌΠ°ΡŽΡ‚ Guix ΠΈ ΠΈΠΌΠΈΡ‚ΠΈΡ€ΡƒΠΉΡ‚Π΅ @command{guix pull} Ρ‡Π΅Ρ€Π΅Π·:" #. type: example #: guix-git/doc/contributing.texi:2034 #, no-wrap msgid "guix pull --url=/path/to/your/checkout --profile=/tmp/guix.master\n" msgstr "guix pull --url=/path/to/your/checkout --profile=/tmp/guix.master\n" #. type: Plain text #: guix-git/doc/contributing.texi:2042 msgid "When posting a patch to the mailing list, use @samp{[PATCH] @dots{}} as a subject, if your patch is to be applied on a branch other than @code{master}, say @code{core-updates}, specify it in the subject like @samp{[PATCH core-updates] @dots{}}." msgstr "ΠŸΡ€ΠΈ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠ°Ρ‚Ρ‡Π° Π² рассылкС, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ @samp{[PATCH] @dots{}} Π² Ρ‚Π΅ΠΌΠ΅ письма. Если ваш ΠΏΠ°Ρ‚Ρ‡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Π½Ρ‘Π½ Π½Π° Π²Π΅Ρ‚ΠΊΠ΅ ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠΉ ΠΎΡ‚ @code{master}, допустим @code{core-updates}, ΡƒΠΊΠ°ΠΆΠΈΡ‚Π΅ Π΅Ρ‘ Π² Ρ‚Π΅ΠΌΠ΅ ΠΊΠ°ΠΊ @samp{[PATCH core-updates] @dots{}}." #. type: Plain text #: guix-git/doc/contributing.texi:2049 #, fuzzy #| msgid "You may use your email client or the @command{git send-email} command (@pxref{Sending a Patch Series}). We prefer to get patches in plain text messages, either inline or as MIME attachments. You are advised to pay attention if your email client changes anything like line breaks or indentation which could potentially break the patches." msgid "You may use your email client, the @command{git send-email} command (@pxref{Sending a Patch Series}) or the @command{mumi send-email} command (@pxref{Debbugs User Interfaces}). We prefer to get patches in plain text messages, either inline or as MIME attachments. You are advised to pay attention if your email client changes anything like line breaks or indentation which could potentially break the patches." msgstr "МоТно ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΠΎΡ‡Ρ‚ΠΎΠ²Ρ‹ΠΌ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ @command{git send-email} (@pxref{Sending a Patch Series}). ΠœΡ‹ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ ΠΏΠ°Ρ‚Ρ‡ΠΈ Π² Π²ΠΈΠ΄Π΅ простых тСкстовых сообщСний Π²Π½ΡƒΡ‚Ρ€ΠΈ тСкста ΠΈΠ»ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ Π²Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ MIME. РСкомСндуСтся ΡƒΠ΄Π΅Π»ΡΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ вопросу, Π½Π΅ измСняСт Π»ΠΈ ΠΏΠΎΡ‡Ρ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Ρ‡Ρ‚ΠΎ-Π»ΠΈΠ±ΠΎ ΠΊΠ°ΠΊ символы Π½ΠΎΠ²ΠΎΠΉ строки ΠΈΠ»ΠΈ отступы, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ это ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°Ρ€ΡƒΡˆΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ ΠΏΠ°Ρ‚Ρ‡Π°." #. type: Plain text #: guix-git/doc/contributing.texi:2054 msgid "Expect some delay when you submit your very first patch to @email{guix-patches@@gnu.org}. You have to wait until you get an acknowledgement with the assigned tracking number. Future acknowledgements should not be delayed." msgstr "Когда ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ свой самый ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΠ°Ρ‚Ρ‡ Π½Π° @email{guix-patches@@gnu.org}, ΠΎΠΆΠΈΠ΄Π°ΠΉΡ‚Π΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ. Π’Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΎΠΆΠ΄Π°Ρ‚ΡŒ, ΠΏΠΎΠΊΠ° Π²Ρ‹ Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅ с присвоСнным Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ отслСТивания. Π”Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠΈΠ΅ подтвСрТдСния Π½Π΅ слСдуСт ΠΎΡ‚ΠΊΠ»Π°Π΄Ρ‹Π²Π°Ρ‚ΡŒ." #. type: Plain text #: guix-git/doc/contributing.texi:2057 msgid "When a bug is resolved, please close the thread by sending an email to @email{@var{ISSUE_NUMBER}-done@@debbugs.gnu.org}." msgstr "Когда Π±Π°Π³ исправлСн, поТалуйста, Π·Π°ΠΊΡ€ΠΎΠΉΡ‚Π΅ Ρ‚Π΅ΠΌΡƒ, ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΠ² сообщСниС Π½Π° @email{@var{ISSUE_NUMBER}-done@@debbugs.gnu.org}." #. type: subsection #: guix-git/doc/contributing.texi:2061 guix-git/doc/contributing.texi:2063 #: guix-git/doc/contributing.texi:2064 #, no-wrap msgid "Configuring Git" msgstr "ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Git" #. type: subsection #: guix-git/doc/contributing.texi:2061 guix-git/doc/contributing.texi:2087 #: guix-git/doc/contributing.texi:2088 #, no-wrap msgid "Sending a Patch Series" msgstr "ΠžΡ‚ΠΏΡ€Π°Π²ΠΊΠ° ΠΏΠ°ΠΊΠ΅Ρ‚Π° исправлСний" #. type: cindex #: guix-git/doc/contributing.texi:2065 #, no-wrap msgid "git configuration" msgstr "ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Git" #. type: code{#1} #: guix-git/doc/contributing.texi:2066 guix-git/doc/contributing.texi:2091 #, no-wrap msgid "git format-patch" msgstr "git format-patch" #. type: code{#1} #: guix-git/doc/contributing.texi:2067 guix-git/doc/contributing.texi:2090 #, no-wrap msgid "git send-email" msgstr "git send-email" #. type: Plain text #: guix-git/doc/contributing.texi:2075 msgid "If you have not done so already, you may wish to set a name and email that will be associated with your commits (@pxref{telling git your name, , Telling Git your name, git, Git User Manual}). If you wish to use a different name or email just for commits in this repository, you can use @command{git config --local}, or edit @file{.git/config} in the repository instead of @file{~/.gitconfig}." msgstr "Если Π²Ρ‹ Π΅Ρ‰Ρ‘ этого Π½Π΅ сдСлали, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ имя ΠΈ адрСс элСктронной ΠΏΠΎΡ‡Ρ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ассоциированы с вашими ΠΊΠΎΠΌΠΌΠΈΡ‚Π°ΠΌΠΈ (@pxref{telling git your name, , Telling Git your name, git, Git User Manual}).\tЕсли Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠ΅ имя ΠΈΠ»ΠΈ ΠΏΠΎΡ‡Ρ‚Ρƒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² Π² этом Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ @command{git config --local} ΠΈΠ»ΠΈ ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ @file{.git/config} Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ вмСсто @file{~/.gitconfig}." #. type: cindex #: guix-git/doc/contributing.texi:2076 #, no-wrap msgid "commit-msg hook" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2086 msgid "Other important Git configuration will automatically be configured when building the project (@pxref{Building from Git}). A @file{.git/hooks/commit-msg} hook will be installed that embeds @samp{Change-Id} Git @emph{trailers} in your commit messages for traceability purposes. It is important to preserve these when editing your commit messages, particularly if a first version of your proposed changes was already submitted for review. If you have a @file{commit-msg} hook of your own you would like to use with Guix, you can place it under the @file{.git/hooks/commit-msg.d/} directory." msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:2089 #, no-wrap msgid "patch series" msgstr "Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΏΠ°Ρ‚Ρ‡Π΅ΠΉ" #. type: anchor{#1} #: guix-git/doc/contributing.texi:2093 guix-git/doc/contributing.texi:2100 #, no-wrap msgid "Single Patches" msgstr "ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹Π΅ ΠΏΠ°Ρ‚Ρ‡ΠΈ" #. type: Plain text #: guix-git/doc/contributing.texi:2100 msgid "The @command{git send-email} command is the best way to send both single patches and patch series (@pxref{Multiple Patches}) to the Guix mailing list. Sending patches as email attachments may make them difficult to review in some mail clients, and @command{git diff} does not store commit metadata." msgstr "Команда @command{git send-email} - Π»ΡƒΡ‡ΡˆΠΈΠΉ способ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ ΠΊΠ°ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ°Ρ‚Ρ‡Π΅ΠΉ, Ρ‚Π°ΠΊ ΠΈ сСрий ΠΏΠ°Ρ‚Ρ‡Π΅ΠΉ (@pxref{Multiple Patches}) Π² список рассылки Guix. ΠžΡ‚ΠΏΡ€Π°Π²ΠΊΠ° ΠΏΠ°Ρ‚Ρ‡Π΅ΠΉ Π² Π²ΠΈΠ΄Π΅ Π²Π»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΏΠΎ элСктронной ΠΏΠΎΡ‡Ρ‚Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Ρ‚Ρ€ΡƒΠ΄Π½ΠΈΡ‚ΡŒ ΠΈΡ… просмотр Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠΎΡ‡Ρ‚ΠΎΠ²Ρ‹Ρ… ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°Ρ…, Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° @command{git diff} Π½Π΅ Ρ…Ρ€Π°Π½ΠΈΡ‚ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ²." #. type: quotation #: guix-git/doc/contributing.texi:2104 msgid "The @command{git send-email} command is provided by the @code{send-email} output of the @code{git} package, i.e. @code{git:send-email}." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2111 msgid "The following command will create a patch email from the latest commit, open it in your @var{EDITOR} or @var{VISUAL} for editing, and send it to the Guix mailing list to be reviewed and merged. Assuming you have already configured Git according to @xref{Configuring Git}, you can simply use:" msgstr "Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° создаст письмо с ΠΏΠ°Ρ‚Ρ‡Π΅ΠΌ ΠΈΠ· послСднСго ΠΊΠΎΠΌΠΌΠΈΡ‚Π°, ΠΎΡ‚ΠΊΡ€ΠΎΠ΅Ρ‚ Π΅Π³ΠΎ Π² вашСм @var{EDITOR} ΠΈΠ»ΠΈ @var{VISUAL} для рСдактирования ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ Π΅Π³ΠΎ Π² список рассылки Guix для рассмотрСния ΠΈ объСдинСния. Если Π²Ρ‹ ΡƒΠΆΠ΅ настроили Git согласно @xref{ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Git}, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ просто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ:" #. type: example #: guix-git/doc/contributing.texi:2114 #, no-wrap msgid "$ git send-email --annotate -1\n" msgstr "$ git send-email --annotate -1\n" #. type: quotation #: guix-git/doc/contributing.texi:2116 guix-git/doc/guix.texi:10571 #: guix-git/doc/guix.texi:20578 guix-git/doc/guix.texi:20586 #: guix-git/doc/guix.texi:34841 #, fuzzy, no-wrap #| msgid "Top" msgid "Tip" msgstr "Top" #. type: quotation #: guix-git/doc/contributing.texi:2122 msgid "To add a prefix to the subject of your patch, you may use the @option{--subject-prefix} option. The Guix project uses this to specify that the patch is intended for a branch or repository other than the @code{master} branch of @url{https://git.savannah.gnu.org/cgit/guix.git}." msgstr "" #. type: example #: guix-git/doc/contributing.texi:2125 #, no-wrap msgid "git send-email --annotate --subject-prefix='PATCH core-updates' -1\n" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2132 msgid "The patch email contains a three-dash separator line after the commit message. You may ``annotate'' the patch with explanatory text by adding it under this line. If you do not wish to annotate the email, you may drop the @option{--annotate} option." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2139 msgid "If you need to send a revised patch, don't resend it like this or send a ``fix'' patch to be applied on top of the last one; instead, use @command{git commit --amend} or @url{https://git-rebase.io, @command{git rebase}} to modify the commit, and use the @email{@var{ISSUE_NUMBER}@@debbugs.gnu.org} address and the @option{-v} flag with @command{git send-email}." msgstr "" #. type: example #: guix-git/doc/contributing.texi:2144 #, no-wrap msgid "" "$ git commit --amend\n" "$ git send-email --annotate -v@var{REVISION} \\\n" " --to=@var{ISSUE_NUMBER}@@debbugs.gnu.org -1\n" msgstr "" #. type: quotation #: guix-git/doc/contributing.texi:2150 msgid "Due to an apparent bug in @command{git send-email}, @option{-v @var{REVISION}} (with the space) will not work; you @emph{must} use @option{-v@var{REVISION}}." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2156 msgid "You can find out @var{ISSUE_NUMBER} either by searching on the mumi interface at @url{https://issues.guix.gnu.org} for the name of your patch or reading the acknowledgement email sent automatically by Debbugs in reply to incoming bugs and patches, which contains the bug number." msgstr "" #. type: anchor{#1} #: guix-git/doc/contributing.texi:2157 guix-git/doc/contributing.texi:2159 #, no-wrap msgid "Notifying Teams" msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:2159 guix-git/doc/contributing.texi:2635 #, no-wrap msgid "teams" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2168 msgid "If your git checkout has been correctly configured (@pxref{Configuring Git}), the @command{git send-email} command will automatically notify the appropriate team members, based on the scope of your changes. This relies on the @file{etc/teams.scm} script, which can also be invoked manually if you do not use the preferred @command{git send-email} command to submit patches. To list the available actions of the script, you can invoke it via the @command{etc/teams.scm help} command. For more information regarding teams, @pxref{Teams}." msgstr "" #. type: quotation #: guix-git/doc/contributing.texi:2172 msgid "On foreign distros, you might have to use @command{./pre-inst-env git send-email} for @file{etc/teams.scm} to work." msgstr "" #. type: anchor{#1} #: guix-git/doc/contributing.texi:2174 guix-git/doc/contributing.texi:2176 #, fuzzy, no-wrap #| msgid "Submitting Patches" msgid "Multiple Patches" msgstr "ΠžΡ‚ΠΏΡ€Π°Π²ΠΊΠ° исправлСний" #. type: cindex #: guix-git/doc/contributing.texi:2176 #, no-wrap msgid "cover letter" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2182 msgid "While @command{git send-email} alone will suffice for a single patch, an unfortunate flaw in Debbugs means you need to be more careful when sending multiple patches: if you send them all to the @email{guix-patches@@gnu.org} address, a new issue will be created for each patch!" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2188 msgid "When sending a series of patches, it's best to send a Git ``cover letter'' first, to give reviewers an overview of the patch series. We can create a directory called @file{outgoing} containing both our patch series and a cover letter called @file{0000-cover-letter.patch} with @command{git format-patch}." msgstr "" #. type: example #: guix-git/doc/contributing.texi:2192 #, no-wrap msgid "" "$ git format-patch -@var{NUMBER_COMMITS} -o outgoing \\\n" " --cover-letter --base=auto\n" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2197 msgid "We can now send @emph{just} the cover letter to the @email{guix-patches@@gnu.org} address, which will create an issue that we can send the rest of the patches to." msgstr "" #. type: example #: guix-git/doc/contributing.texi:2201 #, no-wrap msgid "" "$ git send-email outgoing/0000-cover-letter.patch --annotate\n" "$ rm outgoing/0000-cover-letter.patch # we don't want to resend it!\n" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2206 msgid "Ensure you edit the email to add an appropriate subject line and blurb before sending it. Note the automatically generated shortlog and diffstat below the blurb." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2209 msgid "Once the Debbugs mailer has replied to your cover letter email, you can send the actual patches to the newly-created issue address." msgstr "" #. type: example #: guix-git/doc/contributing.texi:2213 #, no-wrap msgid "" "$ git send-email outgoing/*.patch --to=@var{ISSUE_NUMBER}@@debbugs.gnu.org\n" "$ rm -rf outgoing # we don't need these anymore\n" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2218 msgid "Thankfully, this @command{git format-patch} dance is not necessary to send an amended patch series, since an issue already exists for the patchset." msgstr "" #. type: example #: guix-git/doc/contributing.texi:2222 #, no-wrap msgid "" "$ git send-email -@var{NUMBER_COMMITS} -v@var{REVISION} \\\n" " --to=@var{ISSUE_NUMBER}@@debbugs.gnu.org\n" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2227 msgid "If need be, you may use @option{--cover-letter --annotate} to send another cover letter, e.g. for explaining what's changed since the last revision, and these changes are necessary." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2233 msgid "This section describes how the Guix project tracks its bug reports, patch submissions and topic branches." msgstr "" #. type: subsection #: guix-git/doc/contributing.texi:2240 guix-git/doc/contributing.texi:2242 #: guix-git/doc/contributing.texi:2243 #, no-wrap msgid "The Issue Tracker" msgstr "" #. type: menuentry #: guix-git/doc/contributing.texi:2240 msgid "The official bug and patch tracker." msgstr "" #. type: subsection #: guix-git/doc/contributing.texi:2240 guix-git/doc/contributing.texi:2256 #: guix-git/doc/contributing.texi:2257 #, no-wrap msgid "Managing Patches and Branches" msgstr "" #. type: menuentry #: guix-git/doc/contributing.texi:2240 msgid "How changes to Guix are managed." msgstr "" #. type: subsection #: guix-git/doc/contributing.texi:2240 guix-git/doc/contributing.texi:2350 #: guix-git/doc/contributing.texi:2351 #, fuzzy, no-wrap #| msgid "user interfaces" msgid "Debbugs User Interfaces" msgstr "ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ интСрфСйсы" #. type: menuentry #: guix-git/doc/contributing.texi:2240 msgid "Ways to interact with Debbugs." msgstr "" #. type: subsection #: guix-git/doc/contributing.texi:2240 guix-git/doc/contributing.texi:2539 #: guix-git/doc/contributing.texi:2540 #, fuzzy, no-wrap #| msgid "Debbugs, issue tracking system" msgid "Debbugs Usertags" msgstr "Debbugs, систСма отслСТивания ошибок" #. type: menuentry #: guix-git/doc/contributing.texi:2240 msgid "Tag reports with custom labels." msgstr "" #. type: subsection #: guix-git/doc/contributing.texi:2240 guix-git/doc/contributing.texi:2596 #: guix-git/doc/contributing.texi:2597 #, no-wrap msgid "Cuirass Build Notifications" msgstr "" #. type: menuentry #: guix-git/doc/contributing.texi:2240 msgid "Be alerted of any breakage via RSS feeds." msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:2245 #, no-wrap msgid "bug reports, tracking" msgstr "сообщСния ΠΎΠ± ошибкС, отслСТиваниС" #. type: cindex #: guix-git/doc/contributing.texi:2246 #, no-wrap msgid "patch submissions, tracking" msgstr "ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ° ΠΏΠ°Ρ‚Ρ‡Π°, отслСТиваниС" #. type: cindex #: guix-git/doc/contributing.texi:2247 #, no-wrap msgid "issue tracking" msgstr "отслСТиваниС заявок ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ…" #. type: cindex #: guix-git/doc/contributing.texi:2248 #, no-wrap msgid "Debbugs, issue tracking system" msgstr "Debbugs, систСма отслСТивания ошибок" #. type: Plain text #: guix-git/doc/contributing.texi:2255 msgid "Bug reports and patch submissions are currently tracked using the Debbugs instance at @uref{https://bugs.gnu.org}. Bug reports are filed against the @code{guix} ``package'' (in Debbugs parlance), by sending email to @email{bug-guix@@gnu.org}, while patch submissions are filed against the @code{guix-patches} package by sending email to @email{guix-patches@@gnu.org} (@pxref{Submitting Patches})." msgstr "ΠžΡ‚Ρ‡Ρ‘Ρ‚Ρ‹ ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ… ΠΈ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ исправлСния сСйчас ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Debbugs Π½Π° Π²Π΅Π±-сайтС @uref{https://bugs.gnu.org}. ΠžΡ‚Ρ‡Ρ‘Ρ‚Ρ‹ ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ…, относящиСся ΠΊ ΠΏΠ°ΠΊΠ΅Ρ‚Ρƒ @code{guix} (Π½Π° языкС Debbugs), отправляйтС ΠΏΠΎ адрСсу @email{bug-guix@@gnu.org}, Π° ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌΡ‹Π΅ исправлСния для ΠΏΠ°ΠΊΠ΅Ρ‚Π° @code{guix-patches} β€” ΠΏΠΎ адрСсу @email{guix-patches@@gnu.org} (@pxref{Submitting Patches})." #. type: cindex #: guix-git/doc/contributing.texi:2258 #, no-wrap msgid "branching strategy" msgstr "стратСгия вСтвлСния" #. type: cindex #: guix-git/doc/contributing.texi:2259 #, no-wrap msgid "rebuild scheduling strategy" msgstr "стратСгия планирования пСрСсборки" #. type: Plain text #: guix-git/doc/contributing.texi:2268 msgid "Changes should be posted to @email{guix-patches@@gnu.org}. This mailing list fills the patch-tracking database (@pxref{The Issue Tracker}). It also allows patches to be picked up and tested by the quality assurance tooling; the result of that testing eventually shows up on the dashboard at @indicateurl{https://qa.guix.gnu.org/issue/@var{ISSUE_NUMBER}}, where @var{ISSUE_NUMBER} is the number assigned by the issue tracker. Leave time for a review, without committing anything." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2274 #, fuzzy #| msgid "That last part is subject to being adjusted, allowing individuals to commit directly on non-controversial changes on parts they’re familiar with." msgid "As an exception, some changes considered ``trivial'' or ``obvious'' may be pushed directly to the @code{master} branch. This includes changes to fix typos and reverting commits that caused immediate problems. This is subject to being adjusted, allowing individuals to commit directly on non-controversial changes on parts they’re familiar with." msgstr "Π­Ρ‚Π° послСдняя Ρ‡Π°ΡΡ‚ΡŒ ΠΏΠΎΠ΄Π»Π΅ΠΆΠΈΡ‚ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²ΠΊΠ΅, Ρ‡Ρ‚ΠΎ позволяСт ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ Π»ΠΈΡ†Π°ΠΌ Π²Π½ΠΎΡΠΈΡ‚ΡŒ нСпосрСдствСнныС измСнСния Π² Π½Π΅ ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΡ€Π΅Ρ‡ΠΈΠ²Ρ‹Π΅ измСнСния Π² Ρ‚Π΅Ρ… частях, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΎΠ½ΠΈ Π·Π½Π°ΠΊΠΎΠΌΡ‹." #. type: Plain text #: guix-git/doc/contributing.texi:2282 msgid "Changes which affect more than 300 dependent packages (@pxref{Invoking guix refresh}) should first be pushed to a topic branch other than @code{master}; the set of changes should be consistent---e.g., ``GNOME update'', ``NumPy update'', etc. This allows for testing: the branch will automatically show up at @indicateurl{https://qa.guix.gnu.org/branch/@var{branch}}, with an indication of its build status on various platforms." msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:2283 #, no-wrap msgid "feature branches, coordination" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2288 msgid "To help coordinate the merging of branches, you must create a new guix-patches issue each time you create a branch (@pxref{The Issue Tracker}). The title of the issue requesting to merge a branch should have the following format:" msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:2289 #, no-wrap msgid "merge requests, template" msgstr "" #. type: example #: guix-git/doc/contributing.texi:2292 #, no-wrap msgid "Request for merging \"@var{name}\" branch\n" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2297 msgid "The @url{https://qa.guix.gnu.org/, QA infrastructure} recognizes such issues and lists the merge requests on its main page. The following points apply to managing these branches:" msgstr "" #. type: enumerate #: guix-git/doc/contributing.texi:2303 msgid "The commits on the branch should be a combination of the patches relevant to the branch. Patches not related to the topic of the branch should go elsewhere." msgstr "" #. type: enumerate #: guix-git/doc/contributing.texi:2308 msgid "Any changes that can be made on the master branch, should be made on the master branch. If a commit can be split to apply part of the changes on master, this is good to do." msgstr "" #. type: enumerate #: guix-git/doc/contributing.texi:2312 msgid "It should be possible to re-create the branch by starting from master and applying the relevant patches." msgstr "" #. type: enumerate #: guix-git/doc/contributing.texi:2316 msgid "Avoid merging master in to the branch. Prefer rebasing or re-creating the branch on top of an updated master revision." msgstr "" #. type: enumerate #: guix-git/doc/contributing.texi:2321 msgid "Minimise the changes on master that are missing on the branch prior to merging the branch in to master. This means that the state of the branch better reflects the state of master should the branch be merged." msgstr "" #. type: enumerate #: guix-git/doc/contributing.texi:2326 msgid "If you don't have commit access, create the ``Request for merging'' issue and request that someone creates the branch. Include a list of issues/patches to include on the branch." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2340 msgid "Normally branches will be merged in a ``first come, first merged'' manner, tracked through the guix-patches issues. If you agree on a different order with those involved, you can track this by updating which issues block@footnote{You can mark an issue as blocked by another by emailing @email{control@@debbugs.gnu.org} with the following line in the body of the email: @code{block XXXXX by YYYYY}. Where @code{XXXXX} is the number for the blocked issue, and @code{YYYYY} is the number for the issue blocking it.} which other issues. Therefore, to know which branch is at the front of the queue, look for the oldest issue, or the issue that isn't @dfn{blocked} by any other branch merges. An ordered list of branches with the open issues is available at @url{https://qa.guix.gnu.org}." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2346 msgid "Once a branch is at the front of the queue, wait until sufficient time has passed for the build farms to have processed the changes, and for the necessary testing to have happened. For example, you can check @indicateurl{https://qa.guix.gnu.org/branch/@var{branch}} to see information on some builds and substitute availability." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2349 msgid "Once the branch has been merged, the issue should be closed and the branch deleted." msgstr "" #. type: subsubsection #: guix-git/doc/contributing.texi:2353 #, fuzzy, no-wrap #| msgid "user interfaces" msgid "Web interface" msgstr "ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ интСрфСйсы" #. type: cindex #: guix-git/doc/contributing.texi:2355 #, fuzzy, no-wrap #| msgid "Mumi, Debbugs Web interface" msgid "mumi, web interface for issues" msgstr "ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ интСрфСйсы" #. type: Plain text #: guix-git/doc/contributing.texi:2358 msgid "A web interface (actually @emph{two} web interfaces!) are available to browse issues:" msgstr "Для просмотра вопросов доступСн Π²Π΅Π±-интСрфСйс (Π½Π° самом Π΄Π΅Π»Π΅ Π΄Π°ΠΆΠ΅ @emph{Π΄Π²Π°} Π²Π΅Π±-интСрфСйса):" #. type: itemize #: guix-git/doc/contributing.texi:2367 #, fuzzy #| msgid "@url{https://issues.guix.gnu.org} provides a pleasant interface@footnote{The web interface at @url{https://issues.guix.gnu.org} is powered by Mumi, a nice piece of software written in Guile, and you can help! See @url{https://git.elephly.net/gitweb.cgi?p=software/mumi.git}.} to browse bug reports and patches, and to participate in discussions;" msgid "@url{https://issues.guix.gnu.org} provides a pleasant interface powered by mumi@footnote{Mumi is a nice piece of software written in Guile, and you can help! See @url{https://git.savannah.gnu.org/cgit/guix/mumi.git}.} to browse bug reports and patches, and to participate in discussions; mumi also has a command-line interface as we will see below;" msgstr "@url{https://issues.guix.gnu.org} прСдоставляСт приятный интСрфСйс@footnote{Π’Π΅Π±-интСрфСйс ΠΏΠΎ адрСсу @url{https://issues.guix.gnu.org} Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π° Mumi, прятном ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, написанного Π½Π° Guile, ΠΈ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠΌΠΎΡ‡ΡŒ! Π‘ΠΌ.@url{https://git.elephly.net/gitweb.cgi?p=software/mumi.git}.} Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΠΎΡ‚Ρ‡Π΅Ρ‚Ρ‹ ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ… ΠΈ исправлСниях, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΡ‡Π°ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² обсуТдСниях;" #. type: itemize #: guix-git/doc/contributing.texi:2369 msgid "@url{https://bugs.gnu.org/guix} lists bug reports;" msgstr "@url{https://gnupg.org/, GNU libgcrypt} списки ΠΎΡ‚Ρ‡Ρ‘Ρ‚ΠΎΠ² ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ…;" #. type: itemize #: guix-git/doc/contributing.texi:2371 msgid "@url{https://bugs.gnu.org/guix-patches} lists patch submissions." msgstr "@url{https://bugs.gnu.org/guix-patches} списки ΠΏΠ°Ρ‚Ρ‡Π΅ΠΉ Π½Π° рассмотрСнии." #. type: Plain text #: guix-git/doc/contributing.texi:2376 msgid "To view discussions related to issue number @var{n}, go to @indicateurl{https://issues.guix.gnu.org/@var{n}} or @indicateurl{https://bugs.gnu.org/@var{n}}." msgstr "Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ обсуТдСния, связанныС с Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ @var{n}, ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π½Π° @indicateurl{https://issues.guix.gnu.org/@var{n}} ΠΈΠ»ΠΈ @indicateurl{https://bugs.gnu.org/@var{n}}." #. type: subsubsection #: guix-git/doc/contributing.texi:2377 #, fuzzy, no-wrap #| msgid "Programming Interface" msgid "Command-Line Interface" msgstr "ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ интСрфСйс" #. type: cindex #: guix-git/doc/contributing.texi:2379 #, fuzzy, no-wrap #| msgid "Programming Interface" msgid "mumi command-line interface" msgstr "ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ интСрфСйс" #. type: cindex #: guix-git/doc/contributing.texi:2380 #, no-wrap msgid "mumi am" msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:2381 #, no-wrap msgid "mumi compose" msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:2382 #, fuzzy, no-wrap #| msgid "git send-email" msgid "mumi send-email" msgstr "git send-email" #. type: cindex #: guix-git/doc/contributing.texi:2383 #, no-wrap msgid "mumi www" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2388 msgid "Mumi also comes with a command-line interface that can be used to search existing issues, open new issues, compose replies, apply and send patches. You do not need to use Emacs to use the mumi command-line client. You interact with it only on the command-line." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2392 msgid "To use the mumi command-line interface, navigate to a local clone of the Guix git repository, and drop into a shell with mumi, git and git:send-email installed." msgstr "" #. type: example #: guix-git/doc/contributing.texi:2396 #, no-wrap msgid "" "$ cd guix\n" "~/guix$ guix shell mumi git git:send-email\n" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2399 msgid "To search for issues, say all open issues about \"zig\", run" msgstr "" #. type: example #: guix-git/doc/contributing.texi:2402 #, no-wrap msgid "" "~/guix [env]$ mumi search zig is:open\n" "\n" msgstr "" #. type: example #: guix-git/doc/contributing.texi:2413 #, no-wrap msgid "" "#60889 Add zig-build-system\n" "opened on 17 Jan 17:37 Z by Ekaitz Zarraga\n" "#61036 [PATCH 0/3] Update zig to 0.10.1\n" "opened on 24 Jan 09:42 Z by Efraim Flashner\n" "#39136 [PATCH] gnu: services: Add endlessh.\n" "opened on 14 Jan 2020 21:21 by Nicol? Balzarotti\n" "#60424 [PATCH] gnu: Add python-online-judge-tools\n" "opened on 30 Dec 2022 07:03 by gemmaro\n" "#45601 [PATCH 0/6] vlang 0.2 update\n" "opened on 1 Jan 2021 19:23 by Ryan Prior\n" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2416 msgid "Pick an issue and make it the \"current\" issue." msgstr "" #. type: example #: guix-git/doc/contributing.texi:2419 #, no-wrap msgid "" "~/guix [env]$ mumi current 61036\n" "\n" msgstr "" #. type: example #: guix-git/doc/contributing.texi:2422 #, no-wrap msgid "" "#61036 [PATCH 0/3] Update zig to 0.10.1\n" "opened on 24 Jan 09:42 Z by Efraim Flashner\n" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2427 msgid "Once an issue is the current issue, you can open the issue in a web browser, compose replies, apply patches, send patches, etc. with short succinct commands." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2429 msgid "Open the issue in your web browser using" msgstr "" #. type: example #: guix-git/doc/contributing.texi:2432 #, no-wrap msgid "~/guix [env]$ mumi www\n" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2435 msgid "Compose a reply using" msgstr "" #. type: example #: guix-git/doc/contributing.texi:2438 #, no-wrap msgid "~/guix [env]$ mumi compose\n" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2441 msgid "Compose a reply and close the issue using" msgstr "" #. type: example #: guix-git/doc/contributing.texi:2444 #, no-wrap msgid "~/guix [env]$ mumi compose --close\n" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2449 msgid "@command{mumi compose} opens your mail client by passing @samp{mailto:} URIs to @command{xdg-open}. So, you need to have @command{xdg-open} set up to open your mail client correctly." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2451 msgid "Apply the latest patchset from the issue using" msgstr "" #. type: example #: guix-git/doc/contributing.texi:2454 #, no-wrap msgid "~/guix [env]$ mumi am\n" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2457 msgid "You may also apply a patchset of a specific version (say, v3) using" msgstr "" #. type: example #: guix-git/doc/contributing.texi:2460 #, no-wrap msgid "~/guix [env]$ mumi am v3\n" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2465 msgid "Or, you may apply a patch from a specific e-mail message. For example, to apply the patch from the 4th message (message index starts from 0), run" msgstr "" #. type: example #: guix-git/doc/contributing.texi:2468 #, no-wrap msgid "~/guix [env]$ mumi am @@4\n" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2473 msgid "@command{mumi am} is a wrapper around @command{git am}. You can pass @command{git am} arguments to it after a @samp{--}. For example, to add a Signed-off-by trailer, run" msgstr "" #. type: example #: guix-git/doc/contributing.texi:2476 #, no-wrap msgid "~/guix [env]$ mumi am -- -s\n" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2479 msgid "Create and send patches to the issue using" msgstr "" #. type: example #: guix-git/doc/contributing.texi:2483 #, no-wrap msgid "" "~/guix [env]$ git format-patch origin/master\n" "~/guix [env]$ mumi send-email foo.patch bar.patch\n" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2488 msgid "Note that you do not have to pass in @samp{--to} or @samp{--cc} arguments to @command{git format-patch}. @command{mumi send-email} will put them in correctly when sending the patches." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2490 msgid "To open a new issue, run" msgstr "" #. type: example #: guix-git/doc/contributing.texi:2493 #, no-wrap msgid "~/guix [env]$ mumi new\n" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2497 msgid "and send an email (using @command{mumi compose}) or patches (using @command{mumi send-email})." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2503 msgid "@command{mumi send-email} is really a wrapper around @command{git send-email} that automates away all the nitty-gritty of sending patches. It uses the current issue state to automatically figure out the correct @samp{To} address to send to, other participants to @samp{Cc}, headers to add, etc." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2511 msgid "Also note that, unlike @command{git send-email}, @command{mumi send-email} works perfectly well with single and multiple patches alike. It automates away the debbugs dance of sending the first patch, waiting for a response from debbugs and sending the remaining patches. It does so by sending the first patch, polling the server for a response, and then sending the remaining patches. This polling can unfortunately take a few minutes. So, please be patient." msgstr "" #. type: subsubsection #: guix-git/doc/contributing.texi:2512 #, fuzzy, no-wrap #| msgid "user interfaces" msgid "Emacs Interface" msgstr "ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ интСрфСйсы" #. type: Plain text #: guix-git/doc/contributing.texi:2516 msgid "If you use Emacs, you may find it more convenient to interact with issues using @file{debbugs.el}, which you can install with:" msgstr "Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Emacs, Π²Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ с ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ @file{debbugs.el}, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ:" #. type: example #: guix-git/doc/contributing.texi:2519 #, no-wrap msgid "guix install emacs-debbugs\n" msgstr "guix install emacs-debbugs\n" #. type: Plain text #: guix-git/doc/contributing.texi:2522 msgid "For example, to list all open issues on @code{guix-patches}, hit:" msgstr "НапримСр, Ρ‡Ρ‚Π±Ρ‹ ΡƒΠ²Π²ΠΈΠ΄Π΅Ρ‚ΡŒ всС ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Π΅ заявки Π½Π° @code{guix-patches}, Π²Π²Π΅Π΄ΠΈΡ‚Π΅:" #. type: example #: guix-git/doc/contributing.texi:2525 #, no-wrap msgid "@kbd{C-u} @kbd{M-x} debbugs-gnu @kbd{RET} @kbd{RET} guix-patches @kbd{RET} n y\n" msgstr "@kbd{C-u} @kbd{M-x} debbugs-gnu @kbd{RET} @kbd{RET} guix-patches @kbd{RET} n y\n" #. type: Plain text #: guix-git/doc/contributing.texi:2532 msgid "For a more convenient (shorter) way to access both the bugs and patches submissions, you may want to configure the @code{debbugs-gnu-default-packages} and @code{debbugs-gnu-default-severities} Emacs variables (@pxref{Viewing Bugs within Emacs})." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2535 msgid "To search for bugs, @samp{@kbd{M-x} debbugs-gnu-guix-search} can be used." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2538 msgid "@xref{Top,,, debbugs-ug, Debbugs User Guide}, for more information on this nifty tool!" msgstr "@xref{Top,,, debbugs-ug, Debbugs User Guide} для ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± этом ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΌ инструмСнтС!" #. type: cindex #: guix-git/doc/contributing.texi:2542 #, no-wrap msgid "usertags, for debbugs" msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:2543 #, fuzzy, no-wrap #| msgid "Debbugs, issue tracking system" msgid "Debbugs usertags" msgstr "Debbugs, систСма отслСТивания ошибок" #. type: Plain text #: guix-git/doc/contributing.texi:2554 msgid "Debbugs provides a feature called @dfn{usertags} that allows any user to tag any bug with an arbitrary label. Bugs can be searched by usertag, so this is a handy way to organize bugs@footnote{The list of usertags is public information, and anyone can modify any user's list of usertags, so keep that in mind if you choose to use this feature.}. If you use Emacs Debbugs, the entry-point to consult existing usertags is the @samp{C-u M-x debbugs-gnu-usertags} procedure. To set a usertag, press @samp{C} while consulting a bug within the *Guix-Patches* buffer opened with @samp{C-u M-x debbugs-gnu-bugs} buffer, then select @code{usertag} and follow the instructions." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2560 msgid "For example, to view all the bug reports (or patches, in the case of @code{guix-patches}) tagged with the usertag @code{powerpc64le-linux} for the user @code{guix}, open a URL like the following in a web browser: @url{https://debbugs.gnu.org/cgi-bin/pkgreport.cgi?tag=powerpc64le-linux;users=guix}." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2564 msgid "For more information on how to use usertags, please refer to the documentation for Debbugs or the documentation for whatever tool you use to interact with Debbugs." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2569 msgid "In Guix, we are experimenting with usertags to keep track of architecture-specific issues, as well as reviewed ones. To facilitate collaboration, all our usertags are associated with the single user @code{guix}. The following usertags currently exist for that user:" msgstr "" #. #-#-#-#-# contributing.pot (guix manual checkout) #-#-#-#-# #. type: item #. #-#-#-#-# guix.pot (guix manual checkout) #-#-#-#-# #. type: defvar #: guix-git/doc/contributing.texi:2572 guix-git/doc/guix.texi:655 #: guix-git/doc/guix.texi:48442 #, no-wrap msgid "powerpc64le-linux" msgstr "aarch64-linux" #. type: table #: guix-git/doc/contributing.texi:2580 msgid "The purpose of this usertag is to make it easy to find the issues that matter most for the @code{powerpc64le-linux} system type. Please assign this usertag to bugs or patches that affect @code{powerpc64le-linux} but not other system types. In addition, you may use it to identify issues that for some reason are particularly important for the @code{powerpc64le-linux} system type, even if the issue affects other system types, too." msgstr "" #. #-#-#-#-# contributing.pot (guix manual checkout) #-#-#-#-# #. type: item #. #-#-#-#-# guix.pot (guix manual checkout) #-#-#-#-# #. type: cindex #: guix-git/doc/contributing.texi:2581 guix-git/doc/guix.texi:2966 #: guix-git/doc/guix.texi:4903 #, no-wrap msgid "reproducibility" msgstr "Π²ΠΎΡΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ" #. type: table #: guix-git/doc/contributing.texi:2585 msgid "For issues related to reproducibility. For example, it would be appropriate to assign this usertag to a bug report for a package that fails to build reproducibly." msgstr "" #. type: item #: guix-git/doc/contributing.texi:2586 #, no-wrap msgid "reviewed-looks-good" msgstr "" #. type: table #: guix-git/doc/contributing.texi:2588 msgid "You have reviewed the series and it looks good to you (LGTM)." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2595 msgid "If you're a committer and you want to add a usertag, just start using it with the @code{guix} user. If the usertag proves useful to you, consider updating this section of the manual so that others will know what your usertag means." msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:2599 #, no-wrap msgid "build event notifications, RSS feed" msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:2600 #, fuzzy, no-wrap #| msgid "container, build environment" msgid "notifications, build events" msgstr "ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ сборки" #. type: Plain text #: guix-git/doc/contributing.texi:2609 msgid "Cuirass includes @acronym{RSS, Really Simple Syndication} feeds as one of its features (@pxref{Notifications,,,cuirass}). Since @url{https://ci.guix.gnu.org/, Berlin} runs an instance of Cuirass, this feature can be used to keep track of recently broken or fixed packages caused by changes pushed to the Guix git repository. Any RSS client can be used. A good one, included with Emacs, is @xref{Gnus,,,gnus}. To register the feed, copy its URL, then from the main Gnus buffer, @samp{*Group*}, do the following:" msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:2610 #, no-wrap msgid "Gnus, configuration to read CI RSS feeds" msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:2611 #, fuzzy, no-wrap #| msgid "configuration" msgid "RSS feeds, Gnus configuration" msgstr "ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ систСмы" #. type: example #: guix-git/doc/contributing.texi:2615 #, no-wrap msgid "" "@kbd{G R} https://ci.guix.gnu.org/events/rss/?specification=master RET\n" "Guix CI - master RET Build events for specification master. RET\n" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2622 msgid "Then, back at the @samp{*Group*} buffer, press @kbd{s} to save the newly added RSS group. As for any other Gnus group, you can update its content by pressing the @kbd{g} key. You should now receive notifications that read like:" msgstr "" #. type: example #: guix-git/doc/contributing.texi:2627 #, no-wrap msgid "" " . [ ?: Cuirass ] Build tree-sitter-meson.aarch64-linux on master is fixed.\n" " . [ ?: Cuirass ] Build rust-pbkdf2.aarch64-linux on master is fixed.\n" " . [ ?: Cuirass ] Build rust-pbkdf2.x86_64-linux on master is fixed.\n" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2632 msgid "where each RSS entry contains a link to the Cuirass build details page of the associated build." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2646 msgid "To organize work on Guix, including but not just development efforts, the project has a set of @dfn{teams}. Each team has its own focus and interests and is the primary contact point for questions and contributions in those areas. A team's primary mission is to coordinate and review the work of individuals in its scope (@pxref{Reviewing the Work of Others}); it can make decisions within its scope, in agreement with other teams whenever there is overlap or a close connection, and in accordance with other project rules such as seeking consensus (@pxref{Making Decisions})." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2660 msgid "As an example, the Python team is responsible for core Python packaging matters; it can decide to upgrade core Python packages in a dedicated @code{python-team} branch, in collaboration with any team whose scope is directly dependent on Python---e.g., the Science team---and following branching rules (@pxref{Managing Patches and Branches}). The Documentation team helps review changes to the documentation and can initiate overarching documentation changes. The Translations team organizes translation of Guix and its manual and coordinates efforts in that area. The Core team is responsible for the development of core functionality and interfaces of Guix; because of its central nature, some of its work may require soliciting input from the community at large and seeking consensus before enacting decisions that would affect the entire community." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2664 msgid "Teams are defined in the @file{etc/teams.scm} file in the Guix repository. The scope of each team is defined, when applicable, as a set of files or as a regular expression matching file names." msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:2665 #, no-wrap msgid "team membership" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2672 msgid "Anyone with interest in a team's domain and willing to contribute to its work can apply to become a member by contacting current members by email; commit access is not a precondition. Membership is formalized by adding the person's name and email address to @file{etc/teams.scm}. Members who have not been participating in the team's work for one year or more may be removed; they are free to reapply for membership later." msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:2673 #, fuzzy, no-wrap #| msgid "derivation" msgid "team creation" msgstr "дСривация" #. type: Plain text #: guix-git/doc/contributing.texi:2679 msgid "One or more people may propose the creation of a new team by reaching out to the community by email at @email{guix-devel@@gnu.org}, clarifying the intended scope and purpose. When consensus is reached on the creation of this team, someone with commit access formalizes its creation by adding it and its initial members to @file{etc/teams.scm}." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2681 msgid "To list existing teams, run the following command from a Guix checkout:" msgstr "" #. type: example #: guix-git/doc/contributing.texi:2690 #, no-wrap msgid "" "$ ./etc/teams.scm list-teams\n" "id: mentors\n" "name: Mentors\n" "description: A group of mentors who chaperone contributions by newcomers.\n" "members:\n" "+ Charlie Smith <charlie@@example.org>\n" "@dots{}\n" msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:2692 #, no-wrap msgid "mentoring" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2695 msgid "You can run the following command to have the Mentors team put in CC of a patch series:" msgstr "" #. type: example #: guix-git/doc/contributing.texi:2699 #, no-wrap msgid "" "$ git send-email --to=@var{ISSUE_NUMBER}@@debbugs.gnu.org \\\n" " --header-cmd='etc/teams.scm cc-mentors-header-cmd' *.patch\n" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2704 msgid "The appropriate team or teams can also be inferred from the modified files. For instance, if you want to send the two latest commits of the current Git repository to review, you can run:" msgstr "" #. type: example #: guix-git/doc/contributing.texi:2708 #, no-wrap msgid "" "$ guix shell -D guix\n" "[env]$ git send-email --to=@var{ISSUE_NUMBER}@@debbugs.gnu.org -2\n" msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:2713 #, no-wrap msgid "decision making" msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:2714 #, no-wrap msgid "consensus seeking" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2721 msgid "It is expected from all contributors, and even more so from committers, to help build consensus and make decisions based on consensus. By using consensus, we are committed to finding solutions that everyone can live with. It implies that no decision is made against significant concerns and these concerns are actively resolved with proposals that work for everyone." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2728 msgid "A contributor (who may or may not have commit access) wishing to block a proposal bears a special responsibility for finding alternatives, proposing ideas/code or explain the rationale for the status quo to resolve the deadlock. To learn what consensus decision making means and understand its finer details, you are encouraged to read @url{https://www.seedsforchange.org.uk/consensus}." msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:2732 #, no-wrap msgid "commit access, for developers" msgstr "доступ для ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ²" #. type: Plain text #: guix-git/doc/contributing.texi:2743 msgid "Everyone can contribute to Guix without having commit access (@pxref{Submitting Patches}). However, for frequent contributors, having write access to the repository can be convenient. As a rule of thumb, a contributor should have accumulated fifty (50) reviewed commits to be considered as a committer and have sustained their activity in the project for at least 6 months. This ensures enough interactions with the contributor, which is essential for mentoring and assessing whether they are ready to become a committer. Commit access should not be thought of as a ``badge of honor'' but rather as a responsibility a contributor is willing to take to help the project." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2748 msgid "Committers are in a position where they enact technical decisions. Such decisions must be made by @emph{actively building consensus} among interested parties and stakeholders. @xref{Making Decisions}, for more on that." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2752 msgid "The following sections explain how to get commit access, how to be ready to push commits, and the policies and community expectations for commits pushed upstream." msgstr "" #. type: subsection #: guix-git/doc/contributing.texi:2753 #, fuzzy, no-wrap #| msgid "Commit Access" msgid "Applying for Commit Access" msgstr "Доступ ΠΊ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°ΠΌ" #. type: Plain text #: guix-git/doc/contributing.texi:2757 #, fuzzy #| msgid "For frequent contributors, having write access to the repository is convenient. When you deem it necessary, consider applying for commit access by following these steps:" msgid "When you deem it necessary, consider applying for commit access by following these steps:" msgstr "Для постоянных участников ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ доступ для записи Π² Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅. Когда Π²Ρ‹ сочтСтС это Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌ, рассмотритС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ΄Π°Ρ‡ΠΈ заявки Π½Π° ΠΊΠΎΠΌΠΌΠΈΡ‚, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ дСйствия:" #. type: enumerate #: guix-git/doc/contributing.texi:2766 msgid "Find three committers who would vouch for you. You can view the list of committers at @url{https://savannah.gnu.org/project/memberlist.php?group=guix}. Each of them should email a statement to @email{guix-maintainers@@gnu.org} (a private alias for the collective of maintainers), signed with their OpenPGP key." msgstr "НайдитС Ρ‚Ρ€Π΅Ρ… ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‚Π΅Ρ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΡ€ΡƒΡ‡Π°ΡŽΡ‚ΡΡ Π·Π° вас. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ список ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‚Π΅Ρ€ΠΎΠ² ΠΏΠΎ адрСсу @url{https://savannah.gnu.org/project/memberlist.php?group=guix}. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· Π½ΠΈΡ… Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ заявлСниС ΠΏΠΎ элСктронной ΠΏΠΎΡ‡Ρ‚Π΅ Π½Π° адрСс @email{guix-maintainers@@gnu.org} (Π»ΠΈΡ‡Π½Ρ‹ΠΉ псСвдоним ΠΊΠΎΠ»Π»Π΅ΠΊΡ‚ΠΈΠ²Π° ΡΠΎΠΏΡ€ΠΎΠ²ΠΎΠΆΠ΄Π°ΡŽΡ‰ΠΈΡ…), подписанный ΠΊΠ»ΡŽΡ‡ΠΎΠΌ OpenPGP." #. type: enumerate #: guix-git/doc/contributing.texi:2772 msgid "Committers are expected to have had some interactions with you as a contributor and to be able to judge whether you are sufficiently familiar with the project's practices. It is @emph{not} a judgment on the value of your work, so a refusal should rather be interpreted as ``let's try again later''." msgstr "ΠžΠΆΠΈΠ΄Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‚Π΅Ρ€Ρ‹ взаимодСйствовали с Π²Π°ΠΌΠΈ ΠΊΠ°ΠΊ c участником ΠΈ ΠΌΠΎΠ³Π»ΠΈ ΡΡƒΠ΄ΠΈΡ‚ΡŒ, достаточно Π»ΠΈ Π²Ρ‹ Π·Π½Π°ΠΊΠΎΠΌΡ‹ с ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ. Π­Ρ‚ΠΎ @emph{Π½Π΅} суТдСниС ΠΎ цСнности вашСй Ρ€Π°Π±ΠΎΡ‚Ρ‹, поэтому ΠΎΡ‚ΠΊΠ°Π· слСдуСт скорСС ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ Β«Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ ΠΏΠΎΠ·ΠΆΠ΅Β»." #. type: enumerate #: guix-git/doc/contributing.texi:2779 msgid "Send @email{guix-maintainers@@gnu.org} a message stating your intent, listing the three committers who support your application, signed with the OpenPGP key you will use to sign commits, and giving its fingerprint (see below). See @uref{https://emailselfdefense.fsf.org/en/}, for an introduction to public-key cryptography with GnuPG." msgstr "ΠžΡ‚ΠΏΡ€Π°Π²ΡŒΡ‚Π΅ @email{guix-keepers@@gnu.org} сообщСниС с ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ Π²Π°ΡˆΠΈΡ… Π½Π°ΠΌΠ΅Ρ€Π΅Π½ΠΈΠΉ, пСрСчисляя Ρ‚Ρ€Π΅Ρ… ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‚Π΅Ρ€ΠΎΠ², ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΡ… Π²Π°ΡˆΡƒ заявку, подписанных ΠΊΠ»ΡŽΡ‡ΠΎΠΌ OpenPGP, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для подписания ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², ΠΈ ΡƒΠΊΠ°Π·Π°Π² свой ΠΎΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚ΠΎΠΊ (смотри Π½ΠΈΠΆΠ΅). Ознакомся с @uref{https://emailselfdefense.fsf.org/ru/}, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΠ΅ΠΉ с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ ΠΊΠ»ΡŽΡ‡ΠΎΠΌ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ GnuPG." #. type: enumerate #: guix-git/doc/contributing.texi:2785 msgid "Set up GnuPG such that it never uses the SHA1 hash algorithm for digital signatures, which is known to be unsafe since 2019, for instance by adding the following line to @file{~/.gnupg/gpg.conf} (@pxref{GPG Esoteric Options,,, gnupg, The GNU Privacy Guard Manual}):" msgstr "НастройтС GnuPG Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ использовал Ρ…ΡΡˆ-Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ SHA1 для Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… подписСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ, ΠΊΠ°ΠΊ извСстно, нСбСзопасСн с 2019 Π³ΠΎΠ΄Π°. НапримСр, Π΄ΠΎΠ±Π°Π²ΠΈΠ² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ строку Π² @file{~/.gnupg/gpg.conf} (@pxref{GPG Esoteric Options,,, gnupg, The GNU Privacy Guard Manual}):" #. type: example #: guix-git/doc/contributing.texi:2788 #, no-wrap msgid "digest-algo sha512\n" msgstr "digest-algo sha512\n" #. type: enumerate #: guix-git/doc/contributing.texi:2793 msgid "Maintainers ultimately decide whether to grant you commit access, usually following your referrals' recommendation." msgstr "ΠœΠ°ΠΈΠ½Ρ‚Π°ΠΉΠ½Π΅Ρ€Ρ‹ Ρ€Π΅ΡˆΠ°ΡŽΡ‚, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Π»ΠΈ Π²Π°ΠΌ доступ ΠΊ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°ΠΌ, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ слСдуя рСкомСндациям Π²Π°ΡˆΠΈΡ… Ρ€Π΅Ρ„Π΅Ρ€Π°Π»ΠΎΠ²." #. type: cindex #: guix-git/doc/contributing.texi:2795 #, no-wrap msgid "OpenPGP, signed commits" msgstr "ΠšΠΎΠΌΠΌΠΈΡ‚Ρ‹, подписанныС OpenPGP" #. type: enumerate #: guix-git/doc/contributing.texi:2800 msgid "If and once you've been given access, please send a message to @email{guix-devel@@gnu.org} to say so, again signed with the OpenPGP key you will use to sign commits (do that before pushing your first commit). That way, everyone can notice and ensure you control that OpenPGP key." msgstr "ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠ² доступ, поТалуйста, ΠΎΡ‚ΠΏΡ€Π°Π²ΡŒΡ‚Π΅ сообщСниС Π½Π° адрСс @email{guix-devel@@gnu.org}, Ρ‡Ρ‚ΠΎΠ±Ρ‹ снова ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΊΠ»ΡŽΡ‡ΠΎΠΌ OpenPGP, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для подписания ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² (сдСлайтС это ΠΏΠ΅Ρ€Π΅Π΄ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΎΠΉ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°). Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ ΠΈ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ это ваш ΠΊΠ»ΡŽΡ‡ OpenPGP." #. type: quotation #: guix-git/doc/contributing.texi:2801 guix-git/doc/guix.texi:711 #: guix-git/doc/guix.texi:743 guix-git/doc/guix.texi:22038 #: guix-git/doc/guix.texi:35277 guix-git/doc/guix.texi:35922 #, no-wrap msgid "Important" msgstr "Π’Π°ΠΆΠ½ΠΎ" #. type: quotation #: guix-git/doc/contributing.texi:2803 msgid "Before you can push for the first time, maintainers must:" msgstr "ΠŸΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ Π²Ρ‹ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ измСнСния Π²ΠΏΠ΅Ρ€Π²Ρ‹Π΅, ΡΠΎΠΏΡ€ΠΎΠ²ΠΎΠΆΠ΄Π°ΡŽΡ‰ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹:" #. type: enumerate #: guix-git/doc/contributing.texi:2807 msgid "add your OpenPGP key to the @code{keyring} branch;" msgstr "Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ваш OpenPGP ΠΊΠ»ΡŽΡ‡ Π² @code{keyring} Π²Π΅Ρ‚ΠΊΡƒ;" #. type: enumerate #: guix-git/doc/contributing.texi:2810 msgid "add your OpenPGP fingerprint to the @file{.guix-authorizations} file of the branch(es) you will commit to." msgstr "Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ ΠΎΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚ΠΎΠΊ вашСго OpenPGP ΠΊΠ»ΡŽΡ‡Π° Π² @file{.guix-authorizations} Ρ„Π°ΠΉΠ» Π²Π΅Ρ‚ΠΊΠΈ (-ΠΎΠΊ), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΏΠΎΠ΄ΠΏΠΈΡˆΠΈΡ‚Π΅ (commit)." #. type: enumerate #: guix-git/doc/contributing.texi:2815 msgid "Make sure to read the rest of this section and... profit!" msgstr "ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΡ‡Ρ‚ΠΈΡ‚Π΅ ΠΎΡΡ‚Π°Π»ΡŒΠ½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ этого Ρ€Π°Π·Π΄Π΅Π»Π°!" #. type: quotation #: guix-git/doc/contributing.texi:2821 msgid "Maintainers are happy to give commit access to people who have been contributing for some time and have a track record---don't be shy and don't underestimate your work!" msgstr "ΠœΠ°ΠΈΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ с Ρ€Π°Π΄ΠΎΡΡ‚ΡŒΡŽ прСдоставят доступ ΠΊ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°ΠΌ людям, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ внСсли свой Π²ΠΊΠ»Π°Π΄ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ послуТной список - Π½Π΅ ΡΡ‚Π΅ΡΠ½ΡΠΉΡ‚Π΅ΡΡŒ ΠΈ Π½Π΅ Π½Π΅Π΄ΠΎΠΎΡ†Π΅Π½ΠΈΠ²Π°ΠΉΡ‚Π΅ свою Ρ€Π°Π±ΠΎΡ‚Ρƒ!" #. type: quotation #: guix-git/doc/contributing.texi:2825 msgid "However, note that the project is working towards a more automated patch review and merging system, which, as a consequence, may lead us to have fewer people with commit access to the main repository. Stay tuned!" msgstr "Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π°Π΄ созданиСм Π±ΠΎΠ»Π΅Π΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ систСмы ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΈ объСдинСния исправлСний, Ρ‡Ρ‚ΠΎ, ΠΊΠ°ΠΊ слСдствиС, ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ Ρƒ нас Π±ΡƒΠ΄Π΅Ρ‚ мСньшС людСй, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ… доступ ΠΊ Π³Π»Π°Π²Π½ΠΎΠΌΡƒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡŽ. Π‘ΡƒΠ΄ΡŒΡ‚Π΅ Π½Π° связи!" #. type: Plain text #: guix-git/doc/contributing.texi:2832 msgid "All commits that are pushed to the central repository on Savannah must be signed with an OpenPGP key, and the public key should be uploaded to your user account on Savannah and to public key servers, such as @code{keys.openpgp.org}. To configure Git to automatically sign commits, run:" msgstr "ВсС ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ Π² Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π² Π‘Π°Π²Π°Π½Π½Π΅, Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ подписаны ΠΊΠ»ΡŽΡ‡ΠΎΠΌ OpenPGP, Π° ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½ Π² Π²Π°ΡˆΡƒ ΡƒΡ‡Π΅Ρ‚Π½ΡƒΡŽ запись ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π° Π‘Π°Π²Π°Π½Π½Π΅ ΠΈ Π½Π° сСрвСры ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… ΠΊΠ»ΡŽΡ‡Π΅ΠΉ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ @code{keys.openpgp.org}. Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Git для автоматичСской подписи ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², запуститС:" #. type: example #: guix-git/doc/contributing.texi:2835 #, no-wrap msgid "" "git config commit.gpgsign true\n" "\n" msgstr "" "git config commit.gpgsign true\n" "\n" #. type: example #: guix-git/doc/contributing.texi:2838 #, fuzzy, no-wrap #| msgid "" #| "git config commit.gpgsign true\n" #| "git config user.signingkey CABBA6EA1DC0FF33\n" msgid "" "# Substitute the fingerprint of your public PGP key.\n" "git config user.signingkey CABBA6EA1DC0FF33\n" msgstr "" "git config commit.gpgsign true\n" "git config user.signingkey CABBA6EA1DC0FF33\n" #. type: Plain text #: guix-git/doc/contributing.texi:2841 msgid "To check that commits are signed with correct key, use:" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2848 msgid "@xref{Building from Git} for running the first authentication of a Guix checkout." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2852 msgid "To avoid accidentally pushing unsigned or signed with the wrong key commits to Savannah, make sure to configure Git according to @xref{Configuring Git}." msgstr "Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ случайной ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ нСподписанных ΠΈΠ»ΠΈ подписанных Π½Π΅Π²Π΅Ρ€Π½Ρ‹ΠΌ ΠΊΠ»ΡŽΡ‡ΠΎΠΌ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² Π² Savannah, ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ настройтС Git согласно @xref{Configuring Git}." #. type: subsection #: guix-git/doc/contributing.texi:2853 #, fuzzy, no-wrap #| msgid "Commit Access" msgid "Commit Policy" msgstr "Доступ ΠΊ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°ΠΌ" #. type: Plain text #: guix-git/doc/contributing.texi:2858 msgid "If you get commit access, please make sure to follow the policy below (discussions of the policy can take place on @email{guix-devel@@gnu.org})." msgstr "Если Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ доступ ΠΊ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρƒ, поТалуйста, слСдуйтС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΉ Π½ΠΈΠΆΠ΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ (обсуТдСниС ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΏΠΎ адрСсу @email{guix-devel@@gnu.org})." #. type: Plain text #: guix-git/doc/contributing.texi:2862 msgid "Ensure you're aware of how the changes should be handled (@pxref{Managing Patches and Branches}) prior to being pushed to the repository, especially for the @code{master} branch." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2869 msgid "If you're committing and pushing your own changes, try and wait at least one week (two weeks for more significant changes, up to one month for changes such as removing a package---@pxref{package-removal-policy, Package Removal}) after you send them for review. After this, if no one else is available to review them and if you're confident about the changes, it's OK to commit." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2874 msgid "When pushing a commit on behalf of somebody else, please add a @code{Signed-off-by} line at the end of the commit log message---e.g., with @command{git am --signoff}. This improves tracking of who did what." msgstr "Когда Π²Ρ‹ отправляСтС ΠΊΠΎΠΌΠΌΠΈΡ‚ ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ ΠΊΠΎΠ³ΠΎ-Ρ‚ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ, Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ строку @code{Signed-off-by} Π² ΠΊΠΎΠ½Ρ†Π΅ сообщСния ΠΊΠΎΠΌΠΌΠΈΡ‚ Π»ΠΎΠ³Π°---Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, с @command{git am --signoff}. Π­Ρ‚ΠΎ ΡƒΠ»ΡƒΡ‡ΡˆΠ°Π΅Ρ‚ отслСТиваниС Ρ‚ΠΎΠ³ΠΎ, ΠΊΡ‚ΠΎ Ρ‡Ρ‚ΠΎ сдСлал." #. type: Plain text #: guix-git/doc/contributing.texi:2878 msgid "When adding channel news entries (@pxref{Channels, Writing Channel News}), make sure they are well-formed by running the following command right before pushing:" msgstr "ΠŸΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ новостСй ΠΊΠ°Π½Π°Π»Π° (@pxref{Channels, Writing Channel News}), ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ сформированы, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ прямо ΠΏΠ΅Ρ€Π΅Π΄ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ:" #. type: example #: guix-git/doc/contributing.texi:2881 #, no-wrap msgid "make check-channel-news\n" msgstr "make check-channel-news\n" #. type: subsection #: guix-git/doc/contributing.texi:2883 #, no-wrap msgid "Addressing Issues" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2894 msgid "Peer review (@pxref{Submitting Patches}) and tools such as @command{guix lint} (@pxref{Invoking guix lint}) and the test suite (@pxref{Running the Test Suite}) should catch issues before they are pushed. Yet, commits that ``break'' functionality might occasionally go through. When that happens, there are two priorities: mitigating the impact, and understanding what happened to reduce the chance of similar incidents in the future. The responsibility for both these things primarily lies with those involved, but like everything this is a group effort." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2899 msgid "Some issues can directly affect all users---for instance because they make @command{guix pull} fail or break core functionality, because they break major packages (at build time or run time), or because they introduce known security vulnerabilities." msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:2900 #, no-wrap msgid "reverting commits" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2906 msgid "The people involved in authoring, reviewing, and pushing such commit(s) should be at the forefront to mitigate their impact in a timely fashion: by pushing a followup commit to fix it (if possible), or by reverting it to leave time to come up with a proper fix, and by communicating with other developers about the problem." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2912 msgid "If these persons are unavailable to address the issue in time, other committers are entitled to revert the commit(s), explaining in the commit log and on the mailing list what the problem was, with the goal of leaving time to the original committer, reviewer(s), and author(s) to propose a way forward." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2921 msgid "Once the problem has been dealt with, it is the responsibility of those involved to make sure the situation is understood. If you are working to understand what happened, focus on gathering information and avoid assigning any blame. Do ask those involved to describe what happened, do not ask them to explain the situation---this would implicitly blame them, which is unhelpful. Accountability comes from a consensus about the problem, learning from it and improving processes so that it's less likely to reoccur." msgstr "" #. type: subsection #: guix-git/doc/contributing.texi:2922 #, fuzzy, no-wrap #| msgid "Log Rotation" msgid "Commit Revocation" msgstr "Ротация Π»ΠΎΠ³ΠΎΠ²" #. type: Plain text #: guix-git/doc/contributing.texi:2929 msgid "In order to reduce the possibility of mistakes, committers will have their Savannah account removed from the Guix Savannah project and their key removed from @file{.guix-authorizations} after 12 months of inactivity; they can ask to regain commit access by emailing the maintainers, without going through the vouching process." msgstr "Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ ошибок, ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Π΅ записи ΠΊΠΎΠ½Ρ‚Ρ€ΠΈΠ±ΡŒΡŽΡ‚ΠΎΡ€ΠΎΠ² Π±ΡƒΠ΄ΡƒΡ‚ ΡƒΠ΄Π°Π»Π΅Π½Ρ‹ ΠΈΠ· ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Guix Π½Π° Savannah, Π° ΠΈΡ… ΠΊΠ»ΡŽΡ‡ΠΈ - ΠΈΠ· @file{.guix-authorizations} послС 12 мСсяцСв бСздСйствия; ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ доступ ΠΊ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΠ² элСктронноС письмо мэйнтСйнСров, Π½Π΅ проходя Ρ‡Π΅Ρ€Π΅Π· процСсс подтвСрТдСния." #. type: Plain text #: guix-git/doc/contributing.texi:2939 msgid "Maintainers@footnote{See @uref{https://guix.gnu.org/en/about} for the current list of maintainers. You can email them privately at @email{guix-maintainers@@gnu.org}.} may also revoke an individual's commit rights, as a last resort, if cooperation with the rest of the community has caused too much friction---even within the bounds of the project's code of conduct (@pxref{Contributing}). They would only do so after public or private discussion with the individual and a clear notice. Examples of behavior that hinders cooperation and could lead to such a decision include:" msgstr "" #. type: item #: guix-git/doc/contributing.texi:2941 #, no-wrap msgid "repeated violation of the commit policy stated above;" msgstr "" #. type: item #: guix-git/doc/contributing.texi:2942 #, no-wrap msgid "repeated failure to take peer criticism into account;" msgstr "" #. type: item #: guix-git/doc/contributing.texi:2943 #, no-wrap msgid "breaching trust through a series of grave incidents." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2950 msgid "When maintainers resort to such a decision, they notify developers on @email{guix-devel@@gnu.org}; inquiries may be sent to @email{guix-maintainers@@gnu.org}. Depending on the situation, the individual may still be welcome to contribute." msgstr "" #. type: subsection #: guix-git/doc/contributing.texi:2951 #, no-wrap msgid "Helping Out" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:2958 msgid "One last thing: the project keeps moving forward because committers not only push their own awesome changes, but also offer some of their time @emph{reviewing} and pushing other people's changes. As a committer, you're welcome to use your expertise and commit rights to help other contributors, too!" msgstr "И послСднСС: ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒΡΡ Π²ΠΏΠ΅Ρ€Π΅Π΄, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‚Π΅Ρ€Ρ‹ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ вносят свои собствСнныС ΠΏΠΎΡ‚Ρ€ΡΡΠ°ΡŽΡ‰ΠΈΠ΅ измСнСния, Π½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠ΄Π΅Π»ΡΡŽΡ‚ своС врСмя Π½Π° @emph{reviewing} ΠΈ ΠΏΡ€ΠΎΠ΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π΄Ρ€ΡƒΠ³ΠΈΡ… людСй. Как ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‚Π΅Ρ€, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ свой ΠΎΠΏΡ‹Ρ‚ ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΡ€Π°Π²Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ участникам!" #. type: Plain text #: guix-git/doc/contributing.texi:2974 msgid "Perhaps the biggest action you can do to help GNU Guix grow as a project is to review the work contributed by others. You do not need to be a committer to do so; applying, reading the source, building, linting and running other people's series and sharing your comments about your experience will give some confidence to committers. You must ensure the check list found in the @ref{Submitting Patches} section has been correctly followed. A reviewed patch series should give the best chances for the proposed change to be merged faster, so if a change you would like to see merged hasn't yet been reviewed, this is the most appropriate thing to do! If you would like to review changes in a specific area and to receive notifications for incoming patches relevant to that domain, consider joining the relevant team(s) (@pxref{Teams})." msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:2975 #, fuzzy, no-wrap #| msgid "Packaging Guidelines" msgid "reviewing, guidelines" msgstr "Руководство ΠΏΠΎ ΡƒΠΏΠ°ΠΊΠΎΠ²ΠΊΠ΅" #. type: Plain text #: guix-git/doc/contributing.texi:2980 msgid "Review comments should be unambiguous; be as clear and explicit as you can about what you think should be changed, ensuring the author can take action on it. Please try to keep the following guidelines in mind during review:" msgstr "" #. type: enumerate #: guix-git/doc/contributing.texi:2986 msgid "@emph{Be clear and explicit about changes you are suggesting}, ensuring the author can take action on it. In particular, it is a good idea to explicitly ask for new revisions when you want it." msgstr "" #. type: enumerate #: guix-git/doc/contributing.texi:2994 msgid "@emph{Remain focused: do not change the scope of the work being reviewed.} For example, if the contribution touches code that follows a pattern deemed unwieldy, it would be unfair to ask the submitter to fix all occurrences of that pattern in the code; to put it simply, if a problem unrelated to the patch at hand was already there, do not ask the submitter to fix it." msgstr "" #. type: enumerate #: guix-git/doc/contributing.texi:3001 msgid "@emph{Ensure progress.} As they respond to review, submitters may submit new revisions of their changes; avoid requesting changes that you did not request in the previous round of comments. Overall, the submitter should get a clear sense of progress; the number of items open for discussion should clearly decrease over time." msgstr "" #. type: enumerate #: guix-git/doc/contributing.texi:3008 msgid "@emph{Aim for finalization.} Reviewing code is time-consuming. Your goal as a reviewer is to put the process on a clear path towards integration, possibly with agreed-upon changes, or rejection, with a clear and mutually-understood reasoning. Avoid leaving the review process in a lingering state with no clear way out." msgstr "" #. type: enumerate #: guix-git/doc/contributing.texi:3022 msgid "@emph{Review is a discussion.} The submitter's and reviewer's views on how to achieve a particular change may not always be aligned. To lead the discussion, remain focused, ensure progress and aim for finalization, spending time proportional to the stakes@footnote{The tendency to discuss minute details at length is often referred to as ``bikeshedding'', where much time is spent discussing each one's preference for the color of the shed at the expense of progress made on the project to keep bikes dry.}. As a reviewer, try hard to explain the rationale for suggestions you make, and to understand and take into account the submitter's motivation for doing things in a certain way. In other words, build consensus with everyone involved (@pxref{Making Decisions})." msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:3024 #, no-wrap msgid "LGTM, Looks Good To Me" msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:3025 #, no-wrap msgid "review tags" msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:3026 #, no-wrap msgid "Reviewed-by, git trailer" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:3037 msgid "When you deem the proposed change adequate and ready for inclusion within Guix, the following well understood/codified @samp{Reviewed-by:@tie{}Your@tie{}Name@tie{}<your-email@@example.com>} @footnote{The @samp{Reviewed-by} Git trailer is used by other projects such as Linux, and is understood by third-party tools such as the @samp{b4 am} sub-command, which is able to retrieve the complete submission email thread from a public-inbox instance and add the Git trailers found in replies to the commit patches.} line should be used to sign off as a reviewer, meaning you have reviewed the change and that it looks good to you:" msgstr "" #. type: itemize #: guix-git/doc/contributing.texi:3046 msgid "If the @emph{whole} series (containing multiple commits) looks good to you, reply with @samp{Reviewed-by:@tie{}Your@tie{}Name@tie{}<your-email@@example.com>} to the cover page if it has one, or to the last patch of the series otherwise, adding another @samp{(for the whole series)} comment on the line below to explicit this fact." msgstr "" #. type: itemize #: guix-git/doc/contributing.texi:3052 msgid "If you instead want to mark a @emph{single commit} as reviewed (but not the whole series), simply reply with @samp{Reviewed-by:@tie{}Your@tie{}Name@tie{}<your-email@@example.com>} to that commit message." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:3057 msgid "If you are not a committer, you can help others find a @emph{series} you have reviewed more easily by adding a @code{reviewed-looks-good} usertag for the @code{guix} user (@pxref{Debbugs Usertags})." msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:3061 #, no-wrap msgid "update-guix-package, updating the guix package" msgstr "guix package: (guix)Запуск guix package" #. type: Plain text #: guix-git/doc/contributing.texi:3067 msgid "It is sometimes desirable to update the @code{guix} package itself (the package defined in @code{(gnu packages package-management)}), for example to make new daemon features available for use by the @code{guix-service-type} service type. In order to simplify this task, the following command can be used:" msgstr "Иногда ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ сам ΠΏΠ°ΠΊΠ΅Ρ‚ @code{guix} (ΠΏΠ°ΠΊΠ΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ Π² @code{(gnu packages package-management)}), Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π΄Π΅ΠΌΠΎΠ½Π° доступными для использования сСрвисом @code{guix-service-type}. Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ эту Π·Π°Π΄Π°Ρ‡Ρƒ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:" #. type: example #: guix-git/doc/contributing.texi:3070 #, no-wrap msgid "make update-guix-package\n" msgstr "make authenticate\n" #. type: Plain text #: guix-git/doc/contributing.texi:3077 msgid "The @code{update-guix-package} make target will use the last known @emph{commit} corresponding to @code{HEAD} in your Guix checkout, compute the hash of the Guix sources corresponding to that commit and update the @code{commit}, @code{revision} and hash of the @code{guix} package definition." msgstr "@code{update-guix-package} make target Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ послСдним извСстным ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠΌ, согласно @code{HEAD} вашСго Guix checkout, Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ Ρ…ΡΡˆ источников Guix, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… этому ΠΊΠΎΠΌΠΌΠΈΡ‚Ρƒ ΠΈ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚Π΅ @code{commit}, @code{revision} ΠΈ Ρ…ΡΡˆ @code{guix}." #. type: Plain text #: guix-git/doc/contributing.texi:3081 msgid "To validate that the updated @code{guix} package hashes are correct and that it can be built successfully, the following command can be run from the directory of your Guix checkout:" msgstr "Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π½Ρ‹Π΅ Ρ…Π΅Ρˆ-суммы ΠΏΠ°ΠΊΠ΅Ρ‚Π° @code{guix} Π²Π΅Ρ€Π½Ρ‹ ΠΈ Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ собран, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΏΡƒΡ‰Π΅Π½Π° ΠΈΠ· ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° Guix (from the directory of your Guix checkout):" #. type: example #: guix-git/doc/contributing.texi:3084 #, no-wrap msgid "./pre-inst-env guix build guix\n" msgstr "./pre-inst-env guix build gnew --keep-failed\n" #. type: Plain text #: guix-git/doc/contributing.texi:3089 msgid "To guard against accidentally updating the @code{guix} package to a commit that others can't refer to, a check is made that the commit used has already been pushed to the Savannah-hosted Guix git repository." msgstr "Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ случайноС ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Π° @code{guix} ΠΊ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρƒ, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΡΡΡ‹Π»Π°Ρ‚ΡŒΡΡ, выполняСтся ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚ ΡƒΠΆΠ΅ Π±Ρ‹Π» ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Guix, Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½Π½Ρ‹ΠΉ Π² Savannah." #. type: Plain text #: guix-git/doc/contributing.texi:3094 msgid "This check can be disabled, @emph{at your own peril}, by setting the @code{GUIX_ALLOW_ME_TO_USE_PRIVATE_COMMIT} environment variable. When this variable is set, the updated package source is also added to the store. This is used as part of the release process of Guix." msgstr "Π­Ρ‚Ρƒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ @emph{Π½Π° свой страх ΠΈ риск}, установив ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρƒ окруТСния @code{GUIX_ALLOW_ME_TO_USE_PRIVATE_COMMIT}. Когда эта пСрСмСнная установлСна, ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π½Ρ‹ΠΉ исходник ΠΏΠ°ΠΊΠ΅Ρ‚Π° Ρ‚Π°ΠΊΠΆΠ΅ добавляСтся Π² Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅. Π­Ρ‚ΠΎ Ρ‡Π°ΡΡ‚ΡŒ процСсса выпуска Guix." #. type: cindex #: guix-git/doc/contributing.texi:3098 #, no-wrap msgid "deprecation policy" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:3108 msgid "As any lively project with a broad scope, Guix changes all the time and at all levels. Because it's user-extensible and programmable, incompatible changes can directly impact users and make their life harder. It is thus important to reduce user-visible incompatible changes to a minimum and, when such changes are deemed necessary, to clearly communicate them through a @dfn{deprecation period} so everyone can adapt with minimum hassle. This section defines the project's commitments for smooth deprecation and describes procedures and mechanisms to honor them." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:3111 msgid "There are several ways to use Guix; how to handle deprecation will depend on each use case. Those can be roughly categorized like this:" msgstr "" #. type: itemize #: guix-git/doc/contributing.texi:3115 msgid "package management exclusively through the command line;" msgstr "" #. type: itemize #: guix-git/doc/contributing.texi:3118 msgid "advanced package management using the manifest and package interfaces;" msgstr "" #. type: itemize #: guix-git/doc/contributing.texi:3122 msgid "Home and System management, using the @code{operating-system} and/or @code{home-environment} interfaces together with the service interfaces;" msgstr "" #. type: itemize #: guix-git/doc/contributing.texi:3126 msgid "development or use of external tools that use programming interfaces such as the @code{(guix ...)} modules." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:3132 msgid "These use cases form a spectrum with varying degrees of coupling---from ``distant'' to tightly coupled. Based on this insight, we define the following @dfn{deprecation policies} that we consider suitable for each of these levels." msgstr "" #. type: item #: guix-git/doc/contributing.texi:3134 #, fuzzy, no-wrap #| msgid "Programming Interface" msgid "Command-line tools" msgstr "ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ интСрфСйс" #. type: table #: guix-git/doc/contributing.texi:3139 msgid "Guix sub-commands should be thought of as remaining available ``forever''. Once a Guix sub-command is to be removed, it should be deprecated first, and then remain available for @b{at least one year} after the first release that deprecated it." msgstr "" #. type: table #: guix-git/doc/contributing.texi:3149 msgid "Deprecation should first be announced in the manual and as an entry in @file{etc/news.scm}; additional communication such as a blog post explaining the rationale is welcome. Months before the scheduled removal date, the command should print a warning explaining how to migrate. An example of this is the replacement of @command{guix environment} by @command{guix shell}, started in October 2021@footnote{For more details on the @command{guix shell} transition, see @uref{https://guix.gnu.org/en/blog/2021/from-guix-environment-to-guix-shell/}.}." msgstr "" #. type: table #: guix-git/doc/contributing.texi:3152 msgid "Because of the broad impact of such a change, we recommend conducting a user survey before enacting a plan." msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:3153 #, fuzzy, no-wrap #| msgid "package description" msgid "package deprecation" msgstr "описаниС ΠΏΠ°ΠΊΠ΅Ρ‚Π°" #. type: item #: guix-git/doc/contributing.texi:3154 #, fuzzy, no-wrap #| msgid "Package management commands." msgid "Package name changes" msgstr "ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ управлСния ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌΠΈ." #. type: table #: guix-git/doc/contributing.texi:3159 msgid "When a package name changes, it must remain available under its old name for @b{at least one year}. For example, @code{go-ipfs} was renamed to @code{kubo} following a decision made upstream; to communicate the name change to users, the package module provided this definition:" msgstr "" #. type: findex #: guix-git/doc/contributing.texi:3160 #, fuzzy, no-wrap #| msgid "reverse-package" msgid "deprecated-package" msgstr "reverse-package" #. type: lisp #: guix-git/doc/contributing.texi:3164 #, no-wrap msgid "" "(define-public go-ipfs\n" " (deprecated-package \"go-ipfs\" kubo))\n" msgstr "" #. type: table #: guix-git/doc/contributing.texi:3168 msgid "That way, someone running @command{guix install go-ipfs} or similar sees a deprecation warning mentioning the new name." msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:3169 #, fuzzy, no-wrap #| msgid "package removal" msgid "package removal policy" msgstr "ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Π°" #. type: anchor{#1} #: guix-git/doc/contributing.texi:3171 #, fuzzy #| msgid "package removal" msgid "package-removal-policy" msgstr "ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Π°" #. type: item #: guix-git/doc/contributing.texi:3171 #, fuzzy, no-wrap #| msgid "package removal" msgid "Package removal" msgstr "ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Π°" #. type: table #: guix-git/doc/contributing.texi:3175 msgid "Packages whose upstream developers have declared as having reached ``end of life'' or being unmaintained may be removed; likewise, packages that have been @b{failing to build for two months or more} may be removed." msgstr "" #. type: table #: guix-git/doc/contributing.texi:3179 msgid "There is no formal deprecation mechanism for this case, unless a replacement exists, in which case the @code{deprecated-package} procedure mentioned above can be used." msgstr "" #. type: table #: guix-git/doc/contributing.texi:3184 msgid "If the package being removed is a ``leaf'' (no other packages depend on it), it may be removed after a @b{one-month review period} of the patch removing it (this applies even when the removal has additional motivations such as security problems affecting the package)." msgstr "" #. type: table #: guix-git/doc/contributing.texi:3192 msgid "If it has many dependent packages---as is the case for example with Python version@tie{}2---the relevant team must propose a deprecation removal agenda and seek consensus with other packagers for @b{at least one month}. It may also invite feedback from the broader user community, for example through a survey. Removal of all impacted packages may be gradual, spanning multiple months, to accommodate all use cases." msgstr "" #. type: table #: guix-git/doc/contributing.texi:3196 msgid "When the package being removed is considered popular, whether or not it is a leaf, its deprecation must be announced as an entry in @code{etc/news.scm}." msgstr "" #. type: item #: guix-git/doc/contributing.texi:3197 #, fuzzy, no-wrap #| msgid "Package Modules" msgid "Package upgrade" msgstr "ΠŸΠ°ΠΊΠ΅Ρ‚Π½Ρ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ" #. type: table #: guix-git/doc/contributing.texi:3200 msgid "In the case of packages with many dependents and/or many users, an upgrade may be treated like the @emph{removal} of the previous version." msgstr "" #. type: table #: guix-git/doc/contributing.texi:3204 msgid "Examples include major version upgrades of programming language implementations, as we've seen above with Python, and major upgrades of ``big'' libraries such as Qt or GTK." msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:3205 #, fuzzy, no-wrap #| msgid "Service Composition" msgid "service deprecation" msgstr "Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° сСрвисов" #. #-#-#-#-# contributing.pot (guix manual checkout) #-#-#-#-# #. type: item #. #-#-#-#-# guix.pot (guix manual checkout) #-#-#-#-# #. type: node #: guix-git/doc/contributing.texi:3206 guix-git/doc/guix.texi:387 #: guix-git/doc/guix.texi:393 guix-git/doc/guix.texi:17092 #: guix-git/doc/guix.texi:19043 guix-git/doc/guix.texi:19044 #: guix-git/doc/guix.texi:34814 #, no-wrap msgid "Services" msgstr "БСрвисы" #. type: table #: guix-git/doc/contributing.texi:3211 msgid "Changes to services for Guix Home and Guix System have a direct impact on user configuration. For a user, adjusting to interface changes is rarely rewarding, which is why any such change must be clearly communicated in advance through deprecation warnings and documentation." msgstr "" #. type: table #: guix-git/doc/contributing.texi:3217 msgid "Renaming of variables related to service, home, or system configuration must be communicated for at least six months before removal using the @code{(guix deprecation)} mechanisms. For example, renaming of @code{murmur-configuration} to @code{mumble-server-configuration} was communicated through a series of definitions like this one:" msgstr "" #. type: findex #: guix-git/doc/contributing.texi:3218 #, no-wrap msgid "define-deprecated/public-alias" msgstr "" #. type: lisp #: guix-git/doc/contributing.texi:3223 #, no-wrap msgid "" "(define-deprecated/public-alias\n" " murmur-configuration\n" " mumble-server-configuration)\n" msgstr "" #. type: table #: guix-git/doc/contributing.texi:3226 msgid "Procedures slated for removal may be defined like this:" msgstr "" #. type: findex #: guix-git/doc/contributing.texi:3227 #, fuzzy, no-wrap #| msgid "define-record-type*" msgid "define-deprecated" msgstr "define-record-type*" #. type: lisp #: guix-git/doc/contributing.texi:3232 #, no-wrap msgid "" "(define-deprecated (elogind-service #:key (config (elogind-configuration)))\n" " elogind-service-type\n" " (service elogind-service-type config))\n" msgstr "" #. type: table #: guix-git/doc/contributing.texi:3239 msgid "Record fields, notably fields of service configuration records, must follow a similar deprecation period. This is usually achieved through @i{ad hoc} means though. For example, the @code{hosts-file} field of @code{operating-system} was deprecated by adding a @code{sanitized} property that would emit a warning:" msgstr "" #. type: lisp #: guix-git/doc/contributing.texi:3246 #, no-wrap msgid "" "(define-record-type* <operating-system>\n" " ;; @dots{}\n" " (hosts-file %operating-system-hosts-file ;deprecated\n" " (default #f)\n" " (sanitize warn-hosts-file-field-deprecation)))\n" "\n" msgstr "" #. type: lisp #: guix-git/doc/contributing.texi:3250 #, no-wrap msgid "" "(define-deprecated (operating-system-hosts-file os)\n" " hosts-service-type\n" " (%operating-system-hosts-file os))\n" msgstr "" #. type: table #: guix-git/doc/contributing.texi:3255 msgid "When deprecating interfaces in @code{operating-system}, @code{home-environment}, @code{(gnu services)}, or any popular service, the deprecation must come with an entry in @code{etc/news.scm}." msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:3256 #, fuzzy, no-wrap #| msgid "Programming Interface" msgid "deprecation of programming interfaces" msgstr "ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ интСрфСйс" #. type: item #: guix-git/doc/contributing.texi:3257 #, fuzzy, no-wrap #| msgid "user interfaces" msgid "Core interfaces" msgstr "ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ интСрфСйсы" #. type: table #: guix-git/doc/contributing.texi:3264 msgid "Core programming interfaces, in particular the @code{(guix ...)} modules, may be relied on by a variety of external tools and channels. Any incompatible change must be formally deprecated with @code{define-deprecated}, as shown above, for @b{at least one year} before removal. The manual must clearly document the new interface and, except in obvious cases, explain how to migrate from the old one." msgstr "" #. type: table #: guix-git/doc/contributing.texi:3268 msgid "As an example, the @code{build-expression->derivation} procedure was superseded by @code{gexp->derivation} and remained available as a deprecated symbol:" msgstr "" #. type: lisp #: guix-git/doc/contributing.texi:3274 #, no-wrap msgid "" "(define-deprecated (build-expression->derivation store name exp\n" " #:key @dots{})\n" " gexp->derivation\n" " @dots{})\n" msgstr "" #. type: table #: guix-git/doc/contributing.texi:3279 msgid "Sometimes bindings are moved from one module to another. In those cases, bindings must be reexported from the original module for at least one year." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:3284 msgid "This section does not cover all possible situations but hopefully allows users to know what to expect and developers to stick to its spirit. Please email @email{guix-devel@@gnu.org} for any questions." msgstr "" #. #-#-#-#-# contributing.pot (guix manual checkout) #-#-#-#-# #. type: cindex #. #-#-#-#-# guix.pot (guix manual checkout) #-#-#-#-# #. type: item #: guix-git/doc/contributing.texi:3285 guix-git/doc/guix.texi:3998 #: guix-git/doc/guix.texi:44609 guix-git/doc/guix.texi:44666 #, no-wrap msgid "documentation" msgstr "documentation" #. type: Plain text #: guix-git/doc/contributing.texi:3292 msgid "Guix is documented using the Texinfo system. If you are not yet familiar with it, we accept contributions for documentation in most formats. That includes plain text, Markdown, Org, etc." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:3296 msgid "Documentation contributions can be sent to @email{guix-patches@@gnu.org}. Prepend @samp{[DOCUMENTATION]} to the subject." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:3301 msgid "When you need to make more than a simple addition to the documentation, we prefer that you send a proper patch as opposed to sending an email as described above. @xref{Submitting Patches} for more information on how to send your patches." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:3310 msgid "To modify the documentation, you need to edit @file{doc/guix.texi} and @file{doc/contributing.texi} (which contains this documentation section), or @file{doc/guix-cookbook.texi} for the cookbook. If you compiled the Guix repository before, you will have many more @file{.texi} files that are translations of these documents. Do not modify them, the translation is managed through @uref{https://translate.fedoraproject.org/projects/guix, Weblate}. @xref{Translating Guix} for more information." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:3315 msgid "To render documentation, you must first make sure that you ran @command{./configure} in your source tree (@pxref{Running Guix Before It Is Installed}). After that you can run one of the following commands:" msgstr "" #. type: item #: guix-git/doc/contributing.texi:3317 #, no-wrap msgid "@samp{make doc/guix.info} to compile the Info manual." msgstr "" #. type: itemize #: guix-git/doc/contributing.texi:3319 msgid "You can check it with @command{info doc/guix.info}." msgstr "" #. type: item #: guix-git/doc/contributing.texi:3319 #, no-wrap msgid "@samp{make doc/guix.html} to compile the HTML version." msgstr "" #. type: itemize #: guix-git/doc/contributing.texi:3322 msgid "You can point your browser to the relevant file in the @file{doc/guix.html} directory." msgstr "" #. type: item #: guix-git/doc/contributing.texi:3322 #, no-wrap msgid "@samp{make doc/guix-cookbook.info} for the cookbook Info manual." msgstr "" #. type: item #: guix-git/doc/contributing.texi:3323 #, no-wrap msgid "@samp{make doc/guix-cookbook.html} for the cookbook HTML version." msgstr "" #. type: cindex #: guix-git/doc/contributing.texi:3326 #, no-wrap msgid "translation" msgstr "Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ" #. type: cindex #: guix-git/doc/contributing.texi:3327 #, no-wrap msgid "l10n" msgstr "l10n" #. type: cindex #: guix-git/doc/contributing.texi:3328 #, no-wrap msgid "i18n" msgstr "i18n" #. type: cindex #: guix-git/doc/contributing.texi:3329 #, no-wrap msgid "native language support" msgstr "Π Π°Π±ΠΎΡ‚Π° с языками, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹ΠΌΠΈ gcc." #. type: Plain text #: guix-git/doc/contributing.texi:3339 msgid "Writing code and packages is not the only way to provide a meaningful contribution to Guix. Translating to a language you speak is another example of a valuable contribution you can make. This section is designed to describe the translation process. It gives you advice on how you can get involved, what can be translated, what mistakes you should avoid and what we can do to help you!" msgstr "НаписаниС ΠΊΠΎΠ΄Π° ΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² - Π½Π΅ СдинствСнный способ внСсти Π·Π½Π°Ρ‡ΠΈΠΌΡ‹ΠΉ Π²ΠΊΠ»Π°Π΄ Π² Guix. ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ Π½Π° язык, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π²Ρ‹ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚Π΅---Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ вашСго Ρ†Π΅Π½Π½ΠΎΠ³ΠΎ Π²ΠΊΠ»Π°Π΄Π°. Π­Ρ‚ΠΎΡ‚ Ρ€Π°Π·Π΄Π΅Π» ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для описания процСсса ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π°. Π—Π΄Π΅ΡΡŒ прСдставлСны совСты ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ участиС, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ пСрСвСсти, ΠΊΠ°ΠΊΠΈΡ… ошибок слСдуСт ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ ΠΈ Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Π°ΠΌ ΠΏΠΎΠΌΠΎΡ‡ΡŒ!" #. type: Plain text #: guix-git/doc/contributing.texi:3345 msgid "Guix is a big project that has multiple components that can be translated. We coordinate the translation effort on a @uref{https://translate.fedoraproject.org/projects/guix/,Weblate instance} hosted by our friends at Fedora. You will need an account to submit translations." msgstr "Guix - это большой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, состоящий ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ пСрСвСсти. ΠœΡ‹ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½ΠΈΡ€ΡƒΠ΅ΠΌ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΏΠΎ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Ρƒ Π½Π° @uref{https://translate.fedoraproject.org/projects/guix/,Weblate instance}, Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½Π½ΠΎΠΌ нашими Π΄Ρ€ΡƒΠ·ΡŒΡΠΌΠΈ Π² Fedora. Для ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΎΠ² Π²Π°ΠΌ потрСбуСтся учСтная запись." #. type: Plain text #: guix-git/doc/contributing.texi:3352 msgid "Some of the software packaged in Guix also contain translations. We do not host a translation platform for them. If you want to translate a package provided by Guix, you should contact their developers or find the information on their website. As an example, you can find the homepage of the @code{hello} package by typing @command{guix show hello}. On the ``homepage'' line, you will see @url{https://www.gnu.org/software/hello/} as the homepage." msgstr "НСкотороС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС, ΡƒΠΏΠ°ΠΊΠΎΠ²Π°Π½Π½ΠΎΠ΅ Π² Guix, Ρ‚Π°ΠΊΠΆΠ΅ содСрТит ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Ρ‹. ΠœΡ‹ Π½Π΅ хостим для Π½ΠΈΡ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ для ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π°. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ пСрСвСсти ΠΏΠ°ΠΊΠ΅Ρ‚, прСдоставлСнный Guix, Π²Π°ΠΌ слСдуСт ΡΠ²ΡΠ·Π°Ρ‚ΡŒΡΡ с ΠΈΡ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ ΠΈΠ»ΠΈ Π½Π°ΠΉΡ‚ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π½Π° ΠΈΡ… Π²Π΅Π±-сайтах. НапримСр, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΉΡ‚ΠΈ домашнюю страницу ΠΏΠ°ΠΊΠ΅Ρ‚Π° @code{hello}, Π½Π°Π±Ρ€Π°Π² @command{guix show hello}. Π’ строкС ``домашняя страница'' Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ @url{https://www.gnu.org/software/hello/} Π² качСствС домашнСй страницы." #. type: Plain text #: guix-git/doc/contributing.texi:3357 msgid "Many GNU and non-GNU packages can be translated on the @uref{https://translationproject.org,Translation Project}. Some projects with multiple components have their own platform. For instance, GNOME has its own platform, @uref{https://l10n.gnome.org/,Damned Lies}." msgstr "МногиС ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ GNU ΠΈ Π½Π΅-GNU ΠΌΠΎΠΆΠ½ΠΎ пСрСвСсти Π½Π° @uref{https: //translationproject.org,Translation Project}. НСкоторыС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ с нСсколькими ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ. НапримСр, GNOME ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ @uref{https://l10n.gnome.org/,Damned Lies}." #. type: Plain text #: guix-git/doc/contributing.texi:3359 msgid "Guix has five components hosted on Weblate." msgstr "Guix состоит ΠΈΠ· пяти ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½Π½Ρ‹Ρ… Π½Π° Weblate." #. type: item #: guix-git/doc/contributing.texi:3361 #, no-wrap msgid "@code{guix} contains all the strings from the Guix software (the" msgstr "@code{guix} содСрТит всС строки ΠΈΠ· ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния Guix (" #. type: itemize #: guix-git/doc/contributing.texi:3363 msgid "guided system installer, the package manager, etc), excluding packages." msgstr "установщик систСмы, ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΈ Ρ‚.Π΄.), Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²." #. type: item #: guix-git/doc/contributing.texi:3363 #, no-wrap msgid "@code{packages} contains the synopsis (single-sentence description" msgstr "@code{packages} содСрТит синопсис (описаниС ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ прСдлоТСния" #. type: itemize #: guix-git/doc/contributing.texi:3365 msgid "of a package) and description (longer description) of packages in Guix." msgstr ") ΠΈ (Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅) описаниС ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π² Guix." #. type: item #: guix-git/doc/contributing.texi:3365 #, no-wrap msgid "@code{website} contains the official Guix website, except for" msgstr "@code{website} содСрТит ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ сайт Guix, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ" #. type: itemize #: guix-git/doc/contributing.texi:3367 msgid "blog posts and multimedia content." msgstr "сообщСния Π² Π±Π»ΠΎΠ³Π°Ρ… ΠΈ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈΠΉΠ½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚." #. type: item #: guix-git/doc/contributing.texi:3367 #, no-wrap msgid "@code{documentation-manual} corresponds to this manual." msgstr "@code{documentation-manual} соотвСтствуСт этому руководству." #. type: item #: guix-git/doc/contributing.texi:3368 #, no-wrap msgid "@code{documentation-cookbook} is the component for the cookbook." msgstr "@code{documentation-cookbook} - ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ для ΠΏΠΎΠ²Π°Ρ€Π΅Π½Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ." #. type: subsubheading #: guix-git/doc/contributing.texi:3371 #, no-wrap msgid "General Directions" msgstr "поколСния" #. type: Plain text #: guix-git/doc/contributing.texi:3379 msgid "Once you get an account, you should be able to select a component from @uref{https://translate.fedoraproject.org/projects/guix/,the guix project}, and select a language. If your language does not appear in the list, go to the bottom and click on the ``Start new translation'' button. Select the language you want to translate to from the list, to start your new translation." msgstr "ПослС создания ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи Π²Ρ‹ смоТСтС Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ΠΈΠ· @uref{https://translate.fedoraproject.org/projects/guix/,the guix project} ΠΈ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ язык. Если вашСго языка Π½Π΅Ρ‚ Π² спискС, ΠΏΡ€ΠΎΠΉΠ΄ΠΈΡ‚Π΅ Π²Π½ΠΈΠ· ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ ``ΠΠ°Ρ‡Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄''. Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΈΠ· списка язык, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ пСрСвСсти, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°Ρ‡Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄." #. type: Plain text #: guix-git/doc/contributing.texi:3384 msgid "Like lots of other free software packages, Guix uses @uref{https://www.gnu.org/software/gettext,GNU Gettext} for its translations, with which translatable strings are extracted from the source code to so-called PO files." msgstr "Как ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ бСсплатныС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹, Guix ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ @uref{https://www.gnu.org/software/gettext,GNU Gettext} для своих ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΎΠ², с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΠΌΡ‹Π΅ строки ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡŽΡ‚ΡΡ ΠΈΠ· исходного ΠΊΠΎΠ΄Π° Π² Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ PO-Ρ„Π°ΠΉΠ»Ρ‹." #. type: Plain text #: guix-git/doc/contributing.texi:3395 msgid "Even though PO files are text files, changes should not be made with a text editor but with PO editing software. Weblate integrates PO editing functionality. Alternatively, translators can use any of various free-software tools for filling in translations, of which @uref{https://poedit.net/,Poedit} is one example, and (after logging in) @uref{https://docs.weblate.org/en/latest/user/files.html,upload} the changed file. There is also a special @uref{https://www.emacswiki.org/emacs/PoMode,PO editing mode} for users of GNU Emacs. Over time translators find out what software they are happy with and what features they need." msgstr "НСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Ρ„Π°ΠΉΠ»Ρ‹ PO ΡΠ²Π»ΡΡŽΡ‚ΡΡ тСкстовыми Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ, измСнСния слСдуСт Π²Π½ΠΎΡΠΈΡ‚ΡŒ Π½Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ тСкстового Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π°, Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния для рСдактирования PO. Weblate ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ рСдактирования PO. Π’ качСствС Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ любой ΠΈΠ· Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… бСсплатных ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… инструмСнтов для заполнСния ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΎΠ², ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… являСтся @uref{https://poedit.net/,Poedit} ΠΈ (послС Π²Ρ…ΠΎΠ΄Π° Π² систСму) @uref{https://docs.weblate.org/en/latest/user/files.html, Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ} ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ». БущСствуСт Ρ‚Π°ΠΊΠΆΠ΅ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ @uref {https://www.emacswiki.org/emacs/PoMode,PO Ρ€Π΅ΠΆΠΈΠΌ рСдактирования} для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ GNU Emacs. Π‘ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Ρ‡ΠΈΠΊΠΈ ΡƒΠ·Π½Π°ΡŽΡ‚, ΠΊΠ°ΠΊΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС ΠΈΠΌ нравится ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠΌ Π½ΡƒΠΆΠ½Ρ‹." #. type: Plain text #: guix-git/doc/contributing.texi:3400 msgid "On Weblate, you will find various links to the editor, that will show various subsets (or all) of the strings. Have a look around and at the @uref{https://docs.weblate.org/en/latest/,documentation} to familiarize yourself with the platform." msgstr "На Weblate Π²Ρ‹ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ссылки Π½Π° Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ подмноТСства (ΠΈΠ»ΠΈ всС) строк (-ΠΈ). ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ Π²ΠΎΠΊΡ€ΡƒΠ³ ΠΈ Π½Π° @uref{https://docs.weblate.org/en/latest/,documentation}, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΎΠΉ." #. type: subsubheading #: guix-git/doc/contributing.texi:3401 #, no-wrap msgid "Translation Components" msgstr "ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π°" #. type: Plain text #: guix-git/doc/contributing.texi:3406 msgid "In this section, we provide more detailed guidance on the translation process, as well as details on what you should or should not do. When in doubt, please contact us, we will be happy to help!" msgstr "Π’ этом Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΌΡ‹ Π΄Π°Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹Π΅ инструкции ΠΏΠΎ процСссу ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ подробности ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ слСдуСт ΠΈΠ»ΠΈ Π½Π΅ слСдуСт Π΄Π΅Π»Π°Ρ‚ΡŒ. Π’ случаС сомнСний ΡΠ²ΡΠΆΠΈΡ‚Π΅ΡΡŒ с Π½Π°ΠΌΠΈ, ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Ρ€Π°Π΄Ρ‹ ΠΏΠΎΠΌΠΎΡ‡ΡŒ!" #. type: table #: guix-git/doc/contributing.texi:3413 #, fuzzy #| msgid "Guix is written in the Guile programming language, and some strings contain special formating that is interpreted by Guile. These special formating should be highlighted by Weblate. They start with @code{~} followed by one or more characters." msgid "Guix is written in the Guile programming language, and some strings contain special formatting that is interpreted by Guile. These special formatting should be highlighted by Weblate. They start with @code{~} followed by one or more characters." msgstr "Guix написан Π½Π° языкС программирования Guile, ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ строки содСрТат ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ интСрпрСтируСтся Guile. Weblate Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ эти особСнности форматирования. Они Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с @code{~}, Π·Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ слСдуСт ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ нСсколько символов." #. type: table #: guix-git/doc/contributing.texi:3422 #, fuzzy #| msgid "When printing the string, Guile replaces the special formating symbols with actual values. For instance, the string @samp{ambiguous package specification `~a'} would be substituted to contain said package specification instead of @code{~a}. To properly translate this string, you must keep the formating code in your translation, although you can place it where it makes sense in your language. For instance, the French translation says @samp{spΓ©cification du paquet Β« ~a Β» ambiguΓ«} because the adjective needs to be placed in the end of the sentence." msgid "When printing the string, Guile replaces the special formatting symbols with actual values. For instance, the string @samp{ambiguous package specification `~a'} would be substituted to contain said package specification instead of @code{~a}. To properly translate this string, you must keep the formatting code in your translation, although you can place it where it makes sense in your language. For instance, the French translation says @samp{spΓ©cification du paquet Β« ~a Β» ambiguΓ«} because the adjective needs to be placed in the end of the sentence." msgstr "ΠŸΡ€ΠΈ ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ строки Guile замСняСт ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ символы форматирования фактичСскими значСниями. НапримСр, строка @samp{ambiguous package specification `~a'} Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΌΠ΅Π½Π΅Π½Π° Π½Π° ΡƒΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ ΡΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΏΠ°ΠΊΠ΅Ρ‚Π° вмСсто @code{~a}. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ пСрСвСсти эту строку, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ форматирования Π² своСм ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π΅, хотя Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Ρ‚Π°ΠΌ, Π³Π΄Π΅ это ΠΈΠΌΠ΅Π΅Ρ‚ смысл Π½Π° вашСм языкС. НапримСр, Π²ΠΎ французском ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π΅ написано @samp{spΓ©cification du paquet Β« ~a Β» ambiguΓ«}, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»Π°Π³Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π² ΠΊΠΎΠ½Π΅Ρ† прСдлоТСния." #. type: table #: guix-git/doc/contributing.texi:3426 #, fuzzy #| msgid "If there are multiple formating symbols, make sure to respect the order. Guile does not know in which order you intended the string to be read, so it will substitute the symbols in the same order as the English sentence." msgid "If there are multiple formatting symbols, make sure to respect the order. Guile does not know in which order you intended the string to be read, so it will substitute the symbols in the same order as the English sentence." msgstr "Если имССтся нСсколько символов форматирования, ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΡΠΎΠ±Π»ΡŽΠ΄Π°ΠΉΡ‚Π΅ порядок. Guile Π½Π΅ Π·Π½Π°Π΅Ρ‚, Π² ΠΊΠ°ΠΊΠΎΠΌ порядкС Π²Ρ‹ Ρ…ΠΎΡ‚Π΅Π»ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ строку, поэтому Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ символы Π² Ρ‚ΠΎΠΌ ΠΆΠ΅ порядкС, Ρ‡Ρ‚ΠΎ ΠΈ английскоС ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅." #. type: table #: guix-git/doc/contributing.texi:3434 #, fuzzy #| msgid "As an example, you cannot translate @samp{package '~a' has been superseded by '~a'} by @samp{'~a' superseeds package '~a'}, because the meaning would be reversed. If @var{foo} is superseded by @var{bar}, the translation would read @samp{'foo' superseeds package 'bar'}. To work around this problem, it is possible to use more advanced formating to select a given piece of data, instead of following the default English order. @xref{Formatted Output,,, guile, GNU Guile Reference Manual}, for more information on formating in Guile." msgid "As an example, you cannot translate @samp{package '~a' has been superseded by '~a'} by @samp{'~a' superseeds package '~a'}, because the meaning would be reversed. If @var{foo} is superseded by @var{bar}, the translation would read @samp{'foo' superseeds package 'bar'}. To work around this problem, it is possible to use more advanced formatting to select a given piece of data, instead of following the default English order. @xref{Formatted Output,,, guile, GNU Guile Reference Manual}, for more information on formatting in Guile." msgstr "НапримСр, Π²Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ пСрСвСсти @samp{package '~a' has been superseded by '~a'} Π½Π° @samp{'~a' superseeds package '~a'}, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΌ. Если @var{foo} замСняСтся Π½Π° @var{bar}, ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΠΊΠ°ΠΊ @samp{'foo' замСняСтся ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠΌ 'bar'}. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±ΠΎΠΉΡ‚ΠΈ эту ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ слоТноС Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ для Π²Ρ‹Π±ΠΎΡ€Π° Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π° Π΄Π°Π½Π½Ρ‹Ρ… вмСсто Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ английскому порядку ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. Π‘ΠΌ. @xref{Formatted Output,,, guile, GNU Guile Reference Manual}, для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π² Guile." #. #-#-#-#-# contributing.pot (guix manual checkout) #-#-#-#-# #. type: item #. #-#-#-#-# guix.pot (guix manual checkout) #-#-#-#-# #. type: cindex #: guix-git/doc/contributing.texi:3435 guix-git/doc/guix.texi:2883 #, no-wrap msgid "packages" msgstr "ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹" #. type: table #: guix-git/doc/contributing.texi:3440 msgid "Package descriptions occasionally contain Texinfo markup (@pxref{Synopses and Descriptions}). Texinfo markup looks like @samp{@@code@{rm -rf@}}, @samp{@@emph@{important@}}, etc. When translating, please leave markup as is." msgstr "Описания ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΈΠ½ΠΎΠ³Π΄Π° содСрТат Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΡƒ Texinfo (@pxref{Synopses and Descriptions}). Π Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ° Texinfo выглядит ΠΊΠ°ΠΊ @samp{@@code@{rm -rf@}}, @samp{@@emph@{important@}} ΠΈ Ρ‚.Π΄. ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π΅ оставляйтС Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΡƒ ΠΊΠ°ΠΊ Π΅ΡΡ‚ΡŒ." #. type: table #: guix-git/doc/contributing.texi:3449 #, fuzzy #| msgid "The characters after ``@@'' form the name of the markup, and the text between ``@{'' and ``@}'' is its content. In general, you should not translate the content of markup like @code{@@code}, as it contains literal code that do not change with language. You can translate the content of formating markup such as @code{@@emph}, @code{@@i}, @code{@@itemize}, @code{@@item}. However, do not translate the name of the markup, or it will not be recognized. Do not translate the word after @code{@@end}, it is the name of the markup that is closed at this position (e.g.@: @code{@@itemize ... @@end itemize})." msgid "The characters after ``@@'' form the name of the markup, and the text between ``@{'' and ``@}'' is its content. In general, you should not translate the content of markup like @code{@@code}, as it contains literal code that do not change with language. You can translate the content of formatting markup such as @code{@@emph}, @code{@@i}, @code{@@itemize}, @code{@@item}. However, do not translate the name of the markup, or it will not be recognized. Do not translate the word after @code{@@end}, it is the name of the markup that is closed at this position (e.g.@: @code{@@itemize ... @@end itemize})." msgstr "Π‘ΠΈΠΌΠ²ΠΎΠ»Ρ‹ послС ``@@'' ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‚ имя Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ, Π° тСкст ΠΌΠ΅ΠΆΠ΄Ρƒ ``@{'' ΠΈ ``@}''---это Π΅Π΅ содСрТимоС. Π’ ΠΎΠ±Ρ‰Π΅ΠΌ, Π²Π°ΠΌ Π½Π΅ слСдуСт ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ΡŒ содСрТимоС, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ @code{@@code}, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ΠΎ содСрТит ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ мСняСтся Π² зависимости ΠΎΡ‚ языка. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ΡŒ содСрТаниС Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΡƒΡŽΡ‰Π΅ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ @code{@@emph}, @code{@@i}, @code{@@itemize}, @code{@@item}. Однако Π½Π΅ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚Π΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ, ΠΈΠ½Π°Ρ‡Π΅ ΠΎΠ½ΠΎ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ распознано. НС ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚Π΅ слово послС @code{@@end}, это имя Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ, которая закрываСтся Π² этой ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, @: @code{@@itemize ... @@end itemize})." #. type: item #: guix-git/doc/contributing.texi:3450 #, no-wrap msgid "documentation-manual and documentation-cookbook" msgstr "documentation-manual and documentation-cookbook" #. type: table #: guix-git/doc/contributing.texi:3454 msgid "The first step to ensure a successful translation of the manual is to find and translate the following strings @emph{first}:" msgstr "ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ шаг ΠΊ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΌΡƒ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Ρƒ руководства---Π½Π°ΠΉΡ‚ΠΈ ΠΈ пСрСвСсти ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ строки @emph{ΠΏΠ΅Ρ€Π²Ρ‹ΠΌΠΈ}:" #. type: item #: guix-git/doc/contributing.texi:3456 #, no-wrap msgid "@code{version.texi}: Translate this string as @code{version-xx.texi}," msgstr "@code{version.texi}: ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄ΠΈΡ‚Π΅ эту строку ΠΊΠ°ΠΊ @code{version-xx.texi}," #. type: itemize #: guix-git/doc/contributing.texi:3459 msgid "where @code{xx} is your language code (the one shown in the URL on weblate)." msgstr "Π³Π΄Π΅ @code{xx}---ΠΊΠΎΠ΄ вашСго языка (Ρ‚ΠΎΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠΊΠ°Π·Π°Π½ Π² URL-адрСсС Π½Π° weblate)." #. type: item #: guix-git/doc/contributing.texi:3459 #, no-wrap msgid "@code{contributing.texi}: Translate this string as" msgstr "@code{contributing.texi}: ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄ΠΈΡ‚Π΅ эту строку ΠΊΠ°ΠΊ" #. type: itemize #: guix-git/doc/contributing.texi:3461 msgid "@code{contributing.xx.texi}, where @code{xx} is the same language code." msgstr "@code{contributing.xx.texi}, Π³Π΄Π΅ @code {xx} - ΠΊΠΎΠ΄ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ языка." #. type: item #: guix-git/doc/contributing.texi:3461 #, no-wrap msgid "@code{Top}: Do not translate this string, it is important for Texinfo." msgstr "@code{Top}: НС ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚Π΅ эту строку, это Π²Π°ΠΆΠ½ΠΎ для Texinfo." #. type: itemize #: guix-git/doc/contributing.texi:3464 msgid "If you translate it, the document will be empty (missing a Top node). Please look for it, and register @code{Top} as its translation." msgstr "Если Π²Ρ‹ ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Π΅Ρ‚Π΅ Π΅Π³ΠΎ, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ пустым (missing a Top node). НайдитС Π΅Π³ΠΎ ΠΈ зарСгистрируйтС @code{Top} Π² качСствС Π΅Π³ΠΎ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π°." #. type: table #: guix-git/doc/contributing.texi:3469 msgid "Translating these strings first ensure we can include your translation in the guix repository without breaking the make process or the @command{guix pull} machinery." msgstr "ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ этих строк Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ смоТСм Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ваш ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ guix, Π½Π΅ Π½Π°Ρ€ΡƒΡˆΠ°Ρ процСсс make ΠΈΠ»ΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ @command{guix pull}." #. type: table #: guix-git/doc/contributing.texi:3476 #, fuzzy #| msgid "The manual and the cookbook both use Texinfo. As for @code{packages}, please keep Texinfo markup as is. There are more possible markup types in the manual than in the package descriptions. In general, do not translate the content of @code{@@code}, @code{@@file}, @code{@@var}, @code{@@value}, etc. You should translate the content of formating markup such as @code{@@emph}, @code{@@i}, etc." msgid "The manual and the cookbook both use Texinfo. As for @code{packages}, please keep Texinfo markup as is. There are more possible markup types in the manual than in the package descriptions. In general, do not translate the content of @code{@@code}, @code{@@file}, @code{@@var}, @code{@@value}, etc. You should translate the content of formatting markup such as @code{@@emph}, @code{@@i}, etc." msgstr "И Π² руководствС, ΠΈ Π² cookbook ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Texinfo. Π§Ρ‚ΠΎ касаСтся @code{packages}, поТалуйста, ΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΡƒ Texinfo ΠΊΠ°ΠΊ Π΅ΡΡ‚ΡŒ. Π’ руководствС большС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ, Ρ‡Π΅ΠΌ Π² описаниях ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ². Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Π½Π΅ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚Π΅ содСрТимоС @code{@@code}, @code{@@file}, @code{@@var}, @code{@@value} ΠΈ Ρ‚.Π΄. Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ΡŒ содСрТимоС Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΎΠΊ форматирования, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ @code{@@emph}, @code{@@i} ΠΈ Ρ‚.Π΄." #. type: table #: guix-git/doc/contributing.texi:3484 #, fuzzy #| msgid "The manual contains sections that can be refered to by name by @code{@@ref}, @code{@@xref} and @code{@@pxref}. We have a mechanism in place so you do not have to translate their content. If you keep the English title, we will automatically replace it with your translation of that title. This ensures that Texinfo will always be able to find the node. If you decide to change the translation of the title, the references will automatically be updated and you will not have to update them all yourself." msgid "The manual contains sections that can be referred to by name by @code{@@ref}, @code{@@xref} and @code{@@pxref}. We have a mechanism in place so you do not have to translate their content. If you keep the English title, we will automatically replace it with your translation of that title. This ensures that Texinfo will always be able to find the node. If you decide to change the translation of the title, the references will automatically be updated and you will not have to update them all yourself." msgstr "Π’ руководствС Π΅ΡΡ‚ΡŒ Ρ€Π°Π·Π΄Π΅Π»Ρ‹, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΡ‹Π»Π°Ρ‚ΡŒΡΡ ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ @code{@@ref}, @code{@@xref} ΠΈ @code{@@pxref}. Π£ нас Π΅ΡΡ‚ΡŒ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ Π½Π΅ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΈΡ… содСрТаниС. Если Π²Ρ‹ сохранитС Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π½Π° английском языкС, ΠΌΡ‹ автоматичСски Π·Π°ΠΌΠ΅Π½ΠΈΠΌ Π΅Π³ΠΎ вашим ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΎΠΌ этого Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°. Π­Ρ‚ΠΎ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ Texinfo всСгда смоТСт Π½Π°ΠΉΡ‚ΠΈ ΡƒΠ·Π΅Π». Если Π²Ρ‹ Ρ€Π΅ΡˆΠΈΡ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°, ссылки Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Ρ‹ автоматичСски, ΠΈ Π²Π°ΠΌ Π½Π΅ придСтся ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ ΠΈΡ… всС ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ." #. type: table #: guix-git/doc/contributing.texi:3494 msgid "When translating references from the cookbook to the manual, you need to replace the name of the manual and the name of the section. For instance, to translate @code{@@pxref@{Defining Packages,,, guix, GNU Guix Reference Manual@}}, you would replace @code{Defining Packages} with the title of that section in the translated manual @emph{only} if that title is translated. If the title is not translated in your language yet, do not translate it here, or the link will be broken. Replace @code{guix} with @code{guix.xx} where @code{xx} is your language code. @code{GNU Guix Reference Manual} is the text of the link. You can translate it however you wish." msgstr "ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π΅ ссылок ΠΈΠ· cookbook Π² ΠΌΠ°Π½ΡƒΠ°Π» Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΌΠ°Π½ΡƒΠ°Π»Π° ΠΈ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Ρ€Π°Π·Π΄Π΅Π»Π°. НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ пСрСвСсти @code{@@pxref@{Defining Packages,,, guix, GNU Guix Reference Manual@}}, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ@code{Defining Packages} Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠΌ этого Ρ€Π°Π·Π΄Π΅Π»Π° Π² ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Π΅Π½Π½ΠΎΠΌ руководствС @emph{Ρ‚ΠΎΠ»ΡŒΠΊΠΎ} Ссли это Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Π΅Π½ΠΎ. Если Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π΅Ρ‰Π΅ Π½Π΅ ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Π΅Π½ΠΎ Π½Π° ваш язык, Π½Π΅ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚Π΅ Π΅Π³ΠΎ здСсь, ΠΈΠ½Π°Ρ‡Π΅ ссылка Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅ΠΉ. Π—Π°ΠΌΠ΅Π½ΠΈΡ‚Π΅ @code{guix} Π½Π° @code{guix.xx}, Π³Π΄Π΅ @code{xx} - ΠΊΠΎΠ΄ вашСго языка. @code{GNU Guix Reference Manual}---это тСкст ссылки. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ пСрСвСсти Π΅Π³ΠΎ ΠΊΠ°ΠΊ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅." #. type: item #: guix-git/doc/contributing.texi:3495 #, no-wrap msgid "website" msgstr "ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π²Π΅Π±-сайт" #. type: table #: guix-git/doc/contributing.texi:3502 msgid "The website pages are written using SXML, an s-expression version of HTML, the basic language of the web. We have a process to extract translatable strings from the source, and replace complex s-expressions with a more familiar XML markup, where each markup is numbered. Translators can arbitrarily change the ordering, as in the following example." msgstr "Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Ρ‹ Π²Π΅Π±-сайта написаны с использованиСм SXML, вСрсии HTML (основного языка Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π°) с s-выраТСниями. Π£ нас Π΅ΡΡ‚ΡŒ процСсс извлСчСния ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΠΌΡ‹Ρ… строк ΠΈΠ· источника ΠΈ Π·Π°ΠΌΠ΅Π½Ρ‹ слоТных s-Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π½Π° Π±ΠΎΠ»Π΅Π΅ Π·Π½Π°ΠΊΠΎΠΌΡƒΡŽ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΡƒ XML, Π³Π΄Π΅ каТдая Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ° ΠΏΡ€ΠΎΠ½ΡƒΠΌΠ΅Ρ€ΠΎΠ²Π°Π½Π°. ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ порядок, ΠΊΠ°ΠΊ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅." #. type: example #: guix-git/doc/contributing.texi:3509 #, no-wrap msgid "" "#. TRANSLATORS: Defining Packages is a section name\n" "#. in the English (en) manual.\n" "#: apps/base/templates/about.scm:64\n" "msgid \"Packages are <1>defined<1.1>en</1.1><1.2>Defining-Packages.html</1.2></1> as native <2>Guile</2> modules.\"\n" "msgstr \"Pakete werden als reine <2>Guile</2>-Module <1>definiert<1.1>de</1.1><1.2>Pakete-definieren.html</1.2></1>.\"\n" msgstr "" "#. TRANSLATORS: Defining Packages is a section name\n" "#. in the English (en) manual.\n" "#: apps/base/templates/about.scm:64\n" "msgid \"Packages are <1>defined<1.1>en</1.1><1.2>Defining-Packages.html</1.2></1> as native <2>Guile</2> modules.\"\n" "msgstr \"Pakete werden als reine <2>Guile</2>-Module <1>definiert<1.1>de</1.1><1.2>Pakete-definieren.html</1.2></1>.\"\n" #. type: table #: guix-git/doc/contributing.texi:3512 msgid "Note that you need to include the same markups. You cannot skip any." msgstr "ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ ΠΆΠ΅ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ. Π’Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½ΠΈΡ‡Π΅Π³ΠΎ ΠΏΡ€ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ." #. type: Plain text #: guix-git/doc/contributing.texi:3520 msgid "In case you make a mistake, the component might fail to build properly with your language, or even make guix pull fail. To prevent that, we have a process in place to check the content of the files before pushing to our repository. We will not be able to update the translation for your language in Guix, so we will notify you (through weblate and/or by email) so you get a chance to fix the issue." msgstr "Если Π²Ρ‹ допустили ΠΎΡˆΠΈΠ±ΠΊΡƒ, ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ с вашим языком ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ привСсти ΠΊ сбою guix pull. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ это, Ρƒ нас Π΅ΡΡ‚ΡŒ процСсс ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ содСрТимого Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΏΠ΅Ρ€Π΅Π΄ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΎΠΉ Π² наш Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Если, ΠΌΡ‹ Π½Π΅ смоТСм ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ для вашСго языка Π² Guix, ΠΌΡ‹ ΡƒΠ²Π΅Π΄ΠΎΠΌΠΈΠΌ вас (Ρ‡Π΅Ρ€Π΅Π· Π²Π΅Π±-сайт ΠΈ/ΠΈΠ»ΠΈ ΠΏΠΎ элСктронной ΠΏΠΎΡ‡Ρ‚Π΅), Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ." #. type: subsubheading #: guix-git/doc/contributing.texi:3521 #, no-wrap msgid "Outside of Weblate" msgstr "Π’Π½Π΅ Weblate" #. type: Plain text #: guix-git/doc/contributing.texi:3524 msgid "Currently, some parts of Guix cannot be translated on Weblate, help wanted!" msgstr "Π’ настоящСС врСмя Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ части Guix Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Π΅Π½Ρ‹ Π½Π° Weblate---трСбуСтся ΠΏΠΎΠΌΠΎΡ‰ΡŒ!" #. type: item #: guix-git/doc/contributing.texi:3526 #, no-wrap msgid "@command{guix pull} news can be translated in @file{news.scm}, but is not" msgstr "@command{guix pull} новости ΠΌΠΎΠΆΠ½ΠΎ пСрСвСсти Π² @file{news.scm}, Π½ΠΎ Π½Π΅" #. type: itemize #: guix-git/doc/contributing.texi:3532 msgid "available from Weblate. If you want to provide a translation, you can prepare a patch as described above, or simply send us your translation with the name of the news entry you translated and your language. @xref{Writing Channel News}, for more information about channel news." msgstr "" #. type: item #: guix-git/doc/contributing.texi:3532 #, no-wrap msgid "Guix blog posts cannot currently be translated." msgstr "" #. type: item #: guix-git/doc/contributing.texi:3533 #, no-wrap msgid "The installer script (for foreign distributions) is entirely in English." msgstr "" #. type: item #: guix-git/doc/contributing.texi:3534 #, no-wrap msgid "Some of the libraries Guix uses cannot be translated or are translated" msgstr "" #. type: itemize #: guix-git/doc/contributing.texi:3536 msgid "outside of the Guix project. Guile itself is not internationalized." msgstr "" #. type: item #: guix-git/doc/contributing.texi:3536 #, no-wrap msgid "Other manuals linked from this manual or the cookbook might not be" msgstr "" #. type: itemize #: guix-git/doc/contributing.texi:3538 msgid "translated." msgstr "Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ" #. type: subsubheading #: guix-git/doc/contributing.texi:3540 #, no-wrap msgid "Conditions for Inclusion" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:3547 msgid "There are no conditions for adding new translations of the @code{guix} and @code{guix-packages} components, other than they need at least one translated string. New languages will be added to Guix as soon as possible. The files may be removed if they fall out of sync and have no more translated strings." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:3553 msgid "Given that the web site is dedicated to new users, we want its translation to be as complete as possible before we include it in the language menu. For a new language to be included, it needs to reach at least 80% completion. When a language is included, it may be removed in the future if it stays out of sync and falls below 60% completion." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:3561 msgid "The manual and cookbook are automatically added in the default compilation target. Every time we synchronize translations, developers need to recompile all the translated manuals and cookbooks. This is useless for what is essentially the English manual or cookbook. Therefore, we will only include a new language when it reaches 10% completion in the component. When a language is included, it may be removed in the future if it stays out of sync and falls below 5% completion." msgstr "" #. type: subsubheading #: guix-git/doc/contributing.texi:3562 #, no-wrap msgid "Translation Infrastructure" msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:3573 msgid "Weblate is backed by a git repository from which it discovers new strings to translate and pushes new and updated translations. Normally, it would be enough to give it commit access to our repositories. However, we decided to use a separate repository for two reasons. First, we would have to give Weblate commit access and authorize its signing key, but we do not trust it in the same way we trust guix developers, especially since we do not manage the instance ourselves. Second, if translators mess something up, it can break the generation of the website and/or guix pull for all our users, independently of their language." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:3577 msgid "For these reasons, we use a dedicated repository to host translations, and we synchronize it with our guix and artworks repositories after checking no issue was introduced in the translation." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:3583 msgid "Developers can download the latest PO files from weblate in the Guix repository by running the @command{make download-po} command. It will automatically download the latest files from weblate, reformat them to a canonical form, and check they do not contain issues. The manual needs to be built again to check for additional issues that might crash Texinfo." msgstr "" #. type: Plain text #: guix-git/doc/contributing.texi:3587 msgid "Before pushing new translation files, developers should add them to the make machinery so the translations are actually available. The process differs for the various components." msgstr "" #. type: item #: guix-git/doc/contributing.texi:3589 #, no-wrap msgid "New po files for the @code{guix} and @code{packages} components must" msgstr "" #. type: itemize #: guix-git/doc/contributing.texi:3592 msgid "be registered by adding the new language to @file{po/guix/LINGUAS} or @file{po/packages/LINGUAS}." msgstr "" #. type: item #: guix-git/doc/contributing.texi:3592 #, no-wrap msgid "New po files for the @code{documentation-manual} component must be" msgstr "" #. type: itemize #: guix-git/doc/contributing.texi:3598 msgid "registered by adding the file name to @code{DOC_PO_FILES} in @file{po/doc/local.mk}, the generated @file{%D%/guix.xx.texi} manual to @code{info_TEXINFOS} in @file{doc/local.mk} and the generated @file{%D%/guix.xx.texi} and @file{%D%/contributing.xx.texi} to @code{TRANSLATED_INFO} also in @file{doc/local.mk}." msgstr "" #. type: item #: guix-git/doc/contributing.texi:3598 #, no-wrap msgid "New po files for the @code{documentation-cookbook} component must be" msgstr "" #. type: itemize #: guix-git/doc/contributing.texi:3604 msgid "registered by adding the file name to @code{DOC_COOKBOOK_PO_FILES} in @file{po/doc/local.mk}, the generated @file{%D%/guix-cookbook.xx.texi} manual to @code{info_TEXINFOS} in @file{doc/local.mk} and the generated @file{%D%/guix-cookbook.xx.texi} to @code{TRANSLATED_INFO} also in @file{doc/local.mk}." msgstr "" #. type: item #: guix-git/doc/contributing.texi:3604 #, no-wrap msgid "New po files for the @code{website} component must be added to the" msgstr "" #. type: itemize #: guix-git/doc/contributing.texi:3609 msgid "@code{guix-artwork} repository, in @file{website/po/}. @file{website/po/LINGUAS} and @file{website/po/ietf-tags.scm} must be updated accordingly (see @file{website/i18n-howto.txt} for more information on the process)." msgstr "" #. type: Plain text #: guix-git/doc/guix.texi:7 msgid "@documentencoding UTF-8" msgstr "@documentencoding UTF-8" #. type: title #: guix-git/doc/guix.texi:7 guix-git/doc/guix.texi:165 #, no-wrap msgid "GNU Guix Reference Manual" msgstr "Руководство ΠΏΠΎ GNU Guix" #. type: include #: guix-git/doc/guix.texi:10 #, no-wrap msgid "version.texi" msgstr "version-ru.texi" #. type: copying #: guix-git/doc/guix.texi:137 #, fuzzy msgid "Copyright @copyright{} 2012-2024 Ludovic CourtΓ¨s@* Copyright @copyright{} 2013, 2014, 2016, 2024 Andreas Enge@* Copyright @copyright{} 2013 Nikita Karetnikov@* Copyright @copyright{} 2014, 2015, 2016 Alex Kost@* Copyright @copyright{} 2015, 2016 Mathieu Lirzin@* Copyright @copyright{} 2014 Pierre-Antoine Rault@* Copyright @copyright{} 2015 Taylan Ulrich BayΔ±rlΔ±/Kammer@* Copyright @copyright{} 2015, 2016, 2017, 2019, 2020, 2021, 2023 Leo Famulari@* Copyright @copyright{} 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023 Ricardo Wurmus@* Copyright @copyright{} 2016 Ben Woodcroft@* Copyright @copyright{} 2016, 2017, 2018, 2021 Chris Marusich@* Copyright @copyright{} 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023 Efraim Flashner@* Copyright @copyright{} 2016 John Darrington@* Copyright @copyright{} 2016, 2017 Nikita Gillmann@* Copyright @copyright{} 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023 Jan Nieuwenhuizen@* Copyright @copyright{} 2016, 2017, 2018, 2019, 2020, 2021 Julien Lepiller@* Copyright @copyright{} 2016 Alex ter Weele@* Copyright @copyright{} 2016, 2017, 2018, 2019, 2020, 2021 Christopher Baines@* Copyright @copyright{} 2017, 2018, 2019 ClΓ©ment Lassieur@* Copyright @copyright{} 2017, 2018, 2020, 2021, 2022 Mathieu Othacehe@* Copyright @copyright{} 2017 Federico Beffa@* Copyright @copyright{} 2017, 2018, 2024 Carlo Zancanaro@* Copyright @copyright{} 2017 Thomas Danckaert@* Copyright @copyright{} 2017 humanitiesNerd@* Copyright @copyright{} 2017, 2021 Christine Lemmer-Webber@* Copyright @copyright{} 2017, 2018, 2019, 2020, 2021, 2022 Marius Bakke@* Copyright @copyright{} 2017, 2019, 2020, 2022 Hartmut Goebel@* Copyright @copyright{} 2017, 2019, 2020, 2021, 2022, 2023, 2024 Maxim Cournoyer@* Copyright @copyright{} 2017–2022 Tobias Geerinckx-Rice@* Copyright @copyright{} 2017 George Clemmer@* Copyright @copyright{} 2017 Andy Wingo@* Copyright @copyright{} 2017, 2018, 2019, 2020, 2023, 2024 Arun Isaac@* Copyright @copyright{} 2017 nee@* Copyright @copyright{} 2018 Rutger Helling@* Copyright @copyright{} 2018, 2021, 2023 Oleg Pykhalov@* Copyright @copyright{} 2018 Mike Gerwitz@* Copyright @copyright{} 2018 Pierre-Antoine Rouby@* Copyright @copyright{} 2018, 2019 GΓ‘bor Boskovits@* Copyright @copyright{} 2018, 2019, 2020, 2022, 2023, 2024 Florian Pelz@* Copyright @copyright{} 2018 Laura Lazzati@* Copyright @copyright{} 2018 Alex Vong@* Copyright @copyright{} 2019 Josh Holland@* Copyright @copyright{} 2019, 2020 Diego Nicola Barbato@* Copyright @copyright{} 2019 Ivan Petkov@* Copyright @copyright{} 2019 Jakob L. Kreuze@* Copyright @copyright{} 2019 Kyle Andrews@* Copyright @copyright{} 2019 Alex Griffin@* Copyright @copyright{} 2019, 2020, 2021, 2022 Guillaume Le Vaillant@* Copyright @copyright{} 2020 Liliana Marie Prikler@* Copyright @copyright{} 2019, 2020, 2021, 2022, 2023 Simon Tournier@* Copyright @copyright{} 2020 Wiktor Ε»elazny@* Copyright @copyright{} 2020 Damien Cassou@* Copyright @copyright{} 2020 Jakub KΔ…dzioΕ‚ka@* Copyright @copyright{} 2020 Jack Hill@* Copyright @copyright{} 2020 Naga Malleswari@* Copyright @copyright{} 2020, 2021 Brice Waegeneire@* Copyright @copyright{} 2020 R Veera Kumar@* Copyright @copyright{} 2020, 2021, 2022 Pierre Langlois@* Copyright @copyright{} 2020 pinoaffe@* Copyright @copyright{} 2020, 2023 AndrΓ© Batista@* Copyright @copyright{} 2020, 2021 Alexandru-Sergiu Marton@* Copyright @copyright{} 2020 raingloom@* Copyright @copyright{} 2020 Daniel Brooks@* Copyright @copyright{} 2020 John Soo@* Copyright @copyright{} 2020 Jonathan Brielmaier@* Copyright @copyright{} 2020 Edgar Vincent@* Copyright @copyright{} 2021, 2022 Maxime Devos@* Copyright @copyright{} 2021 B. Wilson@* Copyright @copyright{} 2021 Xinglu Chen@* Copyright @copyright{} 2021 Raghav Gururajan@* Copyright @copyright{} 2021 Domagoj Stolfa@* Copyright @copyright{} 2021 Hui Lu@* Copyright @copyright{} 2021 pukkamustard@* Copyright @copyright{} 2021 Alice Brenon@* Copyright @copyright{} 2021-2023 Josselin Poiret@* Copyright @copyright{} 2021, 2023 muradm@* Copyright @copyright{} 2021, 2022 Andrew Tropin@* Copyright @copyright{} 2021 Sarah Morgensen@* Copyright @copyright{} 2022 Remco van 't Veer@* Copyright @copyright{} 2022 Aleksandr Vityazev@* Copyright @copyright{} 2022 Philip M@sup{c}Grath@* Copyright @copyright{} 2022 Karl Hallsby@* Copyright @copyright{} 2022 Justin Veilleux@* Copyright @copyright{} 2022 Reily Siegel@* Copyright @copyright{} 2022 Simon Streit@* Copyright @copyright{} 2022 (@* Copyright @copyright{} 2022 John Kehayias@* Copyright @copyright{} 2022⁠–⁠2023 Bruno Victal@* Copyright @copyright{} 2022 Ivan Vilata-i-Balaguer@* Copyright @copyright{} 2023-2024 Giacomo Leidi@* Copyright @copyright{} 2022 Antero Mejr@* Copyright @copyright{} 2023 Karl Hallsby@* Copyright @copyright{} 2023 Nathaniel Nicandro@* Copyright @copyright{} 2023 Tanguy Le Carrour@* Copyright @copyright{} 2023, 2024 Zheng Junjie@* Copyright @copyright{} 2023 Brian Cully@* Copyright @copyright{} 2023 Felix Lechner@* Copyright @copyright{} 2023 Foundation Devices, Inc.@* Copyright @copyright{} 2023 Thomas Ieong@* Copyright @copyright{} 2023 Saku Laesvuori@* Copyright @copyright{} 2023 Graham James Addis@* Copyright @copyright{} 2023, 2024 Tomas Volf@* Copyright @copyright{} 2024 Herman Rimm@* Copyright @copyright{} 2024 Matthew Trzcinski@* Copyright @copyright{} 2024 Richard Sent@* Copyright @copyright{} 2024 Dariqq@* Copyright @copyright{} 2024 Denis 'GNUtoo' Carikli@* Copyright @copyright{} 2024 Fabio Natali@* Copyright @copyright{} 2024 Arnaud Daby-Seesaram@* Copyright @copyright{} 2024 Nigko Yerden@* Copyright @copyright{} 2024 Troy Figiel@* Copyright @copyright{} 2024 Sharlatan Hellseher@*" msgstr "Copyright @copyright{} 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic CourtΓ¨s@* Copyright @copyright{} 2013, 2014, 2016 Andreas Enge@* Copyright @copyright{} 2013 Nikita Karetnikov@* Copyright @copyright{} 2014, 2015, 2016 Alex Kost@* Copyright @copyright{} 2015, 2016 Mathieu Lirzin@* Copyright @copyright{} 2014 Pierre-Antoine Rault@* Copyright @copyright{} 2015 Taylan Ulrich BayΔ±rlΔ±/Kammer@* Copyright @copyright{} 2015, 2016, 2017, 2019, 2020 Leo Famulari@* Copyright @copyright{} 2015, 2016, 2017, 2018, 2019, 2020 Ricardo Wurmus@* Copyright @copyright{} 2016 Ben Woodcroft@* Copyright @copyright{} 2016, 2017, 2018 Chris Marusich@* Copyright @copyright{} 2016, 2017, 2018, 2019, 2020 Efraim Flashner@* Copyright @copyright{} 2016 John Darrington@* Copyright @copyright{} 2016, 2017 Nikita Gillmann@* Copyright @copyright{} 2016, 2017, 2018, 2019, 2020 Jan Nieuwenhuizen@* Copyright @copyright{} 2016, 2017, 2018, 2019, 2020 Julien Lepiller@* Copyright @copyright{} 2016 Alex ter Weele@* Copyright @copyright{} 2016, 2017, 2018, 2019 Christopher Baines@* Copyright @copyright{} 2017, 2018, 2019 ClΓ©ment Lassieur@* Copyright @copyright{} 2017, 2018, 2020 Mathieu Othacehe@* Copyright @copyright{} 2017 Federico Beffa@* Copyright @copyright{} 2017, 2018 Carlo Zancanaro@* Copyright @copyright{} 2017 Thomas Danckaert@* Copyright @copyright{} 2017 humanitiesNerd@* Copyright @copyright{} 2017 Christopher Allan Webber@* Copyright @copyright{} 2017, 2018, 2019, 2020 Marius Bakke@* Copyright @copyright{} 2017, 2019, 2020 Hartmut Goebel@* Copyright @copyright{} 2017, 2019, 2020 Maxim Cournoyer@* Copyright @copyright{} 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice@* Copyright @copyright{} 2017 George Clemmer@* Copyright @copyright{} 2017 Andy Wingo@* Copyright @copyright{} 2017, 2018, 2019, 2020 Arun Isaac@* Copyright @copyright{} 2017 nee@* Copyright @copyright{} 2018 Rutger Helling@* Copyright @copyright{} 2018 Oleg Pykhalov@* Copyright @copyright{} 2018 Mike Gerwitz@* Copyright @copyright{} 2018 Pierre-Antoine Rouby@* Copyright @copyright{} 2018, 2019 GΓ‘bor Boskovits@* Copyright @copyright{} 2018, 2019, 2020 Florian Pelz@* Copyright @copyright{} 2018 Laura Lazzati@* Copyright @copyright{} 2018 Alex Vong@* Copyright @copyright{} 2019 Josh Holland@* Copyright @copyright{} 2019, 2020 Diego Nicola Barbato@* Copyright @copyright{} 2019 Ivan Petkov@* Copyright @copyright{} 2019 Jakob L. Kreuze@* Copyright @copyright{} 2019 Kyle Andrews@* Copyright @copyright{} 2019 Alex Griffin@* Copyright @copyright{} 2019 Guillaume Le Vaillant@* Copyright @copyright{} 2020 Leo Prikler@* Copyright @copyright{} 2019, 2020 Simon Tournier@* Copyright @copyright{} 2020 Wiktor Ε»elazny@* Copyright @copyright{} 2020 Damien Cassou@* Copyright @copyright{} 2020 Jakub KΔ…dzioΕ‚ka@* Copyright @copyright{} 2020 Jack Hill@* Copyright @copyright{} 2020 Naga Malleswari@* Copyright @copyright{} 2020 Brice Waegeneire@* Copyright @copyright{} 2020 R Veera Kumar@* Copyright @copyright{} 2020 Pierre Langlois@* Copyright @copyright{} 2020 pinoaffe@* Copyright @copyright{} 2020 AndrΓ© Batista@*" #. type: copying #: guix-git/doc/guix.texi:144 msgid "Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled ``GNU Free Documentation License''." msgstr "Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, распространСниС ΠΈ/ΠΈΠ»ΠΈ модификация этого Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° Π½Π° условиях Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΈ свободной Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ GNU (GNU FDL) вСрсии 1.3 ΠΈΠ»ΠΈ любой Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½Π΅ΠΉ вСрсии, ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½ΠΎΠΉ Π€ΠΎΠ½Π΄ΠΎΠΌ свободного ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния (FSF), ΠΈΡΠΊΠ»ΡŽΡ‡Π°Ρ нСизмСняСмыС сСкции, ΠΈΡΠΊΠ»ΡŽΡ‡Π°Ρ тСксты, Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½Π½Ρ‹Π΅ Π½Π° ΠΏΠ΅Ρ€Π΅ΠΏΠ»Ρ‘Ρ‚Π΅ ΠΈ Π·Π°Π΄Π½Π΅ΠΉ сторонС ΠΎΠ±Π»ΠΎΠΆΠΊΠΈ. Копия Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ \"GNU Free Documentation Licens\"." #. type: dircategory #: guix-git/doc/guix.texi:146 #, no-wrap msgid "System administration" msgstr "АдминистрированиС систСмы" #. type: menuentry #: guix-git/doc/guix.texi:154 msgid "Guix: (guix)" msgstr "Guix: (guix)" #. type: menuentry #: guix-git/doc/guix.texi:154 msgid "Manage installed software and system configuration." msgstr "Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ установлСнным ПО ΠΈ настройка систСмы." #. type: menuentry #: guix-git/doc/guix.texi:154 msgid "guix package: (guix)Invoking guix package" msgstr "guix package: (guix)Запуск guix package" #. type: menuentry #: guix-git/doc/guix.texi:154 msgid "Installing, removing, and upgrading packages." msgstr "Установка, ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²." #. type: menuentry #: guix-git/doc/guix.texi:154 msgid "guix gc: (guix)Invoking guix gc" msgstr "guix gc: (guix)Запуск guix gc" #. type: menuentry #: guix-git/doc/guix.texi:154 msgid "Reclaiming unused disk space." msgstr "ОсвобоТдСниС Π½Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ мСста Π½Π° дискС." #. type: menuentry #: guix-git/doc/guix.texi:154 msgid "guix pull: (guix)Invoking guix pull" msgstr "guix pull: (guix)Запуск guix pull" #. type: menuentry #: guix-git/doc/guix.texi:154 msgid "Update the list of available packages." msgstr "ОбновлСниС списка доступных ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²." #. type: menuentry #: guix-git/doc/guix.texi:154 msgid "guix system: (guix)Invoking guix system" msgstr "guix system: (guix)Запуск guix system" #. type: menuentry #: guix-git/doc/guix.texi:154 msgid "Manage the operating system configuration." msgstr "Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠ΅ΠΉ ОБ." #. type: menuentry #: guix-git/doc/guix.texi:154 msgid "guix deploy: (guix)Invoking guix deploy" msgstr "guix deploy: (guix)Запуск guix deploy" #. type: menuentry #: guix-git/doc/guix.texi:154 msgid "Manage operating system configurations for remote hosts." msgstr "Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ конфигурациями ОБ Π½Π° ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹Ρ… ΠΌΠ°ΡˆΠΈΠ½Π°Ρ…." #. type: dircategory #: guix-git/doc/guix.texi:156 #, no-wrap msgid "Software development" msgstr "Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния" #. type: menuentry #: guix-git/doc/guix.texi:162 msgid "guix shell: (guix)Invoking guix shell" msgstr "guix shell: (guix)Запуск guix shell" #. type: menuentry #: guix-git/doc/guix.texi:162 #, fuzzy #| msgid "replication, of software environments" msgid "Creating software environments." msgstr "ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠ΅, окруТСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния" #. type: menuentry #: guix-git/doc/guix.texi:162 msgid "guix environment: (guix)Invoking guix environment" msgstr "guix environment: (guix)Запуск guix environment" #. type: menuentry #: guix-git/doc/guix.texi:162 msgid "Building development environments with Guix." msgstr "Π‘Π±ΠΎΡ€ΠΊΠ° срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Guix." #. type: menuentry #: guix-git/doc/guix.texi:162 msgid "guix build: (guix)Invoking guix build" msgstr "guix build: (guix)Запуск guix build" #. type: menuentry #: guix-git/doc/guix.texi:162 msgid "Building packages." msgstr "Π‘Π±ΠΎΡ€ΠΊΠ° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²." #. type: menuentry #: guix-git/doc/guix.texi:162 msgid "guix pack: (guix)Invoking guix pack" msgstr "guix pack: (guix)Запуск guix pack" #. type: menuentry #: guix-git/doc/guix.texi:162 msgid "Creating binary bundles." msgstr "Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π±ΠΈΠ½Π°Ρ€Π½Ρ‹Ρ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²." #. type: subtitle #: guix-git/doc/guix.texi:166 #, no-wrap msgid "Using the GNU Guix Functional Package Manager" msgstr "ИспользованиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° GNU Guix" #. type: author #: guix-git/doc/guix.texi:167 #, no-wrap msgid "The GNU Guix Developers" msgstr "Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ GNU Guix" #. type: titlepage #: guix-git/doc/guix.texi:173 msgid "Edition @value{EDITION} @* @value{UPDATED} @*" msgstr "РСвизия @value{EDITION} @* @value{UPDATED} @*" #. type: node #: guix-git/doc/guix.texi:180 #, no-wrap msgid "Top" msgstr "Top" #. type: top #: guix-git/doc/guix.texi:181 #, no-wrap msgid "GNU Guix" msgstr "GNU Guix" #. type: Plain text #: guix-git/doc/guix.texi:185 msgid "This document describes GNU Guix version @value{VERSION}, a functional package management tool written for the GNU system." msgstr "Π’ этом Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅ описываСтся GNU Guix вСрсии @value{VERSION} β€” ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², написанный для систСмы GNU." #. You can replace the following paragraph with information on #. type: Plain text #: guix-git/doc/guix.texi:198 #, fuzzy #| msgid "This manual is also available in Simplified Chinese (@pxref{Top,,, guix.zh_CN, GNU Guixε‚θ€ƒζ‰‹ε†Œ}), French (@pxref{Top,,, guix.fr, Manuel de rΓ©fΓ©rence de GNU Guix}), German (@pxref{Top,,, guix.de, Referenzhandbuch zu GNU Guix}), Spanish (@pxref{Top,,, guix.es, Manual de referencia de GNU Guix}), and Russian (@pxref{Top,,, guix.ru, Руководство GNU Guix}). If you would like to translate it in your native language, consider joining @uref{https://translate.fedoraproject.org/projects/guix/documentation-manual, Weblate} (@pxref{Translating Guix})." msgid "This manual is also available in Simplified Chinese (@pxref{Top,,, guix.zh_CN, GNU Guixε‚θ€ƒζ‰‹ε†Œ}), French (@pxref{Top,,, guix.fr, Manuel de rΓ©fΓ©rence de GNU Guix}), German (@pxref{Top,,, guix.de, Referenzhandbuch zu GNU Guix}), Spanish (@pxref{Top,,, guix.es, Manual de referencia de GNU Guix}), Brazilian Portuguese (@pxref{Top,,, guix.pt_BR, Manual de referΓͺncia do GNU Guix}), and Russian (@pxref{Top,,, guix.ru, Руководство GNU Guix}). If you would like to translate it in your native language, consider joining @uref{https://translate.fedoraproject.org/projects/guix/documentation-manual, Weblate} (@pxref{Translating Guix})." msgstr "Π­Ρ‚ΠΎ руководство доступно Ρ‚Π°ΠΊΠΆΠ΅ Π½Π° (ΡƒΠΏΡ€ΠΎΡ‰Ρ‘Π½Π½ΠΎΠΌ) китайском языкС (@pxref{Top,,, guix.zh_CN, GNU Guixε‚θ€ƒζ‰‹ε†Œ}), Π½Π° французском (@pxref{Top,,, guix.fr, Manuel de rΓ©fΓ©rence de GNU Guix}), Π½Π΅ΠΌΠ΅Ρ†ΠΊΠΎΠΌ (@pxref{Top,,, guix.de, Referenzhandbuch zu GNU Guix}), испанском (@pxref{Top,,, guix.es, Manual de referencia de GNU Guix}) ΠΈ русском (@pxref{Top,,, guix.ru, Руководство ΠΏΠΎ GNU Guix}) языках. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ пСрСвСсти Π΅Π³ΠΎ Π½Π° свой язык, ΠΏΡ€ΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΡΠΉΡ‚Π΅ΡΡŒ ΠΊ ΠŸΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΎΠ² @uref{https://translationproject.org/domain/guix-manual.html, ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΎΠ²}." #. type: chapter #: guix-git/doc/guix.texi:222 guix-git/doc/guix.texi:232 #: guix-git/doc/guix.texi:501 guix-git/doc/guix.texi:502 #, no-wrap msgid "Introduction" msgstr "Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅" #. type: menuentry #: guix-git/doc/guix.texi:222 msgid "What is Guix about?" msgstr "Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Guix?" #. type: chapter #: guix-git/doc/guix.texi:222 guix-git/doc/guix.texi:237 #: guix-git/doc/guix.texi:698 guix-git/doc/guix.texi:699 #, no-wrap msgid "Installation" msgstr "Установка" #. type: menuentry #: guix-git/doc/guix.texi:222 msgid "Installing Guix." msgstr "Установка Guix." #. type: chapter #: guix-git/doc/guix.texi:222 guix-git/doc/guix.texi:251 #: guix-git/doc/guix.texi:1970 guix-git/doc/guix.texi:1971 #, no-wrap msgid "System Installation" msgstr "Установка систСмы" #. type: menuentry #: guix-git/doc/guix.texi:222 msgid "Installing the whole operating system." msgstr "Полная установка ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы." #. type: section #: guix-git/doc/guix.texi:222 guix-git/doc/guix.texi:2681 #: guix-git/doc/guix.texi:2682 guix-git/doc/guix.texi:17095 #, no-wrap msgid "Getting Started" msgstr "Начало Ρ€Π°Π±ΠΎΡ‚Ρ‹" #. type: menuentry #: guix-git/doc/guix.texi:222 guix-git/doc/guix.texi:387 #: guix-git/doc/guix.texi:17092 msgid "Your first steps." msgstr "ΠŸΡ€Π΅Ρ€Π²Ρ‹Π΅ шаги." #. type: chapter #: guix-git/doc/guix.texi:222 guix-git/doc/guix.texi:268 #: guix-git/doc/guix.texi:2880 guix-git/doc/guix.texi:2881 #, no-wrap msgid "Package Management" msgstr "Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌΠΈ" #. type: menuentry #: guix-git/doc/guix.texi:222 msgid "Package installation, upgrade, etc." msgstr "Установка ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΈ Ρ‚.Π΄." #. type: chapter #: guix-git/doc/guix.texi:222 guix-git/doc/guix.texi:292 #: guix-git/doc/guix.texi:5188 guix-git/doc/guix.texi:5189 #, no-wrap msgid "Channels" msgstr "ΠšΠ°Π½Π°Π»Ρ‹" #. type: menuentry #: guix-git/doc/guix.texi:222 msgid "Customizing the package collection." msgstr "Настройка ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²." #. type: chapter #: guix-git/doc/guix.texi:222 guix-git/doc/guix.texi:306 #: guix-git/doc/guix.texi:5888 guix-git/doc/guix.texi:5889 #, no-wrap msgid "Development" msgstr "Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°" #. type: menuentry #: guix-git/doc/guix.texi:222 msgid "Guix-aided software development." msgstr "Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ΠΏΡ€ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ΅ Guix." #. type: chapter #: guix-git/doc/guix.texi:222 guix-git/doc/guix.texi:314 #: guix-git/doc/guix.texi:7504 guix-git/doc/guix.texi:7505 #, no-wrap msgid "Programming Interface" msgstr "ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ интСрфСйс" #. type: menuentry #: guix-git/doc/guix.texi:222 msgid "Using Guix in Scheme." msgstr "ИспользованиС Guix Π² Scheme." #. type: chapter #: guix-git/doc/guix.texi:222 guix-git/doc/guix.texi:336 #: guix-git/doc/guix.texi:12902 guix-git/doc/guix.texi:12903 #, no-wrap msgid "Utilities" msgstr "Π£Ρ‚ΠΈΠ»ΠΈΡ‚Ρ‹" #. type: menuentry #: guix-git/doc/guix.texi:222 msgid "Package management commands." msgstr "ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ управлСния ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌΠΈ." #. type: chapter #: guix-git/doc/guix.texi:222 guix-git/doc/guix.texi:362 #: guix-git/doc/guix.texi:16881 guix-git/doc/guix.texi:16882 #, no-wrap msgid "Foreign Architectures" msgstr "" #. type: menuentry #: guix-git/doc/guix.texi:222 msgid "Build for foreign architectures." msgstr "" #. type: chapter #: guix-git/doc/guix.texi:222 guix-git/doc/guix.texi:367 #: guix-git/doc/guix.texi:17047 guix-git/doc/guix.texi:17048 #, no-wrap msgid "System Configuration" msgstr "Настройка систСмы" #. type: menuentry #: guix-git/doc/guix.texi:222 msgid "Configuring the operating system." msgstr "ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы." #. type: chapter #: guix-git/doc/guix.texi:222 guix-git/doc/guix.texi:441 #: guix-git/doc/guix.texi:45162 guix-git/doc/guix.texi:45163 #, no-wrap msgid "System Troubleshooting Tips" msgstr "" #. type: menuentry #: guix-git/doc/guix.texi:222 msgid "When things don't go as planned." msgstr "" #. type: chapter #: guix-git/doc/guix.texi:222 guix-git/doc/guix.texi:445 #: guix-git/doc/guix.texi:45277 guix-git/doc/guix.texi:45278 #, fuzzy, no-wrap #| msgid "System Configuration" msgid "Home Configuration" msgstr "ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ систСмы" #. type: menuentry #: guix-git/doc/guix.texi:222 #, fuzzy #| msgid "Configuring the boot loader." msgid "Configuring the home environment." msgstr "ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ° диска." #. type: chapter #: guix-git/doc/guix.texi:222 guix-git/doc/guix.texi:48293 #: guix-git/doc/guix.texi:48294 #, no-wrap msgid "Documentation" msgstr "ДокумСнтация" #. type: menuentry #: guix-git/doc/guix.texi:222 msgid "Browsing software user manuals." msgstr "ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΎΠ±Π·ΠΎΡ€Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… ΠΌΠ°Π½ΡƒΠ°Π»ΠΎΠ²." #. type: chapter #: guix-git/doc/guix.texi:222 guix-git/doc/guix.texi:472 #: guix-git/doc/guix.texi:48359 guix-git/doc/guix.texi:48360 #, fuzzy, no-wrap #| msgid "--list-formats" msgid "Platforms" msgstr "--list-roots" #. type: menuentry #: guix-git/doc/guix.texi:222 #, fuzzy #| msgid "Defining new packages." msgid "Defining platforms." msgstr "ОписаниС Π½ΠΎΠ²Ρ‹Ρ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²." #. type: node #: guix-git/doc/guix.texi:222 guix-git/doc/guix.texi:48493 #, fuzzy, no-wrap #| msgid "System calls" msgid "System Images" msgstr "Установка систСмы" #. type: menuentry #: guix-git/doc/guix.texi:222 #, fuzzy #| msgid "replication, of software environments" msgid "Creating system images." msgstr "ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠ΅, окруТСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния" #. type: chapter #: guix-git/doc/guix.texi:222 guix-git/doc/guix.texi:488 #: guix-git/doc/guix.texi:49034 guix-git/doc/guix.texi:49035 #, no-wrap msgid "Installing Debugging Files" msgstr "Установка Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ" #. type: menuentry #: guix-git/doc/guix.texi:222 msgid "Feeding the debugger." msgstr "Запуск ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ°." #. type: node #: guix-git/doc/guix.texi:222 guix-git/doc/guix.texi:49189 #, no-wrap msgid "Using TeX and LaTeX" msgstr "" #. type: menuentry #: guix-git/doc/guix.texi:222 #, fuzzy #| msgid "Testing Guix." msgid "Typesetting." msgstr "ВСстированиС Guix." #. type: chapter #: guix-git/doc/guix.texi:222 guix-git/doc/guix.texi:49308 #: guix-git/doc/guix.texi:49309 #, no-wrap msgid "Security Updates" msgstr "ОбновлСния бСзопасности" #. type: menuentry #: guix-git/doc/guix.texi:222 msgid "Deploying security fixes quickly." msgstr "БыстроС ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ исправлСний бСзопасности." #. type: chapter #: guix-git/doc/guix.texi:222 guix-git/doc/guix.texi:493 #: guix-git/doc/guix.texi:49423 guix-git/doc/guix.texi:49424 #, no-wrap msgid "Bootstrapping" msgstr "ΠΠ°Ρ‡Π°Π»ΡŒΠ½Π°Ρ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ°" #. type: menuentry #: guix-git/doc/guix.texi:222 msgid "GNU/Linux built from scratch." msgstr "Π‘Π±ΠΎΡ€ΠΊΠ° GNU/Linux с нуля." #. type: node #: guix-git/doc/guix.texi:222 guix-git/doc/guix.texi:49727 #, no-wrap msgid "Porting" msgstr "ΠŸΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅" #. type: menuentry #: guix-git/doc/guix.texi:222 msgid "Targeting another platform or kernel." msgstr "ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ Π½Π° Π΄Ρ€ΡƒΠ³ΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ ΠΈΠ»ΠΈ ядро." #. type: menuentry #: guix-git/doc/guix.texi:222 msgid "Your help needed!" msgstr "НуТна ваша ΠΏΠΎΠΌΠΎΡ‰ΡŒ!" #. type: chapter #: guix-git/doc/guix.texi:227 guix-git/doc/guix.texi:49777 #: guix-git/doc/guix.texi:49778 #, no-wrap msgid "Acknowledgments" msgstr "Благодарности" #. type: menuentry #: guix-git/doc/guix.texi:227 msgid "Thanks!" msgstr "Бпасибо!" #. type: appendix #: guix-git/doc/guix.texi:227 guix-git/doc/guix.texi:49799 #: guix-git/doc/guix.texi:49800 #, no-wrap msgid "GNU Free Documentation License" msgstr "ЛицСнзия свободной Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ GNU" #. type: menuentry #: guix-git/doc/guix.texi:227 msgid "The license of this manual." msgstr "ЛицСнзия этого руководства." #. type: unnumbered #: guix-git/doc/guix.texi:227 guix-git/doc/guix.texi:49805 #: guix-git/doc/guix.texi:49806 #, no-wrap msgid "Concept Index" msgstr "Π’Π΅Ρ€ΠΌΠΈΠ½Ρ‹ ΠΈ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ" #. type: menuentry #: guix-git/doc/guix.texi:227 msgid "Concepts." msgstr "ΠŸΠΎΠ½ΡΡ‚ΠΈΡ." #. type: unnumbered #: guix-git/doc/guix.texi:227 guix-git/doc/guix.texi:49809 #: guix-git/doc/guix.texi:49810 #, no-wrap msgid "Programming Index" msgstr "ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ индСкс" #. type: menuentry #: guix-git/doc/guix.texi:227 msgid "Data types, functions, and variables." msgstr "Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅." #. type: menuentry #: guix-git/doc/guix.texi:230 msgid "--- The Detailed Node Listing ---" msgstr "--- Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ список записСй ---" #. type: section #: guix-git/doc/guix.texi:235 guix-git/doc/guix.texi:528 #: guix-git/doc/guix.texi:530 guix-git/doc/guix.texi:531 #, no-wrap msgid "Managing Software the Guix Way" msgstr "Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌ обСспСчСниСм Guix Way" #. type: menuentry #: guix-git/doc/guix.texi:235 guix-git/doc/guix.texi:528 msgid "What's special." msgstr "Π§Ρ‚ΠΎ особСнного." #. type: section #: guix-git/doc/guix.texi:235 guix-git/doc/guix.texi:528 #: guix-git/doc/guix.texi:585 guix-git/doc/guix.texi:586 #, no-wrap msgid "GNU Distribution" msgstr "Дистрибутив GNU" #. type: menuentry #: guix-git/doc/guix.texi:235 guix-git/doc/guix.texi:528 msgid "The packages and tools." msgstr "ΠŸΠ°ΠΊΠ΅Ρ‚Ρ‹ ΠΈ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹." #. type: section #: guix-git/doc/guix.texi:243 guix-git/doc/guix.texi:731 #: guix-git/doc/guix.texi:733 guix-git/doc/guix.texi:734 #, no-wrap msgid "Binary Installation" msgstr "Бинарная установка" #. type: menuentry #: guix-git/doc/guix.texi:243 guix-git/doc/guix.texi:731 msgid "Getting Guix running in no time!" msgstr "ЗапускаСм Guix ΠΏΠΎ-быстрому!" #. type: section #: guix-git/doc/guix.texi:243 guix-git/doc/guix.texi:245 #: guix-git/doc/guix.texi:731 guix-git/doc/guix.texi:865 #: guix-git/doc/guix.texi:866 #, no-wrap msgid "Setting Up the Daemon" msgstr "Настройка Π΄Π΅ΠΌΠΎΠ½Π°" #. type: menuentry #: guix-git/doc/guix.texi:243 guix-git/doc/guix.texi:731 msgid "Preparing the build daemon's environment." msgstr "ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° окруТСния Π΄Π΅ΠΌΠΎΠ½Π° сборки." #. type: node #: guix-git/doc/guix.texi:243 guix-git/doc/guix.texi:731 #: guix-git/doc/guix.texi:1398 #, no-wrap msgid "Invoking guix-daemon" msgstr "Π’Ρ‹Π·ΠΎΠ² guix-daemon" #. type: menuentry #: guix-git/doc/guix.texi:243 guix-git/doc/guix.texi:731 msgid "Running the build daemon." msgstr "Запуск Π΄Π΅ΠΌΠΎΠ½Π° сборки." #. type: section #: guix-git/doc/guix.texi:243 guix-git/doc/guix.texi:731 #: guix-git/doc/guix.texi:1704 guix-git/doc/guix.texi:1705 #, no-wrap msgid "Application Setup" msgstr "Установка прилоТСния" #. type: menuentry #: guix-git/doc/guix.texi:243 guix-git/doc/guix.texi:731 msgid "Application-specific setup." msgstr "Установка Π² качСствС приоТСния." #. type: section #: guix-git/doc/guix.texi:243 guix-git/doc/guix.texi:731 #: guix-git/doc/guix.texi:1933 guix-git/doc/guix.texi:1934 #, no-wrap msgid "Upgrading Guix" msgstr "ОбновлСниС Guix" #. type: menuentry #: guix-git/doc/guix.texi:243 guix-git/doc/guix.texi:731 msgid "Upgrading Guix and its build daemon." msgstr "ОбновлСниС Guix ΠΈ этого слуТбы сборки." #. type: subsection #: guix-git/doc/guix.texi:249 guix-git/doc/guix.texi:905 #: guix-git/doc/guix.texi:907 guix-git/doc/guix.texi:908 #, no-wrap msgid "Build Environment Setup" msgstr "Установка окруТСния сборки" #. type: menuentry #: guix-git/doc/guix.texi:249 guix-git/doc/guix.texi:905 msgid "Preparing the isolated build environment." msgstr "ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ окруТСния сборки." #. type: node #: guix-git/doc/guix.texi:249 guix-git/doc/guix.texi:905 #: guix-git/doc/guix.texi:1036 #, no-wrap msgid "Daemon Offload Setup" msgstr "Установка Π΄Π΅ΠΌΠΎΠ½Π° Ρ€Π°Π·Π³Ρ€ΡƒΠ·ΠΊΠΈ" #. type: menuentry #: guix-git/doc/guix.texi:249 guix-git/doc/guix.texi:905 msgid "Offloading builds to remote machines." msgstr "Π Π°Π·Π³Ρ€ΡƒΠ·ΠΊΠ° сборок ΠΏΠΎ ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹ΠΌ машинам." #. type: subsection #: guix-git/doc/guix.texi:249 guix-git/doc/guix.texi:905 #: guix-git/doc/guix.texi:1288 guix-git/doc/guix.texi:1289 #, no-wrap msgid "SELinux Support" msgstr "ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° SELinux" #. type: menuentry #: guix-git/doc/guix.texi:249 guix-git/doc/guix.texi:905 msgid "Using an SELinux policy for the daemon." msgstr "ИспользованиС ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈ SELinux для Π΄Π΅ΠΌΠΎΠ½Π°." #. type: section #: guix-git/doc/guix.texi:261 guix-git/doc/guix.texi:1343 #: guix-git/doc/guix.texi:2004 guix-git/doc/guix.texi:2006 #: guix-git/doc/guix.texi:2007 #, no-wrap msgid "Limitations" msgstr "ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΡ" #. type: menuentry #: guix-git/doc/guix.texi:261 guix-git/doc/guix.texi:2004 msgid "What you can expect." msgstr "Π§Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ." #. type: section #: guix-git/doc/guix.texi:261 guix-git/doc/guix.texi:2004 #: guix-git/doc/guix.texi:2023 guix-git/doc/guix.texi:2024 #, no-wrap msgid "Hardware Considerations" msgstr "По ΠΏΠΎΠ²ΠΎΠ΄Ρƒ ΠΆΠ΅Π»Π΅Π·Π°" #. type: menuentry #: guix-git/doc/guix.texi:261 guix-git/doc/guix.texi:2004 msgid "Supported hardware." msgstr "ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠ΅ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ΅ обСспСчСниС." #. type: section #: guix-git/doc/guix.texi:261 guix-git/doc/guix.texi:2004 #: guix-git/doc/guix.texi:2061 guix-git/doc/guix.texi:2062 #, no-wrap msgid "USB Stick and DVD Installation" msgstr "Установочная Ρ„Π»Π΅Ρˆ ΠΈ DVD" #. type: menuentry #: guix-git/doc/guix.texi:261 guix-git/doc/guix.texi:2004 msgid "Preparing the installation medium." msgstr "ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° установочного носитСля." #. type: section #: guix-git/doc/guix.texi:261 guix-git/doc/guix.texi:2004 #: guix-git/doc/guix.texi:2152 guix-git/doc/guix.texi:2153 #, no-wrap msgid "Preparing for Installation" msgstr "ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ΠΊ установкС" #. type: menuentry #: guix-git/doc/guix.texi:261 guix-git/doc/guix.texi:2004 msgid "Networking, partitioning, etc." msgstr "Π‘Π΅Ρ‚ΡŒ, Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ° диска ΠΈ Ρ‚.Π΄." #. type: section #: guix-git/doc/guix.texi:261 guix-git/doc/guix.texi:2004 #: guix-git/doc/guix.texi:2175 guix-git/doc/guix.texi:2176 #, no-wrap msgid "Guided Graphical Installation" msgstr "ГрафичСская установка Π² GUI" #. type: menuentry #: guix-git/doc/guix.texi:261 guix-git/doc/guix.texi:2004 msgid "Easy graphical installation." msgstr "ΠŸΡ€ΠΎΡΡ‚Π°Ρ графичСская установка." #. type: section #: guix-git/doc/guix.texi:261 guix-git/doc/guix.texi:263 #: guix-git/doc/guix.texi:2004 guix-git/doc/guix.texi:2206 #: guix-git/doc/guix.texi:2207 #, no-wrap msgid "Manual Installation" msgstr "Ручная установка" #. type: menuentry #: guix-git/doc/guix.texi:261 guix-git/doc/guix.texi:2004 msgid "Manual installation for wizards." msgstr "Ручная установка для ΠΌΠ°Π³ΠΎΠ²." #. type: section #: guix-git/doc/guix.texi:261 guix-git/doc/guix.texi:2004 #: guix-git/doc/guix.texi:2577 guix-git/doc/guix.texi:2578 #, no-wrap msgid "After System Installation" msgstr "ПослС установки систСмы" #. type: menuentry #: guix-git/doc/guix.texi:261 guix-git/doc/guix.texi:2004 msgid "When installation succeeded." msgstr "Когда установка Π·Π°Π²Π΅Ρ€ΡˆΠΈΠ»Π°ΡΡŒ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ." #. type: node #: guix-git/doc/guix.texi:261 guix-git/doc/guix.texi:2004 #: guix-git/doc/guix.texi:2597 #, no-wrap msgid "Installing Guix in a VM" msgstr "Установка Guix Π½Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΌΠ°ΡˆΠΈΠ½Ρƒ" #. type: menuentry #: guix-git/doc/guix.texi:261 guix-git/doc/guix.texi:2004 msgid "Guix System playground." msgstr "ΠŸΠ»ΠΎΡ‰Π°Π΄ΠΊΠ° систСмы Guix." #. type: section #: guix-git/doc/guix.texi:261 guix-git/doc/guix.texi:2004 #: guix-git/doc/guix.texi:2648 guix-git/doc/guix.texi:2649 #, no-wrap msgid "Building the Installation Image" msgstr "Π‘Π±ΠΎΡ€ΠΊΠ° установочного ΠΎΠ±Ρ€Π°Π·Π°" #. type: menuentry #: guix-git/doc/guix.texi:261 guix-git/doc/guix.texi:2004 msgid "How this comes to be." msgstr "Как это происходит." #. type: node #: guix-git/doc/guix.texi:266 guix-git/doc/guix.texi:2224 #: guix-git/doc/guix.texi:2226 #, no-wrap msgid "Keyboard Layout and Networking and Partitioning" msgstr "Раскладка ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ ΠΈ Ρ€Π°Π±ΠΎΡ‚Π° с ΡΠ΅Ρ‚ΡŒΡŽ ΠΈ Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ диска" #. type: menuentry #: guix-git/doc/guix.texi:266 guix-git/doc/guix.texi:2224 msgid "Initial setup." msgstr "ΠΠ°Ρ‡Π°Π»ΡŒΠ½Π°Ρ установка." #. type: subsection #: guix-git/doc/guix.texi:266 guix-git/doc/guix.texi:2224 #: guix-git/doc/guix.texi:2488 guix-git/doc/guix.texi:2489 #, no-wrap msgid "Proceeding with the Installation" msgstr "Π’ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠΈ установки" #. type: menuentry #: guix-git/doc/guix.texi:266 guix-git/doc/guix.texi:2224 msgid "Installing." msgstr "Установка." #. type: section #: guix-git/doc/guix.texi:280 guix-git/doc/guix.texi:2913 #: guix-git/doc/guix.texi:2915 guix-git/doc/guix.texi:2916 #, no-wrap msgid "Features" msgstr "ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ" #. type: menuentry #: guix-git/doc/guix.texi:280 guix-git/doc/guix.texi:2913 msgid "How Guix will make your life brighter." msgstr "Как Guix Π΄Π΅Π»Π°Π΅Ρ‚ Тизнь ярчС." #. type: node #: guix-git/doc/guix.texi:280 guix-git/doc/guix.texi:2913 #: guix-git/doc/guix.texi:3005 #, no-wrap msgid "Invoking guix package" msgstr "Π’Ρ‹Π·ΠΎΠ² guix package" #. type: menuentry #: guix-git/doc/guix.texi:280 guix-git/doc/guix.texi:2913 msgid "Package installation, removal, etc." msgstr "Установка ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈ Ρ‚.Π΄." #. type: section #: guix-git/doc/guix.texi:280 guix-git/doc/guix.texi:282 #: guix-git/doc/guix.texi:2913 guix-git/doc/guix.texi:3618 #: guix-git/doc/guix.texi:3619 #, no-wrap msgid "Substitutes" msgstr "ΠŸΠΎΠ΄ΡΡ‚Π°Π½ΠΎΠ²ΠΊΠΈ" #. type: menuentry #: guix-git/doc/guix.texi:280 guix-git/doc/guix.texi:2913 msgid "Downloading pre-built binaries." msgstr "Π‘ΠΊΠ°Ρ‡ΠΈΠ²Π°Π½ΠΈΠ΅ собранных Π±ΠΈΠ½Π°Ρ€Π½ΠΈΠΊΠΎΠ²." #. type: section #: guix-git/doc/guix.texi:280 guix-git/doc/guix.texi:2913 #: guix-git/doc/guix.texi:3970 guix-git/doc/guix.texi:3971 #, no-wrap msgid "Packages with Multiple Outputs" msgstr "ΠŸΠ°ΠΊΠ΅Ρ‚Ρ‹ со мноТСствСнным Π²Ρ‹Ρ…ΠΎΠ΄ΠΎΠΌ" #. type: menuentry #: guix-git/doc/guix.texi:280 guix-git/doc/guix.texi:2913 msgid "Single source package, multiple outputs." msgstr "Один исходный ΠΏΠ°ΠΊΠ΅Ρ‚, Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π²Ρ‹Ρ…ΠΎΠ΄Ρ‹." #. type: node #: guix-git/doc/guix.texi:280 guix-git/doc/guix.texi:2913 #: guix-git/doc/guix.texi:4043 #, fuzzy, no-wrap #| msgid "Invoking guix lint" msgid "Invoking guix locate" msgstr "Запуск guix lint" #. type: menuentry #: guix-git/doc/guix.texi:280 guix-git/doc/guix.texi:2913 #, fuzzy #| msgid "colliding packages in profiles" msgid "Locating packages that provide a file." msgstr "ΡΠΎΠΏΠ΅Ρ€Π½ΠΈΡ‡Π°ΡŽΡ‰ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ Π² ΠΏΡ€ΠΎΡ„ΠΈΠ»Π΅" #. type: node #: guix-git/doc/guix.texi:280 guix-git/doc/guix.texi:2913 #: guix-git/doc/guix.texi:4173 #, no-wrap msgid "Invoking guix gc" msgstr "Π’Ρ‹Π·ΠΎΠ² guix gc" #. type: menuentry #: guix-git/doc/guix.texi:280 guix-git/doc/guix.texi:2913 msgid "Running the garbage collector." msgstr "Запуск сборщика мусора." #. type: node #: guix-git/doc/guix.texi:280 guix-git/doc/guix.texi:2913 #: guix-git/doc/guix.texi:4397 #, no-wrap msgid "Invoking guix pull" msgstr "Запуск guix pull" #. type: menuentry #: guix-git/doc/guix.texi:280 guix-git/doc/guix.texi:2913 msgid "Fetching the latest Guix and distribution." msgstr "Π—Π°ΠΊΠ°Ρ‡ΠΊΠ° послСднСго Guix ΠΈ дистрибуции." #. type: node #: guix-git/doc/guix.texi:280 guix-git/doc/guix.texi:2913 #: guix-git/doc/guix.texi:4649 #, no-wrap msgid "Invoking guix time-machine" msgstr "Π’Ρ‹Π·ΠΎΠ² guix time-machine" #. type: menuentry #: guix-git/doc/guix.texi:280 guix-git/doc/guix.texi:2913 msgid "Running an older revision of Guix." msgstr "Запуск Π±ΠΎΠ»Π΅Π΅ старых Ρ€Π΅Π²ΠΈΠ·ΠΈΠΉ Guix." #. type: section #: guix-git/doc/guix.texi:280 guix-git/doc/guix.texi:2913 #: guix-git/doc/guix.texi:4775 guix-git/doc/guix.texi:4776 #, no-wrap msgid "Inferiors" msgstr "МладшиС вСрсии" #. type: menuentry #: guix-git/doc/guix.texi:280 guix-git/doc/guix.texi:2913 msgid "Interacting with another revision of Guix." msgstr "ВзаимодСйствиС с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ рСвизиями Guix." #. type: node #: guix-git/doc/guix.texi:280 guix-git/doc/guix.texi:2913 #: guix-git/doc/guix.texi:4900 #, no-wrap msgid "Invoking guix describe" msgstr "Π’Ρ‹Π·ΠΎΠ² guix describe" #. type: menuentry #: guix-git/doc/guix.texi:280 guix-git/doc/guix.texi:2913 msgid "Display information about your Guix revision." msgstr "ΠžΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Ρ€Π΅Π²ΠΈΠ·ΠΈΠΈ Guix." #. type: node #: guix-git/doc/guix.texi:280 guix-git/doc/guix.texi:2913 #: guix-git/doc/guix.texi:4996 #, no-wrap msgid "Invoking guix archive" msgstr "Π’Ρ‹Π·ΠΎΠ² guix archive" #. type: menuentry #: guix-git/doc/guix.texi:280 guix-git/doc/guix.texi:2913 msgid "Exporting and importing store files." msgstr "Экспорт ΠΈ ΠΈΠΌΠΏΠΎΡ€Ρ‚ Ρ„Π°ΠΉΠ»ΠΎΠ² склада." #. type: subsection #: guix-git/doc/guix.texi:290 guix-git/doc/guix.texi:3642 #: guix-git/doc/guix.texi:3644 guix-git/doc/guix.texi:3645 #, fuzzy, no-wrap #| msgid "Official Substitute Server" msgid "Official Substitute Servers" msgstr "ΠžΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ сСрвСр подстановок" #. type: menuentry #: guix-git/doc/guix.texi:290 guix-git/doc/guix.texi:3642 msgid "One particular source of substitutes." msgstr "ΠžΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ источник подстановок." #. type: subsection #: guix-git/doc/guix.texi:290 guix-git/doc/guix.texi:3642 #: guix-git/doc/guix.texi:3674 guix-git/doc/guix.texi:3675 #, no-wrap msgid "Substitute Server Authorization" msgstr "Авторизация сСрвСра подстановок" #. type: menuentry #: guix-git/doc/guix.texi:290 guix-git/doc/guix.texi:3642 msgid "How to enable or disable substitutes." msgstr "Как Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ подстановки." #. type: subsection #: guix-git/doc/guix.texi:290 guix-git/doc/guix.texi:3642 #: guix-git/doc/guix.texi:3744 guix-git/doc/guix.texi:3745 #, no-wrap msgid "Getting Substitutes from Other Servers" msgstr "ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚Π΅Π»Π΅ΠΉ с Π΄Ρ€ΡƒΠ³ΠΈΡ… сСрвСров" #. type: menuentry #: guix-git/doc/guix.texi:290 guix-git/doc/guix.texi:3642 msgid "Substitute diversity." msgstr "Π Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·ΠΈΠ΅ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚Π΅Π»Π΅ΠΉ." #. type: subsection #: guix-git/doc/guix.texi:290 guix-git/doc/guix.texi:3642 #: guix-git/doc/guix.texi:3865 guix-git/doc/guix.texi:3866 #, no-wrap msgid "Substitute Authentication" msgstr "АутСнтификация подстановок" #. type: menuentry #: guix-git/doc/guix.texi:290 guix-git/doc/guix.texi:3642 msgid "How Guix verifies substitutes." msgstr "Как Guix провСряСт подстановки." #. type: subsection #: guix-git/doc/guix.texi:290 guix-git/doc/guix.texi:3642 #: guix-git/doc/guix.texi:3900 guix-git/doc/guix.texi:3901 #, no-wrap msgid "Proxy Settings" msgstr "Настройки proxy" #. type: menuentry #: guix-git/doc/guix.texi:290 guix-git/doc/guix.texi:3642 msgid "How to get substitutes via proxy." msgstr "Как ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ подстановки Ρ‡Π΅Ρ€Π΅Π· proxy." #. type: subsection #: guix-git/doc/guix.texi:290 guix-git/doc/guix.texi:3642 #: guix-git/doc/guix.texi:3912 guix-git/doc/guix.texi:3913 #, no-wrap msgid "Substitution Failure" msgstr "Ошибки ΠΏΡ€ΠΈ подстановкС" #. type: menuentry #: guix-git/doc/guix.texi:290 guix-git/doc/guix.texi:3642 msgid "What happens when substitution fails." msgstr "Π§Ρ‚ΠΎ происходит, ΠΊΠΎΠ³Π΄Π° подстановка Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ΡΡ ошибкой." #. type: subsection #: guix-git/doc/guix.texi:290 guix-git/doc/guix.texi:3642 #: guix-git/doc/guix.texi:3940 guix-git/doc/guix.texi:3941 #, no-wrap msgid "On Trusting Binaries" msgstr "ΠšΠ°ΡΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Π½Ρ‹Ρ… Π±ΠΈΠ½Π°Ρ€Π½ΠΈΠΊΠΎΠ²" #. type: menuentry #: guix-git/doc/guix.texi:290 guix-git/doc/guix.texi:3642 msgid "How can you trust that binary blob?" msgstr "Как ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠΌΡƒ Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠΌΡƒ Π±Π»ΠΎΠΊΡƒ?" #. type: section #: guix-git/doc/guix.texi:304 guix-git/doc/guix.texi:5220 #: guix-git/doc/guix.texi:5222 guix-git/doc/guix.texi:5223 #, no-wrap msgid "Specifying Additional Channels" msgstr "Π£ΠΊΠ°Π·Π°Π½ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠ°Π½Π°Π»ΠΎΠ²" #. type: menuentry #: guix-git/doc/guix.texi:304 guix-git/doc/guix.texi:5220 msgid "Extending the package collection." msgstr "Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²." #. type: section #: guix-git/doc/guix.texi:304 guix-git/doc/guix.texi:5220 #: guix-git/doc/guix.texi:5268 guix-git/doc/guix.texi:5269 #, no-wrap msgid "Using a Custom Guix Channel" msgstr "ИспользованиС ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΊΠ°Π½Π°Π»Π° Guix" #. type: menuentry #: guix-git/doc/guix.texi:304 guix-git/doc/guix.texi:5220 msgid "Using a customized Guix." msgstr "ИспользованиС кастомизированного Guix." #. type: section #: guix-git/doc/guix.texi:304 guix-git/doc/guix.texi:5220 #: guix-git/doc/guix.texi:5309 guix-git/doc/guix.texi:5310 #, no-wrap msgid "Replicating Guix" msgstr "ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Guix" #. type: menuentry #: guix-git/doc/guix.texi:304 guix-git/doc/guix.texi:5220 msgid "Running the @emph{exact same} Guix." msgstr "Запуск @emph{exact same} Guix." #. type: section #: guix-git/doc/guix.texi:304 guix-git/doc/guix.texi:5220 #: guix-git/doc/guix.texi:5428 guix-git/doc/guix.texi:5429 #, no-wrap msgid "Channel Authentication" msgstr "АутСнтификация ΠΊΠ°Π½Π°Π»Π°" #. type: menuentry #: guix-git/doc/guix.texi:304 guix-git/doc/guix.texi:5220 msgid "How Guix verifies what it fetches." msgstr "Как Guix провСряСт Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚." #. type: section #: guix-git/doc/guix.texi:304 guix-git/doc/guix.texi:5220 #: guix-git/doc/guix.texi:5468 guix-git/doc/guix.texi:5469 #, no-wrap msgid "Channels with Substitutes" msgstr "ΠšΠ°Π½Π°Π»Ρ‹ с замСнитСлями" #. type: menuentry #: guix-git/doc/guix.texi:304 guix-git/doc/guix.texi:5220 msgid "Using channels with available substitutes." msgstr "ИспользованиС ΠΊΠ°Π½Π°Π»ΠΎΠ² с доступными замСнитСлями." #. type: section #: guix-git/doc/guix.texi:304 guix-git/doc/guix.texi:5220 #: guix-git/doc/guix.texi:5493 guix-git/doc/guix.texi:5494 #, no-wrap msgid "Creating a Channel" msgstr "Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠ°Π½Π°Π»Π°" #. type: menuentry #: guix-git/doc/guix.texi:304 guix-git/doc/guix.texi:5220 msgid "How to write your custom channel." msgstr "Как Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ собствСнный ΠΊΠ°Π½Π°Π»." #. type: section #: guix-git/doc/guix.texi:304 guix-git/doc/guix.texi:5220 #: guix-git/doc/guix.texi:5624 guix-git/doc/guix.texi:5625 #, no-wrap msgid "Package Modules in a Sub-directory" msgstr "ΠŸΠ°ΠΊΠ΅Ρ‚Π½Ρ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ Π² ΠΏΠΎΠ΄Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ" #. type: menuentry #: guix-git/doc/guix.texi:304 guix-git/doc/guix.texi:5220 msgid "Specifying the channel's package modules location." msgstr "Π—Π°Π΄Π°Π½ΠΈΠ΅ располоТСния ΠΏΠ°ΠΊΠ΅Ρ‚Π½Ρ‹Ρ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ ΠΊΠ°Π½Π°Π»Π°." #. type: section #: guix-git/doc/guix.texi:304 guix-git/doc/guix.texi:5220 #: guix-git/doc/guix.texi:5650 guix-git/doc/guix.texi:5651 #, no-wrap msgid "Declaring Channel Dependencies" msgstr "ОбъявлСниС зависимостСй ΠΊΠ°Π½Π°Π»Π°" #. type: menuentry #: guix-git/doc/guix.texi:304 guix-git/doc/guix.texi:5220 msgid "How to depend on other channels." msgstr "Как Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΊΠ°Π½Π°Π»ΠΎΠ²." #. type: section #: guix-git/doc/guix.texi:304 guix-git/doc/guix.texi:5220 #: guix-git/doc/guix.texi:5692 guix-git/doc/guix.texi:5693 #, no-wrap msgid "Specifying Channel Authorizations" msgstr "Π£ΠΊΠ°Π·Π°Π½ΠΈΠ΅ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΉ ΠΊΠ°Π½Π°Π»Π°" #. type: menuentry #: guix-git/doc/guix.texi:304 guix-git/doc/guix.texi:5220 msgid "Defining channel authors authorizations." msgstr "Авторизация Π°Π²Ρ‚ΠΎΡ€ΠΎΠ² ΠΊΠ°Π½Π°Π»Π°." #. type: section #: guix-git/doc/guix.texi:304 guix-git/doc/guix.texi:5220 #: guix-git/doc/guix.texi:5795 guix-git/doc/guix.texi:5796 #, no-wrap msgid "Primary URL" msgstr "Основной URL" #. type: menuentry #: guix-git/doc/guix.texi:304 guix-git/doc/guix.texi:5220 msgid "Distinguishing mirror to original." msgstr "ΠžΡ‚Π»ΠΈΡ‡ΠΈΠ΅ Π·Π΅Ρ€ΠΊΠ°Π»Π° ΠΎΡ‚ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Π°." #. type: section #: guix-git/doc/guix.texi:304 guix-git/doc/guix.texi:5220 #: guix-git/doc/guix.texi:5818 guix-git/doc/guix.texi:5819 #, no-wrap msgid "Writing Channel News" msgstr "НаписаниС новостСй ΠΊΠ°Π½Π°Π»Π°" #. type: menuentry #: guix-git/doc/guix.texi:304 guix-git/doc/guix.texi:5220 msgid "Communicating information to channel's users." msgstr "ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ ΠΊΠ°Π½Π°Π»Π°." #. type: node #: guix-git/doc/guix.texi:312 guix-git/doc/guix.texi:5908 #: guix-git/doc/guix.texi:5910 #, no-wrap msgid "Invoking guix shell" msgstr "Запуск guix shell" #. type: menuentry #: guix-git/doc/guix.texi:312 guix-git/doc/guix.texi:5908 #, fuzzy #| msgid "replication, of software environments" msgid "Spawning one-off software environments." msgstr "ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠ΅, окруТСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния" #. type: node #: guix-git/doc/guix.texi:312 guix-git/doc/guix.texi:5908 #: guix-git/doc/guix.texi:6456 #, no-wrap msgid "Invoking guix environment" msgstr "Запуск guix environment" #. type: menuentry #: guix-git/doc/guix.texi:312 guix-git/doc/guix.texi:5908 msgid "Setting up development environments." msgstr "Настройка окруТСния сборки." #. type: node #: guix-git/doc/guix.texi:312 guix-git/doc/guix.texi:5908 #: guix-git/doc/guix.texi:6853 #, no-wrap msgid "Invoking guix pack" msgstr "Запуск guix pack" #. type: menuentry #: guix-git/doc/guix.texi:312 guix-git/doc/guix.texi:5908 msgid "Creating software bundles." msgstr "Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π°Π±ΠΎΡ€ΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ." #. type: section #: guix-git/doc/guix.texi:312 guix-git/doc/guix.texi:5908 #: guix-git/doc/guix.texi:7382 guix-git/doc/guix.texi:7383 #, no-wrap msgid "The GCC toolchain" msgstr "Π’ΡƒΠ»Ρ‡Π΅ΠΉΠ½ GCC" #. type: menuentry #: guix-git/doc/guix.texi:312 guix-git/doc/guix.texi:5908 msgid "Working with languages supported by GCC." msgstr "Π Π°Π±ΠΎΡ‚Π° с языками, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹ΠΌΠΈ gcc." #. type: node #: guix-git/doc/guix.texi:312 guix-git/doc/guix.texi:5908 #: guix-git/doc/guix.texi:7408 #, no-wrap msgid "Invoking guix git authenticate" msgstr "Запуск guix git authenticate" #. type: menuentry #: guix-git/doc/guix.texi:312 guix-git/doc/guix.texi:5908 msgid "Authenticating Git repositories." msgstr "АутСнтификация Git Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π²." #. type: section #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 #: guix-git/doc/guix.texi:7550 guix-git/doc/guix.texi:7551 #, no-wrap msgid "Package Modules" msgstr "ΠŸΠ°ΠΊΠ΅Ρ‚Π½Ρ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ" #. type: menuentry #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 msgid "Packages from the programmer's viewpoint." msgstr "ΠŸΠ°ΠΊΠ΅Ρ‚Ρ‹ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния программиста." #. type: section #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:331 #: guix-git/doc/guix.texi:7548 guix-git/doc/guix.texi:7612 #: guix-git/doc/guix.texi:7613 #, no-wrap msgid "Defining Packages" msgstr "ОписаниС ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²" #. type: menuentry #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 msgid "Defining new packages." msgstr "ОписаниС Π½ΠΎΠ²Ρ‹Ρ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²." #. type: section #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 #: guix-git/doc/guix.texi:8437 guix-git/doc/guix.texi:8438 #, fuzzy, no-wrap msgid "Defining Package Variants" msgstr "ОписаниС ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²" #. type: menuentry #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 msgid "Customizing packages." msgstr "ΠšΠ°ΡΡ‚ΠΎΠΌΠΈΠ·Π°Ρ†ΠΈΡ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²." #. type: section #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 #: guix-git/doc/guix.texi:8726 guix-git/doc/guix.texi:8727 #, fuzzy, no-wrap #| msgid "Writing conventions." msgid "Writing Manifests" msgstr "НаписаниС соглашСний." #. type: menuentry #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 msgid "The bill of materials of your environment." msgstr "" #. type: section #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 #: guix-git/doc/guix.texi:9031 guix-git/doc/guix.texi:9032 #, no-wrap msgid "Build Systems" msgstr "БистСмы сборки" #. type: menuentry #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 msgid "Specifying how packages are built." msgstr "Π—Π°Π΄Π°Π½ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² сборки ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²." #. type: subsection #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 #: guix-git/doc/guix.texi:10360 guix-git/doc/guix.texi:10361 #: guix-git/doc/guix.texi:10903 #, no-wrap msgid "Build Phases" msgstr "Π€Π°Π·Ρ‹ сборки" #. type: menuentry #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 msgid "Phases of the build process of a package." msgstr "Π€Π°Π·Ρ‹ процСсса сборки ΠΏΠ°ΠΊΠ΅Ρ‚Π°." #. type: section #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 #: guix-git/doc/guix.texi:10585 guix-git/doc/guix.texi:10586 #, fuzzy, no-wrap msgid "Build Utilities" msgstr "Π£Ρ‚ΠΈΠ»ΠΈΡ‚Ρ‹" #. type: menuentry #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 msgid "Helpers for your package definitions and more." msgstr "Π˜ΠΌΠΏΠΎΡ€Ρ‚ описаниий ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²." #. type: section #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 #: guix-git/doc/guix.texi:11060 guix-git/doc/guix.texi:11061 #, fuzzy, no-wrap #| msgid "search paths" msgid "Search Paths" msgstr "ΠΏΡƒΡ‚ΠΈ поиска" #. type: menuentry #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 #, fuzzy #| msgid "Preparing the isolated build environment." msgid "Declaring search path environment variables." msgstr "ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ окруТСния сборки." #. type: section #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 #: guix-git/doc/guix.texi:11264 guix-git/doc/guix.texi:11265 #, no-wrap msgid "The Store" msgstr "Π₯Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅" #. type: menuentry #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 msgid "Manipulating the package store." msgstr "Π Π°Π±ΠΎΡ‚Π° с Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ΠΌ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²." #. type: section #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 #: guix-git/doc/guix.texi:11416 guix-git/doc/guix.texi:11417 #, no-wrap msgid "Derivations" msgstr "Π”Π΅Ρ€ΠΈΠ²Π°Ρ†ΠΈΠΈ" #. type: menuentry #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 msgid "Low-level interface to package derivations." msgstr "НизкоуровнСвый интСрфСйс Π΄Π΅Ρ€ΠΈΠ²Π°Ρ†ΠΈΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²." #. type: section #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 #: guix-git/doc/guix.texi:11609 guix-git/doc/guix.texi:11610 #, no-wrap msgid "The Store Monad" msgstr "Устройство склада" #. type: menuentry #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 msgid "Purely functional interface to the store." msgstr "Чисто Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ интСрфСйс доступа ΠΊ складу." #. type: section #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 #: guix-git/doc/guix.texi:11931 guix-git/doc/guix.texi:11932 #, no-wrap msgid "G-Expressions" msgstr "G-Expressions" #. type: menuentry #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 msgid "Manipulating build expressions." msgstr "Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠΌ сборки." #. type: node #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 #: guix-git/doc/guix.texi:12623 #, no-wrap msgid "Invoking guix repl" msgstr "Запуск guix repl" #. type: menuentry #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 msgid "Programming Guix in Guile" msgstr "ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Guix Π² Guile" #. type: section #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 #: guix-git/doc/guix.texi:12740 guix-git/doc/guix.texi:12741 #, fuzzy, no-wrap #| msgid "Using Guix in Scheme." msgid "Using Guix Interactively" msgstr "ИспользованиС Guix Π² Scheme." #. type: menuentry #: guix-git/doc/guix.texi:329 guix-git/doc/guix.texi:7548 msgid "Fine-grain interaction at the REPL." msgstr "" #. type: node #: guix-git/doc/guix.texi:334 guix-git/doc/guix.texi:7816 #: guix-git/doc/guix.texi:7819 #, no-wrap msgid "package Reference" msgstr "ссылка Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚" #. type: menuentry #: guix-git/doc/guix.texi:334 guix-git/doc/guix.texi:7816 msgid "The package data type." msgstr "Π’ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… package." #. type: node #: guix-git/doc/guix.texi:334 guix-git/doc/guix.texi:7816 #: guix-git/doc/guix.texi:8131 #, no-wrap msgid "origin Reference" msgstr "Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ origin" #. type: menuentry #: guix-git/doc/guix.texi:334 guix-git/doc/guix.texi:7816 msgid "The origin data type." msgstr "Π’ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… origin." #. type: node #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 #: guix-git/doc/guix.texi:12929 #, no-wrap msgid "Invoking guix build" msgstr "Запуск guix build" #. type: menuentry #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 msgid "Building packages from the command line." msgstr "Π‘Π±ΠΎΡ€ΠΊΠ° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС." #. type: node #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 #: guix-git/doc/guix.texi:13887 #, no-wrap msgid "Invoking guix edit" msgstr "Запуск guix edit" #. type: menuentry #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 msgid "Editing package definitions." msgstr "Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ описания ΠΏΠ°ΠΊΠ΅Ρ‚Π°." #. type: node #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 #: guix-git/doc/guix.texi:13917 #, no-wrap msgid "Invoking guix download" msgstr "Запуск guix download" #. type: menuentry #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 msgid "Downloading a file and printing its hash." msgstr "Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Ρ„Π°ΠΉΠ»Π° ΠΈ Π²Ρ‹Π²ΠΎΠ΄ Π΅Π³ΠΎ Ρ…ΡΡˆΠ°." #. type: node #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 #: guix-git/doc/guix.texi:13998 #, no-wrap msgid "Invoking guix hash" msgstr "Запуск guix hash" #. type: menuentry #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 msgid "Computing the cryptographic hash of a file." msgstr "ВычислСниС криптографичСского Ρ…Π΅ΡˆΠ° Ρ„Π°ΠΉΠ»Π°." #. type: node #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 #: guix-git/doc/guix.texi:14089 #, no-wrap msgid "Invoking guix import" msgstr "Запуск guix import" #. type: menuentry #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 msgid "Importing package definitions." msgstr "Π˜ΠΌΠΏΠΎΡ€Ρ‚ описаниий ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²." #. type: node #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 #: guix-git/doc/guix.texi:14776 #, no-wrap msgid "Invoking guix refresh" msgstr "Запуск guix refresh" #. type: menuentry #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 msgid "Updating package definitions." msgstr "ОбновлСниС описаний ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²." #. type: node #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 #: guix-git/doc/guix.texi:15232 #, fuzzy, no-wrap #| msgid "Invoking guix system" msgid "Invoking guix style" msgstr "Π’Ρ‹Π·ΠΎΠ² guix system" #. type: menuentry #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 #, fuzzy #| msgid "Editing package definitions." msgid "Styling package definitions." msgstr "Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ описания ΠΏΠ°ΠΊΠ΅Ρ‚Π°." #. type: node #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 #: guix-git/doc/guix.texi:15441 #, no-wrap msgid "Invoking guix lint" msgstr "Запуск guix lint" #. type: menuentry #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 msgid "Finding errors in package definitions." msgstr "Поиск ошибок Π² описаниях ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²." #. type: node #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 #: guix-git/doc/guix.texi:15627 #, no-wrap msgid "Invoking guix size" msgstr "Запуск guix size" #. type: menuentry #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 msgid "Profiling disk usage." msgstr "ΠžΠ±Π·ΠΎΡ€ использования диска." #. type: node #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 #: guix-git/doc/guix.texi:15771 #, no-wrap msgid "Invoking guix graph" msgstr "Запуск guix graph" #. type: menuentry #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 msgid "Visualizing the graph of packages." msgstr "Визуализация Π³Ρ€Π°Ρ„Π° ΠΏΠ°ΠΊΠ΅Ρ‚Π°." #. type: node #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 #: guix-git/doc/guix.texi:16052 #, no-wrap msgid "Invoking guix publish" msgstr "Запуск guix publish" #. type: menuentry #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 msgid "Sharing substitutes." msgstr "БовмСстноС использованиС подстановок." #. type: node #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 #: guix-git/doc/guix.texi:16326 #, no-wrap msgid "Invoking guix challenge" msgstr "Запуск guix challenge" #. type: menuentry #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 msgid "Challenging substitute servers." msgstr "Π‘ΠΎΠΏΠ΅Ρ€Π½ΠΈΡ‡Π°ΡŽΡ‰ΠΈΠ΅ сСрвСры подстановок." #. type: node #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 #: guix-git/doc/guix.texi:16515 #, no-wrap msgid "Invoking guix copy" msgstr "Запуск guix copy" #. type: menuentry #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 msgid "Copying to and from a remote store." msgstr "ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ· ΠΈ Π² ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹ΠΉ склад." #. type: node #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 #: guix-git/doc/guix.texi:16579 #, no-wrap msgid "Invoking guix container" msgstr "Запуск guix container" #. type: menuentry #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 msgid "Process isolation." msgstr "Π˜Π·ΠΎΠ»ΡΡ†ΠΈΡ процСсса." #. type: node #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 #: guix-git/doc/guix.texi:16633 #, no-wrap msgid "Invoking guix weather" msgstr "Запуск guix weather" #. type: menuentry #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 msgid "Assessing substitute availability." msgstr "ΠžΡ†Π΅Π½ΠΊΠ° доступности подстановок." #. type: node #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 #: guix-git/doc/guix.texi:16782 #, no-wrap msgid "Invoking guix processes" msgstr "Запуск guix processes" #. type: menuentry #: guix-git/doc/guix.texi:353 guix-git/doc/guix.texi:12927 msgid "Listing client processes." msgstr "Π§Ρ‚Π΅Π½ΠΈΠ΅ клиСнтских процСссов." #. type: section #: guix-git/doc/guix.texi:355 guix-git/doc/guix.texi:12930 #, no-wrap msgid "Invoking @command{guix build}" msgstr "Запуск @command{guix build}" #. type: subsection #: guix-git/doc/guix.texi:360 guix-git/doc/guix.texi:12981 #: guix-git/doc/guix.texi:12983 guix-git/doc/guix.texi:12984 #, no-wrap msgid "Common Build Options" msgstr "Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ сборки" #. type: menuentry #: guix-git/doc/guix.texi:360 guix-git/doc/guix.texi:12981 msgid "Build options for most commands." msgstr "ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ сборки для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° ΠΊΠΎΠΌΠ°Π½Π΄." #. type: subsection #: guix-git/doc/guix.texi:360 guix-git/doc/guix.texi:12981 #: guix-git/doc/guix.texi:13138 guix-git/doc/guix.texi:13139 #, no-wrap msgid "Package Transformation Options" msgstr "ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ прСобразования ΠΏΠ°ΠΊΠ΅Ρ‚Π°" #. type: menuentry #: guix-git/doc/guix.texi:360 guix-git/doc/guix.texi:12981 msgid "Creating variants of packages." msgstr "Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²." #. type: subsection #: guix-git/doc/guix.texi:360 guix-git/doc/guix.texi:12981 #: guix-git/doc/guix.texi:13561 guix-git/doc/guix.texi:13562 #, no-wrap msgid "Additional Build Options" msgstr "Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ сборки" #. type: menuentry #: guix-git/doc/guix.texi:360 guix-git/doc/guix.texi:12981 msgid "Options specific to 'guix build'." msgstr "ΠžΡΠΎΠ±Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ для 'guix build'." #. type: subsection #: guix-git/doc/guix.texi:360 guix-git/doc/guix.texi:12981 #: guix-git/doc/guix.texi:13807 guix-git/doc/guix.texi:13808 #, no-wrap msgid "Debugging Build Failures" msgstr "ΠžΡ‚Π»Π°Π΄ΠΊΠ° ошибок сборки" #. type: menuentry #: guix-git/doc/guix.texi:360 guix-git/doc/guix.texi:12981 msgid "Real life packaging experience." msgstr "Π–ΠΈΠ·Π½Π΅Π½Π½Ρ‹ΠΉ ΠΎΠΏΡ‹Ρ‚ Π² сборкС ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²." #. type: section #: guix-git/doc/guix.texi:365 guix-git/doc/guix.texi:16905 #: guix-git/doc/guix.texi:16907 guix-git/doc/guix.texi:16908 #, fuzzy, no-wrap #| msgid "cross-compilation" msgid "Cross-Compilation" msgstr "кросс-компиляция" #. type: menuentry #: guix-git/doc/guix.texi:365 guix-git/doc/guix.texi:16905 msgid "Cross-compiling for another architecture." msgstr "" #. type: section #: guix-git/doc/guix.texi:365 guix-git/doc/guix.texi:16905 #: guix-git/doc/guix.texi:16959 guix-git/doc/guix.texi:16960 #, no-wrap msgid "Native Builds" msgstr "" #. type: menuentry #: guix-git/doc/guix.texi:365 guix-git/doc/guix.texi:16905 #, fuzzy #| msgid "Targeting another platform or kernel." msgid "Targeting another architecture through native builds." msgstr "ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ Π½Π° Π΄Ρ€ΡƒΠ³ΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ ΠΈΠ»ΠΈ ядро." #. type: node #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 #: guix-git/doc/guix.texi:17094 #, fuzzy, no-wrap #| msgid "Getting Started" msgid "Getting Started with the System" msgstr "Начиная" #. type: section #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 #: guix-git/doc/guix.texi:17297 guix-git/doc/guix.texi:17298 #, no-wrap msgid "Using the Configuration System" msgstr "ИспользованиС систСмы ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ" #. type: menuentry #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 msgid "Customizing your GNU system." msgstr "Настройка вашСй систСмы GNU." #. type: node #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 #: guix-git/doc/guix.texi:17626 #, no-wrap msgid "operating-system Reference" msgstr "Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ operating-system" #. type: menuentry #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 msgid "Detail of operating-system declarations." msgstr "ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹Π΅ свСдСния ΠΎΠ± ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½ΠΈΡΡ… opertaing-system." #. type: section #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:389 #: guix-git/doc/guix.texi:17092 guix-git/doc/guix.texi:17845 #: guix-git/doc/guix.texi:17846 #, no-wrap msgid "File Systems" msgstr "Π€Π°ΠΉΠ»ΠΎΠ²Ρ‹Π΅ систСмы" #. type: menuentry #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 msgid "Configuring file system mounts." msgstr "Настройка Ρ‚ΠΎΡ‡Π΅ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы." #. type: section #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 #: guix-git/doc/guix.texi:18222 guix-git/doc/guix.texi:18223 #, no-wrap msgid "Mapped Devices" msgstr "Π Π°Π·ΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹Π΅ устройства" #. type: menuentry #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 msgid "Block device extra processing." msgstr "Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π±Π»ΠΎΡ‡Π½Ρ‹Ρ… устройств." #. type: section #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 #: guix-git/doc/guix.texi:18395 guix-git/doc/guix.texi:18396 #, fuzzy, no-wrap #| msgid "swap space" msgid "Swap Space" msgstr "мСсто Π½Π° дискС" #. type: menuentry #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 msgid "Backing RAM with disk space." msgstr "" #. type: section #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 #: guix-git/doc/guix.texi:18577 guix-git/doc/guix.texi:18578 #, no-wrap msgid "User Accounts" msgstr "Π£Ρ‡Ρ‘Ρ‚Π½Ρ‹Π΅ записи ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ" #. type: menuentry #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 msgid "Specifying user accounts." msgstr "Π—Π°Π΄Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… ΡƒΡ‡Ρ‘Ρ‚Π½Ρ‹Ρ… записСй." #. type: section #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:2233 #: guix-git/doc/guix.texi:17092 guix-git/doc/guix.texi:18758 #: guix-git/doc/guix.texi:18759 #, no-wrap msgid "Keyboard Layout" msgstr "Раскладка ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹" #. type: menuentry #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 msgid "How the system interprets key strokes." msgstr "Π˜Π½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ†ΠΈΡ наТатия клавиш систСмой." #. type: section #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:1712 #: guix-git/doc/guix.texi:17092 guix-git/doc/guix.texi:18903 #: guix-git/doc/guix.texi:18904 #, no-wrap msgid "Locales" msgstr "Π Π΅Π³ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ настройки" #. type: menuentry #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 msgid "Language and cultural convention settings." msgstr "Настройка языка ΠΈ ΠΊΡƒΠ»ΡŒΡ‚ΡƒΡ€Π½Ρ‹Ρ… особСнностСй." #. type: menuentry #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 msgid "Specifying system services." msgstr "Настройка систСмных слуТб." #. type: section #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 #: guix-git/doc/guix.texi:42011 guix-git/doc/guix.texi:42012 #, fuzzy, no-wrap #| msgid "Setuid Programs" msgid "Privileged Programs" msgstr "ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ setuid" #. type: menuentry #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 #, fuzzy #| msgid "Programs running with root privileges." msgid "Programs running with elevated privileges." msgstr "ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, выполняСмыС с ΠΏΡ€Π°Π²Π°ΠΌΠΈ root." #. type: section #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:1876 #: guix-git/doc/guix.texi:17092 guix-git/doc/guix.texi:42108 #: guix-git/doc/guix.texi:42109 #, no-wrap msgid "X.509 Certificates" msgstr "Π‘Π΅Ρ€Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚Ρ‹ X.509" #. type: menuentry #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 msgid "Authenticating HTTPS servers." msgstr "АутСнтификация сСрвСров HTTPS." #. type: section #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:1771 #: guix-git/doc/guix.texi:17092 guix-git/doc/guix.texi:42172 #: guix-git/doc/guix.texi:42173 #, no-wrap msgid "Name Service Switch" msgstr "ΠŸΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡŒ слуТбы ΠΈΠΌΠ΅Π½" #. type: menuentry #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 msgid "Configuring libc's name service switch." msgstr "Настройка слуТбы ΠΈΠΌΡ‘Π½ libc." #. type: section #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 #: guix-git/doc/guix.texi:42310 guix-git/doc/guix.texi:42311 #, no-wrap msgid "Initial RAM Disk" msgstr "ΠΠ°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ RAM-диск" #. type: menuentry #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 msgid "Linux-Libre bootstrapping." msgstr "ΠΠ°Ρ‡Π°Π»ΡŒΠ½Π°Ρ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Linux-Libre." #. type: section #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 #: guix-git/doc/guix.texi:42517 guix-git/doc/guix.texi:42518 #, no-wrap msgid "Bootloader Configuration" msgstr "Настройка Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ°" #. type: menuentry #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 msgid "Configuring the boot loader." msgstr "ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ° диска." #. type: node #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 #: guix-git/doc/guix.texi:42953 #, no-wrap msgid "Invoking guix system" msgstr "Π’Ρ‹Π·ΠΎΠ² guix system" #. type: menuentry #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 msgid "Instantiating a system configuration." msgstr "ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы." #. type: node #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 #: guix-git/doc/guix.texi:43600 #, no-wrap msgid "Invoking guix deploy" msgstr "Запуск guix deploy" #. type: menuentry #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 msgid "Deploying a system configuration to a remote host." msgstr "Π Π°Π·Π²Ρ‘Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ систСмы Π½Π° ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠΉ машинС." #. type: node #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 #: guix-git/doc/guix.texi:43841 #, no-wrap msgid "Running Guix in a VM" msgstr "Запуск Guix Π½Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ машинС" #. type: menuentry #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 msgid "How to run Guix System in a virtual machine." msgstr "Как Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ систСму Guix Π½Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ машинС." #. type: section #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:433 #: guix-git/doc/guix.texi:17092 guix-git/doc/guix.texi:43976 #: guix-git/doc/guix.texi:43977 #, no-wrap msgid "Defining Services" msgstr "Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ слуТб" #. type: menuentry #: guix-git/doc/guix.texi:387 guix-git/doc/guix.texi:17092 msgid "Adding new service definitions." msgstr "Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²Ρ‹Ρ… ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ слуТб." #. type: subsection #: guix-git/doc/guix.texi:391 guix-git/doc/guix.texi:18116 #: guix-git/doc/guix.texi:18118 guix-git/doc/guix.texi:18119 #, fuzzy, no-wrap msgid "Btrfs file system" msgstr "Π‘Π΅Ρ‚Π΅Π²Ρ‹Π΅ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Π΅ систСмы" #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:19143 guix-git/doc/guix.texi:19144 #, no-wrap msgid "Base Services" msgstr "Π‘Π°Π·ΠΎΠ²Ρ‹Π΅ слуТбы" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "Essential system services." msgstr "ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слуТбы систСмы." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:20517 guix-git/doc/guix.texi:20518 #, no-wrap msgid "Scheduled Job Execution" msgstr "Π—Π°ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ исполнСния Π·Π°Π΄Π°Ρ‡" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "The mcron service." msgstr "Π‘Π»ΡƒΠΆΠ±Π° mcron." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:20691 guix-git/doc/guix.texi:20692 #, no-wrap msgid "Log Rotation" msgstr "Ротация Π»ΠΎΠ³ΠΎΠ²" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "The rottlog service." msgstr "БСрвис rottlog." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:20915 guix-git/doc/guix.texi:20916 #, fuzzy, no-wrap #| msgid "Networking" msgid "Networking Setup" msgstr "Π‘Π΅Ρ‚ΡŒ" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #, fuzzy #| msgid "user interfaces" msgid "Setting up network interfaces." msgstr "ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ интСрфСйсы" #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:21627 guix-git/doc/guix.texi:21628 #, no-wrap msgid "Networking Services" msgstr "БСрвисы сСти" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #, fuzzy #| msgid "Network setup, SSH daemon, etc." msgid "Firewall, SSH daemon, etc." msgstr "Установка сСти, Π΄Π΅ΠΌΠΎΠ½ SSH ΠΈ Ρ‚.Π΄." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:23159 guix-git/doc/guix.texi:23160 #, no-wrap msgid "Unattended Upgrades" msgstr "АвтоматичСскиС обновлСния" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "Automated system upgrades." msgstr "АвтоматичСскиС обновлСния систСмы." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:23312 guix-git/doc/guix.texi:23313 #, no-wrap msgid "X Window" msgstr "Оконная систСма X" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "Graphical display." msgstr "ГрафичСский дисплСй." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:23975 guix-git/doc/guix.texi:23976 #, no-wrap msgid "Printing Services" msgstr "БСрвисы ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "Local and remote printer support." msgstr "ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΈ ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ½Ρ‚Π΅Ρ€ΠΎΠ²." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:24797 guix-git/doc/guix.texi:24798 #, no-wrap msgid "Desktop Services" msgstr "БСрвисы Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ стола" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "D-Bus and desktop services." msgstr "D-Bus ΠΈ сСрвисы Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ стола." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:25995 guix-git/doc/guix.texi:25996 #, no-wrap msgid "Sound Services" msgstr "Π—Π²ΡƒΠΊΠΎΠ²Ρ‹Π΅ сСрвисы" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "ALSA and Pulseaudio services." msgstr "БСрвисы ALSA ΠΈ Pulseaudio." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:26168 guix-git/doc/guix.texi:26169 #, fuzzy, no-wrap msgid "File Search Services" msgstr "БСрвисы сообщСний" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "Tools to search for files." msgstr "" #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:26272 guix-git/doc/guix.texi:26273 #, no-wrap msgid "Database Services" msgstr "БСрвисы Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "SQL databases, key-value stores, etc." msgstr "Π‘Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… SQL, Π±Π°Π·Ρ‹ ΠΊΠ»ΡŽΡ‡-Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈ Ρ‚. Π΄." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:26639 guix-git/doc/guix.texi:26640 #, no-wrap msgid "Mail Services" msgstr "ΠŸΠΎΡ‡Ρ‚ΠΎΠ²Ρ‹Π΅ сСрвисы" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "IMAP, POP3, SMTP, and all that." msgstr "IMAP, POP3, SMTP ΠΈ ΠΏΡ€ΠΎΡ‡Π΅Π΅." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:28741 guix-git/doc/guix.texi:28742 #, no-wrap msgid "Messaging Services" msgstr "БСрвисы сообщСний" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "Messaging services." msgstr "БСрвисы сообщСний." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:29252 guix-git/doc/guix.texi:29253 #, no-wrap msgid "Telephony Services" msgstr "БСрвисы Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½ΠΈΠΈ" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "Telephony services." msgstr "БСрвисы Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½ΠΈΠΈ." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:29704 guix-git/doc/guix.texi:29705 #, fuzzy, no-wrap msgid "File-Sharing Services" msgstr "БСрвисы сообщСний" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #, fuzzy msgid "File-sharing services." msgstr "БСрвисы сообщСний." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:30502 guix-git/doc/guix.texi:30503 #, no-wrap msgid "Monitoring Services" msgstr "БСрвисы ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π°" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "Monitoring services." msgstr "БСрвисы ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π°." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:31160 guix-git/doc/guix.texi:31161 #, no-wrap msgid "Kerberos Services" msgstr "БСрвисы Kerberos" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "Kerberos services." msgstr "БСрвисы Kerberos." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:31286 guix-git/doc/guix.texi:31287 #, no-wrap msgid "LDAP Services" msgstr "LDAP БСрвисы" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "LDAP services." msgstr "LDAP сСрвисы." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:31950 guix-git/doc/guix.texi:31951 #, no-wrap msgid "Web Services" msgstr "Π’Π΅Π±-сСрвисы" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "Web servers." msgstr "Π’Π΅Π±-сСрвСры." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:33257 guix-git/doc/guix.texi:33258 #, no-wrap msgid "Certificate Services" msgstr "БСрвисы сСртификатов" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "TLS certificates via Let's Encrypt." msgstr "Π‘Π΅Ρ€Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚Ρ‹ TLS Ρ‡Π΅Ρ€Π΅Π· Let's Encrypt." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:33437 guix-git/doc/guix.texi:33438 #, no-wrap msgid "DNS Services" msgstr "БСрвисы DNS" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "DNS daemons." msgstr "DNS-Π΄Π΅ΠΌΠΎΠ½Ρ‹." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:34094 guix-git/doc/guix.texi:34095 #, fuzzy, no-wrap #| msgid "VPN Services" msgid "VNC Services" msgstr "VPN-сСрвисы" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #, fuzzy #| msgid "VPN daemons." msgid "VNC daemons." msgstr "VPN-Π΄Π΅ΠΌΠΎΠ½Ρ‹." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:34248 guix-git/doc/guix.texi:34249 #, no-wrap msgid "VPN Services" msgstr "VPN-сСрвисы" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "VPN daemons." msgstr "VPN-Π΄Π΅ΠΌΠΎΠ½Ρ‹." #. type: node #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:34618 guix-git/doc/guix.texi:34619 #: guix-git/doc/guix.texi:34814 #, no-wrap msgid "Network File System" msgstr "Π‘Π΅Ρ‚Π΅Π²Ρ‹Π΅ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Π΅ систСмы" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "NFS related services." msgstr "БСрвисы, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠ΅ с сСтСвыми Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΌΠΈ систСмами." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:34814 guix-git/doc/guix.texi:34815 #, fuzzy, no-wrap #| msgid "Game Services" msgid "Samba Services" msgstr "Π˜Π³Ρ€ΠΎΠ²Ρ‹Π΅ слуТбы" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #, fuzzy #| msgid "pam-services" msgid "Samba services." msgstr "Π‘Π°Π·ΠΎΠ²Ρ‹Π΅ сСрвисы" #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:34814 guix-git/doc/guix.texi:34966 #: guix-git/doc/guix.texi:34967 #, no-wrap msgid "Continuous Integration" msgstr "Π”Π»ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ интСграция" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "Cuirass and Laminar services." msgstr "БСрвис Cuirass." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:35264 guix-git/doc/guix.texi:35265 #, no-wrap msgid "Power Management Services" msgstr "БСрвисы управлСния ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ΠΌ" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "Extending battery life." msgstr "ΠŸΡ€ΠΎΠ΄Π»Π΅Π½ΠΈΠ΅ ΠΆΠΈΠ·Π½ΠΈ Π±Π°Ρ‚Π°Ρ€Π΅ΠΈ." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:35895 guix-git/doc/guix.texi:35896 #, no-wrap msgid "Audio Services" msgstr "БСрвисы Π°ΡƒΠ΄ΠΈΠΎ" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "The MPD." msgstr "MPD." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:36302 guix-git/doc/guix.texi:36303 #, no-wrap msgid "Virtualization Services" msgstr "БСрвисы Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "Virtualization services." msgstr "БСрвисы Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:38205 guix-git/doc/guix.texi:38206 #, no-wrap msgid "Version Control Services" msgstr "БСрвисы упралСния вСрсиями" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "Providing remote access to Git repositories." msgstr "Доступ ΠΊ ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹ΠΌ рСпозиториям Git." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:39562 guix-git/doc/guix.texi:39563 #, no-wrap msgid "Game Services" msgstr "Π˜Π³Ρ€ΠΎΠ²Ρ‹Π΅ слуТбы" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "Game servers." msgstr "Π˜Π³Ρ€ΠΎΠ²Ρ‹Π΅ слуТбы." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:39617 guix-git/doc/guix.texi:39618 #, no-wrap msgid "PAM Mount Service" msgstr "Π‘Π»ΡƒΠΆΠ±Ρ‹ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ PAM" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "Service to mount volumes when logging in." msgstr "Π‘Π»ΡƒΠΆΠ±Π° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ‚ΠΎΠΌΠΎΠ² ΠΏΡ€ΠΈ Π²Ρ…ΠΎΠ΄Π΅ Π² систСму." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:39798 guix-git/doc/guix.texi:39799 #, no-wrap msgid "Guix Services" msgstr "БСрвисы Guix" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "Services relating specifically to Guix." msgstr "БСрвисы, ΠΊΠ°ΡΠ°ΡŽΡ‰ΠΈΠ΅ΡΡ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ Guix." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:40295 guix-git/doc/guix.texi:40296 #, no-wrap msgid "Linux Services" msgstr "Π‘Π»ΡƒΠΆΠ±Ρ‹ Linux" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "Services tied to the Linux kernel." msgstr "Π‘Π»ΡƒΠΆΠ±Ρ‹, привязанныС ΠΊ ядру Linux." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:40672 guix-git/doc/guix.texi:40673 #, no-wrap msgid "Hurd Services" msgstr "БСрвисы Hurd" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "Services specific for a Hurd System." msgstr "БСрвисы, ΠΊΠ°ΡΠ°ΡŽΡ‰ΠΈΠ΅ΡΡ Hurd System." #. type: subsection #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 #: guix-git/doc/guix.texi:40714 guix-git/doc/guix.texi:40715 #, no-wrap msgid "Miscellaneous Services" msgstr "Π Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Π΅ слуТбы" #. type: menuentry #: guix-git/doc/guix.texi:431 guix-git/doc/guix.texi:19141 msgid "Other services." msgstr "Π”Ρ€ΡƒΠ³ΠΈΠ΅ слуТбы." #. type: subsection #: guix-git/doc/guix.texi:439 guix-git/doc/guix.texi:43989 #: guix-git/doc/guix.texi:43991 guix-git/doc/guix.texi:43992 #, no-wrap msgid "Service Composition" msgstr "Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° сСрвисов" #. type: menuentry #: guix-git/doc/guix.texi:439 guix-git/doc/guix.texi:43989 msgid "The model for composing services." msgstr "МодСль построСния сСрвисов." #. type: subsection #: guix-git/doc/guix.texi:439 guix-git/doc/guix.texi:43989 #: guix-git/doc/guix.texi:44047 guix-git/doc/guix.texi:44048 #, no-wrap msgid "Service Types and Services" msgstr "Π’ΠΈΠΏΡ‹ сСрвисов ΠΈ сСрвисы" #. type: menuentry #: guix-git/doc/guix.texi:439 guix-git/doc/guix.texi:43989 msgid "Types and services." msgstr "Π’ΠΈΠΏΡ‹ ΠΈ сСрвисы." #. type: subsection #: guix-git/doc/guix.texi:439 guix-git/doc/guix.texi:43989 #: guix-git/doc/guix.texi:44183 guix-git/doc/guix.texi:44184 #, no-wrap msgid "Service Reference" msgstr "Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ сСрвиса" #. type: menuentry #: guix-git/doc/guix.texi:439 guix-git/doc/guix.texi:43989 msgid "API reference." msgstr "Доступ Ρ‡Π΅Ρ€Π΅Π· API." #. type: subsection #: guix-git/doc/guix.texi:439 guix-git/doc/guix.texi:43989 #: guix-git/doc/guix.texi:44500 guix-git/doc/guix.texi:44501 #, no-wrap msgid "Shepherd Services" msgstr "БСрвисы Shepherd" #. type: menuentry #: guix-git/doc/guix.texi:439 guix-git/doc/guix.texi:43989 msgid "A particular type of service." msgstr "ΠžΡΠΎΠ±Π΅Π½Π½Ρ‹ΠΉ Ρ‚ΠΈΠΏ сСрвисов." #. type: subsection #: guix-git/doc/guix.texi:439 guix-git/doc/guix.texi:43989 #: guix-git/doc/guix.texi:44785 guix-git/doc/guix.texi:44786 #, fuzzy, no-wrap #| msgid "System Configuration" msgid "Complex Configurations" msgstr "ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ систСмы" #. type: menuentry #: guix-git/doc/guix.texi:439 guix-git/doc/guix.texi:43989 #, fuzzy #| msgid "Instantiating a system configuration." msgid "Defining bindings for complex configurations." msgstr "ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы." #. type: section #: guix-git/doc/guix.texi:443 guix-git/doc/guix.texi:45179 #: guix-git/doc/guix.texi:45181 guix-git/doc/guix.texi:45182 #, fuzzy, no-wrap #| msgid "Configuring the operating system." msgid "Chrooting into an existing system" msgstr "ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы." #. type: section #: guix-git/doc/guix.texi:450 guix-git/doc/guix.texi:45334 #: guix-git/doc/guix.texi:45336 guix-git/doc/guix.texi:45337 #, fuzzy, no-wrap #| msgid "Preparing the isolated build environment." msgid "Declaring the Home Environment" msgstr "ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ окруТСния сборки." #. type: menuentry #: guix-git/doc/guix.texi:450 guix-git/doc/guix.texi:45334 #, fuzzy #| msgid "Customizing your GNU system." msgid "Customizing your Home." msgstr "Настройка вашСй систСмы GNU." #. type: section #: guix-git/doc/guix.texi:450 guix-git/doc/guix.texi:45334 #: guix-git/doc/guix.texi:45425 guix-git/doc/guix.texi:45426 #, fuzzy, no-wrap #| msgid "Configuring the boot loader." msgid "Configuring the Shell" msgstr "ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ° диска." #. type: menuentry #: guix-git/doc/guix.texi:450 guix-git/doc/guix.texi:45334 #, fuzzy #| msgid "Invoking guix environment" msgid "Enabling home environment." msgstr "Запуск guix environment" #. type: section #: guix-git/doc/guix.texi:450 guix-git/doc/guix.texi:452 #: guix-git/doc/guix.texi:45334 guix-git/doc/guix.texi:45472 #: guix-git/doc/guix.texi:45473 #, fuzzy, no-wrap #| msgid "Game Services" msgid "Home Services" msgstr "Π˜Π³Ρ€ΠΎΠ²Ρ‹Π΅ слуТбы" #. type: menuentry #: guix-git/doc/guix.texi:450 guix-git/doc/guix.texi:45334 #, fuzzy #| msgid "Specifying system services." msgid "Specifying home services." msgstr "Настройка систСмных слуТб." #. type: node #: guix-git/doc/guix.texi:450 guix-git/doc/guix.texi:45334 #: guix-git/doc/guix.texi:47951 #, no-wrap msgid "Invoking guix home" msgstr "Запуск guix home" #. type: menuentry #: guix-git/doc/guix.texi:450 guix-git/doc/guix.texi:45334 #, fuzzy #| msgid "Instantiating a system configuration." msgid "Instantiating a home configuration." msgstr "ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы." #. type: subsection #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 #: guix-git/doc/guix.texi:45524 guix-git/doc/guix.texi:45525 #, fuzzy, no-wrap #| msgid "Essential system services." msgid "Essential Home Services" msgstr "ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слуТбы систСмы." #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 msgid "Environment variables, packages, on-* scripts." msgstr "" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 #, fuzzy #| msgid "Shepherd Services" msgid "Shells: Shells Home Services" msgstr "БСрвисы Shepherd" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 msgid "POSIX shells, Bash, Zsh." msgstr "" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 #, fuzzy #| msgid "PAM Mount Service" msgid "Mcron: Mcron Home Service" msgstr "Π‘Π»ΡƒΠΆΠ±Ρ‹ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ PAM" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 #, fuzzy #| msgid "Scheduled Job Execution" msgid "Scheduled User's Job Execution." msgstr "Π—Π°ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ исполнСния Π·Π°Π΄Π°Ρ‡" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 #, fuzzy #| msgid "Power Management Services" msgid "Power Management: Power Management Home Services" msgstr "БСрвисы управлСния ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ΠΌ" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 #, fuzzy #| msgid "Service type for Patchwork." msgid "Services for battery power." msgstr "ΠŸΠΎΠ΄Π΅Π»ΠΈΡ‚Π΅ΡΡŒ своСй Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ." #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 #, fuzzy #| msgid "Shepherd Services" msgid "Shepherd: Shepherd Home Service" msgstr "БСрвисы Shepherd" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 #, fuzzy #| msgid "Messaging services." msgid "Managing User's Daemons." msgstr "БСрвисы сообщСний." #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 msgid "SSH: Secure Shell" msgstr "" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 msgid "Setting up the secure shell client." msgstr "" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 msgid "GPG: GNU Privacy Guard" msgstr "" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 msgid "Setting up GPG and related tools." msgstr "" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 #, fuzzy #| msgid "Desktop Services" msgid "Desktop: Desktop Home Services" msgstr "БСрвисы Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ стола" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 #, fuzzy #| msgid "development environments" msgid "Services for graphical environments." msgstr "окруТСния Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 #, fuzzy #| msgid "Game Services" msgid "Guix: Guix Home Services" msgstr "Π˜Π³Ρ€ΠΎΠ²Ρ‹Π΅ слуТбы" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 #, fuzzy #| msgid "Services" msgid "Services for Guix." msgstr "БСрвисы" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 #, fuzzy #| msgid "PAM Mount Service" msgid "Fonts: Fonts Home Services" msgstr "Π‘Π»ΡƒΠΆΠ±Ρ‹ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ PAM" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 #, fuzzy #| msgid "development environments" msgid "Services for managing User's fonts." msgstr "окруТСния Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 #, fuzzy #| msgid "PAM Mount Service" msgid "Sound: Sound Home Services" msgstr "Π‘Π»ΡƒΠΆΠ±Ρ‹ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ PAM" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 msgid "Dealing with audio." msgstr "" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 #, fuzzy #| msgid "Game Services" msgid "Mail: Mail Home Services" msgstr "Π˜Π³Ρ€ΠΎΠ²Ρ‹Π΅ слуТбы" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 #, fuzzy #| msgid "development environments" msgid "Services for managing mail." msgstr "окруТСния Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 #, fuzzy #| msgid "Messaging Services" msgid "Messaging: Messaging Home Services" msgstr "БСрвисы сообщСний" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 #, fuzzy #| msgid "development environments" msgid "Services for managing messaging." msgstr "окруТСния Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 #, fuzzy #| msgid "Game Services" msgid "Media: Media Home Services" msgstr "Π˜Π³Ρ€ΠΎΠ²Ρ‹Π΅ слуТбы" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 #, fuzzy #| msgid "development environments" msgid "Services for managing media." msgstr "окруТСния Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 msgid "Sway: Sway window manager" msgstr "" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 #, fuzzy #| msgid "Instantiating a system configuration." msgid "Setting up the Sway configuration." msgstr "ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы." #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 #, fuzzy #| msgid "Networking Services" msgid "Networking: Networking Home Services" msgstr "БСрвисы сСти" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 #, fuzzy #| msgid "Networking Services" msgid "Networking services." msgstr "БСрвисы сСти" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 #, fuzzy #| msgid "Miscellaneous Services" msgid "Miscellaneous: Miscellaneous Home Services" msgstr "Π Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Π΅ слуТбы" #. type: menuentry #: guix-git/doc/guix.texi:470 guix-git/doc/guix.texi:45521 #, fuzzy #| msgid "Other services." msgid "More services." msgstr "Π”Ρ€ΡƒΠ³ΠΈΠ΅ слуТбы." #. type: node #: guix-git/doc/guix.texi:475 guix-git/doc/guix.texi:48371 #: guix-git/doc/guix.texi:48373 #, fuzzy, no-wrap #| msgid "origin Reference" msgid "platform Reference" msgstr "Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ origin" #. type: menuentry #: guix-git/doc/guix.texi:475 guix-git/doc/guix.texi:48371 #, fuzzy #| msgid "Detail of operating-system declarations." msgid "Detail of platform declarations." msgstr "ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹Π΅ свСдСния ΠΎΠ± ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½ΠΈΡΡ… opertaing-system." #. type: section #: guix-git/doc/guix.texi:475 guix-git/doc/guix.texi:48371 #: guix-git/doc/guix.texi:48420 guix-git/doc/guix.texi:48421 #, fuzzy, no-wrap #| msgid "Supported hardware." msgid "Supported Platforms" msgstr "ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠ΅ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ΅ обСспСчСниС." #. type: menuentry #: guix-git/doc/guix.texi:475 guix-git/doc/guix.texi:48371 msgid "Description of the supported platforms." msgstr "" #. type: chapter #: guix-git/doc/guix.texi:477 guix-git/doc/guix.texi:48494 #, fuzzy, no-wrap #| msgid "Creating software bundles." msgid "Creating System Images" msgstr "Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π°Π±ΠΎΡ€ΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ." #. type: node #: guix-git/doc/guix.texi:482 guix-git/doc/guix.texi:48526 #: guix-git/doc/guix.texi:48528 #, fuzzy, no-wrap #| msgid "package Reference" msgid "image Reference" msgstr "ссылка Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚" #. type: menuentry #: guix-git/doc/guix.texi:482 guix-git/doc/guix.texi:48526 #, fuzzy #| msgid "Detail of operating-system declarations." msgid "Detail of image declarations." msgstr "ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹Π΅ свСдСния ΠΎΠ± ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½ΠΈΡΡ… opertaing-system." #. type: section #: guix-git/doc/guix.texi:482 guix-git/doc/guix.texi:48526 #: guix-git/doc/guix.texi:48682 guix-git/doc/guix.texi:48683 #, fuzzy, no-wrap #| msgid "installation image" msgid "Instantiate an Image" msgstr "установочный ΠΎΠ±Ρ€Π°Π·" #. type: menuentry #: guix-git/doc/guix.texi:482 guix-git/doc/guix.texi:48526 msgid "How to instantiate an image record." msgstr "" #. type: section #: guix-git/doc/guix.texi:482 guix-git/doc/guix.texi:48526 #: guix-git/doc/guix.texi:48852 guix-git/doc/guix.texi:48853 #, fuzzy, no-wrap #| msgid "package Reference" msgid "image-type Reference" msgstr "ссылка Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚" #. type: menuentry #: guix-git/doc/guix.texi:482 guix-git/doc/guix.texi:48526 #, fuzzy #| msgid "Detail of operating-system declarations." msgid "Detail of image types declaration." msgstr "ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹Π΅ свСдСния ΠΎΠ± ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½ΠΈΡΡ… opertaing-system." #. type: section #: guix-git/doc/guix.texi:482 guix-git/doc/guix.texi:48526 #: guix-git/doc/guix.texi:48981 guix-git/doc/guix.texi:48982 #, fuzzy, no-wrap #| msgid "Package Modules" msgid "Image Modules" msgstr "ΠŸΠ°ΠΊΠ΅Ρ‚Π½Ρ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ" #. type: menuentry #: guix-git/doc/guix.texi:482 guix-git/doc/guix.texi:48526 msgid "Definition of image modules." msgstr "" #. type: section #: guix-git/doc/guix.texi:484 guix-git/doc/guix.texi:48529 #, fuzzy, no-wrap #| msgid "@code{package} Reference" msgid "@code{image} Reference" msgstr "@code{package} Бсылка" #. type: node #: guix-git/doc/guix.texi:486 guix-git/doc/guix.texi:48618 #: guix-git/doc/guix.texi:48620 #, fuzzy, no-wrap #| msgid "origin Reference" msgid "partition Reference" msgstr "Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ origin" #. type: section #: guix-git/doc/guix.texi:491 guix-git/doc/guix.texi:49051 #: guix-git/doc/guix.texi:49053 guix-git/doc/guix.texi:49054 #, no-wrap msgid "Separate Debug Info" msgstr "ΠžΡ‚Π΄Π΅Π»ΡŒΠ½Π°Ρ информация ΠΎΠ± ΠΎΡ‚Π»Π°Π΄ΠΊΠ΅" #. type: menuentry #: guix-git/doc/guix.texi:491 guix-git/doc/guix.texi:49051 msgid "Installing 'debug' outputs." msgstr "Установка Π²Ρ‹Π²ΠΎΠ΄ΠΎΠ² ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ." #. type: section #: guix-git/doc/guix.texi:491 guix-git/doc/guix.texi:49051 #: guix-git/doc/guix.texi:49126 guix-git/doc/guix.texi:49127 #, no-wrap msgid "Rebuilding Debug Info" msgstr "Π‘Π±ΠΎΡ€ΠΊΠ° с ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ" #. type: menuentry #: guix-git/doc/guix.texi:491 guix-git/doc/guix.texi:49051 msgid "Building missing debug info." msgstr "Π‘Π±ΠΎΡ€ΠΊΠ° ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ." #. type: node #: guix-git/doc/guix.texi:496 guix-git/doc/guix.texi:49462 #: guix-git/doc/guix.texi:49464 #, no-wrap msgid "Full-Source Bootstrap" msgstr "" #. type: menuentry #: guix-git/doc/guix.texi:496 guix-git/doc/guix.texi:49462 msgid "A Bootstrap worthy of GNU." msgstr "ΠŸΠ΅Ρ€Π²ΠΈΡ‡Π½Π°Ρ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ°, достойная GNU." #. type: section #: guix-git/doc/guix.texi:496 guix-git/doc/guix.texi:49462 #: guix-git/doc/guix.texi:49551 guix-git/doc/guix.texi:49552 #, no-wrap msgid "Preparing to Use the Bootstrap Binaries" msgstr "ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ΠΊ использованию Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ" #. type: menuentry #: guix-git/doc/guix.texi:496 guix-git/doc/guix.texi:49462 msgid "Building that what matters most." msgstr "Π‘Π±ΠΎΡ€ΠΊΠ° самого Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ." #. type: cindex #: guix-git/doc/guix.texi:504 #, no-wrap msgid "purpose" msgstr "Ρ†Π΅Π»ΡŒ" #. type: Plain text #: guix-git/doc/guix.texi:512 msgid "GNU Guix@footnote{``Guix'' is pronounced like ``geeks'', or ``Ι‘iːks'' using the international phonetic alphabet (IPA).} is a package management tool for and distribution of the GNU system. Guix makes it easy for unprivileged users to install, upgrade, or remove software packages, to roll back to a previous package set, to build packages from source, and generally assists with the creation and maintenance of software environments." msgstr "GNU Guix@footnote{\"Guix\" произносится \"гикс\".} --- это ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° для управлСния ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌΠΈ ΠΈ дистрибутив систСмы GNU. Guix позволяСт Π½Π΅ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ, ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹, ΠΎΡ‚ΠΊΠ°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ Π΄ΠΎ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… Π½Π°Π±ΠΎΡ€ΠΎΠ² ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ ΠΈΠ· исходников ΠΈ обСспСчиваСт созданиС ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ окруТСния Π² Ρ†Π΅Π»ΠΎΠΌ." #. type: cindex #: guix-git/doc/guix.texi:513 guix-git/doc/guix.texi:588 #: guix-git/doc/guix.texi:703 #, no-wrap msgid "Guix System" msgstr "БистСма Guix" #. type: cindex #: guix-git/doc/guix.texi:514 #, no-wrap msgid "GuixSD, now Guix System" msgstr "GuixSD, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ систСма Guix" #. type: cindex #: guix-git/doc/guix.texi:515 #, no-wrap msgid "Guix System Distribution, now Guix System" msgstr "Guix System Distribution, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ систСма Guix" #. type: Plain text #: guix-git/doc/guix.texi:524 msgid "You can install GNU@tie{}Guix on top of an existing GNU/Linux system where it complements the available tools without interference (@pxref{Installation}), or you can use it as a standalone operating system distribution, @dfn{Guix@tie{}System}@footnote{We used to refer to Guix System as ``Guix System Distribution'' or ``GuixSD''. We now consider it makes more sense to group everything under the ``Guix'' banner since, after all, Guix System is readily available through the @command{guix system} command, even if you're using a different distro underneath!}. @xref{GNU Distribution}." msgstr "Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ GNU@tie{}Guix ΠΏΠΎΠ²Π΅Ρ€Ρ… ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ систСмы GNU/Linux, Π³Π΄Π΅ ΠΎΠ½ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ΡΡ инструмСнты, Π½Π΅ внося ΠΏΠΎΠΌΠ΅Ρ…ΠΈ (@pxref{Installation}), ΠΈΠ»ΠΈ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΊΠ°ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ дистрибутив ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы, @dfn{Guix@tie{}System}@footnote{ΠœΡ‹ Ρ€Π°Π½ΡŒΡˆΠ΅ Π½Π°Π·Ρ‹Π²Π°Π»ΠΈ Guix System ΠΊΠ°ΠΊ ``Guix System Distribution'' ΠΈΠ»ΠΈ ``GuixSD''. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ считаСм, Ρ‡Ρ‚ΠΎ Π»ΠΎΠ³ΠΈΡ‡Π½Π΅Π΅ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ всС ΠΏΠΎΠ΄ Π±Π°Π½Π½Π΅Ρ€ΠΎΠΌ ``Guix'', ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ, Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠΎΠ½Ρ†ΠΎΠ², Guix System Π»Π΅Π³ΠΊΠΎ доступна Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ @command{guix system}, Π΄Π°ΠΆΠ΅ Ссли Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΠΏΠΎΠ΄ Π½Π΅ΠΉ Π΄Ρ€ΡƒΠ³ΠΎΠΉ дистрибутив!} @xref{GNU Distribution}." #. type: cindex #: guix-git/doc/guix.texi:533 #, no-wrap msgid "user interfaces" msgstr "ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ интСрфСйсы" #. type: Plain text #: guix-git/doc/guix.texi:539 msgid "Guix provides a command-line package management interface (@pxref{Package Management}), tools to help with software development (@pxref{Development}), command-line utilities for more advanced usage (@pxref{Utilities}), as well as Scheme programming interfaces (@pxref{Programming Interface})." msgstr "Guix прСдоставляСт интСрфСйс ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки для управлСния ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌΠΈ (@pxref{Package Management}), инструмСнты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния (@pxref{Development}), Π±ΠΎΠ»Π΅Π΅ слоТныС ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки (@pxref{Utilities}), Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ интСрфСйс Scheme (@pxref{Programming Interface})." #. type: cindex #: guix-git/doc/guix.texi:539 #, no-wrap msgid "build daemon" msgstr "Π΄Π΅ΠΌΠΎΠ½ сборки" #. type: Plain text #: guix-git/doc/guix.texi:543 msgid "Its @dfn{build daemon} is responsible for building packages on behalf of users (@pxref{Setting Up the Daemon}) and for downloading pre-built binaries from authorized sources (@pxref{Substitutes})." msgstr "Π•Π³ΠΎ @dfn{Π΄Π΅ΠΌΠΎΠ½ сборки} ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° сборку ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΏΠΎ запросам ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ (@pxref{Setting Up the Daemon}) ΠΈ Π·Π° скачиваниС ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Π±ΠΈΠ½Π°Ρ€Π½ΠΈΠΊΠΎΠ² ΠΈΠ· Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… рСсурсов (@pxref{Substitutes})." #. type: cindex #: guix-git/doc/guix.texi:544 #, no-wrap msgid "extensibility of the distribution" msgstr "Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌΠΎΡΡ‚ΡŒ дистрибутива" #. type: cindex #: guix-git/doc/guix.texi:545 guix-git/doc/guix.texi:7572 #, no-wrap msgid "customization, of packages" msgstr "настройка, ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²" #. type: Plain text #: guix-git/doc/guix.texi:554 msgid "Guix includes package definitions for many GNU and non-GNU packages, all of which @uref{https://www.gnu.org/philosophy/free-sw.html, respect the user's computing freedom}. It is @emph{extensible}: users can write their own package definitions (@pxref{Defining Packages}) and make them available as independent package modules (@pxref{Package Modules}). It is also @emph{customizable}: users can @emph{derive} specialized package definitions from existing ones, including from the command line (@pxref{Package Transformation Options})." msgstr "Guix Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ опрСдСлСния ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² для мноТСства ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² GNU ΠΈ Π½Π΅-GNU, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… @uref{https://www.gnu.org/philosophy/free-sw.html, ΡƒΠ²Π°ΠΆΠ°Π΅Ρ‚ свободу ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π² Ρ€Π°Π±ΠΎΡ‚Π΅ Π·Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠΌ}. Он @emph{Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌΡ‹ΠΉ}: ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΈΡΠ°Ρ‚ΡŒ свои собствСнныС опрСдСлСния ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² (@pxref{Defining Packages}) ΠΈ Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΈΡ… доступными ΠΊΠ°ΠΊ нСзависимыС ΠΏΠ°ΠΊΠ΅Ρ‚Π½Ρ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ (@pxref{Package Modules}). Он Ρ‚Π°ΠΊΠΆΠ΅ @emph{настраиваСмый}: ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ @emph{ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ} ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ опрСдСлСния ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΈΠ· ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ…, Π² Ρ‚ΠΎΠΌ числС Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡƒΡŽ строку (@pxref{Package Transformation Options})." #. type: cindex #: guix-git/doc/guix.texi:555 #, no-wrap msgid "functional package management" msgstr "Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ΅ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌΠΈ" #. type: cindex #: guix-git/doc/guix.texi:556 #, no-wrap msgid "isolation" msgstr "изоляция" #. type: Plain text #: guix-git/doc/guix.texi:571 msgid "Under the hood, Guix implements the @dfn{functional package management} discipline pioneered by Nix (@pxref{Acknowledgments}). In Guix, the package build and installation process is seen as a @emph{function}, in the mathematical sense. That function takes inputs, such as build scripts, a compiler, and libraries, and returns an installed package. As a pure function, its result depends solely on its inputs---for instance, it cannot refer to software or scripts that were not explicitly passed as inputs. A build function always produces the same result when passed a given set of inputs. It cannot alter the environment of the running system in any way; for instance, it cannot create, modify, or delete files outside of its build and installation directories. This is achieved by running build processes in isolated environments (or @dfn{containers}), where only their explicit inputs are visible." msgstr "Под ΠΊΠ°ΠΏΠΎΡ‚ΠΎΠΌ Guix Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΊΠ°ΠΊ @dfn{Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€} --- ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ, Π²ΠΏΠ΅Ρ€Π²Ρ‹Π΅ Π²Π²Π΅Π΄Ρ‘Π½Π½Ρ‹ΠΉ Nix (@pxref{Acknowledgments}). Π’ Guix процСсс сборки ΠΈ установки ΠΏΠ°ΠΊΠ΅Ρ‚Π° рассматриваСтся ΠΊΠ°ΠΊ @emph{функция} Π² матСматичСском смыслС. Π­Ρ‚Π° функция ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, ΠΊΠ°ΠΊ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, скрипты сборки, компилятор, Π΅Ρ‘ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ зависит Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΡ‚ Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈ ΠΎΠ½ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ ΠΎΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΈΠ»ΠΈ скриптов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΏΠΎΠ΄Π°ΡŽΡ‚ΡΡ Π½Π° Π²Ρ…ΠΎΠ΄ явным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. Ѐункция сборки всСгда ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ ΠΎΠ΄ΠΈΠ½ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ Π½Π°Π±ΠΎΡ€ Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. Она Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΊΠ°ΠΊ-Π»ΠΈΠ±ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½ΠΎΠΉ систСмы; Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΎΠ½Π° Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ, ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈΠ»ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ Π΅Ρ‘ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ сборки ΠΈ установки. Π­Ρ‚ΠΎ достигаСтся Ρ‚Π°ΠΊ: процСсс сборки запускаСтся Π² ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ (ΠΈΠ»ΠΈ @dfn{ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅}), Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π²ΠΈΠ΄Π½Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, Π·Π°Π΄Π°Π½Π½Ρ‹Π΅ явно." #. type: cindex #: guix-git/doc/guix.texi:572 guix-git/doc/guix.texi:4165 #: guix-git/doc/guix.texi:11267 #, no-wrap msgid "store" msgstr "store" #. type: Plain text #: guix-git/doc/guix.texi:579 msgid "The result of package build functions is @dfn{cached} in the file system, in a special directory called @dfn{the store} (@pxref{The Store}). Each package is installed in a directory of its own in the store---by default under @file{/gnu/store}. The directory name contains a hash of all the inputs used to build that package; thus, changing an input yields a different directory name." msgstr "Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ сборки ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΊΠ΅ΡˆΠΈΡ€ΡƒΠ΅Ρ‚ΡΡ Π² Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмС Π² ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠΉ @dfn{склад} (@pxref{The Store}).ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚ устанавливаСтся Π² ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ склада, ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ --- ΠΏΠΎΠ΄ @file{/gnu/store}. Имя Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ содСрТит Ρ…Π΅Ρˆ всСх Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… для сборки этого ΠΏΠ°ΠΊΠ΅Ρ‚Π°, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΡ€ΠΎΠΆΠ΄Π°Π΅Ρ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΈΠΌΠ΅Π½Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ." #. type: Plain text #: guix-git/doc/guix.texi:583 msgid "This approach is the foundation for the salient features of Guix: support for transactional package upgrade and rollback, per-user installation, and garbage collection of packages (@pxref{Features})." msgstr "Π­Ρ‚ΠΎΡ‚ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ являСтся ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌ, Π½Π° Π½Ρ‘ΠΌ основаны ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ особСнностСй Guix: ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ обновлСния ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΈ ΠΎΡ‚ΠΊΠ°Ρ‚Ρ‹, установка для ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, сборка мусора ΠΎΡ‚ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² (@pxref{Features})." #. type: Plain text #: guix-git/doc/guix.texi:598 msgid "Guix comes with a distribution of the GNU system consisting entirely of free software@footnote{The term ``free'' here refers to the @url{https://www.gnu.org/philosophy/free-sw.html,freedom provided to users of that software}.}. The distribution can be installed on its own (@pxref{System Installation}), but it is also possible to install Guix as a package manager on top of an installed GNU/Linux system (@pxref{Installation}). When we need to distinguish between the two, we refer to the standalone distribution as Guix@tie{}System." msgstr "Guix поставляСтся с дистрибутивом систСмы GNU, ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ состоящим ΠΈΠ· свободного ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния @footnote{Π’Π΅Ρ€ΠΌΠΈΠ½ ``свободного'' здСсь относится ΠΊ @url{https://www.gnu.org/philosophy/free-sw.ru.html,свобода, прСдоставляСмая ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ этого ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния}.}. Дистрибутив ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ (@pxref{System Installation}), Π½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Guix Π² качСствС ΠΏΠ°ΠΊΠ΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° ΠΏΠΎΠ²Π΅Ρ€Ρ… установлСнной систСмы GNU/Linux (@pxref{Installation}). Когда Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ провСсти Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ, ΠΌΡ‹ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌ самодостаточный дистрибутив Guix@tie{}System." #. type: Plain text #: guix-git/doc/guix.texi:604 msgid "The distribution provides core GNU packages such as GNU libc, GCC, and Binutils, as well as many GNU and non-GNU applications. The complete list of available packages can be browsed @url{https://www.gnu.org/software/guix/packages,on-line} or by running @command{guix package} (@pxref{Invoking guix package}):" msgstr "Дистрибутив прСдоставляСт основныС ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ GNU, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ GNU libc, GCC ΠΈ Binutils, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ прилоТСния GNU ΠΈ Π½Π΅-GNU. ΠŸΠΎΠ»Π½Ρ‹ΠΉ список доступных ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΏΠΎ @url{https://www.gnu.org/software/guix/packages,ΠΎΠ½Π»Π°ΠΉΠ½} ΠΈΠ»ΠΈ запустив @command{guix package} (@pxref{Invoking guix package}):" #. type: example #: guix-git/doc/guix.texi:607 #, no-wrap msgid "guix package --list-available\n" msgstr "guix package --list-available\n" #. type: Plain text #: guix-git/doc/guix.texi:613 msgid "Our goal is to provide a practical 100% free software distribution of Linux-based and other variants of GNU, with a focus on the promotion and tight integration of GNU components, and an emphasis on programs and tools that help users exert that freedom." msgstr "Наша Ρ†Π΅Π»ΡŒ --- ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ состоящий Π½Π° 100% ΠΈΠ· свободного ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ дистрибуив Linux ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ GNU. ΠœΡ‹ ориСнтируСмся Π½Π° ΠΏΡ€ΠΎΠ΄Π²ΠΈΠΆΠ΅Π½ΠΈΠΈ ΠΈ ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² GNU ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΈ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… свободы." #. type: Plain text #: guix-git/doc/guix.texi:615 msgid "Packages are currently available on the following platforms:" msgstr "ΠŸΠ°ΠΊΠ΅Ρ‚Ρ‹ Π² Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠΎΠΌΠ΅Π½Ρ‚ доступны для ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ:" #. type: defvar #: guix-git/doc/guix.texi:618 guix-git/doc/guix.texi:2070 #: guix-git/doc/guix.texi:48454 #, no-wrap msgid "x86_64-linux" msgstr "x86_64-linux" #. type: table #: guix-git/doc/guix.texi:620 msgid "Intel/AMD @code{x86_64} architecture, Linux-Libre kernel." msgstr "Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° Intel/AMD @code{x86_64} с ядром Linux-Libre." #. type: defvar #: guix-git/doc/guix.texi:621 guix-git/doc/guix.texi:2073 #: guix-git/doc/guix.texi:48450 #, no-wrap msgid "i686-linux" msgstr "i686-linux" #. type: table #: guix-git/doc/guix.texi:623 msgid "Intel 32-bit architecture (IA32), Linux-Libre kernel." msgstr "Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° Intel 32-bit (IA32) с ядром Linux-Libre." #. type: item #: guix-git/doc/guix.texi:624 #, no-wrap msgid "armhf-linux" msgstr "armhf-linux" #. type: table #: guix-git/doc/guix.texi:628 msgid "ARMv7-A architecture with hard float, Thumb-2 and NEON, using the EABI hard-float application binary interface (ABI), and Linux-Libre kernel." msgstr "Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° ARMv7-A с hard float, Thumb-2 ΠΈ NEON, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰Π°Ρ Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹ΠΉ интСрфСйс ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ EABI hard-float (ABI), с ядром Linux-Libre." #. type: defvar #: guix-git/doc/guix.texi:629 guix-git/doc/guix.texi:48430 #, no-wrap msgid "aarch64-linux" msgstr "aarch64-linux" #. type: table #: guix-git/doc/guix.texi:631 msgid "little-endian 64-bit ARMv8-A processors, Linux-Libre kernel." msgstr "процСссоры little-endian 64-bit ARMv8-A с ядром Linux-Libre." #. type: defvar #: guix-git/doc/guix.texi:632 guix-git/doc/guix.texi:48473 #, no-wrap msgid "i586-gnu" msgstr "i586-gnu" #. type: table #: guix-git/doc/guix.texi:635 msgid "@uref{https://hurd.gnu.org, GNU/Hurd} on the Intel 32-bit architecture (IA32)." msgstr "@uref{https://hurd.gnu.org, GNU/Hurd} Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ Intel (IA32)." #. type: table #: guix-git/doc/guix.texi:641 msgid "This configuration is experimental and under development. The easiest way for you to give it a try is by setting up an instance of @code{hurd-vm-service-type} on your GNU/Linux machine (@pxref{transparent-emulation-qemu, @code{hurd-vm-service-type}}). @xref{Contributing}, on how to help!" msgstr "Π­Ρ‚Π° конфигурация являСтся ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ ΠΈ находится Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅. Π‘Π°ΠΌΡ‹ΠΉ простой способ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ - Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ экзСмпляр @code{hurd-vm-service-type} Π½Π° вашСм GNU/Linux ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ (@pxref{transparent-emulation-qemu, @code{hurd-vm-service-type}}). @xref{Contributing}, ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΏΠΎΠΌΠΎΡ‡ΡŒ!" #. type: item #: guix-git/doc/guix.texi:642 #, fuzzy, no-wrap #| msgid "mips64el-linux (deprecated)" msgid "mips64el-linux (unsupported)" msgstr "mips64el-linux (устарСло)" #. type: table #: guix-git/doc/guix.texi:648 msgid "little-endian 64-bit MIPS processors, specifically the Loongson series, n32 ABI, and Linux-Libre kernel. This configuration is no longer fully supported; in particular, there is no ongoing work to ensure that this architecture still works. Should someone decide they wish to revive this architecture then the code is still available." msgstr "64-разрядныС little-endian процСссоры MIPS порядком Π±Π°ΠΉΡ‚ΠΎΠ², Π² частности сСрии Loongson, n32 ABI ΠΈ ядро Linux-Libre. Π­Ρ‚Π° конфигурация большС Π½Π΅ поддСрТиваСтся ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ; Π² частности, Ρ„Π΅Ρ€ΠΌΡ‹ сборки ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° большС Π½Π΅ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ Π·Π°ΠΌΠ΅Π½Ρ‹ этой Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅." #. type: item #: guix-git/doc/guix.texi:649 #, no-wrap msgid "powerpc-linux (unsupported)" msgstr "" #. type: table #: guix-git/doc/guix.texi:654 msgid "big-endian 32-bit PowerPC processors, specifically the PowerPC G4 with AltiVec support, and Linux-Libre kernel. This configuration is not fully supported and there is no ongoing work to ensure this architecture works." msgstr "32-Π±ΠΈΡ‚Π½Ρ‹Π΅ big-endian процСссоры PowerPC, Π² частности PowerPC G4 с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ AltiVec, ΠΈ ядро Linux-Libre. Π­Ρ‚Π° конфигурация Π½Π΅ поддСрТиваСтся ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ, ΠΈ Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½ΠΈΡŽ работоспособности этой Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ Π½Π΅ вСдСтся." #. type: table #: guix-git/doc/guix.texi:665 #, fuzzy #| msgid "little-endian 64-bit Power ISA processors, Linux-Libre kernel. This includes POWER9 systems such as the @uref{https://www.fsf.org/news/talos-ii-mainboard-and-talos-ii-lite-mainboard-now-fsf-certified-to-respect-your-freedom, RYF Talos II mainboard}. This platform is available as a \"technology preview\": although it is supported, substitutes are not yet available from the build farm (@pxref{Substitutes}), and some packages may fail to build (@pxref{Tracking Bugs and Patches}). That said, the Guix community is actively working on improving this support, and now is a great time to try it and get involved!" msgid "little-endian 64-bit Power ISA processors, Linux-Libre kernel. This includes POWER9 systems such as the @uref{https://www.fsf.org/news/talos-ii-mainboard-and-talos-ii-lite-mainboard-now-fsf-certified-to-respect-your-freedom, RYF Talos II mainboard}. This platform is available as a \"technology preview\": although it is supported, substitutes are not yet available from the build farm (@pxref{Substitutes}), and some packages may fail to build (@pxref{Tracking Bugs and Changes}). That said, the Guix community is actively working on improving this support, and now is a great time to try it and get involved!" msgstr "64-Π±ΠΈΡ‚Π½Ρ‹Π΅ процСссоры Power ISA с прямым порядком Π±Π°ΠΉΡ‚ΠΎΠ², ядро Linux-Libre. Бюда входят систСмы POWER9, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ @uref{https://www.fsf.org/news/talos-ii-mainboard-and-talos-ii-lite-mainboard-now-fsf-certified-to-respect-your-freedom, RYF Talos II mainboard}. Π­Ρ‚Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° доступна ΠΊΠ°ΠΊ Β«ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ вСрсия»: хотя ΠΎΠ½Π° ΠΈ поддСрТиваСтся, подстановки Π΅Ρ‰Π΅ Π½Π΅ доступны (@pxref{Substitutes}), Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π½Π΅ ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒΡΡ (@pxref{Tracking Bugs and Patches}). Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, сообщСство Guix Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π°Π΄ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ΠΌ этой ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ, ΠΈ сСйчас ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠ΅ врСмя, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ участиС!" #. type: defvar #: guix-git/doc/guix.texi:666 guix-git/doc/guix.texi:48446 #, fuzzy, no-wrap #| msgid "aarch64-linux" msgid "riscv64-linux" msgstr "aarch64-linux" #. type: table #: guix-git/doc/guix.texi:674 msgid "little-endian 64-bit RISC-V processors, specifically RV64GC, and Linux-Libre kernel. This platform is available as a \"technology preview\": although it is supported, substitutes are not yet available from the build farm (@pxref{Substitutes}), and some packages may fail to build (@pxref{Tracking Bugs and Changes}). That said, the Guix community is actively working on improving this support, and now is a great time to try it and get involved!" msgstr "64-Π±ΠΈΡ‚Π½Ρ‹Π΅ little-endian процСссоры RISC-V, Π² частности RV64GC, ΠΈ ядро Linux-Libre. Π­Ρ‚Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° доступна ΠΊΠ°ΠΊ \"ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ просмотр Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ\": хотя ΠΎΠ½Π° поддСрТиваСтся, Π·Π°ΠΌΠ΅Π½ΠΈΡ‚Π΅Π»ΠΈ ΠΏΠΎΠΊΠ° нСдоступны ΠΈΠ· Ρ„Π΅Ρ€ΠΌΡ‹ сборки (@pxref{Substitutes}), ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π½Π΅ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ (@pxref{Tracking Bugs and Changes}). Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, сообщСство Guix Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π°Π΄ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ΠΌ этой ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ, ΠΈ сСйчас самоС врСмя ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π΅ ΠΈ ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ участиС!" #. type: Plain text #: guix-git/doc/guix.texi:684 msgid "With Guix@tie{}System, you @emph{declare} all aspects of the operating system configuration and Guix takes care of instantiating the configuration in a transactional, reproducible, and stateless fashion (@pxref{System Configuration}). Guix System uses the Linux-libre kernel, the Shepherd initialization system (@pxref{Introduction,,, shepherd, The GNU Shepherd Manual}), the well-known GNU utilities and tool chain, as well as the graphical environment or system services of your choice." msgstr "ΠŸΠΎΠ»ΡŒΠ·ΡƒΡΡΡŒ Guix@tie{}System, Π²Ρ‹ @emph{ΠΎΠ±ΡŠΡΠ²Π»ΡΠ΅Ρ‚Π΅} всС аспСкты ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ систСмы, Π° Guix заботится ΠΎΠ± инстанцировании ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Π² Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΎΠ½Π½ΠΎΠΌ, воспроизводимом ΠΈ бСзэталонном Ρ€Π΅ΠΆΠΈΠΌΠ°Ρ… (@pxref{System Configuration}). БистСма Guix ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ядро Linux-libre, систСму ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Shepherd (@pxref{Introduction,,, shepherd, The GNU Shepherd Manual}), Ρ…ΠΎΡ€ΠΎΡˆΠΎ извСстныС ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ ΠΈ Ρ‚ΡƒΠ»Ρ‡Π΅ΠΉΠ½Ρ‹ GNU, Π° Ρ‚Π°ΠΊΠΆΠ΅ графичСскоС ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ систСмныС слуТбы ΠΏΠΎ Π²Π°ΡˆΠ΅ΠΌΡƒ Π²Ρ‹Π±ΠΎΡ€Ρƒ." #. type: Plain text #: guix-git/doc/guix.texi:688 msgid "Guix System is available on all the above platforms except @code{mips64el-linux}, @code{powerpc-linux}, @code{powerpc64le-linux} and @code{riscv64-linux}." msgstr "БистСма Guix доступна Π½Π° всСх пСрСчислСнных ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ…, ΠΊΡ€ΠΎΠΌΠ΅ @code{mips64el-linux}, @code{powerpc-linux}, @code{powerpc64le-linux} ΠΈ @code{riscv64-linux}." #. type: Plain text #: guix-git/doc/guix.texi:692 msgid "For information on porting to other architectures or kernels, @pxref{Porting}." msgstr "Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ ΠΎ ΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ ΠΈ ядра доступна Π² @pxref{Porting}." #. type: Plain text #: guix-git/doc/guix.texi:695 msgid "Building this distribution is a cooperative effort, and you are invited to join! @xref{Contributing}, for information about how you can help." msgstr "Дистрибутив созаётся совмСстными усилиями, ΠΏΡ€ΠΈΠ³Π»Π°ΡˆΠ°Π΅ΠΌ вас! Π‘ΠΌ. @xref{Contributing}, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠΌΠΎΡ‡ΡŒ." #. type: cindex #: guix-git/doc/guix.texi:701 #, no-wrap msgid "installing Guix" msgstr "Установка Guix" #. type: cindex #: guix-git/doc/guix.texi:702 guix-git/doc/guix.texi:1707 #, no-wrap msgid "foreign distro" msgstr "дистрибутив GNU/Linux, ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΉ ΠΎΡ‚ Guix System" #. type: Plain text #: guix-git/doc/guix.texi:710 msgid "You can install the package management tool Guix on top of an existing GNU/Linux or GNU/Hurd system@footnote{Hurd support is currently limited.}, referred to as a @dfn{foreign distro}. If, instead, you want to install the complete, standalone GNU system distribution, @dfn{Guix@tie{}System}, @pxref{System Installation}. This section is concerned only with the installation of Guix on a foreign distro." msgstr "" #. type: quotation #: guix-git/doc/guix.texi:714 guix-git/doc/guix.texi:746 msgid "This section only applies to systems without Guix. Following it for existing Guix installations will overwrite important system files." msgstr "" #. type: cindex #: guix-git/doc/guix.texi:716 #, no-wrap msgid "directories related to foreign distro" msgstr "Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ относящиСся ΠΊ Ρ‡ΡƒΠΆΠΎΠΌΡƒ дистрибутиву" #. type: Plain text #: guix-git/doc/guix.texi:721 msgid "When installed on a foreign distro, GNU@tie{}Guix complements the available tools without interference. Its data lives exclusively in two directories, usually @file{/gnu/store} and @file{/var/guix}; other files on your system, such as @file{/etc}, are left untouched." msgstr "ΠŸΡ€ΠΈ установкС Π½Π° Ρ‡ΡƒΠΆΠΎΠΉ дистрибутив GNU@tie{}Guix дополняСт доступныС ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ Π±Π΅Π· внСсСния ΠΏΠΎΠΌΠ΅Ρ…. Π•Π³ΠΎ Π΄Π°Π½Π½Ρ‹Π΅ ΠΆΠΈΠ²ΡƒΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π΄Π²ΡƒΡ… дирСкториях --- ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ @file{/gnu/store} ΠΈ @file{/var/guix}; Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹ вашСй систСмы, ΠΊΠ°ΠΊ @file{/etc}, ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ Π½Π΅Ρ‚Ρ€ΠΎΠ½ΡƒΡ‚Ρ‹ΠΌΠΈ." #. type: Plain text #: guix-git/doc/guix.texi:724 msgid "Once installed, Guix can be updated by running @command{guix pull} (@pxref{Invoking guix pull})." msgstr "УстановлСнный Guix ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ @command{guix pull} (@pxref{Invoking guix pull})." #. type: cindex #: guix-git/doc/guix.texi:736 #, no-wrap msgid "installing Guix from binaries" msgstr "установка Guix ΠΈΠ· Π±ΠΈΠ½Π°Ρ€Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ²" #. type: cindex #: guix-git/doc/guix.texi:737 #, no-wrap msgid "installer script" msgstr "скрипт установки" #. type: Plain text #: guix-git/doc/guix.texi:742 #, fuzzy #| msgid "This section describes how to install Guix on an arbitrary system from a self-contained tarball providing binaries for Guix and for all its dependencies. This is often quicker than installing from source, which is described in the next sections. The only requirement is to have GNU@tie{}tar and Xz." msgid "This section describes how to install Guix from a self-contained tarball providing binaries for Guix and for all its dependencies. This is often quicker than installing from source, described later (@pxref{Building from Git})." msgstr "Π­Ρ‚ΠΎΡ‚ Ρ€Π°Π·Π΄Π΅Π» описываСт, ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Guix Π½Π° ΠΎΠ±Ρ‹Ρ‡Π½ΡƒΡŽ систСму ΠΈΠ· ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π°Ρ€Ρ…ΠΈΠ²Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ содСрТит Π±ΠΈΠ½Π°Ρ€Π½ΠΈΠΊΠΈ Guix ΠΈ всС Π΅Π³ΠΎ зависимости. Π­Ρ‚ΠΎ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ быстрСС установки ΠΈΠ· исходных ΠΊΠΎΠ΄ΠΎΠ², которая описана Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅. ЕдинствСнноС Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ - ΠΈΠΌΠ΅Ρ‚ΡŒ GNU@tie{}tar ΠΈ Xz." #. type: Plain text #: guix-git/doc/guix.texi:752 #, fuzzy #| msgid "If you're running Debian or a derivative such as Ubuntu, you can instead install the package (it might be a version older than @value{VERSION} but you can update it afterwards by running @samp{guix pull}):" msgid "Some GNU/Linux distributions, such as Debian, Ubuntu, and openSUSE provide Guix through their own package managers. The version of Guix may be older than @value{VERSION} but you can update it afterwards by running @samp{guix pull}." msgstr "Если ΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ΡΡŒ Debian ΠΈΠ»ΠΈ Π΅Π³ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΎΠΉ Ρ‚ΠΈΠΏΠ° Ubuntu, Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ вмСсто этого ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ (ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Π±ΠΎΠ»Π΅Π΅ старой вСрсиСй, Ρ‡Π΅ΠΌ @value{VERSION}, Π½ΠΎ ΠΏΠΎΡ‚ΠΎΠΌ Π΅Ρ‘ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΡƒΡ‚Ρ‘ΠΌ запуска @samp{guix pull}):" #. type: Plain text #: guix-git/doc/guix.texi:757 msgid "We advise system administrators who install Guix, both from the installation script or @i{via} the native package manager of their foreign distribution, to also regularly read and follow security notices, as shown by @command{guix pull}." msgstr "" #. type: Plain text #: guix-git/doc/guix.texi:759 msgid "For Debian or derivatives such as Ubuntu or Trisquel, call:" msgstr "" #. type: example #: guix-git/doc/guix.texi:762 #, fuzzy, no-wrap #| msgid "guix install emacs-guix\n" msgid "sudo apt install guix\n" msgstr "guix install emacs-guix\n" #. type: Plain text #: guix-git/doc/guix.texi:765 msgid "Likewise, on openSUSE:" msgstr "ΠŸΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΌ ΠΆΠ΅ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π½Π° openSUSE:" #. type: example #: guix-git/doc/guix.texi:768 #, fuzzy, no-wrap #| msgid "guix install emacs-guix\n" msgid "sudo zypper install guix\n" msgstr "guix install emacs-guix\n" #. type: Plain text #: guix-git/doc/guix.texi:772 msgid "If you are running Parabola, after enabling the pcr (Parabola Community Repo) repository, you can install Guix with:" msgstr "" #. type: example #: guix-git/doc/guix.texi:774 #, fuzzy, no-wrap #| msgid "sudo -i guix pull\n" msgid "sudo pacman -S guix\n" msgstr "sudo -i guix pull\n" #. type: Plain text #: guix-git/doc/guix.texi:782 msgid "The Guix project also provides a shell script, @file{guix-install.sh}, which automates the binary installation process without use of a foreign distro package manager@footnote{@uref{https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh}}. Use of @file{guix-install.sh} requires Bash, GnuPG, GNU@tie{}tar, wget, and Xz." msgstr "" #. type: Plain text #: guix-git/doc/guix.texi:784 #, fuzzy #| msgid "The @var{options} can be among the following:" msgid "The script guides you through the following:" msgstr "ΠžΠΏΡ†ΠΈΠΈ @var{options} ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌΠΈ:" #. type: item #: guix-git/doc/guix.texi:786 #, no-wrap msgid "Downloading and extracting the binary tarball" msgstr "" #. type: item #: guix-git/doc/guix.texi:787 #, fuzzy, no-wrap #| msgid "Setting Up the Daemon" msgid "Setting up the build daemon" msgstr "Настройка Π΄Π΅ΠΌΠΎΠ½Π°" #. type: item #: guix-git/doc/guix.texi:788 #, no-wrap msgid "Making the β€˜guix’ command available to non-root users" msgstr "" #. type: item #: guix-git/doc/guix.texi:789 #, fuzzy, no-wrap #| msgid "Challenging substitute servers." msgid "Configuring substitute servers" msgstr "Π‘ΠΎΠΏΠ΅Ρ€Π½ΠΈΡ‡Π°ΡŽΡ‰ΠΈΠ΅ сСрвСры подстановок." #. type: Plain text #: guix-git/doc/guix.texi:793 msgid "As root, run:" msgstr "" #. type: example #: guix-git/doc/guix.texi:799 #, fuzzy, no-wrap #| msgid "" #| "cd /tmp\n" #| "wget https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh\n" #| "chmod +x guix-install.sh\n" #| "./guix-install.sh\n" msgid "" "# cd /tmp\n" "# wget https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh\n" "# chmod +x guix-install.sh\n" "# ./guix-install.sh\n" msgstr "" "cd /tmp\n" "wget https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh\n" "chmod +x guix-install.sh\n" "./guix-install.sh\n" #. type: Plain text #: guix-git/doc/guix.texi:803 msgid "The script to install Guix is also packaged in Parabola (in the pcr repository). You can install and run it with:" msgstr "" #. type: example #: guix-git/doc/guix.texi:806 #, no-wrap msgid "" "sudo pacman -S guix-installer\n" "sudo guix-install.sh\n" msgstr "" #. type: quotation #: guix-git/doc/guix.texi:816 msgid "By default, @file{guix-install.sh} will configure Guix to download pre-built package binaries, called @dfn{substitutes} (@pxref{Substitutes}), from the project's build farms. If you choose not to permit this, Guix will build @emph{everything} from source, making each installation and upgrade very expensive. @xref{On Trusting Binaries} for a discussion of why you may want to build packages from source." msgstr "" #. type: cindex #: guix-git/doc/guix.texi:817 guix-git/doc/guix.texi:3678 #: guix-git/doc/guix.texi:19753 #, no-wrap msgid "substitutes, authorization thereof" msgstr "авторизация, подстановок" #. type: quotation #: guix-git/doc/guix.texi:821 #, fuzzy #| msgid "To use substitutes from @code{@value{SUBSTITUTE-SERVER-1}}, @code{@value{SUBSTITUTE-SERVER-2}} or a mirror (@pxref{Substitutes}), authorize them:" msgid "To use substitutes from @code{@value{SUBSTITUTE-SERVER-1}}, @code{@value{SUBSTITUTE-SERVER-2}} or a mirror, you must authorize them. For example," msgstr "Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ подстановки ΠΈΠ· @code{@value{SUBSTITUTE-SERVER-1}}, @code{@value{SUBSTITUTE-SERVER-2}} ΠΈΠ»ΠΈ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· Π·Π΅Ρ€ΠΊΠ°Π» (@pxref{Substitutes}), Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·ΡƒΠΉΡ‚Π΅ ΠΈΡ…:" #. type: example #: guix-git/doc/guix.texi:827 #, no-wrap msgid "" "# guix archive --authorize < \\\n" " ~root/.config/guix/current/share/guix/@value{SUBSTITUTE-SERVER-1}.pub\n" "# guix archive --authorize < \\\n" " ~root/.config/guix/current/share/guix/@value{SUBSTITUTE-SERVER-2}.pub\n" msgstr "" "# guix archive --authorize < \\\n" " ~root/.config/guix/current/share/guix/@value{SUBSTITUTE-SERVER-1}.pub\n" "# guix archive --authorize < \\\n" " ~root/.config/guix/current/share/guix/@value{SUBSTITUTE-SERVER-2}.pub\n" #. type: Plain text #: guix-git/doc/guix.texi:833 #, fuzzy #| msgid "When you're done, @pxref{Application Setup} for extra configuration you might need, and @ref{Getting Started} for your first steps!" msgid "When you're done installing Guix, @pxref{Application Setup} for extra configuration you might need, and @ref{Getting Started} for your first steps!" msgstr "Когда Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΡ‚Π΅, Π²Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ @pxref{Application Setup} для Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ настройки ΠΈ @ref{Getting Started}!" #. type: quotation #: guix-git/doc/guix.texi:837 msgid "The binary installation tarball can be (re)produced and verified simply by running the following command in the Guix source tree:" msgstr "Архив для Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠΉ установки ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ воспроизвСдён (ΠΏΠΎΠ²Ρ‚ΠΎΡ€Ρ‘Π½) ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½ простым запуском ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π² Π΄Π΅Ρ€Π΅Π²Π΅ исходников Guix:" #. type: example #: guix-git/doc/guix.texi:840 #, no-wrap msgid "make guix-binary.@var{system}.tar.xz\n" msgstr "make guix-binary.@var{system}.tar.xz\n" #. type: quotation #: guix-git/doc/guix.texi:844 msgid "...@: which, in turn, runs:" msgstr "..., Ρ‡Ρ‚ΠΎ Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚:" #. type: example #: guix-git/doc/guix.texi:848 #, no-wrap msgid "" "guix pack -s @var{system} --localstatedir \\\n" " --profile-name=current-guix guix\n" msgstr "" "guix pack -s @var{system} --localstatedir \\\n" " --profile-name=current-guix guix\n" #. type: quotation #: guix-git/doc/guix.texi:851 msgid "@xref{Invoking guix pack}, for more info on this handy tool." msgstr "@xref{Invoking guix pack} для ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± этом ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΌ инструмСнтС." #. type: cindex #: guix-git/doc/guix.texi:853 #, fuzzy, no-wrap #| msgid "installing Guix" msgid "uninstalling Guix" msgstr "Установка Guix" #. type: cindex #: guix-git/doc/guix.texi:854 #, fuzzy, no-wrap #| msgid "installing Guix" msgid "uninstallation, of Guix" msgstr "Установка Guix" #. type: Plain text #: guix-git/doc/guix.texi:857 msgid "Should you eventually want to uninstall Guix, run the same script with the @option{--uninstall} flag:" msgstr "" #. type: example #: guix-git/doc/guix.texi:860 #, fuzzy, no-wrap #| msgid "guix install glib\n" msgid "./guix-install.sh --uninstall\n" msgstr "guix install glib\n" #. type: Plain text #: guix-git/doc/guix.texi:864 msgid "With @option{--uninstall}, the script irreversibly deletes all the Guix files, configuration, and services." msgstr "" #. type: cindex #: guix-git/doc/guix.texi:868 #, no-wrap msgid "daemon" msgstr "Π΄Π΅ΠΌΠΎΠ½" #. type: Plain text #: guix-git/doc/guix.texi:872 msgid "During installation, the @dfn{build daemon} that must be running to use Guix has already been set up and you can run @command{guix} commands in your terminal program, @pxref{Getting Started}:" msgstr "" #. type: example #: guix-git/doc/guix.texi:875 #, fuzzy, no-wrap #| msgid "guix build bash\n" msgid "guix build hello\n" msgstr "guix build bash\n" #. type: Plain text #: guix-git/doc/guix.texi:880 msgid "If this runs through without error, feel free to skip this section. You should continue with the following section, @ref{Application Setup}." msgstr "" #. type: Plain text #: guix-git/doc/guix.texi:888 msgid "However, now would be a good time to replace outdated daemon versions, tweak it, perform builds on other machines (@pxref{Daemon Offload Setup}), or start it manually in special environments like ``chroots'' (@pxref{Chrooting into an existing system}) or WSL (not needed for WSL images created with Guix, @pxref{System Images, @code{wsl2-image-type}}). If you want to know more or optimize your system, this section is worth reading." msgstr "" #. type: Plain text #: guix-git/doc/guix.texi:896 msgid "Operations such as building a package or running the garbage collector are all performed by a specialized process, the build daemon, on behalf of clients. Only the daemon may access the store and its associated database. Thus, any operation that manipulates the store goes through the daemon. For instance, command-line tools such as @command{guix package} and @command{guix build} communicate with the daemon (@i{via} remote procedure calls) to instruct it what to do." msgstr "Π’Π°ΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΊΠ°ΠΊ сборка ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΈΠ»ΠΈ запуск сборщика мусора, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ запуском ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… процСсса --- Π΄Π΅ΠΌΠΎΠ½Π° сборки --- ΠΏΠΎ запросам ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ². Волько Π΄Π΅ΠΌΠΎΠ½ ΠΈΠΌΠ΅Π΅Ρ‚ доступ ΠΊ складу ΠΈ Π΅Π³ΠΎ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ управлСния складом Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄Π΅ΠΌΠΎΠ½Π°. НапримСр, инструмСнты ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки, ΠΊΠ°ΠΊ @command{guix package} ΠΈ @command{guix build}, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‚ с Π΄Π΅ΠΌΠΎΠ½ΠΎΠΌ Ρ‡Π΅Ρ€Π΅Π· ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹ΠΉ Π²Ρ‹Π·ΠΎΠ² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ (RPC) ΠΈ ΡΠΎΠΎΠ±Ρ‰Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ." #. type: Plain text #: guix-git/doc/guix.texi:900 #, fuzzy #| msgid "The following sections explain how to prepare the build daemon's environment. See also @ref{Substitutes}, for information on how to allow the daemon to download pre-built binaries." msgid "The following sections explain how to prepare the build daemon's environment. @xref{Substitutes} for how to allow the daemon to download pre-built binaries." msgstr "Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Ρ€Π°Π·Π΄Π΅Π»Ρ‹ ΠΏΠΎΡΡΠ½ΡΡŽΡ‚ ΠΊΠ°ΠΊ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ Π΄Π΅ΠΌΠΎΠ½Π° сборки. Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅ @ref{Substitutes} для ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΉ инсорации ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ Π΄Π΅ΠΌΠΎΠ½Ρƒ ΡΠΊΠ°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ собранныС Π±ΠΈΠ½Π°Ρ€Π½ΠΈΠΊΠΈ." #. type: cindex #: guix-git/doc/guix.texi:910 guix-git/doc/guix.texi:1419 #, no-wrap msgid "build environment" msgstr "ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ сборки" #. type: Plain text #: guix-git/doc/guix.texi:918 msgid "In a standard multi-user setup, Guix and its daemon---the @command{guix-daemon} program---are installed by the system administrator; @file{/gnu/store} is owned by @code{root} and @command{guix-daemon} runs as @code{root}. Unprivileged users may use Guix tools to build packages or otherwise access the store, and the daemon will do it on their behalf, ensuring that the store is kept in a consistent state, and allowing built packages to be shared among users." msgstr "Π’ случаС стандартной ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ установки Guix ΠΈ Π΅Π³ΠΎ Π΄Π΅ΠΌΠΎΠ½ (ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° @command{guix-daemon}) ΡƒΡΡ‚Π°Π½ΠΎΠ²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ систСмным администратором; @file{/gnu/store} ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ‚ @code{root}, ΠΈ @command{guix-daemon} Π·Π°ΠΏΡƒΡ‰Π΅Π½ ΠΎΡ‚ @code{root}. НСпривилСгированныС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ инструмСнтами Guix, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ складу с ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ Ρ†Π΅Π»ΡŒΡŽ, ΠΈ Π΄Π΅ΠΌΠΎΠ½ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ это ΠΏΠΎ ΠΈΡ… запросу, ΡƒΠ±Π΅Π΄ΠΈΠ²ΡˆΠΈΡΡŒ, Ρ‡Ρ‚ΠΎ склад находится Π² Π΄ΠΎΠ»ΠΆΠ½ΠΎΠΌ состоянии, ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΠ² сборку ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΈ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΈΡ… ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ." #. type: cindex #: guix-git/doc/guix.texi:919 #, no-wrap msgid "build users" msgstr "ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ сборки" #. type: Plain text #: guix-git/doc/guix.texi:930 msgid "When @command{guix-daemon} runs as @code{root}, you may not want package build processes themselves to run as @code{root} too, for obvious security reasons. To avoid that, a special pool of @dfn{build users} should be created for use by build processes started by the daemon. These build users need not have a shell and a home directory: they will just be used when the daemon drops @code{root} privileges in build processes. Having several such users allows the daemon to launch distinct build processes under separate UIDs, which guarantees that they do not interfere with each other---an essential feature since builds are regarded as pure functions (@pxref{Introduction})." msgstr "Когда @command{guix-daemon} Π·Π°ΠΏΡƒΡ‰Π΅Π½ ΠΎΡ‚ @code{root}, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΈΠ· сообраТСний бСзопасности Π²Ρ‹ Π½Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ‚Π΅ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ процСссы сборки ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Ρ‚ΠΎΠΆΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΠΎΡ‚ @code{root}. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ этого, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… @dfn{ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ для сборки}. Ими Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ процСсс сборки, запускаСмый Π΄Π΅ΠΌΠΎΠ½ΠΎΠΌ. Π­Ρ‚ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ сборки Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ ΠΈ домашнСй Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ --- ΠΎΠ½ΠΈ просто Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ, ΠΊΠΎΠ³Π΄Π° Π΄Π΅ΠΌΠΎΠ½ сбрасываСт ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ @code{root} Π² процСссС сборки. НаличиС Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ‚Π°ΠΊΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π΄Π΅ΠΌΠΎΠ½Ρƒ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ процСссы сборки ΠΏΠΎΠ΄ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ UID, Ρ‡Ρ‚ΠΎ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΠΌΠ΅Ρ…ΠΎΠΉ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Ρƒ --- ваТная ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ, учитывая, Ρ‡Ρ‚ΠΎ сборка рассматриваСтся ΠΊΠ°ΠΊ чистая функция (@pxref{Introduction})." #. type: Plain text #: guix-git/doc/guix.texi:933 msgid "On a GNU/Linux system, a build user pool may be created like this (using Bash syntax and the @code{shadow} commands):" msgstr "Π’ систСмС GNU/Linux Π½Π°Π±ΠΎΡ€ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ для сборки ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ создан Ρ‚Π°ΠΊ (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ синтаксис ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Bash @code{shadow}):" #. type: example #: guix-git/doc/guix.texi:945 #, no-wrap msgid "" "# groupadd --system guixbuild\n" "# for i in $(seq -w 1 10);\n" " do\n" " useradd -g guixbuild -G guixbuild \\\n" " -d /var/empty -s $(which nologin) \\\n" " -c \"Guix build user $i\" --system \\\n" " guixbuilder$i;\n" " done\n" msgstr "" "# groupadd --system guixbuild\n" "# for i in `seq -w 1 10`;\n" " do\n" " useradd -g guixbuild -G guixbuild \\\n" " -d /var/empty -s `which nologin` \\\n" " -c \"Guix build user $i\" --system \\\n" " guixbuilder$i;\n" " done\n" #. type: Plain text #: guix-git/doc/guix.texi:955 msgid "The number of build users determines how many build jobs may run in parallel, as specified by the @option{--max-jobs} option (@pxref{Invoking guix-daemon, @option{--max-jobs}}). To use @command{guix system vm} and related commands, you may need to add the build users to the @code{kvm} group so they can access @file{/dev/kvm}, using @code{-G guixbuild,kvm} instead of @code{-G guixbuild} (@pxref{Invoking guix system})." msgstr "Число ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ для сборки опрСдСляСт, сколько Π·Π°Π΄Π°Ρ‡ сборки ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΏΡƒΡ‰Π΅Π½ΠΎ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ. Π­Ρ‚ΠΎ задаётся ΠΎΠΏΡ†ΠΈΠ΅ΠΉ @option{--max-jobs} (@pxref{Invoking guix-daemon, @option{--max-jobs}}). Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ @command{guix system vm} ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅, Π²Π°ΠΌ потрСбуСтся Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ для сборки Π² Π³Ρ€ΡƒΠΏΠΏΡƒ @code{kvm}, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ ΠΈΠΌΠ΅Π»ΠΈ доступ ΠΊ @file{/dev/kvm}, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ @code{-G guixbuild,kvm} вмСсто @code{-G guixbuild} (@pxref{Invoking guix system})." #. type: Plain text #: guix-git/doc/guix.texi:964 #, fuzzy #| msgid "The @code{guix-daemon} program may then be run as @code{root} with the following command@footnote{If your machine uses the systemd init system, dropping the @file{@var{prefix}/lib/systemd/system/guix-daemon.service} file in @file{/etc/systemd/system} will ensure that @command{guix-daemon} is automatically started. Similarly, if your machine uses the Upstart init system, drop the @file{@var{prefix}/lib/upstart/system/guix-daemon.conf} file in @file{/etc/init}.}:" msgid "The @code{guix-daemon} program may then be run as @code{root} with the following command@footnote{If your machine uses the systemd init system, copying the @file{@var{prefix}/lib/systemd/system/guix-daemon.service} file to @file{/etc/systemd/system} will ensure that @command{guix-daemon} is automatically started. Similarly, if your machine uses the Upstart init system, copy the @file{@var{prefix}/lib/upstart/system/guix-daemon.conf} file to @file{/etc/init}.}:" msgstr "ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° @code{guix-daemon} Ρ‚ΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒΡΡ ΠΎΡ‚ @code{root} ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ@footnote{Если ваша машина ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ систСму ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ systemd, сбрасываниС Ρ„Π°ΠΉΠ»Π° @file{@var{prefix}/lib/systemd/system/guix-daemon.service} Π² @file{/etc/systemd/system} Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ @command{guix-daemon} Π·Π°ΠΏΡƒΡ‰Π΅Π½ автоматичСски. Π’Π°ΠΊΠΆΠ΅, Ссли ваша машина ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ систСму ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Upstart, Π½ΡƒΠΆΠ½ΠΎ ΡΠ±Ρ€Π°ΡΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ» @file{@var{prefix}/lib/upstart/system/guix-daemon.conf} Π² @file{/etc/init}.}:" #. type: example #: guix-git/doc/guix.texi:967 guix-git/doc/guix.texi:1408 #, no-wrap msgid "# guix-daemon --build-users-group=guixbuild\n" msgstr "# guix-daemon --build-users-group=guixbuild\n" #. type: cindex #: guix-git/doc/guix.texi:969 guix-git/doc/guix.texi:1417 #, no-wrap msgid "chroot" msgstr "chroot" #. type: Plain text #: guix-git/doc/guix.texi:974 msgid "This way, the daemon starts build processes in a chroot, under one of the @code{guixbuilder} users. On GNU/Linux, by default, the chroot environment contains nothing but:" msgstr "Π’Π°ΠΊ Π΄Π΅ΠΌΠΎΠ½ стартуСт процСссы сборки Π² chroot ΠΏΠΎΠ΄ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π³Ρ€ΡƒΠΏΠΏΡ‹ @code{guixbuilder}. Π’ GNU/Linux ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ chroot содСрТит Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:" #. type: itemize #: guix-git/doc/guix.texi:982 msgid "a minimal @code{/dev} directory, created mostly independently from the host @code{/dev}@footnote{``Mostly'', because while the set of files that appear in the chroot's @code{/dev} is fixed, most of these files can only be created if the host has them.};" msgstr "ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ состав Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ @code{/dev}, созданной максимально нСзависимо ΠΎΡ‚ исходной @code{/dev}@footnote{\"Максимально\", ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Ρ„Π°ΠΉΠ»Ρ‹, доступныС Π² chroot ΠΏΠΎΠ΄ @code{/dev}, ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ созданы Ρ‚ΠΎΠ»ΡŒΠΊΠΎ, Ссли машина ΠΈΡ… ΠΈΠΌΠ΅Π΅Ρ‚};" #. type: itemize #: guix-git/doc/guix.texi:986 msgid "the @code{/proc} directory; it only shows the processes of the container since a separate PID name space is used;" msgstr "дирСктория @code{/proc}; ΠΎΠ½Π° ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ процСссы ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ΅ пространство ΠΈΠΌΡ‘Π½ процСссов PID;" #. type: itemize #: guix-git/doc/guix.texi:990 msgid "@file{/etc/passwd} with an entry for the current user and an entry for user @file{nobody};" msgstr "@file{/etc/passwd} с записью ΠΎ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ @file{nobody};" #. type: itemize #: guix-git/doc/guix.texi:993 msgid "@file{/etc/group} with an entry for the user's group;" msgstr "@file{/etc/group} с записью ΠΎ Π³Ρ€ΡƒΠΏΠΏΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ;" #. type: itemize #: guix-git/doc/guix.texi:997 msgid "@file{/etc/hosts} with an entry that maps @code{localhost} to @code{127.0.0.1};" msgstr "@file{/etc/hosts} с записью, которая адрСсуСт @code{localhost} Π½Π° @code{127.0.0.1};" #. type: itemize #: guix-git/doc/guix.texi:1000 msgid "a writable @file{/tmp} directory." msgstr "дирСктория @file{/tmp}, доступная для записи." #. type: Plain text #: guix-git/doc/guix.texi:1006 msgid "The chroot does not contain a @file{/home} directory, and the @env{HOME} environment variable is set to the non-existent @file{/homeless-shelter}. This helps to highlight inappropriate uses of @env{HOME} in the build scripts of packages." msgstr "" #. type: Plain text #: guix-git/doc/guix.texi:1011 msgid "All this usually enough to ensure details of the environment do not influence build processes. In some exceptional cases where more control is needed---typically over the date, kernel, or CPU---you can resort to a virtual build machine (@pxref{build-vm, virtual build machines})." msgstr "" #. type: Plain text #: guix-git/doc/guix.texi:1019 msgid "You can influence the directory where the daemon stores build trees @i{via} the @env{TMPDIR} environment variable. However, the build tree within the chroot is always called @file{/tmp/guix-build-@var{name}.drv-0}, where @var{name} is the derivation name---e.g., @code{coreutils-8.24}. This way, the value of @env{TMPDIR} does not leak inside build environments, which avoids discrepancies in cases where build processes capture the name of their build tree." msgstr "МоТно ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π΄Π΅ΠΌΠΎΠ½ сохраняСт Π΄Π΅Ρ€Π΅Π²ΡŒΡ сборки Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ окруТСния @code{TMPDIR}. Однако Π΄Π΅Ρ€Π΅Π²ΠΎ сборки Π²Π½ΡƒΡ‚Ρ€ΠΈ chroot всСгда называСтся @file{/tmp/guix-build-@var{name}.drv-0}, Π³Π΄Π΅ @var{name} - это имя Π΄Π΅Ρ€ΠΈΠ²Π°Ρ†ΠΈΠΈ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, @code{coreutils-8.24}. Π’Π°ΠΊ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ @code{TMPDIR} Π½Π΅ ΠΏΡ€ΠΎΠ½ΠΈΠΊΠ°Π΅Ρ‚ Π²Π½ΡƒΡ‚Ρ€ΡŒ окруТСния сборки, Ρ‡Ρ‚ΠΎ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ расхоТдСния ΠΈ случаях, ΠΊΠΎΠ³Π΄Π° процСссы сборки ΠΈΠΌΠ΅ΡŽΡ‚ ΠΈΠ½Ρ‹Π΅ ΠΈΠΌΠ΅Π½Π° ΠΈΡ… Π΄Π΅Ρ€Π΅Π²ΡŒΠ΅Π² сборки." #. type: vindex #: guix-git/doc/guix.texi:1020 guix-git/doc/guix.texi:3903 #, no-wrap msgid "http_proxy" msgstr "http_proxy" #. type: vindex #: guix-git/doc/guix.texi:1021 guix-git/doc/guix.texi:3904 #, no-wrap msgid "https_proxy" msgstr "https_proxy" #. type: Plain text #: guix-git/doc/guix.texi:1026 msgid "The daemon also honors the @env{http_proxy} and @env{https_proxy} environment variables for HTTP and HTTPS downloads it performs, be it for fixed-output derivations (@pxref{Derivations}) or for substitutes (@pxref{Substitutes})." msgstr "Π”Π΅ΠΌΠΎΠ½ Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠ²Π°ΠΆΠ°Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ окруТСния @code{http_proxy}, ΠΊΠΎΠ³Π΄Π° выполняСт скачиваниС ΠΏΠΎ HTTP ΠΊΠ°ΠΊ для Π΄Π΅Ρ€ΠΈΠ²Π°Ρ†ΠΈΠΉ с фиксированным Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ (@pxref{Derivations}), Ρ‚Π°ΠΊ ΠΈ для подстановок (@pxref{Substitutes})." #. type: Plain text #: guix-git/doc/guix.texi:1034 msgid "If you are installing Guix as an unprivileged user, it is still possible to run @command{guix-daemon} provided you pass @option{--disable-chroot}. However, build processes will not be isolated from one another, and not from the rest of the system. Thus, build processes may interfere with each other, and may access programs, libraries, and other files available on the system---making it much harder to view them as @emph{pure} functions." msgstr "Если Π²Ρ‹ устанавливаСтС Guix ΠΊΠ°ΠΊ Π½Π΅ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ, всё Π΅Ρ‰Ρ‘ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ @command{guix-daemon} с ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ @code{--disable-chroot}. Однако процСссы сборки Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ ΠΎΠ΄ΠΈΠ½ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡ‚ ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠΉ систСмы. Π’Π°ΠΊ процСссы сборки смогут внСсти ΠΏΠΎΠΌΠ΅Ρ…ΠΈ Π² Ρ€Π°Π±ΠΎΡ‚Ρƒ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Π°, смогут ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌ, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ Ρ„Π°ΠΉΠ»Π°ΠΌ, доступным Π² систСмС, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π΄Π΅Π»Π°Π΅Ρ‚ Π·Π°Ρ‚Ρ€ΡƒΠ΄Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ рассмотрСниС сборки ΠΊΠ°ΠΊ @emph{чистой} Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ." #. type: subsection #: guix-git/doc/guix.texi:1037 #, no-wrap msgid "Using the Offload Facility" msgstr "ИспользованиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π° Ρ€Π°Π·Π³Ρ€ΡƒΠ·ΠΊΠΈ" #. type: cindex #: guix-git/doc/guix.texi:1039 guix-git/doc/guix.texi:1478 #, no-wrap msgid "offloading" msgstr "Ρ€Π°Π·Π³Ρ€ΡƒΠ·ΠΊΠ°" #. type: cindex #: guix-git/doc/guix.texi:1040 #, no-wrap msgid "build hook" msgstr "Ρ…ΡƒΠΊ сборки" #. type: Plain text #: guix-git/doc/guix.texi:1059 msgid "When desired, the build daemon can @dfn{offload} derivation builds to other machines running Guix, using the @code{offload} @dfn{build hook}@footnote{This feature is available only when @uref{https://github.com/artyom-poptsov/guile-ssh, Guile-SSH} is present.}. When that feature is enabled, a list of user-specified build machines is read from @file{/etc/guix/machines.scm}; every time a build is requested, for instance via @code{guix build}, the daemon attempts to offload it to one of the machines that satisfy the constraints of the derivation, in particular its system types---e.g., @code{x86_64-linux}. A single machine can have multiple system types, either because its architecture natively supports it, via emulation (@pxref{transparent-emulation-qemu, Transparent Emulation with QEMU}), or both. Missing prerequisites for the build are copied over SSH to the target machine, which then proceeds with the build; upon success the output(s) of the build are copied back to the initial machine. The offload facility comes with a basic scheduler that attempts to select the best machine. The best machine is chosen among the available machines based on criteria such as:" msgstr "ΠŸΡ€ΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ Π΄Π΅ΠΌΠΎΠ½ сборки ΠΌΠΎΠΆΠ΅Ρ‚ @dfn{offload} ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹Π΅ сборки Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΌΠ°ΡˆΠΈΠ½Π°Ρ…, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π·Π°ΠΏΡƒΡ‰Π΅Π½ Guix, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ @code{offload} @dfn{build hook}@footnote{Π­Ρ‚Π° функция доступна Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠ³Π΄Π° установлСн @uref{https://github.com/artyom-poptsov/guile-ssh, Guile-SSH.}}. Когда данная функция Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π°, список ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ машин для сборки считываСтся ΠΈΠ· @file{/etc/guix/machines.scm}; ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ΡΡ сборка, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ‡Π΅Ρ€Π΅Π· @code{guix build}, Π΄Π΅ΠΌΠΎΠ½ пытаСтся Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π΅Π΅ Π½Π° ΠΎΠ΄Π½Ρƒ ΠΈΠ· машин, ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΡΡŽΡ‰ΠΈΡ… ограничСниям ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΎΠΉ сборки, Π² частности, Π΅Π΅ систСмным Ρ‚ΠΈΠΏΠ°ΠΌ---Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, @code{x86_64-linux}. На ΠΎΠ΄Π½ΠΎΠΉ машинС моТСь Π±Ρ‹Ρ‚ΡŒ нСсколько Ρ‚ΠΈΠΏΠΎΠ² систСм, Π»ΠΈΠ±ΠΎ ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π΅Π΅, Π»ΠΈΠ±ΠΎ Ρ‡Π΅Ρ€Π΅Π· ΡΠΌΡƒΠ»ΡΡ†ΠΈΡŽ (@pxref{transparent-emulation-qemu, Transparent Emulation with QEMU}). ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ условия для сборки ΠΊΠΎΠΏΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΏΠΎ SSH Π½Π° Ρ†Π΅Π»Π΅Π²ΠΎΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°Ρ‚Π΅ΠΌ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ сборку; Π² случаСт успСха Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΊΠΎΠΏΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π½Π° ΠΈΡΡ…ΠΎΠ΄Π½ΡƒΡŽ ΠΌΠ°ΡˆΠΈΠ½Ρƒ. БрСдство Ρ€Π°Π·Π³Ρ€ΡƒΠ·ΠΊΠΈ поставляСтся с Π±Π°Π·ΠΎΠ²Ρ‹ΠΌ ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Ρ‰ΠΈΠΊΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ пытаСтся Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π»ΡƒΡ‡ΡˆΡƒΡŽ ΠΌΠ°ΡˆΠΈΠ½Ρƒ. Π›ΡƒΡ‡ΡˆΠ°Ρ машина выбираСтся срСди доступных машин Π½Π° основании Ρ‚Π°ΠΊΠΈΠ· ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠ΅Π² ΠΊΠ°ΠΊ:" #. type: enumerate #: guix-git/doc/guix.texi:1065 msgid "The availability of a build slot. A build machine can have as many build slots (connections) as the value of the @code{parallel-builds} field of its @code{build-machine} object." msgstr "НаличиС слота для сборки. Машина для сборки ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ слотов для сборки (соСдинСний), сколько ΡƒΠΊΠ°Π·Π°Π½ΠΎ Π² Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ @code{parallel-builds} опрСдСлСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° @code{build-machine}." #. type: enumerate #: guix-git/doc/guix.texi:1069 msgid "Its relative speed, as defined via the @code{speed} field of its @code{build-machine} object." msgstr "Π•Π΅ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ, указанная Ρ‡Π΅Ρ€Π΅Π· Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ @code{speed} опрСдСлСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° @code{build-machine}." #. type: enumerate #: guix-git/doc/guix.texi:1074 msgid "Its load. The normalized machine load must be lower than a threshold value, configurable via the @code{overload-threshold} field of its @code{build-machine} object." msgstr "Π•Π΅ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ°. Нормализованная Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π½Π° ΠΌΠ°ΡˆΠΈΠ½Ρƒ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π½ΠΈΠΆΠ΅ ΠΏΠΎΡ€ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ значСния, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ поля @code{overload-threshold} ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° @code{build-machine}." #. type: enumerate #: guix-git/doc/guix.texi:1077 msgid "Disk space availability. More than a 100 MiB must be available." msgstr "Π”ΠΎΡΡ‚ΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ дискового пространства. Π”ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ доступно Π±ΠΎΠ»Π΅Π΅ 100 ΠœΠ‘." #. type: Plain text #: guix-git/doc/guix.texi:1080 msgid "The @file{/etc/guix/machines.scm} file typically looks like this:" msgstr "Π€Π°ΠΉΠ» @file{/etc/guix/machines.scm} ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ выглядит Ρ‚Π°ΠΊ:" #. type: lisp #: guix-git/doc/guix.texi:1088 #, no-wrap msgid "" "(list (build-machine\n" " (name \"eightysix.example.org\")\n" " (systems (list \"x86_64-linux\" \"i686-linux\"))\n" " (host-key \"ssh-ed25519 AAAAC3Nza@dots{}\")\n" " (user \"bob\")\n" " (speed 2.)) ;incredibly fast!\n" "\n" msgstr "" "(list (build-machine\n" " (name \"eightysix.example.org\")\n" " (systems (list \"x86_64-linux\" \"i686-linux\"))\n" " (host-key \"ssh-ed25519 AAAAC3Nza@dots{}\")\n" " (user \"bob\")\n" " (speed 2.)) ;incredibly fast!\n" "\n" #. type: lisp #: guix-git/doc/guix.texi:1094 #, no-wrap msgid "" " (build-machine\n" " (name \"armeight.example.org\")\n" " (systems (list \"aarch64-linux\"))\n" " (host-key \"ssh-rsa AAAAB3Nza@dots{}\")\n" " (user \"alice\")\n" "\n" msgstr "" " (build-machine\n" " (name \"armeight.example.org\")\n" " (systems (list \"aarch64-linux\"))\n" " (host-key \"ssh-rsa AAAAB3Nza@dots{}\")\n" " (user \"alice\")\n" "\n" #. type: lisp #: guix-git/doc/guix.texi:1098 #, no-wrap msgid "" " ;; Remember 'guix offload' is spawned by\n" " ;; 'guix-daemon' as root.\n" " (private-key \"/root/.ssh/identity-for-guix\")))\n" msgstr "" #. type: Plain text #: guix-git/doc/guix.texi:1104 msgid "In the example above we specify a list of two build machines, one for the @code{x86_64} and @code{i686} architectures and one for the @code{aarch64} architecture." msgstr "Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π²Ρ‹ΡˆΠ΅ ΠΌΡ‹ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡ΠΈΠ»ΠΈ список, состоящий ΠΈΠ· Π΄Π²ΡƒΡ… машин: ΠΎΠ΄Π½Π° --- для Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ @code{x86_64}, Π° другая --- для Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ @code{mips64el}." #. type: Plain text #: guix-git/doc/guix.texi:1113 msgid "In fact, this file is---not surprisingly!---a Scheme file that is evaluated when the @code{offload} hook is started. Its return value must be a list of @code{build-machine} objects. While this example shows a fixed list of build machines, one could imagine, say, using DNS-SD to return a list of potential build machines discovered in the local network (@pxref{Introduction, Guile-Avahi,, guile-avahi, Using Avahi in Guile Scheme Programs}). The @code{build-machine} data type is detailed below." msgstr "По Ρ„Π°ΠΊΡ‚Ρƒ, этот Ρ„Π°ΠΉΠ», Ρ‡Ρ‚ΠΎ Π½Π΅ ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, являСтся Ρ„Π°ΠΉΠ»ΠΎΠΌ Scheme, ΠΈ ΠΎΠ½ ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΊΠΎΠ³Π΄Π° запускаСтся @code{Ρ…ΡƒΠΊ Ρ€Π°Π·Π³Ρ€ΡƒΠ·ΠΊΠΈ}. Он Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ класса @code{build-machine}. ΠŸΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ фиксированный список машин для сборки, Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ, скаТСм, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ DNS-SD, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ список ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… машин, ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Ρ… Π² локальной сСти (@pxref{Introduction, Guile-Avahi,, guile-avahi, Using Avahi in Guile Scheme Programs}). Π’ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… @code{build-machine} описан Π½ΠΈΠΆΠ΅." #. type: deftp #: guix-git/doc/guix.texi:1114 #, no-wrap msgid "{Data Type} build-machine" msgstr "{Π’ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…} build-machine" #. type: deftp #: guix-git/doc/guix.texi:1117 msgid "This data type represents build machines to which the daemon may offload builds. The important fields are:" msgstr "Π­Ρ‚ΠΎΡ‚ Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… прСдставляСт ΠΌΠ°ΡˆΠΈΠ½Ρ‹ для сборки, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Π΅ΠΌΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π·Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ сборки. Π’Π°ΠΆΠ½Ρ‹Π΅ поля:" #. type: code{#1} #: guix-git/doc/guix.texi:1120 guix-git/doc/guix.texi:7829 #: guix-git/doc/guix.texi:8889 guix-git/doc/guix.texi:18623 #: guix-git/doc/guix.texi:18722 guix-git/doc/guix.texi:18962 #: guix-git/doc/guix.texi:21090 guix-git/doc/guix.texi:22001 #: guix-git/doc/guix.texi:22329 guix-git/doc/guix.texi:26491 #: guix-git/doc/guix.texi:29680 guix-git/doc/guix.texi:31221 #: guix-git/doc/guix.texi:32018 guix-git/doc/guix.texi:32396 #: guix-git/doc/guix.texi:32451 guix-git/doc/guix.texi:34591 #: guix-git/doc/guix.texi:37698 guix-git/doc/guix.texi:37736 #: guix-git/doc/guix.texi:40944 guix-git/doc/guix.texi:40961 #: guix-git/doc/guix.texi:42289 guix-git/doc/guix.texi:44305 #: guix-git/doc/guix.texi:44663 guix-git/doc/guix.texi:48869 #, no-wrap msgid "name" msgstr "name" #. type: table #: guix-git/doc/guix.texi:1122 msgid "The host name of the remote machine." msgstr "Имя хоста ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹." #. type: item #: guix-git/doc/guix.texi:1123 #, no-wrap msgid "systems" msgstr "systems" #. type: table #: guix-git/doc/guix.texi:1126 msgid "The system types the remote machine supports---e.g., @code{(list \"x86_64-linux\" \"i686-linux\")}." msgstr "Π’ΠΈΠΏ систСмы ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ @code{x86_64-linux}." #. type: code{#1} #: guix-git/doc/guix.texi:1127 guix-git/doc/guix.texi:22011 #, no-wrap msgid "user" msgstr "user" #. type: table #: guix-git/doc/guix.texi:1131 #, fuzzy #| msgid "The user account to use when connecting to the remote machine over SSH. Note that the SSH key pair must @emph{not} be passphrase-protected, to allow non-interactive logins." msgid "The user account on the remote machine to use when connecting over SSH. Note that the SSH key pair must @emph{not} be passphrase-protected, to allow non-interactive logins." msgstr "Аккаунт ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ для соСдинСния с ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠΉ машиной Ρ‡Π΅Ρ€Π΅Π· SSH. ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΊΠ»ΡŽΡ‡-ΠΏΠ°Ρ€Π° SSH @emph{Π½Π΅} Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π° ΠΏΠ°Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠΉ Ρ„Ρ€Π°Π·ΠΎΠΉ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ Π½Π΅ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Π΅ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ." #. type: item #: guix-git/doc/guix.texi:1132 #, no-wrap msgid "host-key" msgstr "host-key" #. type: table #: guix-git/doc/guix.texi:1136 msgid "This must be the machine's SSH @dfn{public host key} in OpenSSH format. This is used to authenticate the machine when we connect to it. It is a long string that looks like this:" msgstr "Π­Ρ‚ΠΎ @dfn{ΠΏΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ хоста} Π² Ρ„ΠΎΡ€ΠΌΠ°Π΅Ρ‚ OpenSSH. Он ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΈ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΌΠ°ΡˆΠΈΠ½Ρ‹, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ подсоСдиняСмс ΠΊ Π½Π΅ΠΉ. Π­Ρ‚ΠΎ длинная строка, которая выглядит ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ:" #. type: example #: guix-git/doc/guix.texi:1139 #, no-wrap msgid "ssh-ed25519 AAAAC3NzaC@dots{}mde+UhL hint@@example.org\n" msgstr "ssh-ed25519 AAAAC3NzaC@dots{}mde+UhL hint@@example.org\n" #. type: table #: guix-git/doc/guix.texi:1144 msgid "If the machine is running the OpenSSH daemon, @command{sshd}, the host key can be found in a file such as @file{/etc/ssh/ssh_host_ed25519_key.pub}." msgstr "Если Π½Π° машинС Π·Π°ΠΏΡƒΡ‰Π΅Π½ Π΄Π΅ΠΌΠΎΠ½ OpenSSH @command{sshd}, ΠΊΠ»ΡŽΡ‡ хоста ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π°ΠΉΠ΄Π΅Π½ Π² Ρ„Π°ΠΉΠ»Π΅ ΠΏΠΎΠ΄ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠ΅ΠΉ /etc/ssh, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, @file{/etc/ssh/ssh_host_ed25519_key.pub}." #. type: table #: guix-git/doc/guix.texi:1149 msgid "If the machine is running the SSH daemon of GNU@tie{}lsh, @command{lshd}, the host key is in @file{/etc/lsh/host-key.pub} or a similar file. It can be converted to the OpenSSH format using @command{lsh-export-key} (@pxref{Converting keys,,, lsh, LSH Manual}):" msgstr "Если Π½Π° машинС Π·Π°ΠΏΡƒΡ‰Π΅Π½ Π΄Π΅ΠΌΠΎΠ½ SSH GNU@tie{}lsh, @command{lshd}, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ»ΡŽΡ‡ хоста располоТСн Π² @file{/etc/lsh/host-key.pub} ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅. Π•Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ OpenSSH, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ @command{lsh-export-key} (@pxref{Converting keys,,, lsh, LSH Manual}):" #. type: example #: guix-git/doc/guix.texi:1153 #, no-wrap msgid "" "$ lsh-export-key --openssh < /etc/lsh/host-key.pub\n" "ssh-rsa AAAAB3NzaC1yc2EAAAAEOp8FoQAAAQEAs1eB46LV@dots{}\n" msgstr "" "$ lsh-export-key --openssh < /etc/lsh/host-key.pub\n" "ssh-rsa AAAAB3NzaC1yc2EAAAAEOp8FoQAAAQEAs1eB46LV@dots{}\n" #. type: deftp #: guix-git/doc/guix.texi:1158 msgid "A number of optional fields may be specified:" msgstr "Бписок Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠΎΠ»Π΅ΠΉ:" #. type: item #: guix-git/doc/guix.texi:1161 guix-git/doc/guix.texi:43781 #, no-wrap msgid "@code{port} (default: @code{22})" msgstr "@code{port} (default: @code{22})" #. type: table #: guix-git/doc/guix.texi:1163 msgid "Port number of SSH server on the machine." msgstr "НомСр ΠΏΠΎΡ€Ρ‚Π° сСрвСра SSH Π½Π° машинС." #. type: item #: guix-git/doc/guix.texi:1164 #, no-wrap msgid "@code{private-key} (default: @file{~root/.ssh/id_rsa})" msgstr "@code{private-key} (default: @file{~root/.ssh/id_rsa})" #. type: table #: guix-git/doc/guix.texi:1167 msgid "The SSH private key file to use when connecting to the machine, in OpenSSH format. This key must not be protected with a passphrase." msgstr "Π€Π°ΠΉΠ» ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π° Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ OpenSSH, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ Π² соСдинСнии с машиной. Π­Ρ‚ΠΎΡ‚ ΠΊΠ»ΡŽΡ‡ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π·Π°Ρ‰ΠΈΡ‰Ρ‘Π½ ΠΏΠ°Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠΉ Ρ„Ρ€Π°Π·ΠΎΠΉ." #. type: table #: guix-git/doc/guix.texi:1170 msgid "Note that the default value is the private key @emph{of the root account}. Make sure it exists if you use the default." msgstr "ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ --- ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ @emph{Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π° root}. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ сущСствуСт, Ссли Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ настройки ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ." #. type: item #: guix-git/doc/guix.texi:1171 #, no-wrap msgid "@code{compression} (default: @code{\"zlib@@openssh.com,zlib\"})" msgstr "@code{compression} (default: @code{\"zlib@@openssh.com,zlib\"})" #. type: itemx #: guix-git/doc/guix.texi:1172 #, no-wrap msgid "@code{compression-level} (default: @code{3})" msgstr "@code{compression-level} (default: @code{3})" #. type: table #: guix-git/doc/guix.texi:1174 msgid "The SSH-level compression methods and compression level requested." msgstr "ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ компрСссии уровня SSH ΠΈ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ компрСссии." #. type: table #: guix-git/doc/guix.texi:1177 msgid "Note that offloading relies on SSH compression to reduce bandwidth usage when transferring files to and from build machines." msgstr "ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Ρ€Π°Π·Π³Ρ€ΡƒΠ·ΠΊΠ° зависит ΠΎΡ‚ компрСссии SSH, Ρ‡Ρ‚ΠΎ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ использованиС Ρ‚Ρ€Π°Ρ„Ρ„ΠΈΠΊΠ° ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ Ρ„Π°ΠΉΠ»ΠΎΠ² Π½Π° ΠΈ с машин для сборки." #. type: item #: guix-git/doc/guix.texi:1178 #, no-wrap msgid "@code{daemon-socket} (default: @code{\"/var/guix/daemon-socket/socket\"})" msgstr "@code{daemon-socket} (default: @code{\"/var/guix/daemon-socket/socket\"})" #. type: table #: guix-git/doc/guix.texi:1181 msgid "File name of the Unix-domain socket @command{guix-daemon} is listening to on that machine." msgstr "Имя Ρ„Π°ΠΉΠ»Π° сокСта Unix-Π΄ΠΎΠΌΠ΅Π½Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΡΠ»ΡƒΡˆΠ°Π΅Ρ‚ @command{guix-daemon} Π½Π° ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠΉ машинС." #. type: item #: guix-git/doc/guix.texi:1182 #, fuzzy, no-wrap #| msgid "@code{overload-threshold} (default: @code{0.6})" msgid "@code{overload-threshold} (default: @code{0.8})" msgstr "@code{port} (default: @code{22})" #. type: table #: guix-git/doc/guix.texi:1188 msgid "The load threshold above which a potential offload machine is disregarded by the offload scheduler. The value roughly translates to the total processor usage of the build machine, ranging from 0.0 (0%) to 1.0 (100%). It can also be disabled by setting @code{overload-threshold} to @code{#f}." msgstr "ΠŸΠΎΡ€ΠΎΠ³ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ, Π²Ρ‹ΡˆΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ offload машина Π½Π΅ учитываСтся offload ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Ρ‰ΠΈΠΊΠΎΠΌ. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ соотвСтствуСт ΠΎΠ±Ρ‰Π΅ΠΌΡƒ использованию процСссора машиной сборки Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ‚ 0,0 (0%) Π΄ΠΎ 1,0 (100%). Π­Ρ‚ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ, установив @code{overload-threshold} Π² @code{#f}." #. type: item #: guix-git/doc/guix.texi:1189 #, no-wrap msgid "@code{parallel-builds} (default: @code{1})" msgstr "@code{parallel-builds} (default: @code{1})" #. type: table #: guix-git/doc/guix.texi:1191 msgid "The number of builds that may run in parallel on the machine." msgstr "Число сборок, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΏΡƒΡ‰Π΅Π½Ρ‹ Π½Π° машинС." #. type: item #: guix-git/doc/guix.texi:1192 #, no-wrap msgid "@code{speed} (default: @code{1.0})" msgstr "@code{speed} (default: @code{1.0})" #. type: table #: guix-git/doc/guix.texi:1195 msgid "A ``relative speed factor''. The offload scheduler will tend to prefer machines with a higher speed factor." msgstr "ΠŸΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ скорости. ΠŸΠ»Π°Π½ΠΈΡ€ΠΎΠ²Ρ‰ΠΈΠΊ Ρ€Π°Π·Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΠΌΠ΅Ρ‚ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΡƒ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΌΠ°ΡˆΠΈΠ½Ρƒ с наибольшим ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΌ скорости." #. type: item #: guix-git/doc/guix.texi:1196 #, no-wrap msgid "@code{features} (defaul