Closed amouat closed 10 months ago
This used to work in the past. Maybe this is due to our DirFS?
I confirmed this is a problem. I will investigate soon.
I have a few observations of what seems to be causing this
com.docker.grpcfuse.ownership
which is set to values such as {"UID":-1,"GID":-1,"mode":755}
. This can be read to correct the issues. Doing this properly may require wrapping DirFS in some interlocutor that would read that instead of the UID/GID.The combination of these issues indicates that all packages from melange will have all files owned by root. Removing the override in 1) results in the docker runner, at least on macOS arm64 having the username and UID/GID of the user building the package due to 3)
2 Would be a side issue which is probably a good idea to fix, probably by passing the environment directory as an extra parameter to the tarball writer so it can successfully read the etc/passwds
for UIDS
This appears to still be a problem.
Resolved
When using
chown
or similar in melange, I would expect the changes to make it into the tar file, but this doesn't seem to be the case.For example, with this melange file:
I get the following results:
But I expected
/etc/file
and/etc/test/file
to be owned bytest
.The owner is
test
in the debug output from melange.