Bug 47018 - kde5-okular некорректно отображает postscript файлы
Summary: kde5-okular некорректно отображает postscript файлы
Status: CLOSED WORKSFORME
Alias: None
Product: Sisyphus
Classification: Development
Component: libspectre (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P5 normal
Assignee: Valery Inozemtsev
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-07-24 18:01 MSK by Шевченко Денис
Modified: 2023-08-01 18:14 MSK (History)
4 users (show)

See Also:


Attachments
открытие ps-файла в okular (254.77 KB, image/png)
2023-07-24 18:01 MSK, Шевченко Денис
no flags Details
postscript файл (12.91 KB, application/postscript)
2023-07-24 18:03 MSK, Шевченко Денис
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Шевченко Денис 2023-07-24 18:01:21 MSK
Created attachment 13916 [details]
открытие ps-файла в okular

kde5-okular некорректно отображает postscript файлы - либо пустую страницу, либо исходный код файла (см. приложенный скриншот). Кроме того, выскакивает следующая ошибка:

$ okular vasarely.ps
GPL Ghostscript 9.54.0: Can't find initialization file gs_init.ps.
(libspectre) ghostscript reports: fatal internal error -100

Как видно okular использует библиотеку libspectre, которая зависит от libgs9 (9.54).

Если использовать ghostscript напрямую, то используется libgs (10.01.1) и ошибок не возникает.

$ gs vasarely.ps
GPL Ghostscript 10.01.1 (2023-03-27)
Copyright (C) 2023 Artifex Software, Inc.  All rights reserved.

Версия:
kde5-okular-22.12.3-alt1.x86_64
libspectre-0.2.9-alt1.x86_64
libgs9-9.54.0-alt4.x86_64

Системы:
ALT Workstation K 10.1
ALT Workstation 10.1

Шаги воспроизведения:
Открыть файл vasarely.ps в Okular (файл vasarely.ps приложил к багу)

$ okular vasarely.ps


Ожидаемый результат:
Okular корректно отобразит postscript файл

Реальный результат:
Okular отображает postscript файл некорректно - либо пустую страницу, либо исходный код файла


Дополнительная информация:
1. Ошибка воспроизводится на системах обновленных до Sisyphus.

2. Данная ошибка проявляется и в других редакторах, позволяющих открывать postscript файлы, например qpdfview.

3. В процессе исследования проблемы мне удалось решить её двумя способами:
a) доустановка пакета ghostscript9-common, который не идет в зависимостях к qpdfview, okular.

Данное решение не является очевидным для пользователя, поэтому предполагаю, что пакет ghostscript9-common можно было бы добавить в зависимости к пакету libgs9.

b) сделать так, чтобы libspectre использовала libgs (10.01.1), а не libgs9 (9.54)

Я делал симлинк, после которого postscript файлы открывались корректно:
ln -s /usr/lib64/libgs.so.10.01 /usr/lib64/libgs.so.9
Comment 1 Шевченко Денис 2023-07-24 18:03:38 MSK
Created attachment 13917 [details]
postscript файл
Comment 2 Sergey V Turchin 2023-07-24 18:22:47 MSK
(Ответ для Шевченко Денис на комментарий #0)
> Данное решение не является очевидным для пользователя, поэтому предполагаю,
> что пакет ghostscript9-common можно было бы добавить в зависимости к пакету
> libgs9.
Возможно.

> b) сделать так, чтобы libspectre использовала libgs (10.01.1), а не libgs9
> (9.54)
Полагаю, достаточно пересобрать libspectre. В p10 я сделаю.
Comment 3 Sergey V Turchin 2023-07-24 18:23:01 MSK
libspectre давно обновить пора
Comment 4 Sergey V Turchin 2023-07-24 18:25:03 MSK
(Ответ для Sergey V Turchin на комментарий #2)
> Полагаю, достаточно пересобрать libspectre. В p10 я сделаю.
Да. Собирается с libgs-10 https://git.altlinux.org/tasks/325491/build/100/x86_64/srpm.log
Comment 5 Gleb F-Malinovskiy 2023-07-24 18:27:03 MSK
new task #325493: owner=glebfm repo=sisyphus
fetching tag "0.2.9-alt1" from /gears/l/libspectre.git... done
generating pkg.tar for libspectre.git tag "0.2.9-alt1"... done
task #325493: added #100: build tag "0.2.9-alt1" from /gears/l/libspectre.git
task #325493: try #1 is AWAITING, result will be emailed to glebfm@altlinux.org
Comment 6 Valery Inozemtsev 2023-07-24 18:44:22 MSK
тогда уж
new task #325495: owner=shrek repo=sisyphus
fetching tag "0.2.12-alt1" from /people/shrek/packages/libspectre.git... done
generating pkg.tar for libspectre.git tag "0.2.12-alt1"... done
task #325495: added #100: build tag "0.2.12-alt1" from /people/shrek/packages/libspectre.git
task #325495: try #1 is AWAITING, result will be emailed to shrek@altlinux.org
Comment 7 Gleb F-Malinovskiy 2023-07-24 18:49:12 MSK
(In reply to Valery Inozemtsev from comment #6)
> new task #325495: owner=shrek repo=sisyphus
> fetching tag "0.2.12-alt1" from /people/shrek/packages/libspectre.git... done
> generating pkg.tar for libspectre.git tag "0.2.12-alt1"... done

Так, конечно, ещё лучше! :)

task abort: task #325493 abort requested
Comment 8 Tatyana Gagina 2023-08-01 18:14:59 MSK
Ошибка больше не воспроизводится.

Версии на p10: 
kde5-okular-22.12.3-alt1 
libspectre-0.2.12-alt1

Версии на Sisyphus: 
libspectre-0.2.12-alt1
kde5-okular-23.04.3-alt1