Автор Тема: zip-архивы и кириллица  (Прочитано 23066 раз)

Оффлайн Александр Ерещенко

  • Завсегдатай
  • *
  • Сообщений: 1 153
Re: zip-архивы и кириллица
« Ответ #30 : 04.02.2021 09:07:19 »
Насколько помню, внутри zip-архива однобайтовая кодировка имён файлов.

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: zip-архивы и кириллица
« Ответ #31 : 04.02.2021 09:45:43 »
Насколько помню, внутри zip-архива однобайтовая кодировка имён файлов.

Честно говоря мне непонятно, как это стыкуется с двухбайтной кириллицей utf8:
$ ls Сертификат\ Минкомсвязи\ России\ \(Головного\ удостоверяющего\ центра\)\ ГОСТ\ Р\ 34.10-2012.cer | hexdump -C
00000000  d0 a1 d0 b5 d1 80 d1 82  d0 b8 d1 84 d0 b8 d0 ba  |................|
00000010  d0 b0 d1 82 20 d0 9c d0  b8 d0 bd d0 ba d0 be d0  |.... ...........|
00000020  bc d1 81 d0 b2 d1 8f d0  b7 d0 b8 20 d0 a0 d0 be  |........... ....|
00000030  d1 81 d1 81 d0 b8 d0 b8  20 28 d0 93 d0 be d0 bb  |........ (......|
00000040  d0 be d0 b2 d0 bd d0 be  d0 b3 d0 be 20 d1 83 d0  |............ ...|
00000050  b4 d0 be d1 81 d1 82 d0  be d0 b2 d0 b5 d1 80 d1  |................|
00000060  8f d1 8e d1 89 d0 b5 d0  b3 d0 be 20 d1 86 d0 b5  |........... ....|
00000070  d0 bd d1 82 d1 80 d0 b0  29 20 d0 93 d0 9e d0 a1  |........) ......|
00000080  d0 a2 20 d0 a0 20 33 34  2e 31 30 2d 32 30 31 32  |.. .. 34.10-2012|
00000090  2e 63 65 72 0a                                    |.cer.|
00000095

Байт в имени файла
$ ls Сертификат\ Минкомсвязи\ России\ \(Головного\ удостоверяющего\ центра\)\ ГОСТ\ Р\ 34.10-2012.cer | wc -c
149

Символов в имени файла
$ ls Сертификат\ Минкомсвязи\ России\ \(Головного\ удостоверяющего\ центра\)\ ГОСТ\ Р\ 34.10-2012.cer | wc -m
87

Оффлайн yaleks

  • Мастер
  • ***
  • Сообщений: 6 222
Re: zip-архивы и кириллица
« Ответ #32 : 04.02.2021 13:56:08 »
Насколько помню, внутри zip-архива однобайтовая кодировка имён файлов.
она может быть любая, проблема в том что там не указывается какая именно.
Раньше это успешно решалось при помощи специальной библиотеки разработанной Виталием Липатовым (etersoft) - https://github.com/vitlav/libnatspec и в альте во все нужные места она подключалась соответствующими патчами.
Лет 12 назад это в том числе называлось одним из преимуществ альта, что нет проблем с архивами.

Оффлайн YYY

  • Мастер
  • ***
  • Сообщений: 5 950
Re: zip-архивы и кириллица
« Ответ #33 : 04.02.2021 15:43:05 »
Раньше это успешно решалось при помощи специальной библиотеки разработанной Виталием Липатовым (etersoft) - https://github.com/vitlav/libnatspec и в альте во все нужные места она подключалась
дак и сейчас вроде unzip с этой либой в альте собран...

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: zip-архивы и кириллица
« Ответ #34 : 04.02.2021 16:10:52 »
Угу, она у него в зависимостях:
$ apt-cache depends unzip | grep libnat
  Требует: <libnatspec.so.0()(64bit)>
    libnatspec-0.3.1-alt2@1445691578
$ rpm -q --qf '%{DESCRIPTION}\n' libnatspec
Library for national and language-specific issues.
This library provides userful functions for
mount, submount, mkisofs, multimedia players.
This library try to help resolve charset hell (encoding problem)
in a various programs depends on locale and messages.
See detailed description at
http://www.freesource.info/wiki/Lokalizacija/NATSPECDescription
or http://freesource.info/wiki/Lokalizacija/BibliotekaNATSPEC

И ему, unzip, безразлично где собирался кириллический архив, под виндой или в линукс.

Оффлайн YYY

  • Мастер
  • ***
  • Сообщений: 5 950
Re: zip-архивы и кириллица
« Ответ #35 : 04.02.2021 16:22:27 »
у меня unzip с libnatspec открывает и архив с закупок и тот что под линуксом собрал.

в в убунтовском ppa есть и p7zip c libnatspec собранный, но старой версии...

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: zip-архивы и кириллица
« Ответ #36 : 04.02.2021 19:15:29 »
Беру виндовый кириллический zip-архив. Открываю в xarchiver-0.5.4. Кириллица в zip-архиве отображается.

Ставлю xarchiver-0.5.4.17 из таска:
http://git.altlinux.org/tasks/265751/

Зависимостей не тянет. Открываю виндовый zip-архив с кириллицей. Кириллица сломана.

Через `rpm -Uhv` возвращаю xarchiver-0.5.4, кирилица в виндовом zip-е отображается.

Если zip-архив создавался в линукс, кириллица в архиве отображается.
xarchiver-0.5.4 не умеет создавать zip-архивы.
xarchiver-0.5.4.17 умеет.
Как отображается кириллический zip-архив в винде, созданный в линукс, это надо проверять.

С консольными архиваторами проблем нет. Консоль яulezz. Гуй говно.
Где-то в коде xarchiver выше версии 0.5.4, сломали поддержку кириллицы.
« Последнее редактирование: 04.02.2021 19:17:20 от Speccyfighter »

Оффлайн yaleks

  • Мастер
  • ***
  • Сообщений: 6 222
Re: zip-архивы и кириллица
« Ответ #37 : 04.02.2021 19:35:08 »
Раньше это успешно решалось при помощи специальной библиотеки разработанной Виталием Липатовым (etersoft) - https://github.com/vitlav/libnatspec и в альте во все нужные места она подключалась
дак и сейчас вроде unzip с этой либой в альте собран...
правильно, но некоторые графические менеджеры архивов вместо zip используют 7zip даже для чисто zip-архивов.

Оффлайн YYY

  • Мастер
  • ***
  • Сообщений: 5 950
Re: zip-архивы и кириллица
« Ответ #38 : 04.02.2021 23:00:51 »
Где-то в коде xarchiver выше версии 0.5.4, сломали поддержку кириллицы.

Странно.
У меня работает...

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: zip-архивы и кириллица
« Ответ #39 : 04.02.2021 23:06:56 »
правильно, но некоторые графические менеджеры архивов вместо zip используют 7zip даже для чисто zip-архивов.

Thnx, yalexs. За поданную мысль.
Так народ, кажется начинаю просекать в чём подляна нового xarchiver.
Прокрутил в голове, прощупал и отписался:
https://bugzilla.altlinux.org/show_bug.cgi?id=39640#c7

Оффлайн yaleks

  • Мастер
  • ***
  • Сообщений: 6 222
Re: zip-архивы и кириллица
« Ответ #40 : 05.02.2021 16:05:28 »
Ну так что, сдюжим патчик то на 7zip наложить, тем более видимо, как минимум, за 4 последние года альт в основном в виде embedded-style используется, а не как ОС общего назначения.

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: zip-архивы и кириллица
« Ответ #41 : 05.02.2021 18:28:47 »
Ну так что, сдюжим патчик то на 7zip наложить, тем более видимо, как минимум, за 4 последние года альт в основном в виде embedded-style используется, а не как ОС общего назначения.

Я не сишник, но тесты с меня, из того что нашлось под тест:
tar.gz tar.bz2 tar.xz zip 7z многотомный-7z.xxx rar. В кириллице windows-zip windows-rar.

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: zip-архивы и кириллица
« Ответ #42 : 05.02.2021 18:47:03 »
Леонид Кривошеин в другом старом незакрытом багрепорте оставил комментарий:
Ошибка 31806 - поддержка natspec
https://bugzilla.altlinux.org/show_bug.cgi?id=31806#c1

И по моему скромному:
Категория: Важное
В теории это должно решить проблему глобально для всех альтов.

Оффлайн yaleks

  • Мастер
  • ***
  • Сообщений: 6 222
Re: zip-архивы и кириллица
« Ответ #43 : 06.02.2021 11:33:56 »
Леонид Кривошеин в другом старом незакрытом багрепорте оставил комментарий:
Ошибка 31806 - поддержка natspec
https://bugzilla.altlinux.org/show_bug.cgi?id=31806#c1
в том форке есть другие проблемы с zip - https://github.com/jinfeihan57/p7zip/issues/112  :-t

Оффлайн yaleks

  • Мастер
  • ***
  • Сообщений: 6 222
Re: zip-архивы и кириллица
« Ответ #44 : 13.03.2022 21:14:04 »
в попытке решить обозначенную проблему поломали другое - https://forum.altlinux.org/index.php?topic=838.msg367280#msg367280