alephone: init at 20150620

Packaging of the AlephOne engine and eight of its scenarios.
This commit is contained in:
Emery Hemingway 2020-02-11 21:32:39 +01:00
parent f9ff420f0e
commit 6dd9ed79fe
10 changed files with 282 additions and 0 deletions

View file

@ -0,0 +1,99 @@
{ stdenv, fetchurl, boost, curl, ffmpeg, icoutils, libmad, libogg, libpng
, libsndfile, libvorbis, lua, pkgconfig, SDL, SDL_image, SDL_net, SDL_ttf, smpeg
, speex, zziplib, zlib, makeWrapper, makeDesktopItem, unzip, alephone }:
let
self = stdenv.mkDerivation rec {
outputs = [ "out" "icons" ];
pname = "alephone";
version = "20150620";
src = fetchurl {
url =
"https://github.com/Aleph-One-Marathon/alephone/releases/download/release-${version}/AlephOne-${version}.tar.bz2";
sha256 = "0cz18fa3gx8mz5j09ywz8gq0r4q082kh6l9pbpwn8qjanzgn1wy0";
};
nativeBuildInputs = [ pkgconfig icoutils ];
buildInputs = [
boost
curl
ffmpeg
libmad
libsndfile
libogg
libpng
libvorbis
lua
SDL
SDL_image
SDL_net
SDL_ttf
smpeg
speex
zziplib
zlib
];
configureFlags = [ "--with-boost=${boost}" ];
enableParallelBuilding = true;
postInstall = ''
mkdir $icons
icotool -x -i 5 -o $icons Resources/Windows/*.ico
pushd $icons
for x in *_5_48x48x32.png; do
mv $x ''${x%_5_48x48x32.png}.png
done
popd
'';
meta = with stdenv.lib; {
description =
"Aleph One is the open source continuation of Bungies Marathon 2 game engine";
homepage = "https://alephone.lhowon.org/";
license = with licenses; [ gpl3 ];
maintainers = with maintainers; [ ehmry ];
platforms = platforms.linux;
};
};
in self // {
makeWrapper = { pname, desktopName, version, zip, meta
, icon ? alephone.icons + "/alephone.png", ... }@extraArgs:
stdenv.mkDerivation ({
inherit pname version;
desktopItem = makeDesktopItem {
name = desktopName;
exec = pname;
genericName = pname;
categories = "Game;";
comment = meta.description;
inherit desktopName icon;
};
src = zip;
nativeBuildInputs = [ makeWrapper unzip ];
dontConfigure = true;
dontBuild = true;
installPhase = ''
mkdir -p $out/bin $out/data/$pname $out/share/applications
cp -a * $out/data/$pname
cp $desktopItem/share/applications/* $out/share/applications
makeWrapper ${alephone}/bin/alephone $out/bin/$pname \
--add-flags $out/data/$pname
'';
meta = with stdenv.lib;
{
maintainers = with maintainers; [ ehmry ];
inherit (alephone.meta) platforms;
} // meta;
} // extraArgs);
}

View file

@ -0,0 +1,25 @@
{ alephone, fetchurl }:
alephone.makeWrapper rec {
pname = "durandal";
desktopName = "Marathon-Durandal";
version = "20150620";
icon = alephone.icons + "/marathon2.png";
zip = fetchurl {
url =
"https://github.com/Aleph-One-Marathon/alephone/releases/download/release-${version}/Marathon2-${version}-Data.zip";
sha256 = "1gpg0dk3z8irvdkm4nj71v14lqx77109chqr2ly594jqf6j9wwqv";
};
meta = {
description = "Second chapter of the Marathon trilogy";
longDescription = ''
Fresh from your triumph on the starship Marathon, you are seized by the rogue computer Durandal to do his bidding in a distant part of the galaxy. Within the ruins of an ancient civilization, you must seek the remnants of a lost clan and uncover their long-buried secrets. Battle opponents ancient and terrible, with sophisticated weapons and devious strategies, all the while struggling to escape the alien nightmare
This release of Marathon 2: Durandal includes the classic graphics, and revamped high-definition textures and monsters from the Xbox Live Arcade edition.
'';
homepage = "https://alephone.lhowon.org/games/marathon2.html";
};
}

View file

@ -0,0 +1,21 @@
{ alephone, fetchurl, unrar }:
alephone.makeWrapper rec {
pname = "marathon-eternal";
version = "1.2.0";
desktopName = "Marathon-Eternal";
zip = fetchurl {
url = "http://eternal.bungie.org/files/_releases/EternalXv120.zip";
sha256 = "1qrvx0sp9xc8zbpp5yz8jdz458ajzmyv2si7hrppiyawc8dpcwck";
};
sourceRoot = "Eternal 1.2.0";
meta = {
description =
"Picking up from the end of the Marathon trilogy, you find yourself suddenly ninety-four years in the future, in the year 2905";
homepage = "http://eternal.bungie.org/";
};
}

View file

@ -0,0 +1,18 @@
{ alephone, fetchurl, unrar }:
alephone.makeWrapper rec {
pname = "marathon-evil";
version = "0";
desktopName = "Marathon-Evil";
zip = fetchurl {
url = "http://files3.bungie.org/trilogy/MarathonEvil.zip";
sha256 = "08nizbjp2rx10bpqrbhb76as0j2zynmy2c0qa5b482lz1szf9b95";
};
meta = {
description = "The first conversion for Marathon Infinity";
homepage = "https://alephone.lhowon.org/scenarios.html";
};
}

View file

@ -0,0 +1,25 @@
{ alephone, fetchurl }:
alephone.makeWrapper rec {
pname = "marathon-infinity";
desktopName = "Marathon-Infinity";
version = "20150620";
icon = alephone.icons + "/marathon-infinity.png";
zip = fetchurl {
url =
"https://github.com/Aleph-One-Marathon/alephone/releases/download/release-${version}/MarathonInfinity-${version}-Data.zip";
sha256 = "0sgfahppanp9c0p115dg0makrdzghzmbz3iggl6x28fh62j03q64";
};
meta = {
description = "Third chapter of the Marathon trilogy";
longDescription = ''
Marathon Infinity takes the closed universe of the Marathon series and blows it wide open. The solo/co-op campaign, Blood Tides of Lhowon, is a 20-level scenario sporting new textures, weapons, and aliens. More than that, the scenario sheds a surprising new light on the storys characters and the meaning of events. Having defeated the Pfhor and reawakened the ancient remnants of the Spht, the player now faces a world where friends become enemies and all is not what it seems
Marathon Infinity is the most popular Marathon game in online play, and is compatible with hundreds of community-made maps. This release includes the classic graphics, and revamped high-definition textures and weapons.
'';
homepage = "https://alephone.lhowon.org/games/infinity.html";
};
}

View file

@ -0,0 +1,25 @@
{ alephone, fetchurl }:
alephone.makeWrapper rec {
pname = "marathon";
desktopName = "Marathon";
version = "20150620";
icon = alephone.icons + "/marathon.png";
zip = fetchurl {
url =
"https://github.com/Aleph-One-Marathon/alephone/releases/download/release-${version}/Marathon-${version}-Data.zip";
sha256 = "0cagsigsjlsr8jqfaqjdxv8fs0f079cjzs26679aacyykc6b8k3p";
};
meta = {
description = "First chapter of the Marathon trilogy";
longDescription = ''
Alien forces have boarded the interstellar colony ship Marathon. The situation is dire. As a security officer onboard, it is your duty to defend the ship and its crew.
Experience the start of Bungies iconic trilogy with Marathon. This release uses the original Marathon data files for the most authentic experience outside of a classic Mac or emulator.
'';
homepage = "https://alephone.lhowon.org/games/marathon.html";
};
}

View file

@ -0,0 +1,18 @@
{ alephone, fetchurl }:
alephone.makeWrapper rec {
pname = "marathon-pheonix";
desktopName = "Marathon-Pheonix";
version = "1.3";
zip = fetchurl {
url = "http://simplici7y.com/version/file/998/Marathon_Phoenix_1.3.zip";
sha256 = "1r06k0z8km7l9d3njinsrci4jhk8hrnjdcmjd8n5z2qxkqvhn9qj";
};
meta = {
description = "A 35-level single player major Marathon conversion";
homepage = "http://www.simplici7y.com/items/marathon-phoenix-2";
};
}

View file

@ -0,0 +1,18 @@
{ alephone, fetchurl, unrar }:
alephone.makeWrapper rec {
pname = "marathon-red";
version = "0";
desktopName = "Marathon-Red";
zip = fetchurl {
url = "http://files3.bungie.org/trilogy/MarathonRED.zip";
sha256 = "1p13snlrvn39znvfkxql67crhysn71db2bwsfrkhjkq58wzs6qgw";
};
meta = {
description = "Survival horror-esque Marathon conversion";
homepage = "https://alephone.lhowon.org/scenarios.html";
};
}

View file

@ -0,0 +1,23 @@
{ alephone, fetchurl }:
alephone.makeWrapper rec {
pname = "rubicon-x";
version = "20150620";
desktopName = "Marathon-Rubicon-X";
zip = fetchurl {
url = "http://files5.bungie.org/marathon/marathonRubiconX.zip";
sha256 = "095si89wap76pvkvk90zqw7djhrhwb1anjm2s8i503jbcn5n4ipm";
};
sourceRoot = "Rubicon X ƒ";
meta = {
description = "Unofficial forth chapter of the Marathon series";
longDescription = ''
Rubicon X is a free, cross platform, first person shooter that continues the story of Bungies Marathon trilogy. First released as Marathon:Rubicon in 2001, Rubicon X is a complete overhaul of the original. It features all new high-resolution artwork, new and updated maps, and enough surprises to feel like a whole new game.
'';
homepage = "http://www.marathonrubicon.com/";
};
}

View file

@ -22903,6 +22903,16 @@ in
airstrike = callPackage ../games/airstrike { };
alephone = callPackage ../games/alephone { ffmpeg = ffmpeg_2; };
alephone-durandal = callPackage ../games/alephone/durandal { };
alephone-eternal = callPackage ../games/alephone/eternal { };
alephone-evil = callPackage ../games/alephone/evil { };
alephone-infinity = callPackage ../games/alephone/infinity { };
alephone-marathon = callPackage ../games/alephone/marathon { };
alephone-pheonix = callPackage ../games/alephone/pheonix { };
alephone-red = callPackage ../games/alephone/red { };
alephone-rubicon-x = callPackage ../games/alephone/rubicon-x { };
alienarena = callPackage ../games/alienarena { };
amoeba = callPackage ../games/amoeba { };