В письме от воскресенье, 8 апреля 2018 г. 21:29:07 MSK пользователь Lev 
Lamberov написал:
> > msgid "Unparsable control file"
> > msgstr "Не удалось прочесть содержимое control-файла"
> 
> 
> ?

Заменил на:
"Не удалось разобрать содержимое файла control"

> > msgid "The directory %s is diverted"
> > msgstr "Каталог %s входит в список diverted"
> 
> 
> Может стоит перевести diverted и diversion?

Уже сделано.

> > msgid "The path is too long"
> > msgstr "Путь слишком длинен"
> 
> 
> "длинный" вместо "длинен"?

Уже сделано.

> > msgid "Duplicate conf file %s/%s"
> > msgstr "Повторно указан файл настройки %s/%s"
> 
> 
> Он точно "указан" или просто есть дубликат файла?

Эта ошибка возникает при добавлении в хеш-таблицу файла, который там уже есть. 
С другой стороны, это значит, что произошла коллизия между конфигурационными 
файлами разных пакетов, так что можно считать и дубликатом. Как предложите 
перевести?

> > "Обновление из этого репозитория нельзя выполнить безопасным способом, и
> > "
> > "поэтому по умолчанию он отключён."
> 
> 
> Союз "и" лишний, как кажется.

Уже сделано.

> "Данные из этого репозитория нельзя аутентифицировать, поэтому их "
> "потенциально небезопасно использовать."

Уже заменил на вариант Галины:
"Данные из этого репозитория не могут быть аутентифицированы, поэтому их 
использование потенциально небезопасно."

На мой взгляд, этот вариант немного лучше. Как считаете?

> > "Смотрите справочную страницу apt-secure(8) о создании репозитория и "
> > "настройке пользователя."
> 
> 
> "Информацию о создании репозитория и настройке пользователя смотрите в
> "справочной странице apt-secure(8)."

Да, так лучше, спасибо.

> > msgid ""
> > "This is normally not allowed, but the option Acquire::"
> > "AllowDowngradeToInsecureRepositories was given to override it."
> > msgstr ""
> > "Обычно это не разрешается, но указан параметр Acquire::"
> > "AllowDowngradeToInsecureRepositories для игнорирования."
> 
> 
> "но" -> "однако"

Поменял, спасибо.

> "для игнорирования" тоже надо как-то перефразировать. Пока нет идей.

"Для продолжения"?

> > msgid "Failed to readlink %s"
> > msgstr "Не удалось прочесть ссылку %s"
> 
> 
> "Не удалось прочесть значение символьной ссылки %s"

Поменял, спасибо.

> > "Произошла ошибка при проверке подписи. Репозиторий не обновлён, и будут
> > "
> > "использованы предыдущие индексные файлы. Ошибка GPG: %s: %s"
> 
> 
> Тут снова, как кажется, союз "и" лишний.

Здесь не соглашусь. Между частями предложения есть связь, и кроме союза "и" 
других связующих элементов (в отличие от предыдущего случая) нет.

> > "Пропускается получение настроенного файла «%s», так как репозиторий «%s»
> > его "
> > "не содержит (возможно, репозиторий указан с ошибкой в
> > sources.list?)"
> 
> "не содержит" -> "не предоставляет"?

Разве здесь это не то же самое?

> > msgid ""
> > "Skipping acquire of configured file '%s' as repository '%s' provides only
> > "weak security information for it"
> > msgstr ""
> > "Пропускается получение настроенного файла «%s», так как репозиторий «%s»
> > "предоставляет только нестойкое шифрование информации"
> 
> 
> тут "предоставляет" -> "обеспечивает"?

Вообще говоря, здесь идёт речь не о шифровании, а об использовании слабого 
алгоритма хеширования. Может, поменять на:
"Пропускается получение настроенного файла «%s», так как репозиторий «%s» 
обеспечивает только слабую защиту информации"

Как считаете?

> > msgid "Conflicting distribution: %s (expected %s but got %s)"
> > msgstr "Противоречивый дистрибутив: %s (ожидался %s, но получен %s)"
> 
> 
> Может быть тут "выпуск" вместо "дистрибутив". Кажется, имеется в виду
> чт-то типа "stable", "testing" и т. д. или кодовое имя.

Разве, например, unstable это выпуск (release)? Он же никогда не выпускается.

> > msgid ""
> > "More information about this can be found online in the Release notes at:
> > %s"
> > msgstr ""
> > "Больше сведений об этом можно найти в Информации о выпуске по адресу:
> > %s"
> 
> 
> "Дополнительную информацию об этом можно найти в «Информации о выпуске» по
> адресу: %s"

Я намеренно так написал, чтобы не было "... информацию ... в 'Информации ...". 
Думаю, всё же стоит оставить исходный вариант, согласны?

Насчёт кавычек - да, пожалуй, они здесь не помешают.

> > msgstr ""
> > "Требуется явное подтверждение, прежде чем можно будет обновить данный "
> > "репозиторий. Смотрите справочную страницу %s для дополнительной
> > информации."
> 
> Тут снова лучше было бы перефразировать так:
> 
> "Дополнительную информацию смотрите в справочной странице %s."

Хорошо, сделал.

> > msgid "Can't find a source to download version '%s' of '%s'"
> > msgstr "Невозможно найти источник для загрузки «%2$s» версии «%1$s»"
> 
> 
> Зачем тут %1? Нехватает символов?

Не понял про символы. "N$" - это расширение GNU строки формата вывода, 
позволяющее указать номер аргумента. Таким образом поменяны местами два %s.

> > msgid ""
> > "Error, pkgProblemResolver::Resolve generated breaks, this may be caused
> > by held packages."
> > msgstr ""
> > "Ошибка: pkgProblemResolver::Resolve сгенерировал сломанные пакеты. Это
> > может быть вызвано зафиксированными пакетами."
> 
> 
> "сгенерировал сломанные пакеты"?
> 
> Мне кажется, тут что-то не то.

А как ещё можно перевести? Здесь имеется в виду, что после выполнения данной 
функции присутствуют сломанные (broken) пакеты.

Как вам такой вариант:
"Ошибка: pkgProblemResolver::Resolve привёл к появлению сломанных пакетов. Это 
может быть вызвано зафиксированными пакетами."

> > msgid "Line %u too long in source list %s."
> > msgstr "Строка %u в списке источников %s слишком длинна."
> 
> 
> "слишком длинная"?

Уже сделано.

> > msgid "Stored label: %s\n"
> > msgstr "Найдена метка: %s\n"
> 
> 
> Почему тут "найдена"?

Это сообщение выдаётся после успешного монтирования и идентификации CD-ROM. 
Можно перевести как "Сохранённая метка: %s\n".

> > #: apt-pkg/cdrom.cc
> > msgid "Scanning disc for index files...\n"
> > msgstr "Поиск индексных файлов на диске…\n"
> 
> 
> Может быть "индексные файлы" как-то перевести? Пока не знаю, как.

Честно говоря, у меня нет идей для альтернативного перевода. Да и текущий, на 
мой взгляд, вполне нормальный. Но если кто-нибудь предложит лучший вариант, 
обязательно поменяю.

> > msgid "Command line option %s is not boolean"
> > msgstr "Параметр командной строки %s — не логический переключатель
> > «да/нет»"
> 
> "Параметр командной строки %s не является булевым значением"?

В вашем варианте "значением" лишнее, так как речь идёт о типе, а не о 
значении. Например, попробуйте указать параметр командной строки --no-<опция>, 
где <опция> не логического типа, например "apt-get --no-target-release -s 
install foo", - и вы получите данное сообщение.

Я хотел перевести так:
"Параметр командной строки %s не логического типа"

Что думаете?

> > msgid "Ignoring '%s' in directory '%s' as it is not a regular file"
> > msgstr "Файл «%s» в каталоге «%s» игнорируется, так как это не обычный
> > файл"
> 
> Может быть перенести "игнорируется" в начало предложения?
> 
> И ниже.

Уже сделано.

> > msgid "read, still have %llu to read but none left"
> > msgstr ""
> > "ошибка при чтении: собирались прочесть ещё %llu байт, но ничего больше
> > нет"
> 
> Может обезличить "собирались"? Сделать что-то типа "планировалось
> прочесть <...>".

Сделал, спасибо.

Кроме того, ещё раз изучив исходный код, поменял первую букву на прописную.

> > msgid "Couldn't make mmap of %llu bytes"
> > msgstr "Невозможно отобразить в память %llu байт"
> 
> 
> "байт" -- разговорная форма, литературная будет "байтов".

Поменял везде, спасибо.

> > msgid "Unable to close mmap"
> > msgstr "Не удалось закрыть mmap"
> 
> 
> Тут (и ниже) используется "mmap", а выше (и ниже тоже) он был переведён.
> Лучше бы или везде переводить, или не переводить нигде.

Здесь всё сложно. Обычные "mmap" можно доперевести, но вот что делать с 
"Dynamic MMap", ума не приложу. Этот термин - изобретение разработчиков APT, 
реализованное в одноимённом классе. В принципе, это всё равно отображение в 
память (файла или анонимное), но если перевести как "Динамическое отображение 
в память", то такая не являющаяся общеупотребимой терминология будет непонятна 
читателю.

Может, перевести все "mmap", а единственное употребление "Dynamic MMap" 
оставить непереведённым?

Или же можно и "Dynamic MMap" перевести как "отображение в память", ибо 
надстройкой над ним он по сути и является.

Как считаете?

> > msgid "Unable to parse Release file %s"
> > msgstr "Невозможно разобрать содержимое файла Release (%s)"
> 
> 
> В нескольких местах выше "parse" было переведено как "прочитать". Смысл
> это, как кажется, не искажает, но я бы подумал над унификацией.

На данный момент "parse" переведено как "прочитать" в одном месте:

msgid "The package lists or status file could not be parsed or opened."
msgstr "Списки пакетов или файл состояния не могут быть открыты или 
прочитаны."

Здесь, пожалуй, не стоит использовать "разобраны".

В остальных случаях используется "разобрать".

> > msgid "Running post-installation trigger %s"
> > msgstr "Выполняется послеустановочный триггер %s"
> 
> 
> Не уверен насчёт слова "триггер". Может у кого-то есть варианты?

В dpkg тоже переведено как "триггер". В rpm аналогичная функциональность - 
вроде тоже. Думаю, нам не стоит здесь изобретать что-то своё.

> > msgid "No apport report written because MaxReports is reached already"
> > msgstr "Отчёты apport не записаны, так как достигнуто MaxReports"
> 
> 
> Я бы добавил "значение" перед "MaxReports".

Добавил, спасибо.

> > msgid "Dependency generation"
> > msgstr "Генерирование зависимостей"
> 
> 
> Слово "генерирование" бы чем-то заменить.

Может, "формирование"?

> > msgid "Can't find authentication record for: %s"
> > msgstr "Не удалось найти аутентификационную запись для: %s"
> 
> 
> Может "запись аутентификации"?

Здесь имеется в виду запись с хеш-суммой файла. Пожалуй, я всё же за исходный 
вариант. Но открыт для обсуждения.

> > msgid "Packaging system '%s' is not supported"
> > msgstr "Система пакетирования «%s» не поддерживается"
> 
> 
> Какие идеи, что тут и далее имеется в виду под "packaging system"? Может
> "система создания пакетов" будет лучше?

См. комментарий в apt-pkg/pkgsystem.h. Это такой уровень абстракции, 
позволяющий использовать разные системы пакетирования. Скажем, поддержка dpkg 
не прибита гвоздями к APT, а является реализацией этой абстракции.

Затрудняюсь придумать перевод получше.

> > msgid ""
> > "This installation run will require temporarily removing the essential "
> > "package %s due to a Conflicts/Pre-Depends loop. This is often bad, but if
> > "you really want to do it, activate the APT::Force-LoopBreak option."
> > msgstr ""
> > "Вследствие возникновения циклических зависимостей типа Конфликтует/"
> > "ПредЗависит, для продолжения установки необходимо временно удалить пакет
> > "первой необходимости %s. Это может привести к фатальным последствиям.
> > Если " "вы действительно хотите продолжить, установите параметр
> > APT::Force-LoopBreak."
> 
> Может тогда просто "Предзависит"?

В английском варианте используются две прописные буквы, поэтому, вероятно, и 
такое написание. Оно используется уже лет пятнадцать, судя по журналу git. 
Думаете, всё же стоит поменять?

> > msgid "The package cache file is an incompatible version"
> > msgstr "Не поддерживаемая версия кэша пакетов"
> 
> 
> "несовместимая"?

Поменял, спасибо.

> > #. TRANSLATOR: %u is a line number, the first %s is a filename of a file
> > with the extension "second %s" and the third %s is a unique identifier
> > for bugreports
> > #: apt-pkg/sourcelist.cc
> > #, c-format
> > msgid "Malformed entry %u in %s file %s (%s)"
> > msgstr "Некорректная запись %u в %s из файла %s (%s)"
> 
> 
> Тут в комментарии указано, что первый %s -- имя файла, второй --
> расширение, поэтому "в файле %s с расширением %s (%s)".

В комментарии, конечно, указано, но по факту... :)

Попробуйте удалить дистрибутив и разделы из sources.list и установить что-
нибудь - получите, например, следующее сообщение:

E: Некорректная запись 8 в list из файла /etc/apt/sources.list (Suite)

Так что в комментарии для переводчиков перепутано: первый %s - расширение 
(указывающее на тип, по-видимому; также может принимать значение "sources" для 
соответствующего синтаксиса описания источников), второй - имя файла.

Думаю, учитывая сказанное выше, можно поменять перевод на:
"Некорректная запись в строке %u файла «%s» %s (%s)"

Тогда сообщение выше будет иметь вид:

E: Некорректная запись в строке 8 файла «list» /etc/apt/sources.list (Suite)

Что скажете?

> > msgid "Malformed stanza %u in source list %s (type)"
> > msgstr "Некорректная строфа %u в списке источников %s (тип)"
> 
> 
> "Строфа"? Может тогда строка (файла настройки)? Ниже то же.

Нет, строка не подходит, ибо здесь именно номер записи, который в силу наличия 
комментариев и пустых строк может отличаться от номера строки.

Такой вариант подойдёт?
"Некорректная запись %u в списке источников %s (тип)"

> > msgid "You must put some 'source' URIs in your sources.list"
> > msgstr ""
> > "Вы должны заполнить sources.list, поместив туда URI источников пакетов с
> > "исходным кодом"
> 
> 
> Я бы сделал "Вам следует заполнить...".

Может, тогда просто "Заполните..."?

> > msgid ""
> > "Some index files failed to download. They have been ignored, or old ones
> > "used instead."
> > msgstr ""
> > "Некоторые индексные файлы не скачались. Они были проигнорированы, или
> > вместо них были использованы старые версии."
> 
> 
> "не скачались" -> "скачать не удалось".

Поменял.

> > msgid "Err:%lu %s"
> > msgstr "Ошк:%lu %s"
> 
> 
> Может "Ошб"?

Думал над этим. В принципе, можно и поменять.

> > msgid "Fetched %sB in %s (%sB/s)\n"
> > msgstr "Получено %sB за %s (%sB/s)\n"
> 
> 
> "B" и "B/s" можно перевести. Соответственно, "Б" и "Б/сек" ("Б/с").

Нельзя. %s заменяется на строку, уже содержащую двоичную приставку, которая на 
данный момент недоступна для перевода. В результате можем получить "GБ".

Я собирался реализовать возможность перевода данных приставок, но возникли 
сложности, поэтому вопрос пока отложен.

> > msgid "Unable to correct dependencies"
> > msgstr "Невозможно скорректировать зависимости"
> 
> 
> "скорректировать" -> "исправить"? "Невозможно" можно поменить на "Не
> удаётся".

Заменил на "Невозможно исправить зависимости".

Думаю, "невозможно" всё же следует оставить: "unable" переводится именно так. 
Кроме того, прошёлся по файлу и поменял перевод "unable" на "невозможно" 
везде, где рядом нет однокоренных слов, - чтобы было единообразно. Аналогично, 
поменял перевод "could not" на "не удалось".

> > msgid "Note, selecting '%s' instead of '%s'\n"
> > msgstr "Заметьте, вместо «%2$s» выбирается «%1$s»\n"
> 
> 
> Тут снова "%2" и "%1", зачем?

Автор этого перевода, опять же, не я, так что могу лишь предполагать. 
Вероятно, по мнению автора звучит лучше, если поменять их местами.

> > msgid "Most used commands:"
> > msgstr "Основные команды:"
> 
> 
> Видимо, "наиболее часто используемые"?

На мой взгляд, "основные" тоже подходит по смыслу.

> > msgid "This APT helper has Super Meep Powers."
> > msgstr "В этой программе есть Super Meep Powers."
> 
> 
> Надо уточнить у разработчиков, что за "meep" имеется в виду.

Боюсь, это непереводимо. :)

Разработчики ответили в стиле "А кто его знает" и выдвинули два предположения:
1. https://en.wikipedia.org/wiki/Beaker_(Muppet)
2. https://en.wikipedia.org/wiki/Wile_E._Coyote_and_the_Road_Runner

> > msgid ""
> > "There were unauthenticated packages and -y was used without --allow-"
> > "unauthenticated"
> > msgstr ""
> > "Обнаружены неудостоверенные пакеты, и был указан параметр -y без
> > --allow-unauthenticated"
> 
> 
> Тут уже "неудостоверенные", до этого было "аутентифицированные". Может
> тогда тут тоже "неаутентифицированные"?

Да, уже поменял везде.

> > msgid "Unable to lock the download directory"
> > msgstr "Невозможно заблокировать каталог, куда складываются скачиваемые
> > файлы"
> 
> "Складываются"? Интересно. Может, "сохраняются"?

Может, проще?
"Невозможно заблокировать каталог загрузки"

> > msgid "The following information may help to resolve the situation:"
> > msgstr "Следующая информация, возможно, поможет вам:"
> 
> 
> Думаю, стоит поменять местами "поможет" и "вам"?

Поменял. (Хотя особой разницы не вижу, если честно.)

> > msgid "Yes, do as I say!"
> > msgstr "Да, делать, как я скажу!"
> 
> 
> "как я говорю"?

Может, "как я сказал", учитывая, что это фраза подтверждения действия?

> > msgid "Unable to correct missing packages."
> > msgstr "Невозможно исправить ситуацию с отсутствующими пакетами."
> 
> 
> "исправить отсутствующие пакеты"?

Как можно исправить отсутствующие пакеты?

> > msgid ""
> > "The following package disappeared from your system as\n"
> > "all files have been overwritten by other packages:"
> > msgid_plural ""
> > "The following packages disappeared from your system as\n"
> > "all files have been overwritten by other packages:"
> > msgstr[0] ""
> > "Следующий пакет исчез из системы, так как все его файлы\n"
> > "теперь берутся из других пакетов:"
> > msgstr[1] ""
> > "Следующие пакеты исчезли из системы, так как все их файлы\n"
> > "теперь берутся из других пакетов:"
> > msgstr[2] ""
> > "Следующие пакеты исчезли из системы, так как все их файлы\n"
> > "теперь берутся из других пакетов:"
> 
> 
> "так как все его/их файлы были перезаписаны другими пакетами".

Поменял.

> > msgid "The following packages have unmet dependencies:"
> > msgstr "Пакеты, имеющие неудовлетворённые зависимости:"
> 
> 
> "Следующие пакеты имеют неудовлетворённые зависимости:"

(И аналогичные далее.)

Поменял.

> > msgid "You must give at least one search pattern"
> > msgstr "Вы должны задать не менее одного шаблона поиска"
> 
> 
> Можно и "поискового шаблона".

"Поискового" читается несколько хуже.

> > msgid "Picking '%s' as source package instead of '%s'\n"
> > msgstr "Используется «%s» в качестве исходного пакета вместо «%s»\n"
> 
> 
> Можно "Используется «%s» вместо «%s» в качестве исходного пакета\n".

Честно говоря, не вижу принципиальной разницы.

> > msgid ""
> > "NOTICE: '%s' packaging is maintained in the '%s' version control system
> > at:\n"
> >  "%s\n"
> > msgstr ""
> > "ВНИМАНИЕ: пакетирование «%s» поддерживается в системе контроля версий
> > «%s»:\n"
> >  "%s\n"
> 
> 
> "работа над пакетом «%s» ведётся в системе управления версиями «%s»"

Так намного лучше, спасибо.

> > msgid "Unable to get build-dependency information for %s"
> > msgstr "Невозможно получить информацию о зависимостях для сборки %s"
> 
> 
> "о сборочных зависимостях"

Поменял.

> > msgid "Note, using directory '%s' to get the build dependencies\n"
> > msgstr "Заметим, используется каталог «%s» для получения зависимостей
> > сборки\n"
> 
> "Заметьте"

Поменял.

Кроме того, в данном контексте "для получения сборочных зависимостей" 
двусмысленно, поэтому заменил на "для определения сборочных зависимостей".

> > msgid "Total Provides mappings: "
> > msgstr "Всего отношений Provides: "
> 
> 
> Вот, тут же тип зависимость Provides не переведён.

Поменял на "Всего отношений Предоставляет: ".

> > msgid "Total globbed strings: "
> > msgstr "Всего развёрнутых строк: "
> 
> 
> "развёрнутых"?

Тут не знаю. Судя по коду, происходит проход по всему кэшу пакетов и 
добавление различных строковых данных из них (архитектура, версия, секция, 
описание и т.д.) в общий набор, а в данном сообщении выводится их общее число. 
Т.е. это скорее общее число строк - но тогда непонятно, почему "globbed". Так 
что я решил действовать по принципу "не уверен - не трогай" и оставил это 
сообщение без изменений.

Какие у вас мысли по этому поводу?

> > msgid "Total slack space: "
> > msgstr "Пустого места в кэше: "
> 
> 
> Точно в кэше?

Да.

> > msgid "Total space accounted for: "
> > msgstr "Полное учтённое пространство: "
> 
> 
> Может "Всего учтённого места: "?

Да, так будет единообразнее. Заменил.

> > msgid ""
> > "Usage: apt-cache [options] command\n"
> > "       apt-cache [options] show pkg1 [pkg2 ...]\n"
> > "\n"
> > "apt-cache queries and displays available information about installed\n"
> > "and installable packages. It works exclusively on the data acquired\n"
> > "into the local cache via the 'update' command of e.g. apt-get. The\n"
> > "displayed information may therefore be outdated if the last update
> > was\n"
> > "too long ago, but in exchange apt-cache works independently of the\n"
> > "availability of the configured sources (e.g. offline).\n"
> > msgstr ""
> > "Использование: apt-cache [параметры] команда\n"
> > "               apt-cache [параметры] show пакет1 [пакет2 …]\n"
> > "\n"
> > "apt-cache ищет и выдаёт доступную информацию об установленных и\n"
> > "не установленных пакетах. Она работает только с данными локального\n"
> > "кэша, созданного командой «update» программы apt-get. Вследствие\n"
> > "этого отображаемая информация может быть устаревшей, если обновление\n"
> > "долго не выполнялось, но зато apt-cache работает независимо от\n"
> > "доступности настроенных источников (например, без сети).\n"
> 
> 
> "installable", может как "доступных для установки"?

> Тут не обязательно apt-get, а "например, apt-get".

Хорошо, поменял.

> "offline", может как "автономно"?

Думаю, этот термин менее понятен.

Так нормально?

Использование: apt-cache [параметры] команда
               apt-cache [параметры] show пакет1 [пакет2 …]

apt-cache ищет и выдаёт имеющуюся информацию об установленных и
доступных для установки пакетах. Она работает только с данными
локального кэша, созданного командой «update», например, программы
apt-get. Вследствие этого отображаемая информация может являться
устаревшей, если обновление долго не выполнялось, но зато apt-cache
работает независимо от доступности настроенных источников (например,
без доступа к сети).

> > msgid "get configuration values via shell evaluation"
> > msgstr "получить значения настройки через вычисления оболочки"
> 
> 
> "вычисление" тут не нравится. Не знаю, как перевести.

Да, мне тоже не понравилось, но вменяемого альтернативного перевода я ни 
найти, ни придумать не смог.

> > msgid ""
> > "Usage: apt-extracttemplates file1 [file2 ...]\n"
> > "\n"
> > "apt-extracttemplates is used to extract config and template files\n"
> > "from debian packages. It is used mainly by debconf(1) to prompt for\n"
> > "configuration questions before installation of packages.\n"
> > msgstr ""
> > "Использование: apt-extracttemplates файл1 [файл2 …]\n"
> > "\n"
> > "apt-extracttemplates извлекает из пакетов Debian файлы config\n"
> > "и template. В основном она используется debconf(1) для вопросов\n"
> > "настройки перед установкой пакетов.\n"
> 
> 
> "вопросов", может лучше "диалоговых запросов" или "запросов ввода", или
> что-то другое?

https://wiki.debian.org/ru/debconf:

> При установке (или обновлении) любого отдельного пакета или группы пакетов,
> debconf задаёт все вопросы о конфигурации пакетов и сохраняет
> пользовательские настройки в базе данных.

https://ru.wikipedia.org/wiki/Debconf_(%D0%BF%D1%80%D0%BE
%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D0%B9_%D0%BF%D0%B0%D0%BA
%D0%B5%D1%82):

> Пока пакеты устанавливаются, debconf задаёт пользователю вопросы, которые
> определяют содержание системных конфигурационных файлов, ассоциированных с
> этим пакетом

Как видите, везде используется именно "вопросы".

> > msgid "Cannot get debconf version. Is debconf installed?"
> > msgstr "Невозможно определить версию debconf. Он установлен?"
> 
> 
> Я бы добавил перед "debconf" какое-нибудь слово
> (программа/утилита/инструмент), что было ясно, какого эта штука пола.

Здесь речь идёт о пакете. В большинстве случаев, когда упоминается имя пакета, 
ни в оригинале, ни в переводе слово "пакет" не употребляется. Вы уверены, что 
необходимо это явным образом указать?

> > msgid "Configure build-dependencies for source packages"
> > msgstr "настроить всё необходимое для сборки пакета из исходного кода"
> 
> 
> "настроить сборочные зависимости пакета с исходным кодом"

Поменял.

Хотя "настроить" здесь не к месту, на мой взгляд.

> > msgid "Erase downloaded archive files"
> > msgstr "удалить скачанные файлы архивов"
> 
> 
> Тут и ниже "файлы архивов", мне кажется, не очень. Надо что-то другое.

Можно, конечно, просто "архивов", но я не вполне понимаю, почему "файлы 
архивов" не очень подходит. Объясните?

> > msgid "Verify that there are no broken dependencies"
> > msgstr "проверить наличие нарушенных зависимостей"
> 
> 
> А тут уже не сломанные зависимости, а нарушенные.

"Сломанные зависимости" ни разу не употреблялось в переводе. Вероятно, вы 
имели в виду "сломанные пакеты"?

> Кстати, тут проверяется скорее отсутствие, а не наличие.

Поменял на "отсутствие".

> > msgid "download the given uri to the target-path"
> > msgstr "скачать файл по заданному uri в target-path"
> 
> 
> Нужни ли переводить "target-path"? "Целевой путь"?

Это зависит от того, переводить ли target-path в выводе справки для apt-
helper:

Использование: apt-helper [параметры] команда\n
...
               apt-helper [параметры] download-file uri target-path\n
...

> > msgid "concatenate files, with automatic decompression"
> > msgstr "склеить файлы, с автоматическим разжатием"
> 
> 
> "склеить" раньше не встречал, обычно всё же "соединить", но это не
> принципиально.

Поменял на "объединить".

> > msgid "%s was already not hold.\n"
> > msgstr "%s уже помечен как не зафиксированный.\n"
> 
> 
> А не слитно ли тут "не"?

Не уверен, так как в данной фразе, на мой взгляд, присутствует скрытое 
противопоставление. Есть термин "зафиксированный пакет", и в данном 
предложении указывается на непринадлежность к заданному этим термином 
множеству.

У меня есть сомнения насчёт:
"...для получения последних (возможно, _не выпущенных_) обновлений пакета.\n"

> > msgid "Unknown package record!"
> > msgstr "Запись о неизвестном пакете!"
> 
> 
> Почему тут пакет неизвестен? Мне кажется, что это неизвестная запись о
> пакете.

Это сообщение выводится, если при разборе индексного файла в очередной секции 
отсутствует заголовок "Package: ". Так что, в принципе, возможны оба варианта. 
Но раз вы настаиваете :) , заменил.
 
> > msgid ""
> > "Usage: apt-sortpkgs [options] file1 [file2 ...]\n"
> > "\n"
> > "apt-sortpkgs is a simple tool to sort package information files.\n"
> > "By default it sorts by binary package information, but the -s option\n"
> > "can be used to switch to source package ordering instead.\n"
> > msgstr ""
> > "Использование: apt-sortpkgs [параметры] файл1 [файл2 …]\n"
> > "\n"
> > "apt-sortpkgs — простой инструмент для сортировки информационных
> > файлов\n"
> > "пакетов. По умолчанию он сортирует информацию о двоичных пакетах,\n"
> > "но можно указать параметр -s, и будет выполняться сортировка пакетов\n"
> > "с исходным кодом.\n"
> 
> 
> "информационных файлов пакетов" -> "файлов с информацией о пакетах".

Поменял.

> > msgid ""
> > "above this message are important. Please fix them and run [I]nstall
> > again"
> >  msgstr ""
> > "ошибки выше данного сообщения. Исправьте их и выполните установку ещё
> > раз"
> 
> Тут ещё указана клавиша для выполнения установки, I.

Это отсылка к интерфейсу dselect. Считаете, стоит её указать? Думаю, в 
исходном сообщении обыгрывается, что используемая клавиша - это первая буква 
соответствующего действия; едва ли мы сможем подобным образом это представить.

> > msgid "Package extension list is too long"
> > msgstr "Список расширений, допустимых для пакетов, слишком длинен"
> 
> 
> "длинный"?

Уже поменял.

> И может быть "список расширений пакетов"?

Пожалуй, да. Поменял.

> > msgid ""
> > "Usage: apt-ftparchive [options] command\n"
> > "Commands: packages binarypath [overridefile [pathprefix]]\n"
> > "          sources srcpath [overridefile [pathprefix]]\n"
> > "          contents path\n"
> > "          release path\n"
> > "          generate config [groups]\n"
> > "          clean config\n"
> > "\n"
> > "apt-ftparchive generates index files for Debian archives. It supports\n"
> > "many styles of generation from fully automated to functional
> > replacements\n"
> >  "for dpkg-scanpackages and dpkg-scansources\n"
> > "\n"
> > "apt-ftparchive generates Package files from a tree of .debs. The\n"
> > "Package file contains the contents of all the control fields from\n"
> > "each package as well as the MD5 hash and filesize. An override file\n"
> > "is supported to force the value of Priority and Section.\n"
> > "\n"
> > "Similarly apt-ftparchive generates Sources files from a tree of
> > .dscs.\n"
> > "The --source-override option can be used to specify a src override
> > file\n"
 "\n"
> > "The 'packages' and 'sources' command should be run in the root of the\n"
> > "tree. BinaryPath should point to the base of the recursive search and
> > \n"
> > "override file should contain the override flags. Pathprefix is\n"
> > "appended to the filename fields if present. Example usage from the \n"
> > "Debian archive:\n"
> > "   apt-ftparchive packages dists/potato/main/binary-i386/ > \\\n"
> > "               dists/potato/main/binary-i386/Packages\n"
> > "\n"
> > "Options:\n"
> > "  -h    This help text\n"
> > "  --md5 Control MD5 generation\n"
> > "  -s=?  Source override file\n"
> > "  -q    Quiet\n"
> > "  -d=?  Select the optional caching database\n"
> > "  --no-delink Enable delinking debug mode\n"
> > "  --contents  Control contents file generation\n"
> > "  -c=?  Read this configuration file\n"
> > "  -o=?  Set an arbitrary configuration option"
> > msgstr ""
> > "Использование: apt-ftparchive [параметры] команда\n"
> > "Команды:  packages binarypath [overridefile [pathprefix]]\n"
> > "          sources srcpath [overridefile [pathprefix]]\n"
> > "          contents path\n"
> > "          release path\n"
> > "          generate config [groups]\n"
> > "          clean config\n"
> > "\n"
> > "apt-ftparchive генерирует индексные файлы архивов Debian. Он
> > поддерживает\n"
> >  "множество стилей генерации: от полностью
> > автоматического до функциональной\n" "замены программ dpkg-scanpackages и
> > dpkg-scansources\n"
> > "\n"
> > "apt-ftparchive генерирует файлы Package (списки пакетов) для дерева\n"
> > "каталогов, содержащих файлы .deb. Файл Package включает в себя
> > управляющие\n"
> >  "поля каждого пакета, а также хеш MD5 и размер файла.
> > Значения управляющих\n" "полей «приоритет» (Priority) и «секция»
> > (Section) могут быть изменены с\n" "помощью файла override.\n"
> > "\n"
> > "Кроме того, apt-ftparchive может генерировать файлы Sources из дерева\n"
> > "каталогов, содержащих файлы .dsc. Для указания файла override в этом \n"
> > "режиме можно использовать параметр --source-override.\n"
> > "\n"
> > "Команды «packages» и «sources» надо выполнять, находясь в корневом
> > каталоге\n"
> >  "дерева, которое вы хотите обработать. BinaryPath должен
> > указывать на место,\n" "с которого начинается рекурсивный обход, а файл
> > переназначений (override)\n" "должен содержать записи о переназначениях
> > управляющих полей. Если был " "указан\n"
> > "Pathprefix, то его значение добавляется к управляющим полям,
> > содержащим\n"
> >  "имена файлов. Пример использования для архива Debian:\n"
> > "   apt-ftparchive packages dists/potato/main/binary-i386/ > \\\n"
> > "               dists/potato/main/binary-i386/Packages\n"
> > "\n"
> > "Параметры:\n"
> > "  -h    этот текст\n"
> > "  --md5 управление генерацией MD5-хешей\n"
> > "  -s=?  указать файл переназначений (override) для файла Sources\n"
> > "  -q    не выводить сообщения в процессе работы\n"
> > "  -d=?  указать кэширующую базу данных (необязательно)\n"
> > "  --no-delink включить режим отладки процесса DeLink\n"
> > "  --contents  управление генерацией полного перечня содержимого
> > пакетов\n"
> >  "              (файла Contents)\n"
> > "  -c=?  использовать указанный файл настройки\n"
> > "  -o=?  задать значение произвольному параметру настройки"
> 
> 
> "генерирует" -> "создаёт"
> "генерации" -> "создания"
> и т. д.

Поменял.

> > msgid "*** Failed to link %s to %s"
> > msgstr "*** Не удалось создать ссылку %2$s на %1$s"
> 
> 
> Тут снова "%2" и "%1". Нужны?

Да. В английском варианте сначала идёт источник, а потом назначение. В моём 
переводе - наоборот.

> > msgid " DeLink limit of %sB hit.\n"
> > msgstr " Превышен лимит в %sB в DeLink.\n"
> 
> 
> "лимит" -> "ограничение"

Да, заменил. Спасибо.

> > msgid "The HTTP server sent an invalid reply header"
> > msgstr "HTTP-сервер послал неверный заголовок"
> 
> 
> "заголовок ответа"

*Сервер* и не может послать какой-либо заголовок никак, кроме как в виде 
ответа, так что уточнять в данном случае излишне.

Другое дело, что... см. ниже.

> > msgid "Bad header line"
> > msgstr "Неверный заголовок"
> 
> 
> "строка заголовка"

Разработчики почему-то используют нестандартную терминологию. Скажем, в случае 
выше речь идёт о строке статуса (status line), а в данном - о неправильном 
формате самого заголовка. Честно говоря, хотелось бы использовать 
общеупотребляемую терминологию, а не переводить дословно "изобретения" авторов 
APT.

Таким образом, сообщение выше должно быть переведено как "HTTP-сервер послал 
неверную строку статуса". В данном же сообщении, пожалуй, можно и "Неверная 
строка заголовка" использовать - смыслу вроде не противоречит.

Что думаете?

> > msgid "This HTTP server has broken range support"
> > msgstr "Этот HTTP-сервер не поддерживает скачивание фрагментов файлов"
> 
> 
> Тут fuzzy.

Да, так как я не уверен, что делать с этим сообщением.

"Сервер не поддерживает" - это когда сервер, например, посылает "Accept-
Ranges: none", т.е. адекватным образом сообщает об отсутствии (или не сообщает 
о наличии) поддержки запросов диапазонов. Такая поддержка опциональна, так что 
это не является ошибкой.

В данном же сообщении идёт речь о сломанной поддержке, когда сервер посылает 
неадекватные данные о диапазоне.

Да, можно было бы перевести это сообщение так:
"У этого HTTP-сервера сломана поддержка скачивания фрагментов файлов"
- но мне такой вариант не нравится. Лучшее, что я пока смог придумать:
"Поддержка байтовых диапазонов в данном HTTP-сервере реализована некорректно"

(Диапазоны в теории могут быть не байтовыми, но во-первых, APT использует 
именно их, а во-вторых, до сих пор ни один другой тип не был зарегистрирован: 
http://www.iana.org/assignments/http-parameters/http-parameters.xhtml#range-units)

Что скажете?

> > msgid "Bad header data"
> > msgstr "Неверный заголовок"
> 
> 
> "данные заголовка"?

Это сообщение выводится, если произошла какая-то из вышестоящих ошибок разбора 
ответа. Так что "Неверный заголовок" вроде подходит.

> > msgid "Connection failed"
> > msgstr "Соединение разорвано"
> 
> 
> "не удалось"?

"Соединение не удалось" можно понять как ошибку при попытке соединения с 
сервером. Однако данное сообщение выводится, когда происходит ошибка получения 
очередных данных с сервера, что уже означает, что изначальное соединение 
прошло успешно. Так что текущий вариант точнее описывает произошедшее.

> > msgid "Unable to read the cdrom database %s"
> > msgstr "Невозможно прочесть базу CD-ROM %s"
> 
> 
> "базу данных"

Исправил.

> > msgid ""
> > "Please use apt-cdrom to make this CD-ROM recognized by APT. apt-get
> > update cannot be used to add new CD-ROMs"
> > msgstr ""
> > "Используйте apt-cdrom, чтобы APT смог распознать данный CD-ROM. apt-get
> > "
> > "update не используется для добавления новых CD-ROM"
> 
> 
> В конце можно заменить "CD-ROM" на "дисков".

Почему в конце, а не в середине?

Хотя я вообще не стал бы заменять.

> > msgid "Wrong CD-ROM"
> > msgstr "Ошибочный CD-ROM"
> 
> 
> "ошибочный" -> "неверный"

Поменял, спасибо.

> > msgid "Could not resolve '%s'"
> > msgstr "Не удалось найти IP-адрес для «%s»"
> 
> 
> Да, но почему не просто "разрешить"? И ниже.

Поразмыслив, пришёл к выводу, что текущий перевод неточен, т.к. соответствует 
лишь подмножеству вариантов использования разрешения доменных имён.

Заменил, в том числе и ниже данного сообщения.

В процессе замены нашёл ошибку в переводе:

#: ftparchive/writer.cc
#, c-format
msgid "Failed to resolve %s"
msgstr "Не удалось проследовать по ссылке %s"

Функция realpath(), при ошибке которой выводится это сообщение, не только 
следует по символьным ссылкам, но также разрешает относительные пути вроде "/
usr/../bin/./sh". Задача этой функции в принципе - приведение пути к 
каноническому виду.

В результате неправильного перевода получается, например, такое сообщение:

$ apt-ftparchive packages /root/pkgs
E: Не удалось проследовать по ссылке /root/pkgs - realpath (13: Отказано в 
доступе)
$ 

Очевидно, данная ошибка ни к каким символьным ссылкам отношения не имеет.

Термин "разрешить" в русском языке в данном контексте, если судить по 
результатам поиска в Google, не используется. Предлагаю такой перевод:
"Не удалось привести %s к каноническому виду"

Что скажете?

> > msgid "Unable to determine the peer name"
> > msgstr "Невозможно определить имя удалённого сервера"
> 
> 
> "имя узла", тут же не обязательно сервер?

Учитывая, что это сообщение из FTP-метода, и комментарий перед соответствующим 
кодом гласит "Get the remote server's address", - это всё же сервер. Но можно 
поменять и на "имя удалённого узла".

> > msgid "Could not execute 'apt-key' to verify signature (is gnupg
> > installed?)"
> > msgstr ""
> > "Не удалось выполнить «apt-key» для проверки подписи (gnupg
> > установлена?)"
> 
> 
> Почему gnupg именно женского рода? Может добавить
> "программа/утилита/пакет"?

Здесь не очень понятно. В репозитории отсутствуют пакеты, содержащие программу 
с таким именем; с другой стороны, есть одноимённый пакет, который к тому же 
ещё и рекомендуется apt. Однако apt-key, через который и происходят все 
действия, может использовать разные версии этих пакетов: gnupg, gnupg1, gnupg2 
- так что имя пакета в данном случае лишь приблизительно. Подытоживая, думаю, 
что наиболее корректным будет использовать "программа gnupg", которую уже 
могут предоставлять разные пакеты. Согласны?
 
> > msgid "The following signatures were invalid:\n"
> > msgstr "Следующие подписи неверные:\n"
> 
> 
> "неверные" -> "неверны"

Исправил.

> > msgid "Select failed"
> > msgstr "Ошибка в select"
> 
> 
> Тут точно не надо перевести "select"?

Это имя функции, так что не нужно переводить.

> > msgid "Failed to set modification time"
> > msgstr "Не удалось установить время модификации"
> 
> 
> "модификации", может заменить на "изменения" или "внесения изменений"?

Строго говоря, вариант "время модификации" достаточно широко распространён, 
так что оба варианта можно считать правильными. Но для лучшей читаемости 
поменял перевод на "Не удалось установить время изменения файла". (Да, слова 
"файл" в оригинале нет, но так понятнее.)

Большое спасибо за конструктивные советы и предложения!

Обновлённый перевод вышлю, как только будут решены возникшие вопросы из 
данного письма.

Ответить