<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>60635</bug_id>
          
          <creation_ts>2026-09-20 19:36:19 +0300</creation_ts>
          <short_desc>KDE-mimeapps.list: [Added Associations] не действует, в desktop-specific файле допустима только [Default Applications]</short_desc>
          <delta_ts>2026-09-24 11:53:15 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>altlinux-mime-defaults</component>
          <version>unstable</version>
          <rep_platform>x86_64</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P5</priority>
          <bug_severity>major</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ajrat Makhmutov">rauty</reporter>
          <assigned_to name="Ajrat Makhmutov">rauty</assigned_to>
          <cc>rauty</cc>
    
    <cc>viy</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>299656</commentid>
    <comment_count>0</comment_count>
    <who name="Ajrat Makhmutov">rauty</who>
    <bug_when>2026-09-20 19:36:19 +0300</bug_when>
    <thetext>altlinux-mime-defaults-0.444-alt1.

/usr/share/applications/KDE-mimeapps.list содержит [Added Associations]. Спецификация mime-apps 1.0.1 разрешает эту секцию только в файлах с именем ровно mimeapps.list; desktop-specific файл может задавать лишь приложение по умолчанию:

https://specifications.freedesktop.org/mime-apps/latest/associations.html
https://specifications.freedesktop.org/mime-apps/latest/file.html

Воспроизведение:

1. Поставить calibre и abiword.
2. kbuildsycoca6 --noincremental, повторить несколько раз.
3. Параметры системы -&gt; Привязки файлов -&gt; docx.

Строка docx в KDE-mimeapps.list:

  application/vnd.openxmlformats-officedocument.wordprocessingml.document=writer.desktop;LibreOffice-writer.desktop;libreoffice-writer.desktop;kf5-org.kde.calligrawords.desktop;kf5-okularApplication_docx_calligra.desktop;kf5-org.kde.calligragemini.desktop;focuswriter.desktop;calibre-ebook-viewer.desktop;

Первые два имени исторические (OpenOffice.org и старая упаковка LibreOffice), таких .desktop в репозитории нет. Первый установленный в списке — libreoffice-writer.desktop, последний — calibre-ebook-viewer.desktop.

Ожидается: libreoffice-writer.desktop первым, calibre в хвосте.
Фактически: победитель меняется от пересборки к пересборке.

Alt Education 11.2, Plasma 6, libkf6service-6.28.0-alt1, 20 прогонов:

  9  libreoffice-writer.desktop
  6  calibre-gui.desktop
  3  calibre-ebook-edit.desktop
  2  calibre-ebook-viewer.desktop

ALT Workstation K 11.4, Plasma 6, libkf6service-6.26.0-alt1, 20 прогонов:

  6  libreoffice-writer.desktop
  6  calibre-ebook-viewer.desktop
  5  calibre-ebook-edit.desktop
  3  calibre-gui.desktop

calibre-gui.desktop и calibre-ebook-edit.desktop в строке не упомянуты вообще, но выигрывают.

То же с odt (уезжает в AbiWord) и msword (чередуется LibreOffice и AbiWord). rtf неизменно достаётся KWrite. На Workstation K восемь прогонов подряд по этим четырём типам дали восемь разных комбинаций.

С QT_HASH_SEED=0 разброс пропадает: на обоих стендах во всех прогонах выигрывает libreoffice-writer.

Что дело именно в секции, проверил отдельно. Сам KDE-mimeapps.list на стендах не читается — имя с большими буквами, это чинит коммит в kf6-kservice:

https://git.altlinux.org/gitoskop/#/gears/k/kf6-kservice.git/-/commit/dc0ed11d31a859c2327a998bd94f1e24096a041e

Поэтому подставил файл того же вида: /usr/share/applications/kde-mimeapps.list от plasma-desktop. Это тоже $desktop-mimeapps.list, то есть тот же код разбора, который после того коммита достанется и нашему файлу. Дописал туда строку docx из наших данных:

  в [Added Associations] — победитель по-прежнему скачет;
  в [Default Applications] — libreoffice-writer в каждом прогоне.

Что нужно. Отдавать KDE-данные секцией [Default Applications]. Наши данные — это и есть выбор приложения по умолчанию, а другой секции в desktop-specific файле быть не может. Значение там не одно приложение, а список: перебирается по порядку до первого установленного. Так что существующие строки переносятся без изменений. Порядок не теряется:

https://specifications.freedesktop.org/mime-apps/latest/default.html

Проверено по 10 и 8 пересборок ksycoca: docx, odt, doc и rtf уходят в LibreOffice Writer.

Тот же корень, что у 60221.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>300035</commentid>
    <comment_count>1</comment_count>
    <who name="Repository Robot">repository-robot</who>
    <bug_when>2026-09-24 11:53:15 +0300</bug_when>
    <thetext>altlinux-mime-defaults-0.444.1-alt1 -&gt; sisyphus:

Wed Sep 23 2026 Ajrat Makhmutov &lt;rauty@altlinux&gt; 0.444.1-alt1
- Emit KDE-mimeapps.list as [Default Applications], the only group
  a desktop-specific file may carry, so the handler is chosen by us
  and not by KDE&apos;s nondeterministic offer order (Closes: 60635).</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>