Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 126538 - ut2004 file ownership cleaning
Summary: ut2004 file ownership cleaning
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Games (show other bugs)
Hardware: All Linux
: High enhancement (vote)
Assignee: Gentoo Games
URL:
Whiteboard:
Keywords: EBUILD
Depends on:
Blocks:
 
Reported: 2006-03-17 07:38 UTC by Paul Bredbury
Modified: 2006-03-17 13:17 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
ut2004-3369-r4.ebuild (ut2004-3369-r4.ebuild,4.46 KB, text/plain)
2006-03-17 07:39 UTC, Paul Bredbury
Details
ut2004-data-3186-r2.ebuild (ut2004-data-3186-r2.ebuild,5.67 KB, text/plain)
2006-03-17 07:40 UTC, Paul Bredbury
Details
ut2004-bonuspack-mega-1-r1.ebuild (ut2004-bonuspack-mega-1-r1.ebuild,2.23 KB, text/plain)
2006-03-17 07:40 UTC, Paul Bredbury
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Paul Bredbury 2006-03-17 07:38:06 UTC
Hi, I've just upgraded ut2004 with portage-2.1_pre6-r3, and the automatic installation order from "emerge -Dv ut2004" was:

ut2004-data-3186-r1
ut2004-bonuspack-mega-1
ut2004-bonuspack-ece-1-r1
ut2004-3369-r3

The bonuspack-mega's pkg_postinst() overwrote /opt/ut2004/System/{Manifest.in{i,t},Packages.md5} with never versions than the ones that belong to ut2004, as intended.

What surprises me is that, even with FEATURES="collision-protect", portage was happy to *overwrite* my {Manifest.in{i,t},Packages.md5} files with the *old* versions belonging to ut2004. It emerged ut2004 last, because ut2004-bonuspack-mega's DEPEND was satisfied by the originally-installed ut2004 version. 

The clean fix, since ut2004 now RDEPENDs on ut2004-bonuspack-mega anyway, is to move the ownership of those System files from ut2004 to ut2004-bonuspack-mega.

While I'm at it, given that the installation testing takes a while, I've included the fixes for bug #126382 and bug #123202. The ownership of /opt/ut2004/System/{openal.so,libSDL-1.2.so.0} changes from ut2004-data to ut2004, and they become symlinks.

I went a bit mad with cleaning the use of quotes etc., so diffs would look messy. Below are the 3 new ebuilds required, which work fine for me.
Comment 1 Paul Bredbury 2006-03-17 07:39:18 UTC
Created attachment 82377 [details]
ut2004-3369-r4.ebuild
Comment 2 Paul Bredbury 2006-03-17 07:40:19 UTC
Created attachment 82379 [details]
ut2004-data-3186-r2.ebuild
Comment 3 Paul Bredbury 2006-03-17 07:40:52 UTC
Created attachment 82380 [details]
ut2004-bonuspack-mega-1-r1.ebuild
Comment 4 Chris Gianelloni (RETIRED) gentoo-dev 2006-03-17 11:51:25 UTC
(In reply to comment #0)
> What surprises me is that, even with FEATURES="collision-protect", portage was
> happy to *overwrite* my {Manifest.in{i,t},Packages.md5} files with the *old*
> versions belonging to ut2004. It emerged ut2004 last, because

That doesn't surprise me, at all, since pkg_postinst doesn't track files.  Anything that should be tracked by portage should be done in src_install.  Basically, since portage wasn't aware of the file's existence, it couldn't protect the collision.

I'm sure users are going to *love* us for giving them 2 ut2004-data revisions in less than a week, but you're correct that this really needs to be done.  I sincerely hope that Epic doesn't do another one of these fun "include a bunch of stuff we already released into a new tarball with new content" again and instead simply releases new content as a new tarball.
Comment 5 Paul Bredbury 2006-03-17 12:17:47 UTC
The next bonuspack will be easy-peasy, we're experts at using diffs now :)

It's just bad luck that the behemoth ut2004-data needs another bump.

I've checked that my 3 enclosed ebuilds produce the same files in /opt/ut2004 as in bug #116528, except for the 5 files I mentioned in /opt/ut2004/System (and their new backup files: *-Megapack and *-binary).

The users who get a performance boost by using their native audio drivers, might be happy at least :)
Comment 6 Chris Gianelloni (RETIRED) gentoo-dev 2006-03-17 13:17:41 UTC
I have added these to CVS with some slight modifications.  Unfortunately, upstream does not want us shipping anything using system libraries, as it makes it much harder for them to support, so I've commented those parts of the ebuilds out while leaving nice directions inside the ebuild on how to re-enable it.