[packages/poldek] skip /usr/lib/.build-id when processing obsoletes

Jan Palus atler at pld-linux.org
Tue Mar 16 13:39:17 CET 2021


On 16.03.2021 13:31, atler wrote:
> commit aba59b953581b330457d7e6f0ea3e1ab648f80a7
> Author: Jan Palus <atler at pld-linux.org>
> Date:   Tue Mar 16 13:28:50 2021 +0100
> 
>     skip /usr/lib/.build-id when processing obsoletes
>     
>     fixes major performance regression when changing (downgrade, obsolete)
>     package with build-id to one that doesn't
> 
>  poldek.spec                  |  2 ++
>  skip-buildid-obsoletes.patch | 11 +++++++++++
>  2 files changed, 13 insertions(+)
...
> diff --git a/skip-buildid-obsoletes.patch b/skip-buildid-obsoletes.patch
> new file mode 100644
> index 0000000..1b2e7c1
> --- /dev/null
> +++ b/skip-buildid-obsoletes.patch
> @@ -0,0 +1,11 @@
> +--- poldek-0.42.2/install3/obsoletes.c.orig	2020-01-25 22:59:59.000000000 +0100
> ++++ poldek-0.42.2/install3/obsoletes.c	2021-03-16 13:14:05.667576984 +0100
> +@@ -188,6 +188,8 @@
> +         "/usr/share/doc/*",
> +         "/usr/share/man/*.[0-9]",
> +         "/usr/src/examples/*",
> ++        "/usr/lib/.build-id",
> ++        "/usr/lib/.build-id/*",
> +         "*.desktop",
> +         "*.mo",
> +         "*.gz",

Note that it's just half of the solution, the other one is to fix
find-debuginfo.sh to exclude any dir ownership. Currently every binary
package built with rpm4 owns /usr/lib/.build-id and its subdirectories
while only symlinks should be owned. If someone is up for this please be
my guest.


More information about the pld-devel-en mailing list