Иногда возникает необходимость просмотреть ZIP-архивы в русскоязычной кодировке. И вместо имён файлов мы видим непонятный набор — символы-крякозябвы, даже распаковать которые не представляется возможным. Конечно, можно попробовать запуск 7zip под wine, но это недостойный путь для настоящих линуксоидов. Также был испробован вариант архиватора PeaZIP, но даже самая последняя версия 4.1 с сайта разработчиков тоже не решила всех проблем, да и настроек на кодировку кириллицы CP866/CP1251 там нет.
Решение есть в виде библиотеки libnatspec0, которая поддерживает i18n и исправляет многие проблемы с устаревшими кодировками и локализациями при монтировании, работе с архивами и просмотре мультимедиа. Работает это всё в стандартном Менеджере архивов (file-roller)
Для этого добавляем репозиторий:
deb http://ppa.launchpad.net/frol/zip-i18n/ubuntu oneiric main
и устанавливаем библиотечку libnatspec0 и архиватор p7zip. Версия lucid/maverick/oneiric тут определенно неважна, т.к. всё одинаково совместимо как на Убунту, так и на Debian с разными версиями. Запускаем Терминал, добавляем ключи и устанавливаем библиотеку и архиваторы, естественно репозитории и ключи делаем под администратором (sudo):
sudo -i
echo deb http://ppa.launchpad.net/frol/zip-i18n/ubuntu oneiric main > /etc/apt/sources.list.d/7ziprus.list
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 4EEBB18420019065
aptitude update
aptitude install -y libnatspec0 unzip p7zip-full
Теперь у нас русские ZIP-файлы читаются на русском языке, как и положено =)
Импортировать ключ и подключить репозиторий проще одной командой:
sudo apt-add-repository ppa:frol/zip-i18n
Если правильно помню данный питоновский скрипт добавления репозитория стал доступен только с версии 9.10. Так что на любимом 8.04 apt-add-repository не будет работать. Хотя там и репы основные все, кроме серверных уже в oldarchive перешли.
Специально выполнял на Debian, чтобы решение было универсальным. Конечно убунтовский скрипт хорош и прост по добавлению репозитория, но он есть не во всех дистрибутивах Linux. Хотя вот тот же самый aptitude, есть ли он в поставках по умолчанию?
aptitude нет в кедах… Так что apt-get был бы более универсальным, полагаю…
А вообще, спасибо за статью, эта проблема напрягала меня давно, но всегда было лень разобраться 🙂