about summary refs log tree commit diff
path: root/pkgs/by-name/al
diff options
context:
space:
mode:
authorEmery Hemingway <ehmry@posteo.net>2023-11-28 17:32:56 +0200
committerEmery Hemingway <ehmry@posteo.net>2023-12-10 09:25:34 +0000
commit0ee3c7813135bf471578e45d83b4b78c6b00d13d (patch)
tree9e11b9f19c9e4606793ec923aa417609650c8c9e /pkgs/by-name/al
parent54e610eab8a3556862d34366885096b504bbf976 (diff)
alephone, alephone-*: move to pkgs/by-name
Diffstat (limited to 'pkgs/by-name/al')
-rw-r--r--pkgs/by-name/al/alephone-apotheosis-x/package.nix20
-rw-r--r--pkgs/by-name/al/alephone-durandal/package.nix25
-rw-r--r--pkgs/by-name/al/alephone-eternal/package.nix21
-rw-r--r--pkgs/by-name/al/alephone-evil/package.nix18
-rw-r--r--pkgs/by-name/al/alephone-infinity/package.nix25
-rw-r--r--pkgs/by-name/al/alephone-marathon/package.nix25
-rw-r--r--pkgs/by-name/al/alephone-pathways-into-darkness/package.nix19
-rw-r--r--pkgs/by-name/al/alephone-pheonix/package.nix18
-rw-r--r--pkgs/by-name/al/alephone-red/package.nix18
-rw-r--r--pkgs/by-name/al/alephone-rubicon-x/package.nix23
-rw-r--r--pkgs/by-name/al/alephone-yuge/package.nix18
-rw-r--r--pkgs/by-name/al/alephone/package.nix102
12 files changed, 332 insertions, 0 deletions
diff --git a/pkgs/by-name/al/alephone-apotheosis-x/package.nix b/pkgs/by-name/al/alephone-apotheosis-x/package.nix
new file mode 100644
index 0000000000000..16bed9fad97e8
--- /dev/null
+++ b/pkgs/by-name/al/alephone-apotheosis-x/package.nix
@@ -0,0 +1,20 @@
+{ alephone, requireFile }:
+
+alephone.makeWrapper rec {
+  pname = "apotheosis-x";
+  version = "1.1";
+  desktopName = "Marathon-Apotheosis-X";
+
+  zip = requireFile {
+    name = "Apotheosis_X_1.1.zip";
+    url = "https://www.moddb.com/mods/apotheosis-x/downloads";
+    sha256 = "sha256-4Y/RQQeN4VTpig8ZyxUpVHwzN8W8ciTBCkSzND8SMbs=";
+  };
+
+  sourceRoot = "Apotheosis X 1.1";
+
+  meta = {
+    description = "Total conversion for Marathon Infinity running on the Aleph One engine";
+    homepage = "https://simplici7y.com/items/apotheosis-x-5";
+  };
+}
diff --git a/pkgs/by-name/al/alephone-durandal/package.nix b/pkgs/by-name/al/alephone-durandal/package.nix
new file mode 100644
index 0000000000000..cd7927d69a141
--- /dev/null
+++ b/pkgs/by-name/al/alephone-durandal/package.nix
@@ -0,0 +1,25 @@
+{ alephone, fetchurl }:
+
+alephone.makeWrapper rec {
+  pname = "durandal";
+  desktopName = "Marathon-Durandal";
+  version = "20230119";
+  icon = alephone.icons + "/marathon2.png";
+
+  zip = fetchurl {
+    url =
+      "https://github.com/Aleph-One-Marathon/alephone/releases/download/release-${version}/Marathon2-${version}-Data.zip";
+    sha256 = "sha256-Vbfk5wLgvNEZW2BohMY5mPXaRbNlHxJdWLYTsE8CSwI=";
+  };
+
+  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";
+  };
+
+}
diff --git a/pkgs/by-name/al/alephone-eternal/package.nix b/pkgs/by-name/al/alephone-eternal/package.nix
new file mode 100644
index 0000000000000..c212841506186
--- /dev/null
+++ b/pkgs/by-name/al/alephone-eternal/package.nix
@@ -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/";
+  };
+
+}
diff --git a/pkgs/by-name/al/alephone-evil/package.nix b/pkgs/by-name/al/alephone-evil/package.nix
new file mode 100644
index 0000000000000..a0120348c14e5
--- /dev/null
+++ b/pkgs/by-name/al/alephone-evil/package.nix
@@ -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";
+  };
+
+}
diff --git a/pkgs/by-name/al/alephone-infinity/package.nix b/pkgs/by-name/al/alephone-infinity/package.nix
new file mode 100644
index 0000000000000..c49f9a8d2ac72
--- /dev/null
+++ b/pkgs/by-name/al/alephone-infinity/package.nix
@@ -0,0 +1,25 @@
+{ alephone, fetchurl }:
+
+alephone.makeWrapper rec {
+  pname = "marathon-infinity";
+  desktopName = "Marathon-Infinity";
+  version = "20230119";
+  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 = "sha256-0+xokhzWdXM+L4DBjWnfNVXZve4n1X/Aq6rxNGAFb3Q=";
+  };
+
+  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 Lh’owon,” is a 20-level scenario sporting new textures, weapons, and aliens. More than that, the scenario sheds a surprising new light on the story’s characters and the meaning of events. Having defeated the Pfhor and reawakened the ancient remnants of the S’pht, 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";
+  };
+
+}
diff --git a/pkgs/by-name/al/alephone-marathon/package.nix b/pkgs/by-name/al/alephone-marathon/package.nix
new file mode 100644
index 0000000000000..ea295b7dcdce7
--- /dev/null
+++ b/pkgs/by-name/al/alephone-marathon/package.nix
@@ -0,0 +1,25 @@
+{ alephone, fetchurl }:
+
+alephone.makeWrapper rec {
+  pname = "marathon";
+  desktopName = "Marathon";
+  version = "20230119";
+  icon = alephone.icons + "/marathon.png";
+
+  zip = fetchurl {
+    url =
+      "https://github.com/Aleph-One-Marathon/alephone/releases/download/release-${version}/Marathon-${version}-Data.zip";
+    sha256 = "sha256-uz/1ZW9epd1HP/pzTNN3d2EEbOzjj0qpdMkrVoxb8Aw=";
+  };
+
+  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 Bungie’s 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";
+  };
+
+}
diff --git a/pkgs/by-name/al/alephone-pathways-into-darkness/package.nix b/pkgs/by-name/al/alephone-pathways-into-darkness/package.nix
new file mode 100644
index 0000000000000..6c6de4b88e8f0
--- /dev/null
+++ b/pkgs/by-name/al/alephone-pathways-into-darkness/package.nix
@@ -0,0 +1,19 @@
+{ alephone, fetchurl }:
+
+alephone.makeWrapper rec {
+  pname = "pathways-into-darkness";
+  desktopName = "Pathways-Into-Darkness";
+  version = "1.1.1";
+
+  zip = fetchurl {
+    url = "http://simplici7y.com/version/file/1185/AOPID_v1.1.1.zip";
+    sha256 = "0x83xjcw5n5s7sw8z6rb6zzhihjkjgk7x7ynnqq917dcklr7bz4g";
+  };
+
+  meta = {
+    description = ''
+      Port of the 1993 mac game "Pathways Into Darkness" by Bungie to the Aleph One engine'';
+    homepage = "http://simplici7y.com/items/aleph-one-pathways-into-darkness";
+  };
+
+}
diff --git a/pkgs/by-name/al/alephone-pheonix/package.nix b/pkgs/by-name/al/alephone-pheonix/package.nix
new file mode 100644
index 0000000000000..90db1aa7c73d6
--- /dev/null
+++ b/pkgs/by-name/al/alephone-pheonix/package.nix
@@ -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";
+  };
+
+}
diff --git a/pkgs/by-name/al/alephone-red/package.nix b/pkgs/by-name/al/alephone-red/package.nix
new file mode 100644
index 0000000000000..f24c9010cd633
--- /dev/null
+++ b/pkgs/by-name/al/alephone-red/package.nix
@@ -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";
+  };
+
+}
diff --git a/pkgs/by-name/al/alephone-rubicon-x/package.nix b/pkgs/by-name/al/alephone-rubicon-x/package.nix
new file mode 100644
index 0000000000000..b59fa4cfeb626
--- /dev/null
+++ b/pkgs/by-name/al/alephone-rubicon-x/package.nix
@@ -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 Bungie’s 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/";
+  };
+
+}
diff --git a/pkgs/by-name/al/alephone-yuge/package.nix b/pkgs/by-name/al/alephone-yuge/package.nix
new file mode 100644
index 0000000000000..6ae73f984a4fc
--- /dev/null
+++ b/pkgs/by-name/al/alephone-yuge/package.nix
@@ -0,0 +1,18 @@
+{ alephone, fetchurl }:
+
+alephone.makeWrapper rec {
+  pname = "yuge";
+  version = "0";
+  desktopName = "Marathon-Yuge";
+
+  zip = fetchurl {
+    url = "https://lochnits.com/marathon/yuge/files/Mararthon_Yuge.zip";
+    sha256 = "sha256-dZHInYThB/4igpAXbUadXwPvh2Fl3XGZ4ficg7IEnNc=";
+  };
+
+  meta = {
+    description =
+      "30 level Marathon scenario, plus 225 secret levels for many extra hours of gameplay";
+    homepage = "https://lochnits.com/marathon/yuge/";
+  };
+}
diff --git a/pkgs/by-name/al/alephone/package.nix b/pkgs/by-name/al/alephone/package.nix
new file mode 100644
index 0000000000000..1bf732e446bfd
--- /dev/null
+++ b/pkgs/by-name/al/alephone/package.nix
@@ -0,0 +1,102 @@
+{ lib, stdenv, fetchurl, alsa-lib, boost, curl, ffmpeg_4, icoutils, libGLU
+, libmad, libogg, libpng, libsndfile, libvorbis, lua, miniupnpc, pkg-config
+, SDL2, SDL2_image, SDL2_net, SDL2_ttf, speex, zziplib, zlib, makeWrapper
+, makeDesktopItem, unzip, alephone }:
+
+let
+  self = stdenv.mkDerivation rec {
+    outputs = [ "out" "icons" ];
+    pname = "alephone";
+    version = "1.6.2";
+
+    src = fetchurl {
+      url = let date = "20230529";
+      in "https://github.com/Aleph-One-Marathon/alephone/releases/download/release-${date}/AlephOne-${date}.tar.bz2";
+      sha256 = "sha256-UqhZvOMOxU4W0eLRRTQvGXaqTpWD5KIdXULClHW7Iyc=";
+    };
+
+    nativeBuildInputs = [ pkg-config icoutils ];
+
+    buildInputs = [
+      alsa-lib
+      boost
+      curl
+      ffmpeg_4
+      libGLU
+      libmad
+      libsndfile
+      libogg
+      libpng
+      libvorbis
+      lua
+      miniupnpc
+      SDL2
+      SDL2_image
+      SDL2_net
+      SDL2_ttf
+      speex
+      zziplib
+      zlib
+    ];
+
+    configureFlags = [ "--with-boost-libdir=${boost.out}/lib" ];
+    makeFlags = [ "AR:=$(AR)" ];
+
+    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 lib; {
+      description =
+        "Aleph One is the open source continuation of Bungie’s 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
+      '';
+    } // extraArgs // {
+      meta = alephone.meta // {
+        license = lib.licenses.free;
+        hydraPlatforms = [ ];
+      } // meta;
+    });
+}