|
|
|
@ -12,10 +12,11 @@ let |
|
|
|
|
|
|
|
|
|
in |
|
|
|
|
stdenv.mkDerivation rec { |
|
|
|
|
name = "arena-3.10-beta"; |
|
|
|
|
pname = "arena"; |
|
|
|
|
version = "3.10-beta"; |
|
|
|
|
|
|
|
|
|
src = fetchurl { |
|
|
|
|
url = "http://www.playwitharena.de/downloads/arenalinux_64bit_3.10beta.tar.gz"; |
|
|
|
|
url = "http://www.playwitharena.de/downloads/arenalinux_64bit_${lib.replaceStrings ["-"] [""] version}.tar.gz"; |
|
|
|
|
sha256 = "1pzb9sg4lzbbi4gbldvlb85p8xyl9xnplxwyb9pkk2mwzvvxkf0d"; |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
@ -25,19 +26,19 @@ stdenv.mkDerivation rec { |
|
|
|
|
unpackPhase = '' |
|
|
|
|
# This is is a tar bomb, i.e. it extract a dozen files and directories to |
|
|
|
|
# the top-level, so we must create a sub-directory first. |
|
|
|
|
mkdir -p $out/lib/${name} |
|
|
|
|
tar -C $out/lib/${name} -xf ${src} |
|
|
|
|
mkdir -p $out/lib/${pname}-${version} |
|
|
|
|
tar -C $out/lib/${pname}-${version} -xf ${src} |
|
|
|
|
|
|
|
|
|
# Remove executable bits from data files. This matters for the find command |
|
|
|
|
# we'll use below to find all bundled engines. |
|
|
|
|
chmod -x $out/lib/${name}/Engines/*/*.{txt,bin,bmp,zip} |
|
|
|
|
chmod -x $out/lib/${pname}-${version}/Engines/*/*.{txt,bin,bmp,zip} |
|
|
|
|
''; |
|
|
|
|
|
|
|
|
|
buildPhase = '' |
|
|
|
|
# Arena has (at least) two executables plus a couple of bundled chess |
|
|
|
|
# engines that we need to patch. |
|
|
|
|
exes=( $(find $out -name '*x86_64_linux') |
|
|
|
|
$(find $out/lib/${name}/Engines -type f -perm /u+x) |
|
|
|
|
$(find $out/lib/${pname}-${version}/Engines -type f -perm /u+x) |
|
|
|
|
) |
|
|
|
|
for i in "''${exes[@]}"; do |
|
|
|
|
# Arminius is statically linked. |
|
|
|
@ -52,7 +53,7 @@ stdenv.mkDerivation rec { |
|
|
|
|
|
|
|
|
|
installPhase = '' |
|
|
|
|
mkdir -p $out/bin |
|
|
|
|
ln -s $out/lib/${name}/Arena_x86_64_linux $out/bin/arena |
|
|
|
|
ln -s $out/lib/${pname}-${version}/Arena_x86_64_linux $out/bin/arena |
|
|
|
|
''; |
|
|
|
|
|
|
|
|
|
dontStrip = true; |
|
|
|
|