summary refs log tree commit diff
path: root/pkgs/games/orbit/1.01.nix
blob: 1d122643f6585ff828e9a4f54ca6a9722457bbf0 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
args : with args; with builderDefs;
	let localDefs = builderDefs.passthru.function (rec {
		src = /* put a fetchurl here */
		fetchurl {
			sha256 = "1kx69f9jqnfzwjh47cl1df8p8hn3bnp6bznxnb6c4wx32ijn5gri";
			url = http://ftp.de.debian.org/debian/pool/main/s/space-orbit/space-orbit_1.01.orig.tar.gz;
		};

		buildInputs = [mesa libXi libXt libXext libX11 libXmu freeglut esound];
		configureFlags = [];
		debianPatch = 
		fetchurl {
			url = http://ftp.de.debian.org/debian/pool/main/s/space-orbit/space-orbit_1.01-9.diff.gz;
			sha256 = "1v3s97day6fhv08l2rn81waiprhi1lfyjjsj55axfh6n6zqfn1w2";
		};
		customBuild = FullDepEntry (''
			gunzip < ${debianPatch} | patch -Np1
                        cd src
			sed -e 's@/usr/share/games/orbit/@'$out'/dump/@g' -i *.c
                        sed -e '/DIR=/d' -i Makefile 
                        make 
                        ensureDir $out/bin
                        cp -r .. $out/dump
                        cat >$out/bin/space-orbit <<EOF
#! /bin/sh
$out/dump/orbit "\$@"
EOF
                        chmod a+x $out/bin/space-orbit
		'') ["minInit" "doUnpack" "defEnsureDir" "addInputs"];
	});
	in with localDefs;
stdenv.mkDerivation rec {
	name = "space-orbit-"+version;
	builder = writeScript (name + "-builder")
		(textClosure localDefs 
			[ customBuild doForceShare doPropagate]);
	meta = {
		description = "Orbit space flight simulator";
		inherit src;
	};
}