* [devel] Внезапные post-install unowned files
@ 2024-05-14 11:30 Sergey Afonin
2024-05-14 11:45 ` Arseny Maslennikov
0 siblings, 1 reply; 6+ messages in thread
From: Sergey Afonin @ 2024-05-14 11:30 UTC (permalink / raw)
To: ALT Devel discussion list
Приветствую.
Это последствия usrmerge?
https://git.altlinux.org/tasks/archive/done/_339/347639/logs/events.1.2.log
x86_64: bird=2.15.1-alt1 post-install unowned files:
/usr/lib/systemd/system/bird.service
/usr/lib/tmpfiles.d/bird.conf
В спеке эти файлы описаны, в
https://git.altlinux.org/tasks/archive/done/_316/324357/logs/events.3.1.log
всё хорошо было.
--
С уважением, Сергей Афонин.
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [devel] Внезапные post-install unowned files
2024-05-14 11:30 [devel] Внезапные post-install unowned files Sergey Afonin
@ 2024-05-14 11:45 ` Arseny Maslennikov
2024-05-14 11:48 ` Arseny Maslennikov
2024-09-26 7:48 ` Sergey Afonin
0 siblings, 2 replies; 6+ messages in thread
From: Arseny Maslennikov @ 2024-05-14 11:45 UTC (permalink / raw)
To: ALT Linux Team development discussions
[-- Attachment #1: Type: text/plain, Size: 1717 bytes --]
On Tue, May 14, 2024 at 03:30:29PM +0400, Sergey Afonin wrote:
> Приветствую.
>
> Это последствия usrmerge?
>
> https://git.altlinux.org/tasks/archive/done/_339/347639/logs/events.1.2.log
>
> x86_64: bird=2.15.1-alt1 post-install unowned files:
> /usr/lib/systemd/system/bird.service
> /usr/lib/tmpfiles.d/bird.conf
>
> В спеке эти файлы описаны, в
> https://git.altlinux.org/tasks/archive/done/_316/324357/logs/events.3.1.log
> всё хорошо было.
Эти файлы в post-install unowned files указаны по ошибке, у меня даже
есть вариант патча на gb-remote-install-check.
Если коротко: до и после установки пакета в чрут запускают `find /*` и
кладут вывод соотв. в 2 файла, содержимое которых потом подлежит сравнению.
Так вот для всех этих пар /x и /usr/x:
— `find /*` показывает только /usr/x,
— в выводе `rpm -qal` обычно только /x (есть исключения).
Путь /usr/x в таком случае считается unprovided и в итоге оказывается в
списке unowned files.
После того, как мы поменяем макросы _tmpfilesdir, _unitdir и т. п. и во
всех этих пакетах файлы лягут под /usr, проблема пропадёт сама собой.
Правда, есть ядра и ядерные модули, где этот шаг, наверное, произойдёт
значительно позже.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [devel] Внезапные post-install unowned files
2024-05-14 11:45 ` Arseny Maslennikov
@ 2024-05-14 11:48 ` Arseny Maslennikov
2024-07-11 11:22 ` Arseny Maslennikov
2024-09-26 7:48 ` Sergey Afonin
1 sibling, 1 reply; 6+ messages in thread
From: Arseny Maslennikov @ 2024-05-14 11:48 UTC (permalink / raw)
To: ALT Linux Team development discussions
[-- Attachment #1: Type: text/plain, Size: 2533 bytes --]
On Tue, May 14, 2024 at 02:45:14PM +0300, Arseny Maslennikov wrote:
> On Tue, May 14, 2024 at 03:30:29PM +0400, Sergey Afonin wrote:
> > Приветствую.
> >
> > Это последствия usrmerge?
> >
> > https://git.altlinux.org/tasks/archive/done/_339/347639/logs/events.1.2.log
> >
> > x86_64: bird=2.15.1-alt1 post-install unowned files:
> > /usr/lib/systemd/system/bird.service
> > /usr/lib/tmpfiles.d/bird.conf
> >
> > В спеке эти файлы описаны, в
> > https://git.altlinux.org/tasks/archive/done/_316/324357/logs/events.3.1.log
> > всё хорошо было.
>
> Эти файлы в post-install unowned files указаны по ошибке, у меня даже
> есть вариант патча на gb-remote-install-check.
From: Arseny Maslennikov <arseny@altlinux.org>
Date: Wed, 1 May 2024 23:45:47 +0300
Message-ID: <20240501204548.25091-1-arseny@altlinux.org>
X-Mailer: git-send-email 2.42.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: [RFC PATCH girar.git] remote-check-install: temporarily fix unowned files reports
On merged-usr systems for each file path accessible under both /lib and
/usr/lib, etc. `find /*` automatically optimizes away the /lib one. Many
rpm packages contain files under /lib, though, and are reported by
rpmquery as such, so the real file under /usr/lib is considered
"unprovided".
For each path in the output of `(rpmquery -al; rpmquery -a --provides)`
under a legacy directory alias, add a matching path under the prefix.
The transformation will look like this:
% sed 's!^/\(bin\|lib\|lib32\|lib64\|libx32\|sbin\).\+!/usr&\n&!' <<____
/sbin/chroot
/bin/bash
____
/usr/sbin/chroot
/sbin/chroot
/usr/bin/bash
/bin/bash
This way the new files under the prefix can never show up.
---
gb/remote/gb-remote-check-install | 3 +++
1 file changed, 3 insertions(+)
diff --git a/gb/remote/gb-remote-check-install b/gb/remote/gb-remote-check-install
index 5cac126..ac09c4f 100755
--- a/gb/remote/gb-remote-check-install
+++ b/gb/remote/gb-remote-check-install
@@ -189,6 +189,9 @@ sort -u -o instprov{,}
hsh-run --rooter -- \
rpmquery -al >instfiles 2>>warnings
sed '/^(contains no files)$/d' -i warnings
+# Temporary hack: for each entry in legacy aliased dirs,
+# add its real location.
+sed -i 's!^/\(bin\|lib\|lib32\|lib64\|libx32\|sbin\).\+!/usr&\n&!' instfiles
sort -u -o instfiles{,}
sort -u instprov instfiles >instlist
--
2.42.1
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [devel] Внезапные post-install unowned files
2024-05-14 11:48 ` Arseny Maslennikov
@ 2024-07-11 11:22 ` Arseny Maslennikov
0 siblings, 0 replies; 6+ messages in thread
From: Arseny Maslennikov @ 2024-07-11 11:22 UTC (permalink / raw)
To: ALT Linux Team development discussions
[-- Attachment #1: Type: text/plain, Size: 2981 bytes --]
On Tue, May 14, 2024 at 02:48:53PM +0300, Arseny Maslennikov wrote:
> Date: Wed, 1 May 2024 23:45:47 +0300
> Message-ID: <20240501204548.25091-1-arseny@altlinux.org>
> Subject: [RFC PATCH girar.git] remote-check-install: temporarily fix unowned files reports
>
> On merged-usr systems for each file path accessible under both /lib and
> /usr/lib, etc. `find /*` automatically optimizes away the /lib one. Many
> rpm packages contain files under /lib, though, and are reported by
> rpmquery as such, so the real file under /usr/lib is considered
> "unprovided".
>
> For each path in the output of `(rpmquery -al; rpmquery -a --provides)`
> under a legacy directory alias, add a matching path under the prefix.
> The transformation will look like this:
> % sed 's!^/\(bin\|lib\|lib32\|lib64\|libx32\|sbin\).\+!/usr&\n&!' <<____
> /sbin/chroot
> /bin/bash
> ____
> /usr/sbin/chroot
> /sbin/chroot
> /usr/bin/bash
> /bin/bash
>
> This way the new files under the prefix can never show up.
>
> ---
> gb/remote/gb-remote-check-install | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/gb/remote/gb-remote-check-install b/gb/remote/gb-remote-check-install
> index 5cac126..ac09c4f 100755
> --- a/gb/remote/gb-remote-check-install
> +++ b/gb/remote/gb-remote-check-install
> @@ -189,7 +189,10 @@ sort -u -o instprov{,}
> hsh-run --rooter -- \
> rpmquery -al >instfiles 2>>warnings
> sed '/^(contains no files)$/d' -i warnings
> +# Temporary hack: for each entry in legacy aliased dirs,
> +# add its real location.
> +sed -i 's!^/\(bin\|lib\|lib32\|lib64\|libx32\|sbin\).\+!/usr&\n&!' instfiles
> sort -u -o instfiles{,}
>
> sort -u instprov instfiles >instlist
> comm -23 new-files instlist >unprovided
> --
> 2.42.1
Для unmerged-usr репозиториев такое решение в теории тоже подходит,
потому что, как видно из текста gb-remote-check-install далее, список
post-install unowned files получается из файла `unprovided`, т. е. не
содержит файлов, которые не оказались там по окончании процитированного
выше фрагмента.
В таком репозитории, если /bin/x есть, а /usr/bin/x нет, второй путь не
попадёт в `new-files`, но начнёт попадать в `instlist`. Следовательно,
не попадёт в `unprovided` и не повлияет на результат.
Если же мы не хотим таких допущений при формировании `instlist`, то
можно и усложнить: либо детектить merged-usr окружение, либо перед
включением па́рного файла в `instlist` проверять его фактическое наличие,
либо ещё что-то.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [devel] Внезапные post-install unowned files
2024-05-14 11:45 ` Arseny Maslennikov
2024-05-14 11:48 ` Arseny Maslennikov
@ 2024-09-26 7:48 ` Sergey Afonin
2024-09-26 8:41 ` Anton Farygin
1 sibling, 1 reply; 6+ messages in thread
From: Sergey Afonin @ 2024-09-26 7:48 UTC (permalink / raw)
To: ALT Linux Team development discussions
On Tuesday 14 May 2024, Arseny Maslennikov wrote:
> После того, как мы поменяем макросы _tmpfilesdir, _unitdir и т.п. и во
> всех этих пакетах файлы лягут под /usr, проблема пропадёт сама собой.
В Сизифе вроде пропала. А до p11 почему не доехало? Или в процессе?
--
С уважением, Сергей Афонин.
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [devel] Внезапные post-install unowned files
2024-09-26 7:48 ` Sergey Afonin
@ 2024-09-26 8:41 ` Anton Farygin
0 siblings, 0 replies; 6+ messages in thread
From: Anton Farygin @ 2024-09-26 8:41 UTC (permalink / raw)
To: devel
On 26.09.2024 10:48, Sergey Afonin wrote:
> On Tuesday 14 May 2024, Arseny Maslennikov wrote:
>
>> После того, как мы поменяем макросы _tmpfilesdir, _unitdir и т.п. и во
>> всех этих пакетах файлы лягут под /usr, проблема пропадёт сама собой.
>
> В Сизифе вроде пропала. А до p11 почему не доехало? Или в процессе?
>
https://packages.altlinux.org/ru/tasks/356646/
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2024-09-26 8:41 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-05-14 11:30 [devel] Внезапные post-install unowned files Sergey Afonin
2024-05-14 11:45 ` Arseny Maslennikov
2024-05-14 11:48 ` Arseny Maslennikov
2024-07-11 11:22 ` Arseny Maslennikov
2024-09-26 7:48 ` Sergey Afonin
2024-09-26 8:41 ` Anton Farygin
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