Bug 11482 - plasma5-baloo: непредсказуемое состояние включенности сервиса systemd
Summary: plasma5-baloo: непредсказуемое состояние включенности сервиса systemd
Status: CONFIRMED
Alias: None
Product: ROSA Fresh
Classification: ROSA-based products
Component: Packages from Main (show other bugs)
Version: Plasma5
Hardware: All Linux
: Normal normal
Target Milestone: ---
Assignee: VictorR2007
URL:
Whiteboard:
Depends on:
Blocks: 11462
  Show dependency treegraph
 
Reported: 2021-09-05 14:24 MSK by Mikhail Novosyolov
Modified: 2021-09-28 11:43 MSK (History)
2 users (show)

See Also:
Platform: 2021.1
ROSA Vulnerability identifier:
RPM Package:
Upstream:


Attachments
Включение индексирования (77.77 KB, image/png)
2021-09-05 14:45 MSK, VictorR2007
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Mikhail Novosyolov 2021-09-05 14:24:01 MSK
В пакете plasma5-baloo одно и то же запускается двумя способами:
1. через /etc/xdg/autostart/*.desktop средствами DE
2. через systemd внутри пользовательского сеанса

[user@rosa2019 ~]$ rpm -ql plasma5-baloo | grep -E 'systemd|xdg'
/etc/xdg/autostart/baloo_file.desktop
/usr/lib/systemd/user/kde-baloo.service
[user@rosa2019 ~]$ grep Exec /usr/lib/systemd/user/kde-baloo.service /etc/xdg/autostart/baloo_file.desktop
/usr/lib/systemd/user/kde-baloo.service:ExecStart=/usr/lib64/libexec/baloo_file
/usr/lib/systemd/user/kde-baloo.service:ExecCondition=/usr/bin/kde-systemd-start-condition --condition "baloofilerc:Basic Settings:Indexing-Enabled:true"
/etc/xdg/autostart/baloo_file.desktop:Exec=/usr/lib64/libexec/baloo_file

Это уже дубликат. Думаю, службу индексирования лучше запускать через systemd, ведь она не зависит от графического сеанса.

Далее такая проблема.

[user@rosa2019 ~]$ systemctl --user status kde-baloo.service
● kde-baloo.service - Baloo File Indexer Daemon
     Loaded: loaded (/usr/lib/systemd/user/kde-baloo.service; disabled; vendor preset: enabled)
     Active: inactive (dead)


Смотрим внимательно вывод команды выше. В нем написано,что:
1. политика дистрибутива - держать user-сервисы systemd по умолчанию включенными (так уже довольно давно в rosa2021.1) ("vendor preset: enabled")
2. сервис сейчас выключен ("disabled")

В качестве примера паеета с user-сервисами systemd рассмотрим pipewire.
https://abf.io/import/pipewire/blob/b082baf0e9/pipewire.spec#lc-107
%post
<...>
%systemd_user_post %{name}.service
%systemd_user_post %{name}.socket
%systemd_user_post %{name}-media-session.service

Как %systemd_post, только для user-сервисов. Если бы такой макрос был прописан в пакет plasma5-baloo, то после установки пакета был бы выполнен такой скриптлет:
$ rpm -E '%systemd_user_post kde-baloo.service'
if [ $1 -eq 1 ] && [ -x /bin/systemctl ]; then 
        # Initial installation 
        /bin/systemctl --no-reload preset --global kde-baloo.service || : 
fi 

preset бы сделал состояние сервиса в соответствии с дистрибутивной политикой, а как написано выше, она говорит включать сервисы, что и происходит в pipewire.

Если сервис нужно выключить по умолчанию, то можно сделать файл в специальной папке:
$ rpm -E %_userpresetdir
/usr/lib/systemd/user-preset

например, /usr/lib/systemd/user-preset/80-rosa-plasma5-baloo.preset с текстом:
disable kde-baloo.service
И можно этот файл сделать не обязательно в пакете plasma5-baloo, а в пакете с конфигами KDE для Fresh, например.

Неконсистентность состояния включенности kde-baloo.service заключается в том, что если выполнить systemctl preset --user/--global, то он внезапно включится.
Comment 1 Mikhail Novosyolov 2021-09-05 14:26:54 MSK
При этом в файле для запуска не через systemd написано следующее:
/etc/xdg/autostart/baloo_file.desktop
OnlyShowIn=KDE;GNOME;Unity;XFCE;
То есть вот я поставил этот пакет в XFCE, а baloo начнет автозапускаться!
А если бы был systemd, я бы сделал systemctl --user mask kde-baloo.service
Comment 2 VictorR2007 2021-09-05 14:45:19 MSK
Created attachment 5503 [details]
Включение индексирования

Не нужно ничего ломать.
У нас с этим всё нормально.
По умолчанию в Росе индексирование отключено.
Особенно это важно для live-cd.
Его не все используют.
Я его например никогда не включаю.
Зачем нагружать систему.
Поиск и без этого работает.
А если включить индексирование,
то будут на боковой панели постоянно висеть все открытые ранее файлы,
видео и т.п.
Очень мешает.
Comment 3 VictorR2007 2021-09-05 14:50:40 MSK
У нас индексирование отключается конфигом в пакете
plasma5-config-fresh.
Отключал его лет пять назад, ещё Андрей, по моей просьбе.
Я скидывал ему конфиг отключения.
При загрузке livecd система тупила на слабых машинах,
так как начиналось индексирование.
Решил, что пользователь сам его включит, если нужно.
Comment 4 Mikhail Novosyolov 2021-09-05 15:14:25 MSK
(In reply to VictorR2007 from comment #3)
> У нас индексирование отключается конфигом в пакете
> plasma5-config-fresh.
> Отключал его лет пять назад, ещё Андрей, по моей просьбе.
> Я скидывал ему конфиг отключения.
> При загрузке livecd система тупила на слабых машинах,
> так как начиналось индексирование.
> Решил, что пользователь сам его включит, если нужно.

У меня не установлен пакет plasma5-config-fresh.
Даже если бы и стоял, описанную проблему это бы никак не меняло.
Comment 5 Mikhail Novosyolov 2021-09-05 15:24:12 MSK
в образах с плазмой5 из коробки как раз дубликат запуска
Created symlink /etc/systemd/user/graphical-session.target.wants/kde-baloo.service → /usr/lib/systemd/user/kde-baloo.service.
из лога https://abf.io/platforms/rosa2021.1/products/318/product_build_lists/40470
Comment 6 VictorR2007 2021-09-05 16:17:19 MSK
(In reply to Mikhail Novosyolov from comment #4)
> У меня не установлен пакет plasma5-config-fresh.
> Даже если бы и стоял, описанную проблему это бы никак не меняло.

Ты обсуждаешь пакет из плазмы.
Установи плазму, и этот пакет буде установлен.
Пакет plasma5-baloo не предназначен для использования в xfce.
Он для plasma5, и там отрабатывает правильно.
Так и положено.
Тв предлагаешь переделать пакет, чтобы было не как задумано производителем.
Если знаешь как лучше, переделай.
Но тебе придётся поставить plasma5, чтобы там отлаживать пакет
после манипуляций.
Не поленился скопировать у других, какие у них файлы в этом пакете.

Вот из спека федоры

%{_kf5_sysconfdir}/xdg/autostart/baloo_file.desktop
%{_userunitdir}/kde-baloo.service

А вот у Mageia

%_kf5_sysconfdir/xdg/autostart/baloo_file.desktop
%_userunitdir/kde-baloo.service

Эти же файлы есть у KaOS,
а так же и у OM https://github.com/OpenMandrivaAssociation/baloo/blob/master/baloo.spec
Comment 7 Vladimir Potapov 2021-09-28 11:43:29 MSK
индексирование включено и работает. 
Предлагаю закрыть баг