mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-05-03 10:47:01 +00:00
descent 1&2 assets: init at 2.0.0.7
This commit is contained in:
parent
126cc690ac
commit
e88284be2a
3 changed files with 94 additions and 1 deletions
55
pkgs/games/dxx-rebirth/assets.nix
Normal file
55
pkgs/games/dxx-rebirth/assets.nix
Normal file
|
@ -0,0 +1,55 @@
|
||||||
|
{ stdenv, requireFile, gogUnpackHook }:
|
||||||
|
|
||||||
|
let
|
||||||
|
generic = ver: source: let
|
||||||
|
pname = "descent${toString ver}";
|
||||||
|
in stdenv.mkDerivation rec {
|
||||||
|
name = "${pname}-assets-${version}";
|
||||||
|
version = "2.0.0.7";
|
||||||
|
|
||||||
|
src = requireFile rec {
|
||||||
|
name = "setup_descent12_${version}.exe";
|
||||||
|
sha256 = "1r1drbfda6czg21f9qqiiwgnkpszxgmcn5bafp5ljddh34swkn3f";
|
||||||
|
message = ''
|
||||||
|
While the Descent ${toString ver} game engine is free, the game assets are not.
|
||||||
|
|
||||||
|
Please purchase the game on gog.com and download the Windows installer.
|
||||||
|
|
||||||
|
Once you have downloaded the file, please use the following command and re-run the
|
||||||
|
installation:
|
||||||
|
|
||||||
|
nix-prefetch-url file://\$PWD/${name}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [ gogUnpackHook ];
|
||||||
|
|
||||||
|
dontBuild = true;
|
||||||
|
dontFixup = true;
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
|
||||||
|
mkdir -p $out/share/{games/${pname},doc/${pname}/examples}
|
||||||
|
pushd "app/${source}"
|
||||||
|
mv dosbox*.conf $out/share/doc/${pname}/examples
|
||||||
|
mv *.txt *.pdf $out/share/doc/${pname}
|
||||||
|
cp -r * $out/share/games/descent${toString ver}
|
||||||
|
popd
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "Descent ${toString ver} assets from GOG";
|
||||||
|
homepage = http://www.dxx-rebirth.com/;
|
||||||
|
license = licenses.unfree;
|
||||||
|
maintainers = with maintainers; [ peterhoeg ];
|
||||||
|
hydraPlatforms = [];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
in {
|
||||||
|
descent1-assets = generic 1 "descent";
|
||||||
|
descent2-assets = generic 2 "descent 2";
|
||||||
|
}
|
30
pkgs/games/dxx-rebirth/full.nix
Normal file
30
pkgs/games/dxx-rebirth/full.nix
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
{ stdenv, makeWrapper
|
||||||
|
, dxx-rebirth, descent1-assets, descent2-assets }:
|
||||||
|
|
||||||
|
let
|
||||||
|
generic = ver: assets: stdenv.mkDerivation rec {
|
||||||
|
name = "d${toString ver}x-rebirth-full-${assets.version}";
|
||||||
|
|
||||||
|
nativeBuildInputs = [ makeWrapper ];
|
||||||
|
|
||||||
|
buildCommand = ''
|
||||||
|
mkdir -p $out/bin
|
||||||
|
|
||||||
|
makeWrapper ${dxx-rebirth}/bin/d${toString ver}x-rebirth $out/bin/descent${toString ver} \
|
||||||
|
--add-flags "-hogdir ${assets}/share/games/descent${toString ver}"
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "Descent ${toString ver} using the DXX-Rebirth project engine and game assets from GOG";
|
||||||
|
homepage = http://www.dxx-rebirth.com/;
|
||||||
|
license = with licenses; [ free unfree ];
|
||||||
|
maintainers = with maintainers; [ peterhoeg ];
|
||||||
|
platforms = with platforms; linux;
|
||||||
|
hydraPlatforms = [];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
in {
|
||||||
|
d1x-rebirth-full = generic 1 descent1-assets;
|
||||||
|
d2x-rebirth-full = generic 2 descent2-assets;
|
||||||
|
}
|
|
@ -18285,10 +18285,18 @@ with pkgs;
|
||||||
physfs = physfs_2;
|
physfs = physfs_2;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# these are here for compatibility
|
||||||
d1x_rebirth = dxx-rebirth;
|
d1x_rebirth = dxx-rebirth;
|
||||||
|
|
||||||
d2x_rebirth = dxx-rebirth;
|
d2x_rebirth = dxx-rebirth;
|
||||||
|
|
||||||
|
inherit (callPackages ../games/dxx-rebirth/assets.nix { })
|
||||||
|
descent1-assets
|
||||||
|
descent2-assets;
|
||||||
|
|
||||||
|
inherit (callPackages ../games/dxx-rebirth/full.nix { })
|
||||||
|
d1x-rebirth-full
|
||||||
|
d2x-rebirth-full;
|
||||||
|
|
||||||
easyrpg-player = callPackage ../games/easyrpg-player { };
|
easyrpg-player = callPackage ../games/easyrpg-player { };
|
||||||
|
|
||||||
eboard = callPackage ../games/eboard { };
|
eboard = callPackage ../games/eboard { };
|
||||||
|
|
Loading…
Add table
Reference in a new issue