ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] Shared Libs Policy: версия ABI до суффикса -qt6/-gtk4 в имени пакета
@ 2026-10-18  9:26 Vitaly Lipatov
  2026-10-18  9:55 ` Sergey Bolshakov
  2026-10-19 12:00 ` Sergey V Turchin
  0 siblings, 2 replies; 5+ messages in thread
From: Vitaly Lipatov @ 2026-10-18  9:26 UTC (permalink / raw)
  To: devel

Здравствуйте, давай обсудим место для прибавки soname.

Shared Libs Policy предписывает имя пакета libfoo%abiversion, а для 
имени,
оканчивающегося на цифру, — libfoo_%abiversion. Для библиотек с 
суффиксом
тулкита (-qt5, -qt6, -gtk3, -gtk4) это даёт имена вида libfoo-qt6_1, но 
на
практике в Sisyphus их называют кто как. Посмотрел пакеты с такими
библиотеками (имя пакета и soname по собранным rpm):

1. В конце через подчёркивание (буква политики), 10 пакетов:
    libaccounts-qt6_1        libaccounts-qt6.so.1
    libgio-qt6_0             libgio-qt6.so.0
    libgsettings-qt6_1       libgsettings-qt6.so.1
    libkddockwidgets-qt6_3   libkddockwidgets-qt6.so.3
    libkdsingleapplication-qt6_1.2  libkdsingleapplication-qt6.so.1.2
    libkdsoap-qt6_2, libkdsoap-server-qt6_2
    libmarblewidget-qt6_28   libmarblewidget-qt6.so.28
    libquazip1-qt5_1.0.0     libquazip1-qt5.so.1.0.0
    libsignon-qt6_1          libsignon-qt6.so.1

2. В конце слитно — читается как версия Qt:
    libaccounts-qt51         libaccounts-qt5.so.1
    libdbusmenu-qt52         libdbusmenu-qt5.so.2
    libtelepathy-qt50        libtelepathy-qt5.so.0

3. В конце через дефис:
    libudisks2-qt6-1         libudisks2-qt6.so.1

4. До суффикса:
    libpoppler1-qt5          libpoppler-qt5.so.1
    libpoppler3-qt6          libpoppler-qt6.so.3
    (и libpoppler8-glib      libpoppler-glib.so.8)

5. Без версии вовсе — около двадцати пакетов, например libqca-qt6
    (so.2), libfm-qt6 (so.17), libportal-qt6 (so.1), libqtspell-qt6,
    libudisks2-qt5 (so.5), libcanberra-gtk3, libnma-gtk4, libportal-gtk4.
    При смене soname им всё равно придётся выбирать одну из схем выше.

Предлагаю для библиотек с суффиксом тулкита ставить версию ABI до
суффикса, как, например, сделано в poppler:

    libfoo-qt6.so.N   ->  libfooN-qt6
    libfoo-gtk4.so.N  ->  libfooN-gtk4

Почему так:
- суффикс -qt6/-gtk4 обозначает вариант сборки, а не часть версии; имя
   читается как «библиотека foo ABI N для Qt6», как libpoppler3-qt6;
- исчезает неоднозначность libaccounts-qt51 (Qt 5.1?) и некрасивое
   подчёркивание, нужное только из-за цифры в имени тулкита;
- варианты одной библиотеки для разных тулкитов получают одинаковую
   версионную часть: libaccounts1-qt5 и libaccounts1-qt6.

Отдельный случай — когда upstream вписывает major-версию в имя файла.
QuaZip называет библиотеку quazip${MAJOR}-qt${QT} с SOVERSION
MAJOR.MINOR, отсюда libquazip1-qt6.so.1.7: единица в имени — та же
major, что в 1.7. По предложенной схеме версия ABI встаёт на её место:
libquazip1.7-qt6 (а не libquazip1-qt6_1.7 с повтором).

Существующие пакеты переименовывать не предлагаю — только новые и при
очередной смене soname (с Provides/Obsoletes старого имени, как обычно).


--
Vitaly Lipatov


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [devel] Shared Libs Policy: версия ABI до суффикса -qt6/-gtk4 в имени пакета
  2026-10-18  9:26 [devel] Shared Libs Policy: версия ABI до суффикса -qt6/-gtk4 в имени пакета Vitaly Lipatov
@ 2026-10-18  9:55 ` Sergey Bolshakov
  2026-10-18 10:21   ` Anton Farygin
  2026-10-19 12:00 ` Sergey V Turchin
  1 sibling, 1 reply; 5+ messages in thread
From: Sergey Bolshakov @ 2026-10-18  9:55 UTC (permalink / raw)
  To: ALT Linux Team development discussions

>>>>> "Vitaly" == Vitaly Lipatov <lav@altlinux.ru> writes:

 > Здравствуйте, давай обсудим место для прибавки soname.
 > Shared Libs Policy предписывает имя пакета libfoo%abiversion, а для имени,
 > оканчивающегося на цифру, — libfoo_%abiversion. Для библиотек с суффиксом
 > тулкита (-qt5, -qt6, -gtk3, -gtk4) это даёт имена вида libfoo-qt6_1, но на
 > практике в Sisyphus их называют кто как. Посмотрел пакеты с такими
 > библиотеками (имя пакета и soname по собранным rpm):

Предлагаю пункт "Название пакета: `libfoo%abiversion``" считать
рекомендацией.
Действительно, нам важно лишь то, что варианты библиотеки с
различающимися abiversion находятся в различно именованных пакетах,
i.e. имена пакетов libfoo_bigger, libfoo_better и libfoo_uncut точно
так же пригодны в этой роли.
Поэтому, давайте-ка мы не будем загоняться и выдумывать себе проблемы на
ровном месте.

[rest skipped]

-- 

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [devel] Shared Libs Policy: версия ABI до суффикса -qt6/-gtk4 в имени пакета
  2026-10-18  9:55 ` Sergey Bolshakov
@ 2026-10-18 10:21   ` Anton Farygin
  2026-10-19 12:01     ` [devel] " Sergey V Turchin
  0 siblings, 1 reply; 5+ messages in thread
From: Anton Farygin @ 2026-10-18 10:21 UTC (permalink / raw)
  To: devel

On 10/18/26 12:55, Sergey Bolshakov wrote:
>>>>>> "Vitaly" == Vitaly Lipatov <lav@altlinux.ru> writes:
>   > Здравствуйте, давай обсудим место для прибавки soname.
>   > Shared Libs Policy предписывает имя пакета libfoo%abiversion, а для имени,
>   > оканчивающегося на цифру, — libfoo_%abiversion. Для библиотек с суффиксом
>   > тулкита (-qt5, -qt6, -gtk3, -gtk4) это даёт имена вида libfoo-qt6_1, но на
>   > практике в Sisyphus их называют кто как. Посмотрел пакеты с такими
>   > библиотеками (имя пакета и soname по собранным rpm):
>
> Предлагаю пункт "Название пакета: `libfoo%abiversion``" считать
> рекомендацией.
> Действительно, нам важно лишь то, что варианты библиотеки с
> различающимися abiversion находятся в различно именованных пакетах,
> i.e. имена пакетов libfoo_bigger, libfoo_better и libfoo_uncut точно
> так же пригодны в этой роли.
> Поэтому, давайте-ка мы не будем загоняться и выдумывать себе проблемы на
> ровном месте.
>
> [rest skipped]
>
В данном случае и ты и прав и не прав одновременно. С одной стороны да, 
неважно как будет называться, главное избежать конфликтов и обеспечить 
одновременную установку.

С другой стороны - точную спецификацию легче проверять в автоматическом 
режиме.




^ permalink raw reply	[flat|nested] 5+ messages in thread

* [devel]  Re:  Shared Libs Policy: версия ABI до суффикса -qt6/-gtk4 в имени пакета
  2026-10-18  9:26 [devel] Shared Libs Policy: версия ABI до суффикса -qt6/-gtk4 в имени пакета Vitaly Lipatov
  2026-10-18  9:55 ` Sergey Bolshakov
@ 2026-10-19 12:00 ` Sergey V Turchin
  1 sibling, 0 replies; 5+ messages in thread
From: Sergey V Turchin @ 2026-10-19 12:00 UTC (permalink / raw)
  To: ALT Linux Team development discussions

On Sunday, 18 October 2026 12:26:32 MSK Vitaly Lipatov wrote:

[...]
> Предлагаю для библиотек с суффиксом тулкита ставить версию ABI до
> суффикса, как, например, сделано в poppler:
> 
>     libfoo-qt6.so.N   ->  libfooN-qt6
>     libfoo-gtk4.so.N  ->  libfooN-gtk4
После долгих раздумий я понял, что это некорректно, т.к.
libpoppler10 и там же почему-то libpoppler3, который для -gtk5, как-то не в 
тему.

[...]

-- 
Regards, Sergey.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [devel]  Re:  Shared Libs Policy: версия ABI до суффикса -qt6/-gtk4 в имени пакета
  2026-10-18 10:21   ` Anton Farygin
@ 2026-10-19 12:01     ` Sergey V Turchin
  0 siblings, 0 replies; 5+ messages in thread
From: Sergey V Turchin @ 2026-10-19 12:01 UTC (permalink / raw)
  To: ALT Linux Team development discussions

On Sunday, 18 October 2026 13:21:22 MSK Anton Farygin wrote:

[...]
> главное избежать конфликтов и обеспечить
> одновременную установку.
В этом и есть суть. Остальное -- мелочи.

[...]

-- 
Regards, Sergey.

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2026-10-19 12:01 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-10-18  9:26 [devel] Shared Libs Policy: версия ABI до суффикса -qt6/-gtk4 в имени пакета Vitaly Lipatov
2026-10-18  9:55 ` Sergey Bolshakov
2026-10-18 10:21   ` Anton Farygin
2026-10-19 12:01     ` [devel] " Sergey V Turchin
2026-10-19 12:00 ` Sergey V Turchin

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git