Bug 116528 - UT2004 Megapack launched Request For ebuild
|
Bug#:
116528
|
Product: Gentoo Linux
|
Version: 2005.1
|
Platform: All
|
|
OS/Version: Linux
|
Status: RESOLVED
|
Severity: normal
|
Priority: P2
|
|
Resolution: FIXED
|
Assigned To: games@gentoo.org
|
Reported By: ana_a_m_@hotmail.com
|
|
Component: Games
|
|
|
URL:
|
|
Summary: UT2004 Megapack launched Request For ebuild
|
|
Keywords:
|
|
Status Whiteboard:
|
|
Opened: 2005-12-23 12:02 0000
|
As we can read on linux-gamers.net:
The Linux edition of the recent Unreal Tournament 2004 Mega bonus pack is now
available.
The pack can be found on icculus.org and mirrored 3D Gamers. The Megapack
contains nine new and updated maps (AS-BP2-Acatana, AS-BP2-Jumpship,
AS-BP2-Outback, AS-BP2-SubRosa, AS-BP2-Thrust, CTF-BP2-Concentrate,
CTF-BP2-Pistola, DM-BP2-Calandras and DM-BP2-GoopGod) along with all content of
the previous Editor's Choice Edition bonus pack.
Please can someone make an ebuild for this? it will be great :)
Thanks
Looking at this, I can see a problem with creating an ebuild for this because
all the official downloads contain the patch (3369) files. To create a "bonus
pack" only ebuild, it would have to go through deleting the files owned by the
patch before copying over from the working directory.
I've posted a query regarding this on the megapack sticky thread on the
official forums at ataricommunity.com and am waiting to hear back on this.
An ebuild certainly is possible, but if Atari insist on bundling the patches
with the bonus packs it's going to be a bit of a pain.
Honestly, this is pretty much what I am going to have to do. I'm going to need
to delete any files from the Megapack that already exist in either the ECE
bonuspack or the patch. It will probably take me a little while to get an
ebuild done for this, as I have been on vacation for the past 2 weeks and have
lots of bugs to work through. If anyone comes up with a megapack ebuild that
installs *only* the new content, I'd be very grateful.
There is also a problem because 3dgamers dont mirror the ECE anymore.
Is there a problem to replace the megapack instead for the ece ?
And only delete the 3369 patch files before copying the workdir ...
I think it will be easier ...
Only my opinion.
Sonic
Created an attachment (id=76672) [details]
Ebuild for UT2004 BonusPack Megapack - new content only
Well here it is - non-ece, non-patch-3369-2 content only ebuild for the
Megapack.
It was a PITA, but the process to get the list of new-only content was actually
quite easy. First I extracted the content of the 3369-2 patch, the megapack
(linux version) and the ece pack used by the ece ebuild.
I obtained a diff of the megapack against the 3369-2 patch. I copied the
megapack to a new temporary folder and deleted all identical files from the
3369-2 patch. Now I had a copy of only the megapack and ece content, so I
diffed that against the ece bonus pack.
Hey presto - a list of only the new and changed files.
The diff command I used is:
diff -qrs --ignore-file-name-case stripped-megapack-linux/UT2004MegaPack/ ece/
> diff-results.txt
I used: ignore-file-name-case to get around the Windows cased file names in the
ece pack - this may not been necessary but was just kept from when I started
with the Windows megapack; r is recurse directories; q is brief (no files
content, just whether they differ; And s means that lines are output for
identical files.
Note the sub-directories which are extracted, like UT2004MegaPack in the above
example, or you'll get garbage output (all files exist only in one or the
other).
I think that is better to remove the ebuilds for other bonuspacks and let only
in portage this ebuild for all the content, including the other bonuspacks, and
rename this ebuild ut2004-data-extra, or something like that, what do you
think?
(In reply to comment #7)
> I think that is better to remove the ebuilds for other bonuspacks and let only
> in portage this ebuild for all the content, including the other bonuspacks, and
> rename this ebuild ut2004-data-extra, or something like that, what do you
> think?
>
How do you then deal with people who already have the ECE bonus pack installed?
Block against it and force them to uninstall the ECE bonus pack first?
You also can't include ALL the content form the megapack because it includes
the 3369-2 patch, which is already handled by the ut2004 ebuild.
Also, I don't think the suggested package name of ut2004-data-extra is very
intuitive. Users will be looking for bonus pack ebuilds, not something called
-data-extra.
As an additional comment, upstream have said that they won't release a
new-content-only package - https://bugzilla.icculus.org/show_bug.cgi?id=2574
Installing both ECE and Megapack from a single ebuild isn't very useful as it
breaks 2 of the 4 possible media types for UT2004.
I plan on getting to this some time soon, but we are also working on the next
Gentoo release, and as you can probably guess, Gentoo releases take precidence
over ut2004 bugs... :P
What would *really* be useful is an ebuild for ECE that uses the Megapack
distfile but installs *only* the ECE content. I would then be able to update
the ECE ebuild to use the Megapack distfiles and get this stuff added into
portage quicker.
(In reply to comment #10)
> What would *really* be useful is an ebuild for ECE that uses the Megapack
> distfile but installs *only* the ECE content.
I've added the ebuild to bug 116334
(In reply to comment #10)
> Installing both ECE and Megapack from a single ebuild isn't very useful as it
> breaks 2 of the 4 possible media types for UT2004.
I assume the 4 media types are as mentioned at
http://www.planetunreal.com/ut2004/
- how would it break any of them?
Those were the original 4 sets, and you'll notice that it's only extra content.
What I meant was:
UT2004 - 6 CD
UT2004 - 1 DVD
UT2004 + ECE - 7 CD
UT2004 + ECE - 1 DVD
The problem with the ECE packages above is there was a refactoring of files on
each CD, so it wasn't that the ECE content was added as a new CD, but
interspersed amongst all of the CDs. Having an ECE + Megapack ebuild would
cause package collisions with anyone using either ECE media set.
Ack!
It looks like Allen's original ebuild still had the patch files in it. I'm
going through it now to try to clean it up to only provide the megapack files
and nothing more.
The only files also present in the linux patch were:
System/Manifest.ini
System/Manifest.int
System/Packages.md5
These all differed tho, and as far as I know UT2004 should regenerate them from
the actual directory contents.
Created an attachment (id=77286) [details]
Diff of megapack vs 3369-2
This attachment is the output of:
diff -qr megapack-linux/UT2004MegaPack/ 3369-2/UT2004-Patch/ >>
diff-megapack-against-3369-2.txt
Where 3369-2 contains the extracted ut2004-lnxpatch3369-2.tar.bz2 and
megapack-linux contains the extracted ut2004megapack-linux.tar.bz2
(In reply to comment #9)
> Created an attachment (id=77170) [edit] [details]
> UT2004 Megapack ebuild with ECE content
>
> This ebuild installs both the new megapack content and the ECE pack content,
> but not the 3369.2 patch.
>
Works for me. Thanks :-)
edmondo@balrog ~ $ emerge info
Portage 2.1_pre4-r1 (default-linux/amd64/2005.1, gcc-4.0.2, glibc-2.3.6-r2,
2.6.15 x86_64)
=================================================================
System uname: 2.6.15 x86_64 AMD Athlon(tm) 64 X2 Dual Core Processor 4400+
Gentoo Base System version 1.12.0_pre15
ccache version 2.4 [enabled]
dev-lang/python: 2.3.5-r2, 2.4.2
sys-apps/sandbox: 1.2.17
sys-devel/autoconf: 2.13, 2.59-r7
sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils: 2.16.91.0.5
sys-devel/libtool: 1.5.22
virtual/os-headers: 2.6.11-r3
ACCEPT_KEYWORDS="amd64 ~amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=k8 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.5/env
/usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/kde/3/share/config
/usr/lib/X11/xkb /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -march=k8 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig ccache distlocks fixpackages sandbox sfperms strict"
GENTOO_MIRRORS="ftp://mirror.switch.ch/mirror/gentoo/
ftp://ftp.solnet.ch/mirror/Gentoo "
LDFLAGS="-Wl,-O1"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="amd64 X acpi alsa avi berkdb bitmap-fonts bzip2 cdr crypt cups dvd dvdread
eds emboss encode ffmpeg foomaticdb fortran gif gpm gstreamer gtk gtk2
imagemagick imlib ipv6 ithreads jpeg kde lcms linuxthreads-tls lm_sensors lzw
lzw-tiff mp3 mpeg mplayer multislot ncurses nls nowin nptl nptlonly ogg opengl
pam pda pdflib perl png python qt quicktime readline sdl spell ssl tcpd theora
threads tiff truetype truetype-fonts type1-fonts usb userlocales vorbis xml2
xpm xv xvid zlib elibc_glibc kernel_linux userland_GNU"
Unset: ASFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, LANG, LC_ALL, LINGUAS,
PORTDIR_OVERLAY
Created an attachment (id=79551) [details]
ut2004-megapack-1.ebuild
Here is an ebuild which installs the Megapack after the ECE (from bug 116334),
without any file-collision ebuild errors. It was created from a DVD
installation of UT2004.
It overwrites the 3 System files {Manifest.in{i,t},Packages.md5} in a
reasonably graceful way.
speculum.twistedgamer.com does not have a DNS record.
Interestingly, the megapack installs new executables
/opt/ut2004/System/{ucc,ut2004}-bin-linux-amd64, which ut2004-3369-r2 does not
contain. Can an amd64'er test them? Perhaps the /opt/ut2004/ut2004 script
should be edited to run ut2004-bin-linux-amd64?
(In reply to comment #18)
> speculum.twistedgamer.com does not have a DNS record.
>
> Interestingly, the megapack installs new executables
> /opt/ut2004/System/{ucc,ut2004}-bin-linux-amd64, which ut2004-3369-r2 does not
> contain. Can an amd64'er test them? Perhaps the /opt/ut2004/ut2004 script
> should be edited to run ut2004-bin-linux-amd64?
The 3369-2 (and every other patch) DOES contain these files. If you bothered to
look at the ebuild, it renames them.
Why are you installing stuff in postinst? That seems very non-standard.
Other than doing things a slightly longer way round, such as going through the
Web directory and deleting all files individually, rather than just deleting
the whole directory in one command, I can't see any changes over my original
ebuild.
Created an attachment (id=79558) [details]
ut2004-megapack-1.ebuild
Oops, here is a fixed ebuild.
The act of removing files before the big merge with the live filesystem,
reduces the temporary space required to install the ebuild.
The 3 system files need to be installed somehow (i.e. pkg_postinst), to be
compatible with FEATURES="collision-protect". I used collision-protect to
easily generate the list of files that need to be removed from the Megapack.
This ebuild has been added now... Thanks for putting in all of the hard work on
this one.
The Changelog for ut2004-bonuspack-mega has the wrong author.
But, far more importantly, the ebuild should **NOT** be called
"ut2004-bonuspack-mega" - it should be called "ut2004-megapack", otherwise
thousands of games-hungry kiddies will do an "emerge -s megapack" and say
"wft?" when it comes up blank.
Gah... sorry about the author thing... I just looked for the first attachment
ebuild in here.
As for the naming, I'm not changing it, as it matches the naming of all of the
other bonuspacks for ut2004. Besides, I plan on making ut2004 install the
ut2004-bonuspack-mega also, since we're forcing everyone to download it anyway
thanks to ut2004-bonuspack-ece using it.
Actually, I'll just commit that now.
(In reply to comment #25)
> Besides, I plan on making ut2004 install the ut2004-bonuspack-mega also
I upgraded, but the 3 System files were kept at the old versions, presumably
because ut2004 is the *owner* of the files, and ut2004 was installed last.
So, this prompted me to do a big cleanup of the ebuilds (immediately after
*this* cleanup, ho hum), in bug #126538.