Are you installing/building with the ebuild command and then merging with sudo or
something similar?
That may be one reason something like this is happening.

On 2/8/21 5:28 PM, François Bissey wrote:
Hi all,

I discovered an issue in a couple of packages for which sage-on-gentoo
provides ebuilds.
Some packages install data directly from a tar command. By that I mean
Makefile.am will a line like
cd $(DESTDIR)$(dbdir) && tar xf $(dist_db_DATA) && rm $(dist_db_DATA)

 From a real Makefile at
https://github.com/sagemath/p_group_cohomology/blob/master/present/Makefile.am

I looks innocuous until you realise it has some funny effects on ownership.
fbissey@moonloop ~ $ ll /usr/share/pGroupCohomology/
total 1.1M
drwxr-xr-x 270 root    root     12K Feb  3 21:55 .
drwxr-xr-x 319 root    root     12K Feb  3 21:55 ..
drwxr-xr-x   3 fbissey fbissey 4.0K Feb  9 10:46 64gp1
drwxr-xr-x   4 fbissey fbissey 4.0K Feb  9 10:46 64gp10
drwxr-xr-x   4 fbissey fbissey 4.0K Feb  9 10:46 64gp100
drwxr-xr-x   4 fbissey fbissey 4.0K Feb  9 10:46 64gp101
drwxr-xr-x   4 fbissey fbissey 4.0K Feb  9 10:46 64gp102

the files in the tarball are owned by user/group 1001:1001
and on my system it is my personal user.
sci-mathematics/singular and that may include the version in the main tree,
would have to check, install its documentation from a tarball as well
fbissey@moonloop ~ $ ll /usr/share/doc/singular-4.1.1_p2-r3/
total 216K
drwxr-xr-x    3 2345 uucp 4.0K Nov 10 10:49 .
drwxr-xr-x 1361 root root  64K Feb  9 10:39 ..
drwxr-xr-x    2 2345 uucp 128K Nov 10 10:49 html
-rw-r--r--    1 root root  497 Nov 10 10:48 README.bz2
-rw-r--r--    1 root root  517 Nov 10 10:48 README.md.bz2
-rw-r--r--    1 root root  585 Nov 10 10:48 README.pkg.bz2
fbissey@moonloop ~ $ ll /usr/share/doc/singular-4.1.1_p2-r3/html
total 30M
drwxr-xr-x 2 2345 uucp 128K Nov 10 10:49  .
drwxr-xr-x 3 2345 uucp 4.0K Nov 10 10:49  ..
-rwxr-xr-x 1 2345 uucp  915 Feb 14  2018  a_begin.gif
-rwxr-xr-x 1 2345 uucp  909 Feb 14  2018  a_begin_na.gif
-rwxr-xr-x 1 2345 uucp  927 Feb 14  2018  a_document.gif

I tried to use fowners inside the ebuild, but it only fixes file ownership,
folders are not touched. I tried to insert “—no-same-owner” in the call to tar
and that didn’t really help either. At best, I am expecting ownership to change
to portage:portage.

Has anyone dealt with something like this before? Apart from “recursively”
scripting install in the make file is there anything simple I could do?

Cheers,
François


Reply via email to