You are not logged in.
Hi,
I'm writing a PKGBUILD for dynablaster-revenge, this is what I have so far
pkgname=dynablaster-revenge
pkgver=1.0.2
pkgrel=1
pkgdesc="Remake of the classic game dynablaster aka bomberman"
arch=('x86_64')
url=('https://dynablaster.titandemo.de')
license=('GPL2')
depends=('qt4' 'sdl2')
source=("http://prods.j-chaos.net/dynablaster_revenge.zip")
md5sums=('276e6b701d87c1e33504d240d17f853a')
package() {
cd "$srcdir/dynablaster_revenge_v1_0_2"
mkdir -p "$pkgdir/usr/share/games/dynablaster-revenge"
cp -r data "$pkgdir/usr/share/games/dynablaster-revenge/"
install -Dm755 dynablaster_linux_x64 "$pkgdir/usr/bin/dynablaster_linux_64"
#install -m755 server_linux_x64 "$pkgdir/usr/share/games/dynablaster-revenge/"
echo -e "#!/bin/bash\n(cd /usr/share/games/dynablaster-revenge; dynablaster_linux_x64)" \
> "$pkgdir/usr/bin/dynablaster-revenge"
chmod 755 "$pkgdir/usr/bin/dynablaster-revenge"
}
dynablaster_linux_x64 is the binary that starts the game. It needs to be executed from the games data directory ( /usr/share/games/dynablaster-revenge/ ).
So I create the script /usr/bin/dynablaster-revenge
#!/bin/bash
(cd /usr/share/games/dynablaster-revenge; dynablaster_linux_x64)
I think this way it's not so nice (with bash completion in mind) because there are two files dynablaster* in /usr/bin/ but only one works to start the game.
If I install dynablaster_linux_x64 to /usr/share/games/ namcap gives an error: "ELF file outside of a valid path".
So my question is what is the favourite way to handle this?
1. install the binary in /usr/share/games/dynablaster-revenge/ and ignore the namcap error
2. install it to /usr/bin/ and ignore that it's in the $PATH but does not work to start the game
3. maybe install it to /usr/lib/games/dynablaster-revenge/ or /usr/lib/dynablaster-revenge/ ?
Last edited by michis (2016-01-17 12:35:41)
Offline
I'd say go with #1 or #3.
But I mainly posted to request that you get rid of the pointless subshell in your script:
#!/bin/bash
cd /usr/share/games/dynablaster-revenge
dynablaster_linux_x64
"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" - Richard Stallman
Offline
Ah, thanks for the hint. Now as I see it, I don't remember excactly why I used the subshell.
I think I will use #1.
Offline