Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 343495 - Amnesia: The Dark Descent (amnesia tdd): games-rpg/amnesia-tdd-1.0.1.ebuild (NEW EBUILD)
Summary: Amnesia: The Dark Descent (amnesia tdd): games-rpg/amnesia-tdd-1.0.1.ebuild (...
Status: CONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High enhancement with 1 vote (vote)
Assignee: Default Assignee for New Packages
URL: http://www.amnesiagame.com
Whiteboard:
Keywords: EBUILD, Inclusion
Depends on:
Blocks:
 
Reported: 2010-10-31 11:54 UTC by Zorzo Luca
Modified: 2018-12-03 12:57 UTC (History)
3 users (show)

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


Attachments
amnesia-tdd ebuild, version 1.0.1 (amnesia-tdd-1.0.1.ebuild,6.81 KB, text/plain)
2010-10-31 11:56 UTC, Zorzo Luca
Details
amnesia-tdd manifest (Manifest,406 bytes, text/plain)
2010-10-31 11:56 UTC, Zorzo Luca
Details
amnesia-tdd-1.2.ebuild (amnesia-tdd-1.2.ebuild,7.18 KB, text/plain)
2011-10-02 11:37 UTC, Zorzo Luca
Details
games-rpg/amnesia-tdd-1.2.ebuild (amnesia-tdd-1.2.ebuild,7.25 KB, text/plain)
2011-10-30 15:42 UTC, Jared B.
Details
games-rpg/amnesia-tdd-1.2.ebuild (amnesia-tdd-1.2.ebuild,7.47 KB, text/plain)
2012-02-14 05:00 UTC, Jared B.
Details
games-rpg/amnesia-tdd-1.2.1 for humble bundle installer (amnesia-tdd-1.2.1.ebuild,7.83 KB, text/plain)
2012-06-05 05:08 UTC, kisak42
Details
games-rpg/amnesia-tdd-1.2.1.ebuild (amnesia-tdd-1.2.1.ebuild,7.37 KB, text/plain)
2012-06-06 02:39 UTC, Jared B.
Details
games-rpg/amnesia-tdd-1.2.1 for humble bundle installer v2 (amnesia-tdd-1.2.1.ebuild,7.26 KB, text/plain)
2012-06-08 01:46 UTC, kisak42
Details
games-rpg/amnesia-tdd-1.2.1 for humble bundle installer v3 (amnesia-tdd-1.2.1.ebuild,7.12 KB, text/plain)
2012-06-12 03:27 UTC, kisak42
Details
games-rpg/amnesia-tdd-1.2.1-r1.ebuild (amnesia-tdd-1.2.1-r1.ebuild,7.14 KB, text/plain)
2013-09-14 20:07 UTC, Jared B.
Details
games-rpg/amnesia-tdd-1.3.1.ebuild (amnesia-tdd-1.3.1.ebuild,6.03 KB, text/plain)
2015-06-29 02:38 UTC, Jared B.
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Zorzo Luca 2010-10-31 11:54:34 UTC
From Amnesia's site:
"Amnesia: The Dark Descent, a first person survival horror. A game about
immersion, discovery and living through a nightmare. An experience that will
chill you to the core."

Reproducible: Always

Steps to Reproduce:
Comment 1 Zorzo Luca 2010-10-31 11:56:25 UTC
Created attachment 252661 [details]
amnesia-tdd ebuild, version 1.0.1
Comment 2 Zorzo Luca 2010-10-31 11:56:56 UTC
Created attachment 252663 [details]
amnesia-tdd manifest
Comment 3 Wormo (RETIRED) gentoo-dev 2010-11-05 19:51:53 UTC
Thanks for submitting your ebuild. Assigning to games team in case they're interested. If not, they will reassign to "maintainer-wanted" and you should consider submitting this to sunrise overlay.
Comment 4 James Broadhead 2011-02-11 09:53:51 UTC
Please see my comment on bug #336660. This ebuild should be merged with the demo ebuild, and this bug closed as a duplicate. 
Comment 5 Alan Smithee 2011-04-02 22:21:30 UTC
there is an issue with fltk slot change. just change:
x11-libs/fltk:1.1
entry in your ebuild to:
x11-libs/fltk:1
Comment 6 Zorzo Luca 2011-04-03 08:46:33 UTC
(In reply to comment #4)
> Please see my comment on bug #336660. This ebuild should be merged with the
> demo ebuild, and this bug closed as a duplicate. 

Do you have any suggestion about it? A "demo" use flag?
Most demo games has a different ebuild from the main one (see "eix -C games demo" as example).
Comment 7 Zorzo Luca 2011-10-02 11:37:59 UTC
Created attachment 288537 [details]
amnesia-tdd-1.2.ebuild
Comment 8 Zorzo Luca 2011-10-02 11:38:59 UTC
Comment on attachment 288537 [details]
amnesia-tdd-1.2.ebuild

Version bump.
Comment 9 Jared B. 2011-10-30 15:41:47 UTC
Zorzo, thanks for the ebuild.  Worked great, but I made a few changes to try to improve things a bit:

* Trimmed down some of the dependencies, since several of the listed dependencies actually depend on each other.  Eg., libvorbis depends on libogg itself, so I removed libogg from the list of dependencies.

* Since glew is not slotted (and therefore a hard dep on 1.5 would prevent upgrades to 1.6), I wanted to see if it could work with a newer version of glew, and apparently it does.  So, I changed the glew dep to >=1.5, and I create a symlink in the Amnesia libs directory with the appropriate name to the currently installed libGLEW.so.  Seems to work fine in my testing.

* Rewrote and reordered some of the unpacking logic to delete the temporary files as soon as they're extracted.  This cut the $PORTAGE_TMPDIR requirements down to 3.5 GB rather than 4.5 GB.

* Included "Remember - Short Story Collection.pdf" when USE=doc is enabled.

* Fixed docs installation so that it gets installed in the proper directory

* Cleaned up some of the output info/text for better readability

I'll attach below.

I also noticed one other issue that I didn't get around to fully investigating.  When I enable USE=doc, I get copies of the manual and EULA for ALL languages, even though I don't have an of the LINGUAS flags set.  It looks like you have some logic in place to figure this out and only install the appropriate language(s), but it's not working right for some reason.  Would be nice to get this fixed, but it wasn't a big priority for me.
Comment 10 Jared B. 2011-10-30 15:42:11 UTC
Created attachment 291241 [details]
games-rpg/amnesia-tdd-1.2.ebuild
Comment 11 Jared B. 2012-02-14 05:00:41 UTC
Created attachment 301877 [details]
games-rpg/amnesia-tdd-1.2.ebuild

since fltk-1.1 is no longer in portage, the bundled library needs to be used.  I've updated the ebuild to install the bundled version, and removed fltk from the dependencies.
Comment 12 poncho 2012-03-09 13:01:32 UTC
Thanks for your ebuild.

You need to add unpacker to inherit. See https://bugs.gentoo.org/show_bug.cgi?id=399019
Comment 13 kisak42 2012-06-05 05:08:17 UTC
Created attachment 314249 [details]
games-rpg/amnesia-tdd-1.2.1 for humble bundle installer

amnesia-tdd 1.2.1 from humble bundle did not extract with the system lzma tool. I updated the ebuild a bit in attempt to get it closer to compliance, still crude and hackish, but it works. (based on the ebuild found in the flow overlay)
Comment 14 Jared B. 2012-06-06 02:39:36 UTC
Created attachment 314369 [details]
games-rpg/amnesia-tdd-1.2.1.ebuild

It's not that the system version of lzma (xz) can't handle extracting the newest versions (rev 1.2.1-2 was recently released as well), but rather then archive itself is badly packed.  Even when using the bundled version of lzma, I still get the same error.  Conversely, decompressing it with the bundled and system versions result in a tar file with the same checksum.

I worked around the problem like this:
xz -F lzma -d -c "./${P}.tar.lzma" 2>/dev/null | tar xf - \
	|| die "unpacking '${P}.tar.lzma' failed"

Not terribly pretty, but it gets the job done.  For comparison, the installer unpacks the file like this:
"%s/lzma d \"%s\" - 2>/dev/null | tar xvf -"

So, even the official installer needs to silence the resulting error.

Anyway, I personally prefer to stick with the manual unpack method rather than running the installer from within the ebuild, so I've updated my ebuild to support the new version.  Also made a couple other minor changes for cleanup, and removed some leftover debugging code from my previous version.
Comment 15 kisak42 2012-06-08 01:46:36 UTC
Created attachment 314625 [details]
games-rpg/amnesia-tdd-1.2.1 for humble bundle installer v2

ebuild: updated my varient based on the clever bits from Jared B. and tried to make the ebuild closer to portage installed game norms. removed a couple unnessicary variables. Reasoning below. 


Since it's handled the same, I agree with you Jared B. in regards to using the system lzma tools. I did not dig that deep into the installer script and assumed that it was using an older version of xz which had a version specific quirk.

Over in #gentoo-dev-help I was encouraged to use CHECKREQS_DISK_BUILD as a global variable and to switch the ebuild to eabi 4 so that check-reqs_pkg_setup is not needed in pkg_setup. Also, extracting libfltk in the unpack phase feels like it does not belong there and should be the first thing done in the src_prepare instead. Functionally the same either way, so it's not that important.

It's not clear to me why /opt/ is a better choice than the gentoo standard install locations for games (/usr/share/games, /usr/games/lib[64]). I think this one of the factors preventing this ebuild from continuing on it's path to portage.
Comment 16 Jared B. 2012-06-08 03:26:44 UTC
(In reply to comment #15)
> It's not clear to me why /opt/ is a better choice than the gentoo standard
> install locations for games (/usr/share/games, /usr/games/lib[64]). I think
> this one of the factors preventing this ebuild from continuing on it's path
> to portage.

${GAMES_PREFIX_OPT} (normally /opt) is the standard location for prebuilt binary games.  Lots of stuff gets installed there (eg., check out quake3 vs. quake3-bin.), so I wouldn't consider it a blocker.
Comment 17 kisak42 2012-06-12 03:27:14 UTC
Created attachment 315063 [details]
games-rpg/amnesia-tdd-1.2.1 for humble bundle installer v3

I'm done tinkering, here is the result:

fixed broken shortcut icon

Returned to /opt; after trying to get the game data seperated it became clear that while possible, there is a significant amount of patching required to the game config in order to succeed. It is possible to pass the location of config/main_init.cfg to the binary on launch, so it is possible.

Trimmed as much excess code as seemed prudent from the ebuild. Things like touching a file and die messages for things that never fail are unnessicary.

There is a glitch with games.eclass (v 1.148 and older) / portage sync older than June 9, 2012 will fail with this ebuild.
Comment 18 Jared B. 2013-09-14 20:05:29 UTC
I know I'm a little late getting back to this, but I just had a chance to try out your last ebuild and it seems to work fine, though I needed to make two changes:

1. They released a newer (and slightly renamed) -3 revision, so the SRC_URI must be updated accordingly:
MY_REV="-3
SRC_URI="${MY_PN}-${PV}${MY_REV}.sh"

2. In order to make the game run, I had to add this line back to the wrapper script:
cd "${GAMEDIR}"

Otherwise, seems to work about the same as the previous ebuild.  I'm all for standardizing, though, so I deprecated my previous ebuild.  I'm also going to attach a version of your ebuild with the two changes above, that way it's ready to go when anyone else downloads it.

Thanks for the work on this.
Comment 19 Jared B. 2013-09-14 20:07:15 UTC
Created attachment 358662 [details]
games-rpg/amnesia-tdd-1.2.1-r1.ebuild

kisak42's ebuild with a couple updates
Comment 20 Jared B. 2015-06-29 02:38:26 UTC
Created attachment 405930 [details]
games-rpg/amnesia-tdd-1.3.1.ebuild

updated for latest available version, 1.3.1.  They changed the how the installer is packaged in this release, so there are a few changes to accommodate the new structure.  Functionally this should work the same.
Comment 21 Andrzej Kardas 2015-10-04 00:01:19 UTC
Hi, first of all thanks for the ebuild.
I found out that the recent version 1.3.1 requires media-libs/devil. Without it  the luncher throws: ./Launcher.bin: error while loading shared libraries: libIL.so.1: cannot open shared object file: No such file or directory. 
With latest media-libs/devil which curenty is 1.7.8-r2 it works fine.