Bug 43459 - kde5-khelpcenter собран неправильно
Summary: kde5-khelpcenter собран неправильно
Status: RESOLVED LATER
Alias: None
Product: Branch p10
Classification: Unclassified
Component: kde5-khelpcenter (show other bugs)
Version: не указана
Hardware: x86_64 Linux
: P5 major
Assignee: Sergey V Turchin
QA Contact: qa-p10@altlinux.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-08-05 12:46 MSK by Георгий
Modified: 2022-08-31 15:16 MSK (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Георгий 2022-08-05 12:46:58 MSK
khelpcenter здорового человека работает так:
$ khelpcenter help:okular
Это открывает соответствующий docbook-файл.
Проверено на Debian Bullseye, Федоре 35, РЕД ОС, Росе.

У Альта есть пакет kde5-khelpcenter версии 22.04.2-alt1:p10+301819.11300.3.1@1657038097, но он собран неправильно.
Бинарник находится в каком-то непонятном месте и ищет свои конфиги непойми где.
В результате у нашего приложения Окуляр ГОСТ не работает справка, т.к. KDE-шные библиотеки не видят khelpcenter.

У меня на Альте получилось запустить вот так:
$ XDG_DATA_DIRS=/usr/share:/usr/share/kf5 /usr/lib/kf5/bin/khelpcenter help:okular

Могу предположить, что дело в `%K5init altplace`, вместо него нужно `%K5init no_altplace`.
Тестировалось на Alt Workstation 10.
Comment 1 Георгий 2022-08-05 12:59:27 MSK
Код KDE, отвечающий за открытие справки: https://phabricator.kde.org/file/data/uwbfrwywretlqkem3nxt/PHID-FILE-73dyplpsn6exzw5yxrhq/src_util_urlhandler.cpp
Comment 2 Sergey V Turchin 2022-08-15 11:21:00 MSK
kde5 khelpcenter help:okular
Comment 3 Sergey V Turchin 2022-08-15 11:36:19 MSK
(Ответ для Георгий на комментарий #0)
> Проверено на Debian Bullseye, Федоре 35, РЕД ОС, Росе.
AlterOS забыли проверить.
Comment 4 Георгий 2022-08-18 22:06:31 MSK
> kde5 khelpcenter help:okular

Мне не нужна ещё одна хитрая команда для запуска khelpcenter из консоли.
Мне нужно, чтобы открывался khelpcenter, когда я жмакаю F1 в KDE-приложении.

Итак, ещё разок: в API KDE есть функция показа справки при помощи khelpcenter.
В Альте данная функция сломана.
Это 100% баг, я не понимаю о чём тут спорить.
Откройте свой Окуляр и жмакнитие F1.
Должен открываться khelpcenter, если он есть в системе, но этого не произойдёт - откроется kde.org, т.к. ваш Окуляр не видит ваш khelpcenter.

Ссылка поломалась, вот новая - https://invent.kde.org/frameworks/kguiaddons/-/blob/master/src/util/kurlhandler_p.cpp

> // KHelpCenter is not available and it's a KDE application, open the docs at docs.kde.org
> // with the default web browser on the system

Соответственно, сторонние KDE-приложения, которых нет на kde.org - в пролёте.
Comment 5 Олег Соловьев 2022-08-19 10:40:19 MSK
(In reply to Георгий from comment #4)
> Это 100% баг, я не понимаю о чём тут спорить.
> Откройте свой Окуляр и жмакнитие F1.

Вот и не спорьте. У меня всё работает.
Но сначала - обновитесь: khelpcenter в p10 имеет версию 22.04.3
Comment 6 Sergey V Turchin 2022-08-19 10:54:55 MSK
(Ответ для Георгий на комментарий #0)
> В результате у нашего приложения Окуляр ГОСТ
У нашего приложения Okular справка работает.
Разбирайтесь со своим приложением.
Comment 7 Георгий 2022-08-30 17:19:06 MSK
Короче понятно, если установить kde5-big и при входе выбрать плазму, то справка открывается в khelpcenter, как и должно.
Если же на голый Альт Workstation 10 поставить kde5-okular и kde5-khelpcenter, то вместо khelpcenter открывается сайт.
Ну могло бы и на MATE работать.
Федора вот шмогла - на MATE справка Окуляра спокойно открывается в khelpcenter.
Comment 8 Sergey V Turchin 2022-08-30 17:26:51 MSK
(Ответ для Георгий на комментарий #7)
> Федора вот шмогла
Не шмогла. Установите одновременно Okular от KDE4 и KDE5 и посмотрите, что где 
открываться будет.
Comment 9 Sergey V Turchin 2022-08-30 17:28:18 MSK
Да и, собственно, хотите открывать чужую справку -- подстраивайтесь или открывайте свою.
Comment 10 Sergey V Turchin 2022-08-30 17:46:29 MSK
(Ответ для Sergey V Turchin на комментарий #8)
> Установите одновременно Okular от KDE4 и KDE5 и посмотрите, что
> где  открываться будет.
И khelpcenter оба тоже.

Я попробую сделать, чтоб документация открывалась без доп. движений, но положение бинаря khelpcenter изменить не могу.
Comment 11 Георгий 2022-08-30 17:51:36 MSK
> хотите открывать чужую справку -- подстраивайтесь или открывайте свою

У меня своя справка, открывается при помощи khelpcenter по идентификатору okular-csp.
Comment 12 Sergey V Turchin 2022-08-31 10:12:16 MSK
(Ответ для Георгий на комментарий #11)
> У меня своя справка, открывается при помощи khelpcenter по идентификатору
> okular-csp.
Тогда она и сейчас должна открываться по
/usr/lib/kf5/bin/khelpcenter help:okular-csp

Или всё же чего-то не хватает?
Comment 13 Георгий 2022-08-31 11:52:42 MSK
Под плазмой всё работает как надо, справка KDE-приложений открывается в khelpcenter.
А под MATE библиотеки KDE не видят khelpcenter и переходят к плану Б - показать справку на kde.org, соответственно:
1. kde5-okular открывает справку в Firefox (т.е. не будет интернета - не будет и справки).
2. У сторонних KDE-приложений ничего не открывается, т.к. у них нет справки на kde.org.
Comment 14 Sergey V Turchin 2022-08-31 12:01:30 MSK
`/usr/lib/kf5/bin/khelpcenter help:okular-csp` в MATE работает?
Comment 15 Георгий 2022-08-31 12:11:54 MSK
Чтобы работало, надо ещё XDG_DATA_DIRS указывать:
$ XDG_DATA_DIRS=/usr/share:/usr/share/kf5 /usr/lib/kf5/bin/khelpcenter help:okular-csp
Аналогично для Окуляра -
$ XDG_DATA_DIRS=/usr/share:/usr/share/kf5 /usr/lib/kf5/bin/khelpcenter help:okular
Comment 16 Sergey V Turchin 2022-08-31 12:14:49 MSK
(Ответ для Георгий на комментарий #15)
> Чтобы работало, надо ещё XDG_DATA_DIRS указывать:
> $ XDG_DATA_DIRS=/usr/share:/usr/share/kf5 /usr/lib/kf5/bin/khelpcenter
> help:okular-csp
Ваша справка лежит в /usr/share/kf5/ ?
Comment 17 Георгий 2022-08-31 12:23:05 MSK
> Ваша справка лежит в /usr/share/kf5/ ?

Да, в /usr/share/kf5/doc/HTML, как у kde5-okular-common.
Comment 18 Sergey V Turchin 2022-08-31 12:38:04 MSK
(Ответ для Георгий на комментарий #17)
> > Ваша справка лежит в /usr/share/kf5/ ?
> Да, в /usr/share/kf5/doc/HTML
Дык, переложите в /usr/share/doc/HTML/ .
Comment 19 Sergey V Turchin 2022-08-31 15:16:08 MSK
В общем, я внесу изменения в libkf5doctools-5.97.0-alt2 и kde5-khelpcenter-22.04.3-alt2 и скорее всего всё заработает без изменений, но документацию всё равно переложите в /usr/share/doc/HTML/ .