1
0
Fork 1
mirror of https://github.com/NixOS/nixpkgs.git synced 2024-11-19 04:02:10 +00:00

maelstrom: init at 3.0.7 (#114179)

* maelstrom: init at 3.0.7

* maelstrom: fix license and add patch docs
This commit is contained in:
Travis Whitton 2021-03-11 08:50:31 -05:00 committed by GitHub
parent cf131dbcbe
commit 32b9415613
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 83 additions and 0 deletions

View file

@ -0,0 +1,39 @@
{ lib, stdenv, fetchurl, makeDesktopItem, SDL2, SDL2_net }:
stdenv.mkDerivation rec {
pname = "maelstrom";
version = "3.0.7";
src = fetchurl {
url = "http://www.libsdl.org/projects/Maelstrom/src/Maelstrom-${version}.tar.gz";
sha256 = "0dm0m5wd7amrsa8wnrblkv34sq4v4lglc2wfx8klfkdhyhi06s4k";
};
# this fixes a typedef compilation error with gcc-3.x
patches = [ ./fix-compilation.patch ];
buildInputs = [ SDL2 SDL2_net ];
postInstall = ''
mkdir -p $out/bin
ln -s $out/games/Maelstrom/Maelstrom $out/bin/maelstrom
'';
desktopItems = [
(makeDesktopItem {
name = "maelstrom";
exec = "maelstrom";
desktopName = "Maelstrom";
genericName = "Maelstrom";
comment = "An arcade-style game resembling Asteroids";
categories = "Game;";
})
];
meta = with lib; {
description = "An arcade-style game resembling Asteroids";
license = licenses.gpl2Plus;
platforms = platforms.all;
maintainers = with maintainers; [ tmountain ];
};
}

View file

@ -0,0 +1,42 @@
diff -Naur Maelstrom-3.0.7/buttonlist.h Maelstrom-3.0.7-patched/buttonlist.h
--- Maelstrom-3.0.7/buttonlist.h 2000-01-25 11:41:32.000000000 -0500
+++ Maelstrom-3.0.7-patched/buttonlist.h 2021-02-22 08:34:01.000000000 -0500
@@ -16,7 +16,7 @@
void Add_Button(Uint16 x, Uint16 y, Uint16 width, Uint16 height,
void (*callback)(void)) {
- struct button *belem;
+ button *belem;
for ( belem=&button_list; belem->next; belem=belem->next );
belem->next = new button;
@@ -30,7 +30,7 @@
}
void Activate_Button(Uint16 x, Uint16 y) {
- struct button *belem;
+ button *belem;
for ( belem=button_list.next; belem; belem=belem->next ) {
if ( (x >= belem->x1) && (x <= belem->x2) &&
@@ -42,7 +42,7 @@
}
void Delete_Buttons(void) {
- struct button *belem, *btemp;
+ button *belem, *btemp;
for ( belem=button_list.next; belem; ) {
btemp = belem;
diff -Naur Maelstrom-3.0.7/main.cpp Maelstrom-3.0.7-patched/main.cpp
--- Maelstrom-3.0.7/main.cpp 2021-02-04 11:50:27.000000000 -0500
+++ Maelstrom-3.0.7-patched/main.cpp 2021-02-22 08:34:34.000000000 -0500
@@ -153,7 +153,7 @@
error("or\n");
error("Usage: %s <options>\n\n", progname);
error("Where <options> can be any of:\n\n"
-" -fullscreen # Run Maelstrom in full-screen mode\n"
+" -windowed # Run Maelstrom in windowed mode\n"
" -gamma [0-8] # Set the gamma correction\n"
" -volume [0-8] # Set the sound volume\n"
" -netscores # Use the world-wide network score server\n"

View file

@ -511,6 +511,8 @@ in
madonctl = callPackage ../applications/misc/madonctl { };
maelstrom = callPackage ../games/maelstrom { };
copyDesktopItems = makeSetupHook { } ../build-support/setup-hooks/copy-desktop-items.sh;
makeDesktopItem = callPackage ../build-support/make-desktopitem { };