Стенд: - Альт Рабочая станция 10.4 - свежеустановленный - Альт Рабочая станция 10.1 - загрузка в LiveCD без диска Команда: $ man --html man Ожидаемый результат: форматирование ман-страницы в html и открытие в дефолтном браузере По факту: $ man --html man man: команда завершилась с кодом 3: (cd /tmp/.private/fraks/hman6wPPpx && /usr/lib/man-db/zsoelim) | (cd /tmp/.private/fraks/hman6wPPpx && /usr/lib/man-db/manconv -f UTF-8:KOI8-R -t UTF-8//IGNORE) | (cd /tmp/.private/fraks/hman6wPPpx && gpreconv -e UTF-8) | (cd /tmp/.private/fraks/hman6wPPpx && tbl) | (cd /tmp/.private/fraks/hman6wPPpx && groff -mandoc -Thtml) У меня было записано что такая команда работала и в браузере ман открывался, а у меня кроме Альт Рабочая станция 10.* ничего на тот момент быть не могло.
man.1 - это файл мана который я достал изнутри файла /usr/share/man/ru/man1/man.1.xz Попробовал подать этот файл в конвейер команд cat man.1 | /usr/lib/man-db/zsoelim | /usr/lib/man-db/manconv -f UTF-8:KOI8-R -t UTF-8//IGNORE | gpreconv -e UTF-8 | tbl | groff -mandoc -Thtml Оказалось что ошибку вызывает последняя команда groff -mandoc -Thtml потому как не знает что за устройство html. Несмотря на то что groff в системе есть, но пакет репозитория groff не установлен. Сделал apt-get install groff он натянул с собой еще кучу пакетов, количеством 47 штук, и ситуация немного изменилась. Теперь $ man --html man ошибок не выдает, и дело доходит до запуска браузера. Но браузер пишет что тот файл который он должен открыть - отсутствует. При этом, если вручную затолкать ман в эту цепочку команд cat man.1 | /usr/lib/man-db/zsoelim | /usr/lib/man-db/manconv -f UTF-8:KOI8-R -t UTF-8//IGNORE | gpreconv -e UTF-8 | tbl | groff -mandoc -Thtml > man.html то итоговый файл html содержит примерно то что надо, но все равно криво. Текстовые таблицы мана видимо командой tbl формируются в виде картинок .png но на этих картинках мусор а не таблица.
Проверялось в Sisyphus, ошибка воспроизводится. Версия: man-db-2.13.0-alt1 Системы: ALT Workstation 11.0, обновлено до Sisyphus ALT Workstation K 11.0, обновлено до Sisyphus ALT Server 11.0, обновлено до Sisyphus ALT Education 11.0, обновлено до Sisyphus Шаги воспроизведения: 1. Убедиться что установлен groff-base: $ rpm -q groff-base 2. Выполнить: $ man --html man Реальный результат: man: команда завершилась с кодом 3: (cd /tmp/hmanqqq4ls && /usr/lib/man-db/zsoelim) | (cd /tmp/hmanqqq4ls && /usr/lib/man-db/manconv -f UTF-8:KOI8-R -t UTF-8//IGNORE) | (cd /tmp/hmanqqq4ls && gpreconv -e UTF-8) | (cd /tmp/hmanqqq4ls && tbl) | (cd /tmp/hmanqqq4ls && groff -mandoc -Thtml) Ожидаемый результат: Открытие man страницы в браузере. Дополнительная информация: 1. Если установить полный пакет groff – ошибка НЕ воспроизводится. 2. Ошибка также воспроизводится в p10.