1{
2 lib,
3 stdenv,
4 fetchurl,
5 love,
6 lua,
7 makeWrapper,
8 makeDesktopItem,
9}:
10
11let
12 pname = "mrrescue";
13 version = "1.02d";
14
15 icon = fetchurl {
16 url = "http://tangramgames.dk/img/thumb/mrrescue.png";
17 sha256 = "1y5ahf0m01i1ch03axhvp2kqc6lc1yvh59zgvgxw4w7y3jryw20k";
18 };
19
20 desktopItem = makeDesktopItem {
21 name = "mrrescue";
22 exec = pname;
23 icon = icon;
24 comment = "Arcade-style fire fighting game";
25 desktopName = "Mr. Rescue";
26 genericName = "mrrescue";
27 categories = [ "Game" ];
28 };
29
30in
31
32stdenv.mkDerivation {
33 name = "${pname}-${version}";
34
35 src = fetchurl {
36 url = "https://github.com/SimonLarsen/${pname}/releases/download/v${version}/${pname}-${version}.love";
37 sha256 = "0kzahxrgpb4vsk9yavy7f8nc34d62d1jqjrpsxslmy9ywax4yfpi";
38 };
39
40 nativeBuildInputs = [
41 lua
42 love
43 makeWrapper
44 ];
45
46 dontUnpack = true;
47
48 installPhase = ''
49 mkdir -p $out/bin
50 mkdir -p $out/share/games/lovegames
51
52 cp -v $src $out/share/games/lovegames/${pname}.love
53
54 makeWrapper ${love}/bin/love $out/bin/${pname} --add-flags $out/share/games/lovegames/${pname}.love
55
56 chmod +x $out/bin/${pname}
57 mkdir -p $out/share/applications
58 ln -s ${desktopItem}/share/applications/* $out/share/applications/
59 '';
60
61 meta = with lib; {
62 description = "Arcade-style fire fighting game";
63 mainProgram = "mrrescue";
64 maintainers = [ ];
65 platforms = platforms.linux;
66 license = licenses.zlib;
67 downloadPage = "http://tangramgames.dk/games/mrrescue";
68 };
69
70}