[arch-general] Groups and GIDs in PKGBUILDs
Paul Gideon Dann
pdgiddie at gmail.com
Thu May 31 04:26:04 EDT 2012
On Wednesday 30 May 2012 20:50:38 Martti Kühne wrote:
> Usually you will install to $pkgdir using install(1)'s -g in conjunction of
> the -m and, at your option, -D flags. Preservance of file metadata in that
> context is, as far as I understand given through makepkg's fakeroot
> environment.
I think it's a bit more complex than that because groups are stored in
archives by their GID, not their name.
If I'm using a non-standard group, e.g. "mygroup", the .install file will need
to create the "mygroup" group on install, and the system will give it the next
available GID.
In the binary package, once it's built, a file may have a GID corresponding to
"mygroup". If it just so happens that "mygroup" on the packager's computer
has a different GID to "mygroup" on the installer's computer, you'll end up
with files installed with an unrecognised GID, or (worse) mapped to a different
group entirely.
In my case, I'm working on a new AUR package for Foswiki, and need to install
files assigned to "http". Since this is a standard group (according to the
list on the Wiki), I know I can safely chown in the PKGBUILD, because the GID
for http will be the same on everyone's system.
I hope this makes the problem clearer.
Paul
More information about the arch-general
mailing list