Three Games and Perl Support for Irssi

Here are four patches. Three of them add expressions for games. The
fourth, irssi-perl.patch, adds perl as an input for irssi, so that one
can run perl plugins in irssi. I didn't make the perl input optional,
but maybe it should be to keep the irssi expression light.

svn path=/nixpkgs/trunk/; revision=21813
This commit is contained in:
Peter Simons 2010-05-17 09:21:42 +00:00
parent 0dc24d9f04
commit 71f164ac1e
7 changed files with 155 additions and 3 deletions

View File

@ -1,4 +1,4 @@
{stdenv, fetchurl, pkgconfig, ncurses, glib, openssl}: {stdenv, fetchurl, pkgconfig, ncurses, glib, openssl, perl}:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "irssi-0.8.15"; name = "irssi-0.8.15";
@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
sha256 = "19m0aah9bhc70dnhh7kpydbsz5n35l0l9knxav1df0sic3xicbf1"; sha256 = "19m0aah9bhc70dnhh7kpydbsz5n35l0l9knxav1df0sic3xicbf1";
}; };
buildInputs = [pkgconfig ncurses glib openssl]; buildInputs = [pkgconfig ncurses glib openssl perl];
NIX_LDFLAGS = "-lncurses"; NIX_LDFLAGS = "-lncurses";

View File

@ -0,0 +1,24 @@
{ stdenv, fetchurl }:
let
versionNumber = "3.8";
in
stdenv.mkDerivation {
name = "gnugo-${versionNumber}";
src = fetchurl {
url = "mirror://gnu/gnugo/gnugo-${versionNumber}.tar.gz";
sha256 = "0wkahvqpzq6lzl5r49a4sd4p52frdmphnqsfdv7gdp24bykdfs6s";
};
meta = {
description = "GNU Go - A computer go player";
homepage = "http://http://www.gnu.org/software/gnugo/";
license = "GPLv3";
};
}

View File

@ -0,0 +1,34 @@
{ stdenv, fetchurl, arts, kdelibs, libX11, libXext, libXt, perl, qt3, zlib }:
let
versionNumber = "0.5.3";
in
stdenv.mkDerivation {
name = "six-${versionNumber}";
src = fetchurl {
url = "http://six.retes.hu/download/six-${versionNumber}.tar.gz";
sha256 = "0hialm0kxr11rp5z452whjmxp2vaqqj668d0dfs32fd10ggi8wj4";
};
meta = {
description = "Six - A Hex playing program for KDE";
homepage = http://six.retes.hu/;
license = "GPLv2";
};
buildInputs = [ arts kdelibs libX11 libXext libXt perl qt3 zlib ];
# Supress some warnings which are less useful to us when making packages.
NIX_CFLAGS_COMPILE = "-Wno-conversion -Wno-parentheses";
# Without "--x-libraries=", we get the error
# "impure path `/usr/lib' used in link".
configureFlags = "--x-libraries=";
patches = [ ./gcc43-includes.patch ];
}

View File

@ -0,0 +1,38 @@
This patch makes six compile with gcc 4.3 by including more header files. It
is based on the advice at <http://gcc.gnu.org/gcc-4.3/porting_to.html>.
--- a/six/carrier.h
+++ b/six/carrier.h
@@ -2,6 +2,7 @@
#ifndef CARRIER_H
#define CARRIER_H
+#include <cstring>
#include <iostream>
#include <vector>
diff --git a/six/hexgame.cpp b/six/hexgame.cpp
index 720e977..5d0dafe 100644
--- a/six/hexgame.cpp
+++ b/six/hexgame.cpp
@@ -3,6 +3,7 @@
#include <cassert>
#include <cctype>
#include <cstdio>
+#include <cstdlib>
#include <string>
diff --git a/six/main.cpp b/six/main.cpp
index 7fb5c21..b925a0c 100644
--- a/six/main.cpp
+++ b/six/main.cpp
@@ -4,6 +4,8 @@
#include "carrier.h"
#include "misc.h"
+#include <cstdlib>
+
#include <kapp.h>
#include <dcopclient.h>
#include <kaboutdata.h>

View File

@ -0,0 +1,28 @@
{ fetchurl, stdenv, SDL, SDL_image, SDL_mixer, curl, gettext, libogg, libvorbis, mesa, openal }:
let
version = "0.1.3";
in
stdenv.mkDerivation {
name = "supertux-${version}";
src = fetchurl {
url = "http://download.berlios.de/supertux/supertux-${version}.tar.bz2";
sha256 = "15xdq99jy4hayr96jpqcp15rbr9cs5iamjirafajcrkpa61mi4h0";
};
buildInputs = [ SDL SDL_image SDL_mixer curl gettext libogg libvorbis mesa openal ];
patches = [ ./g++4.patch ];
meta = {
description = "SuperTux is a classic 2D jump'n run sidescroller game in a style similar to the original Super Mario games covered under the GPL.";
homepage = http://supertux.lethargik.org/index.html;
license = "GPLv2";
};
}

View File

@ -0,0 +1,13 @@
diff --git a/src/menu.h b/src/menu.h
index 3c67c45..7c7ab8e 100644
--- a/src/menu.h
+++ b/src/menu.h
@@ -207,7 +207,7 @@ public:
bool isToggled(int id);
- void Menu::get_controlfield_key_into_input(MenuItem *item);
+ void get_controlfield_key_into_input(MenuItem *item);
void draw ();
void draw_item(int index, int menu_width, int menu_height);

View File

@ -7963,7 +7963,7 @@ let
}; };
irssi = import ../applications/networking/irc/irssi { irssi = import ../applications/networking/irc/irssi {
inherit stdenv fetchurl pkgconfig ncurses openssl glib; inherit stdenv fetchurl pkgconfig ncurses openssl glib perl;
}; };
jackmeter = import ../applications/audio/jackmeter { jackmeter = import ../applications/audio/jackmeter {
@ -8944,6 +8944,10 @@ let
flex = flex2535; flex = flex2535;
}; };
gnugo = import ../games/gnugo {
inherit stdenv fetchurl;
};
gparted = import ../tools/misc/gparted { gparted = import ../tools/misc/gparted {
inherit fetchurl stdenv parted intltool gettext libuuid pkgconfig libxml2; inherit fetchurl stdenv parted intltool gettext libuuid pkgconfig libxml2;
inherit (gtkLibs) gtk glib gtkmm; inherit (gtkLibs) gtk glib gtkmm;
@ -9015,6 +9019,13 @@ let
inherit (xlibs) libX11; inherit (xlibs) libX11;
}; };
six = import ../games/six {
inherit stdenv fetchurl;
inherit perl zlib qt3;
inherit (kde3) arts kdelibs;
inherit (xlibs) libX11 libXt libXext;
};
# You still can override by passing more arguments. # You still can override by passing more arguments.
spaceOrbit = composedArgsAndFun (import ../games/orbit/1.01.nix) { spaceOrbit = composedArgsAndFun (import ../games/orbit/1.01.nix) {
inherit fetchurl stdenv builderDefs mesa freeglut; inherit fetchurl stdenv builderDefs mesa freeglut;
@ -9022,6 +9033,10 @@ let
inherit (xlibs) libXt libX11 libXmu libXi libXext; inherit (xlibs) libXt libX11 libXmu libXi libXext;
}; };
superTux = import ../games/super-tux {
inherit fetchurl stdenv SDL SDL_image SDL_mixer curl gettext libogg libvorbis mesa openal;
};
superTuxKart = import ../games/super-tux-kart { superTuxKart = import ../games/super-tux-kart {
inherit fetchurl stdenv plib SDL openal freealut mesa inherit fetchurl stdenv plib SDL openal freealut mesa
libvorbis libogg gettext; libvorbis libogg gettext;