Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 200967 - games-fps/rott-data (Rise of the Triad) (new ebuild)
Summary: games-fps/rott-data (Rise of the Triad) (new ebuild)
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: x86 Linux
: High enhancement (vote)
Assignee: Default Assignee for New Packages
Keywords: EBUILD
Depends on:
Blocks: 245885
  Show dependency tree
Reported: 2007-12-02 00:01 UTC by Brandon Captain
Modified: 2021-06-30 17:17 UTC (History)
3 users (show)

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

here it is (rott-data-1.0.ebuild,1.36 KB, text/plain)
2007-12-02 00:02 UTC, Brandon Captain
corrected ebuild for rott-data (rott-data-1.0.ebuild,1.36 KB, text/plain)
2009-07-16 08:58 UTC, Ivan Anishchuk
games-fps/rott-data-1.0.ebuild (rott-data-1.0.ebuild,1007 bytes, text/plain)
2010-07-26 02:11 UTC, Jared B.
games-fps/rott-data-1.0.ebuild (rott-data-1.0.ebuild,1.92 KB, text/plain)
2011-06-12 02:17 UTC, Jared B.
games-fps/rott-data-1.0-r1.ebuild (rott-data-1.0-r1.ebuild,2.94 KB, text/plain)
2011-09-29 00:11 UTC, Jared B.
rott-data Manifest (Manifest,410 bytes, text/plain)
2011-09-29 00:12 UTC, Jared B.
games-fps/rott-data-1.0-r1.ebuild (rott-data-1.0-r1.ebuild,2.92 KB, text/plain)
2011-09-29 00:43 UTC, Jared B.
games-fps/rott-data-1.0-r1.ebuild (rott-data-1.0-r1.ebuild,2.82 KB, text/plain)
2012-09-21 02:58 UTC, Jared B.

Note You need to log in before you can comment on or make changes to this bug.
Description Brandon Captain 2007-12-02 00:01:50 UTC
this installs the RotT retail game data. (thought I submitted this a long time ago, but couldn't find it in bug search...)

Reproducible: Always

Steps to Reproduce:
Comment 1 Brandon Captain 2007-12-02 00:02:34 UTC
Created attachment 137518 [details]
here it is
Comment 2 Jakub Moc (RETIRED) gentoo-dev 2007-12-02 09:07:25 UTC

*** This bug has been marked as a duplicate of bug 120782 ***
Comment 3 Brandon Captain 2007-12-03 01:21:15 UTC
how is this resolved if it's not in portage? is someone making mistakes or did I miss something?
Comment 4 Tristan Heaven (RETIRED) gentoo-dev 2007-12-03 10:37:46 UTC
Comment 5 Robert Rankin 2008-09-04 22:23:32 UTC
New version is out 1.1 although suffers rrom the same problems as before although the amd64 flag can now be added
Comment 6 Ivan Anishchuk 2009-07-16 08:56:28 UTC
bad value of S pull warning

>>> Emerging (1 of 1) games-fps/rott-data-1.0 from local-repo
 * checking ebuild checksums ;-) ...                                                                                [ ok ]
 * checking auxfile checksums ;-) ...                                                                               [ ok ]
 * checking miscfile checksums ;-) ...                                                                              [ ok ]
 * Found CD #1 root at /mnt/cdrom/rottinst/
>>> Unpacking source...
/var/tmp/portage/games-fps/rott-data-1.0/temp/environment: line 277: cd: /var/tmp/portage/games-fps/rott-data-1.0/work/rott-data-1.0: No such file or directory
Comment 7 Ivan Anishchuk 2009-07-16 08:58:58 UTC
Created attachment 198144 [details]
corrected ebuild for rott-data

S=${WORKDIR} to avoid warning
Comment 8 Jared B. 2010-07-26 02:11:10 UTC
Created attachment 240169 [details]
Comment 9 Jared B. 2010-07-26 02:15:24 UTC
I made a few changes to the rott-data ebuild.  Aside from dome general cleanup:

1. I removed the rott dependency as rott should pull in rott-data (through cdinstall), not the other way around

2. I added support for installing from the RotT CD-ROM

3. I quoted variables where appropriate to support spaces in path names

4. I removed the doc use flag, for two reasons:
4a. It installs the game license rather than any "real" documentation
4b. The license is already installed by the rott package under ~/.rott/

Any news on getting this plus the associated rott ebuild in portage?  I like the way this combination of ebuilds works much better than the existing portage ebuild.
Comment 10 Jared B. 2011-06-12 02:17:55 UTC
Created attachment 276725 [details]

Made some more changes:

1. Will install all optional level and combat packs available in the source directory.  This was done to support the GOG release, which includes a bunch of stuff not available on the original CD.

2. Now handles mixed-case source filenames, again to support the GOG package.

3. Reinstated the doc USE flag as the GOG package, at least, includes some stuff that could be useful.

FYI, I also just updated to rott ebuild it bug 200967 to fix some issues with loading the optional packs.
Comment 11 James Le Cuirot gentoo-dev 2011-06-12 07:33:46 UTC
The annoying thing about GOG games, and this one is probably no exception, is that they really do need Wine to extract them. There's no way around it. I thought it would be really useful if Portage could handle this so I managed to pull it off for Settlers 2 in bug #363719. I could adapt it for this but I don't own the GOG version. Maybe you could do it?
Comment 12 Jared B. 2011-06-12 08:09:08 UTC
(In reply to comment #11)
> The annoying thing about GOG games, and this one is probably no exception, is
> that they really do need Wine to extract them. There's no way around it. I
> thought it would be really useful if Portage could handle this so I managed to
> pull it off for Settlers 2 in bug #363719. I could adapt it for this but I
> don't own the GOG version. Maybe you could do it?

Ha.  I hear you.  Check out bug 371195.  Great minds and all that...  :-D

I've been using innounp to manually extract the files, and my thought was that having a system-provided package we could depend on would make things easier, allow us to fully automate extraction and installation, etc.  I didn't think of bundling innounp with the package, but that'd also work.

Either way, I think it's a better solution to requiring users to manually unpack those setup archives, especially since most won't be familiar with innounp.  Please feel free to speak up in my bug report if you think innounp itself should or shouldn't be included in portage.

Just for the record, though, Inno Setup isn't really a "very unfriendly packaging format."  It's meant to be a Windows installer and at that job it works great.  I've used it for years for my Windows packages and love it.  There unfortunate aspect that there are no native Linux utilities that can handle it does suck, though.
Comment 13 Jared B. 2011-09-29 00:11:00 UTC
Created attachment 288147 [details]

Updated ebuild to include support for directly unpacking the GOG installer, as discussed in bug 371195 and bug 363719.  The ebuild now has a cdinstall USE flag, which is enabled by default.  So, -cdinstall would need to be set for the GOG package to be installed.

This does have the unfortunate side-effect of conflicting somewhat with the rott (binary) ebuild, which also uses cdinstall, though that's used to determine whether the rott-data package gets pulled in.  So, to install from CD, you can do this:

USE=cdinstall emerge rott

But to install from the GOG package, you'll either need to do this:
USE=-cdinstall emerge rott rott-data

or set this in your package.use:
games-fps/rott cdinstall
games-fps/rott-data -cdinstall

and then:
emerge rott

Kind of confusing, I know, but it works, and it's the best I could come up with that doesn't involve adding a GOG-specific USE flag (which really might not be that bad of an idea if support for it picks up...).
Comment 14 Jared B. 2011-09-29 00:12:13 UTC
Created attachment 288149 [details]
rott-data Manifest

Also attaching Manifest file containing GOG package checksum, which I think will be needed if you don't have it available, even if you install from CD.
Comment 15 Jared B. 2011-09-29 00:43:54 UTC
Created attachment 288151 [details]

minor cleanup
Comment 16 James Le Cuirot gentoo-dev 2011-09-29 09:15:07 UTC
Hello again. :) Unfortunately all this fell a little way down my priority list but I haven't forgotten about it. I do think the approach you've taken is very confusing. I still stand by the suggestion I made previously. Make rott depend on rott-data either unconditionally (perhaps using PDEPEND) or not at all (simply suggest it). Use the cdinstall flag on the rott-data ebuild to mean install from CD when enabled or download from GOG when disabled. If the user wants to install from local files then they can just enable cdinstall while passing CD_ROOT. If you did make rott-data a dependency but the user still insists on installing the files manually (which I don't recommend) then they can add games-action/rott-data-1.0-r1 to /etc/portage/profile/package.provided.
Comment 17 Jared B. 2012-09-21 02:56:39 UTC
Attaching updated ebuilds.

rott - does away with cdinstall USE flag, as suggested by James.  Data file selection is now controlled by the demo USE flag.  With USE=-demo (default), rott-data is pulled in.  With USE=demo, rott-data is explicitly blocked.

rott-data - Switched to using innoextract for unpacking the GOG installer rather than innounp.  innoextract is a native Linux binary, so it's faster, less complicated, and doesn't depend on wine.  Also now inherits cdrom.eclass, which is required for cdrom handling functions.
Comment 18 Jared B. 2012-09-21 02:58:33 UTC
Created attachment 324458 [details]
Comment 19 Jared B. 2012-09-21 03:01:33 UTC
sorry for the noise, but I forgot there's a separate bug for the rott engine ebuild.  Posting the updated ebuild for that to bug 245885 instead of here.
Comment 20 James Le Cuirot gentoo-dev 2012-09-21 07:55:28 UTC
Great work, Jared! I'd been meaning to start using innoextract for these games. I feel less dirty now. ;)
Comment 21 globus 2021-06-30 12:39:47 UTC
Sorry, I still don't understand why portage is missing rott-data?
Comment 22 Alessandro Barbieri 2021-06-30 17:17:10 UTC
join guru and put it there