This is for the kikrstone release only as I'm currently working on it.

I have switched from debs to ipks as from what I have read they have the 
abbility to support this ACLs and xattrs.
There was already a commented part of the code in libopkg for supporting them.

Regarding seeing some xattrs I do not know.

Hmmm it fixes 9858 as the ACLs are preserved in package and packages-split 
directories. The additional issue
is with packages itself.

I think that we could add here some verification what packages we are creating 
but I haven't investigated it.
Maybe somebody of you have any ideas?

BR,
Piotr
________________________________
Od: Richard Purdie <[email protected]>
Wysłane: poniedziałek, 3 kwietnia 2023 12:55
Do: Piotr Łobacz <[email protected]>; 
[email protected] 
<[email protected]>
Temat: Re: [OE-core] [PATCH] package.bbclase: Add ACLs and xattrs to 
perform_packagecopy

On Mon, 2023-04-03 at 12:42 +0200, Piotr Łobacz wrote:
> This is necessary in order to preserve all the extended attributes
> set in do_install also in PKGD directory, otherwise they are
> dropped and not stored in created package(s).
>
> For the momemnt it is only supported by OPKG package manager
> as it has support for libarchive and tar implementations, which
> supports ACLs and xattrs.
>
> Fixes: [YOCTO #9858]
>
> Signed-off-by: Piotr Łobacz <[email protected]>
> ---
>  meta/classes/package.bbclass | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass
> index 2950218145..b0334d9190 100644
> --- a/meta/classes/package.bbclass
> +++ b/meta/classes/package.bbclass
> @@ -863,8 +863,8 @@ python perform_packagecopy () {
>
>      # Start by package population by taking a copy of the installed
>      # files to operate on
> -    # Preserve sparse files and hard links
> -    cmd = 'tar --exclude=./sysroot-only -cf - -C %s -p -S . | tar -xf - -C 
> %s' % (dest, dvar)
> +    # Preserve sparse files, hard links, ACLs and extended attributes
> +    cmd = 'tar --acls --xattrs --exclude=./sysroot-only -cf - -C %s -p -S . 
> | tar --acls --xattrs -xf - -C %s' % (dest, dvar)
>      subprocess.check_output(cmd, shell=True, stderr=subprocess.STDOUT)
>
>      # replace RPATHs for the nativesdk binaries, to make them relocatable

This patch looks to be against an older release as much of the
package.bbclass code is now in package.py. I'd definitely be interested
in this incremental improvement to the support of xattrs.

I also wondered if it causes any issues with existing recipes? I'm not
sure if any set xattrs which we'd now suddenly "see"?

I'm not sure we can claim it entirely fixes #9858 since it sounds like
it works for opkg but not deb or rpm packages? It is still great to
see the progress though!

The final question I had was around testing - should we add some
automated tests for this to ensure it doesn't regress again?

Cheers,

Richard
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#179623): 
https://lists.openembedded.org/g/openembedded-core/message/179623
Mute This Topic: https://lists.openembedded.org/mt/98032644/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to