ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: Evgeny Sinelnikov <sin@altlinux.org>
To: ALT Linux Team development discussions <devel@lists.altlinux.org>
Subject: Re: [devel] [#348147] DONE (try 6) systemd.git=255.6-alt1 systemd-boot-trigger.git=1.1-alt1
Date: Sat, 25 May 2024 05:31:14 +0400
Message-ID: <CAK42-Gq5uc9W=1SBmNMACHWNLb3PdZbaf+w8TwSqeqUiFOYRkQ@mail.gmail.com> (raw)
In-Reply-To: <CAK42-GpL3udyfD5096LzZps1268PveN5vqUgV3muiuv6iuH4KQ@mail.gmail.com>

сб, 25 мая 2024 г. в 02:21, Evgeny Sinelnikov <sin@altlinux.org>:
>
> Доброй ночи.
>
> пт, 24 мая 2024 г. в 20:49, Yuri Sedunov <aris@altlinux.org>:
> >
> > В Пт, 24/05/2024 в 16:53 +0300, Alexey Shabalin пишет:
> > > пт, 24 мая 2024 г. в 13:57, Anton Farygin <rider@basealt.ru>:
> > > >
> > > > On 24.05.2024 11:52, Dmitry V. Levin wrote:
> > > > > On Thu, May 23, 2024 at 11:51:13AM +0000, Girar pender (shaba)
> > > > > wrote:
> > > > > > https://git.altlinux.org/tasks/archive/done/_339/348147/logs/events.6.3.log
> > > > > > 2024-May-23 11:09:14 :: task #348147 for sisyphus resumed by
> > > > > > shaba:
> > > > > > #100 removed
> > > > > > #140 build 255.6-alt1 from /people/shaba/packages/systemd.git
> > > > > > fetched at 2024-May-23 07:42:21
> > > > > После того, как этот пакет попал в Сизиф, сломалась сборка около
> > > > > сотни
> > > > > пакетов, в которых есть файлы для systemd или udev.
> > > > >
> > > > Да, я тоже заметил.
> > > >
> > > > Надеюсь исправление тоже надо делать только в одном месте.
> > >
> > > Этого следовало ожидать. Значения в pkgconfig(systemd) изменились,
> > > эти пакеты заглядывают в него что бы узнать куда устанавливать файлы.
> > > В задании #349068
> >
> > id=349068 locked=no shared=no fail_early=yes test_only=no repo=sisyphus
> > owner=shaba state=EPERM
> >
> > И чего это никто не спешит одобрить и запустить это задание?
> >
> > >  подготовлен rpm-build в котором макросы
> > > синхронизированы с pkgconfig(systemd).
> > > Прошу пропустить задание.
> > > Не уверен, что все 100% исправит, но большую часть точно.
> > >
> >
>
> Потенциально, для некоторых пакетов это исправление не спасает.
>
> Например, если в этих пакетах /lib/tmpfiles.d прописан явно. Проверил
> на примере freeipa (на примере rpm не подтвердилось).
[...]
>
> Или, например, если в этих пакетах /lib/udev/rules.d прописан явно.
> Проверил на примере mdadm, fwupd и spice-vdagent .
[...]

В общем, главный просчет состоит в том, что %buildroot не повторяет
usrmerge корневой директории.

$ find / -maxdepth 1 | while read p; do [ -L "$p" ] || continue ; echo
-n "$p -> "; readlink -f $p; done
/lib -> /usr/lib
/bin -> /usr/bin
/sbin -> /usr/sbin
/lib64 -> /usr/lib64
/libx32 -> /usr/libx32

Во время сборки никто её в %buildroot не повторяет. Да и симлинки там
довольно проблематично обрабатывать:
--- a/.gear/freeipa.spec
+++ b/.gear/freeipa.spec
@@ -566,6 +565,8 @@
%make_build

%install
+mkdir -p %buildroot/usr/lib
+ln -s usr/lib %buildroot/lib
%makeinstall_std

%if_without only_client
...
Processing files: freeipa-server-4.11.1-alt4
error: File path component must be directory
(/usr/src/tmp/freeipa-buildroot/lib):
/usr/src/tmp/freeipa-buildroot/lib/systemd/system/ipa.service
...
$ ls -l ~/hasher/chroot/usr/src/tmp/freeipa-buildroot/lib
lrwxrwxrwx 1 sin_b sin_b 7 мая 25 04:41
/home/sin/hasher/chroot/usr/src/tmp/freeipa-buildroot/lib -> usr/lib
$ ls -l ~/hasher/chroot/usr/src/tmp/freeipa-buildroot/usr/lib/systemd/system/ipa.service
-rw-r--r-- 1 sin_b sin_b 294 мая 25 04:41
/home/sin/hasher/chroot/usr/src/tmp/freeipa-buildroot/usr/lib/systemd/system/ipa.service

Не пострадают лишь те пакеты, которые не используют pkg-config и не
рассчитывают на то, что между возвращаемыми именами каталогов от
pkg-config и макросами в /usr/lib/rpm/platform/$(arch)-linux/macros
имеются расхождения:
- https://git.altlinux.org/tasks/349068/gears/100/git?p=git;a=commitdiff;h=a3c3f9554099a2bee37709448f85963c1cf6d5f1

$ pkg-config --define-variable=prefix=/usr
--variable=systemdsystemunitdir systemd
/lib/systemd/system
$ sudo chroot ~/hasher/chroot pkg-config --define-variable=prefix=/usr
--variable=systemdsystemunitdir systemd
/usr/lib/systemd/system

$ rpm --eval '%_unitdir'
/lib/systemd/system
$ sudo chroot ~/hasher/chroot rpm --eval '%_unitdir'
/lib/systemd/system

$ rpm -qf /usr/share/pkgconfig/systemd.pc
libsystemd-devel-254.10-alt2.x86_64
$ sudo chroot ~/hasher/chroot rpm -qf /usr/share/pkgconfig/systemd.pc
libsystemd-devel-255.6-alt1.x86_64

Если не дожидаться исправления в rpm-build вариант - сделать во всех
спеках сломанных пакетов временный хак, как в systemd:

# usr merged path
%define _binfmtdir %_prefix/lib/binfmt.d
%define _env_dir %_prefix/lib/environment.d
%define _journal_catalogdir %_prefix/lib/systemd/catalog
%define _modprobedir %_prefix/lib/modprobe.d
%define _modules_loaddir %_prefix/lib/modules-load.d
%define _presetdir %_prefix/lib/systemd/system-preset
%define _user_presetdir %_prefix/lib/systemd/user-preset
%define _sysctldir %_prefix/lib/sysctl.d
%define _sysusersdir %_prefix/lib/sysusers.d
%define _systemd_dir %_prefix/lib/systemd
%define _tmpfilesdir %_prefix/lib/tmpfiles.d
%define _unitdir %_prefix/lib/systemd/system
%define _user_unitdir %_prefix/lib/systemd/user
%define _udev_hwdbdir %_prefix/lib/udev/hwdb.d
%define _udev_rulesdir %_prefix/lib/udev/rules.d
%define _gen_dir %_prefix/lib/systemd/system-generators
%define _user_gen_dir %_prefix/lib/systemd/user-generators
%define _env_gen_dir %_prefix/lib/systemd/system-environment-generators
%define _user_env_gen_dir %_prefix/lib/systemd/user-environment-generators

И поправить "ручные" строки вида /lib/udev/rules.d на %_udev_rulesdir
Но это всё та же проблема исправления множества пакетов. А, кроме
того, у множества пакетов, наоборот, в скриптах сборки всё прибито
гвоздями...

В общем... Я думаю это проблема, конечно.




-- 
Sin (Sinelnikov Evgeny)

  reply	other threads:[~2024-05-25  1:31 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-05-24  8:52           ` Dmitry V. Levin
2024-05-24 10:57             ` Anton Farygin
2024-05-24 13:53               ` Alexey Shabalin
2024-05-24 16:49                 ` Yuri Sedunov
2024-05-24 22:21                   ` Evgeny Sinelnikov
2024-05-25  1:31                     ` Evgeny Sinelnikov [this message]
2024-05-25  0:40                   ` [devel] mismatched systemd.pc also present in p11 (was: [#348147] DONE (try 6) systemd.git=255.6-alt1 systemd-boot-trigger.git=1.1-alt1) Arseny Maslennikov
2024-05-25  0:49                     ` Aleksey Novodvorsky
2024-05-25  2:11                         ` Aleksey Novodvorsky
2024-05-25  3:50                           ` Evgeny Sinelnikov
2024-05-25 12:37                             ` Arseny Maslennikov
2024-05-25 14:56                                 ` Aleksey Novodvorsky
2024-05-25 15:31                                 ` Arseny Maslennikov
2024-05-25 16:34                                     ` Yuri Sedunov
2024-05-25 17:19                                     ` Arseny Maslennikov
2024-05-25 18:39                                       ` Aleksey Novodvorsky
2024-05-25 19:27                                         ` Yuri Sedunov
2024-05-25 21:52                                         ` Evgeny Sinelnikov
2024-05-27 12:57                                       ` Alexey Shabalin
2024-05-27 15:26                                         ` Arseny Maslennikov
2024-05-27 15:47                                           ` Alexey Shabalin
2024-05-27 16:12                                             ` [devel] cramming incompatible systemd updates into Sisyphus Dmitry V. Levin
2024-05-27 16:31                                               ` Alexey Shabalin
2024-05-27 16:52                                                 ` Alexey Shabalin
2024-05-27 17:09                                                 ` Dmitry V. Levin
2024-05-27 17:24                                                   ` Alexey Shabalin
2024-05-27 16:48                                         ` [devel] setting %_unitdir and etc. in Sisyphus Arseny Maslennikov
2024-05-27 16:58                                           ` Alexey Shabalin
2024-05-27 17:11                                             ` Dmitry V. Levin
2024-05-25 22:36                               ` [devel] mismatched systemd.pc also present in p11 (was: [#348147] DONE systemd.git=255.6-alt1 ...) Arseny Maslennikov
2024-05-25 23:19                                 ` Evgeny Sinelnikov
2024-05-26  3:21                                   ` Aleksey Novodvorsky
2024-05-26 16:16                                     ` [devel] Сборочные ресурсы для p11 Evgeny Sinelnikov
2024-05-26 21:40                                 ` [devel] mismatched systemd.pc also present in p11 Vitaly Lipatov
2024-05-26 21:50                                   ` Aleksey Novodvorsky
2024-05-26 22:33                                   ` Arseny Maslennikov
2024-05-28  4:54                       ` Anton Farygin
2024-05-28  5:18                         ` Aleksey Novodvorsky
2024-05-28  6:37                           ` Anton Farygin
2024-05-28  6:42                         ` Arseny Maslennikov
2024-05-28  6:56                           ` Anton Farygin
2024-05-28  9:37                               ` Anton Farygin
2024-05-28 10:05                                 ` Dmitry V. Levin
2024-05-28 10:17                                   ` [devel] Icarus Ivan A. Melnikov
2024-05-28 11:03                                   ` [devel] mismatched systemd.pc also present in p11 Anton Farygin
2024-05-28  7:31                           ` Oleg Solovyov
2024-05-28  7:35                             ` Anton Farygin
2024-05-25  3:32                 ` [devel] [#348147] DONE (try 6) systemd.git=255.6-alt1 systemd-boot-trigger.git=1.1-alt1 Evgeny Sinelnikov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAK42-Gq5uc9W=1SBmNMACHWNLb3PdZbaf+w8TwSqeqUiFOYRkQ@mail.gmail.com' \
    --to=sin@altlinux.org \
    --cc=devel@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

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