New ebuild for the fledgling game Zelda - Secret of Eternia: http://www.game-cade.com/zeldasoe.php I don't mind maintaining this. Reproducible: Always Steps to Reproduce:
Created attachment 56757 [details] ZeldaSoE-0.3-ebuild.tar.bz2 Save in /usr/local/portage/games-rpg/ Unpack with: tar jxf ZeldaSoE-0.3-ebuild.tar.bz2 cd ZeldaSoE && ebuild ZeldaSoE-0.3.ebuild digest emerge ZeldaSoE
Created attachment 56773 [details] ZeldaSoE-0.3.ebuild Posted ebuild with correct format.
Sorry, I should have attached the ebuild as text too, it's just that I hate it when people post an ebuild consisting of a load of flat files with no indication of what goes where.
Ehh... .ebuild goes into the root dir and everything else goes under files? As a developer, I rarely even look at an ebuild submission that requires me to: 1. download a tarball via my browser 2. open a terminal and cd to the download directory 3. unpack the tarball 4. open a text editor to read the ebuild Especially when I can simply click on the attached ebuild and examine it directly form within my browser. If the ebuild looks good, *then* I'll download it locally and do the commit work. The main reason for thi sis I tend to browse bugzilla when I'm away from ym dev machines, as I can do dev work this way even without my dev environment. With a tarball, it's just too much work, especially if I happen to be somewhere without *gasp* Linux boxes around. Now, for some suggestions on making the ebuild better. 1. don't name the ebuild with caps, this means using either something like a MY_P variable or some bash-fu for SRC_URI 2. use proper indentation of DEPEND 3. use dohtml for html docs 4. try to use doins rather than cp 5. is the wrapper necessary? Can you not use games_make_wrapper? That's about it from a quick cursory glance.
I put up the .tar.bz2 so that forum goers who didn't know how to use an ebuild from bugzilla, could try it out. I'll make sure I also attach the .ebuild separately in the future. 1. don't name the ebuild with caps, this means using either something like a MY_P variable or some bash-fu for SRC_URI I did this originally, but then I thought to myself... why? Is it Gentoo policy? If so, why? The author of this software calls it ZeldaSoE, not zeldasoe. The compiled binary is named ZeldaSoE and the source package is called ZeldaSoE-version.tar.bz2. emerge search is case insensitive and there may one day, feasably be another piece of software called ZeldAsoe. Like DirectFB, which I'm also for being capitalised, and xdirectfb which should be XDirectFB, I see no disadvantage with namimg a package as it was intended. Feel free to point out the glaring reason I've missed, but noone seems to have so far. 4. try to use doins rather than cp Does doins work on whole directories? Is it necessary, given that prepgamesdirs is run on everything after. 5. is the wrapper necessary? Can you not use games_make_wrapper? Changed to use games_make_wrapper, now I understand what games_make_wrapper does :) Is there a centralised place for documentation on eclasses?
>I put up the .tar.bz2 so that forum goers who didn't know how to use an ebuild >from bugzilla, could try it out. I'll make sure I also attach the .ebuild >separately in the future. That's cool. Like I said, it just makes it *way* easier on us to look at an ebuild when it is by itself. Besides, point the forums users to the portage docs and be done with it. It isn't like we don't have some amazingly simple documentation on the subject. ;] >>1. don't name the ebuild with caps, this means using either something like a >>MY_P variable or some bash-fu for SRC_URI >I did this originally, but then I thought to myself... why? Is it Gentoo >policy? If so, why? Basically, yes. It makes it simpler to find the package. Other than that, I can't tell you why other than when *I* add the ebuild to portage, it'll be with lowercase. >>4. try to use doins rather than cp >Does doins work on whole directories? Is it necessary, given that >prepgamesdirs is run on everything after. doins -r >Is there a centralised place for documentation on eclasses? man $eclassname
Created attachment 56790 [details] ZeldaSoE-0.3.ebuild Updated with suggestions from comment #4
some more feedback ... compiled code never goes into /usr/share ... use $GAMES_LIBDIR for that packages usually shouldnt install into '$P' directories but into '$PN' instead isnt there a way to make this game play nice and not use a wrapper ?
It would need upstream patching to not require the wrapper, or for the executable to be put in $GAMES_LIBDIR. I've asked the author.
Created attachment 56819 [details] ZeldaSoE-0.3.ebuild Updated to install to ${GAMES_DATADIR}/${PN} and use doins -r (which needs to be documented in "man 5 ebuild", like dohtml is).
we can (and do) patch games ourselves to use 'gentoo' games dirs for libraries/data/config files/etc...
The source package is now called SoE-0.3.tar.gz, which means that the ebuild cannot find ZeldaSoE-0.3.tar.gz.
The news of the name change can be found here: http://www.game-cade.com/viewtopic.php?t=56
Created attachment 105161 [details] zeldasoe-0.3.ebuild This ebuild has been reworked in a way that could be included in portage. Not doing that now, as I'm not sure if the game, being very beta, qualify for it.
Created attachment 105162 [details, diff] zeldasoe-0.3-gentoo.patch
it's not finished and pretty much abandoned by upstream