pytrainer: unpin python 3.10
[NixPkgs.git] / pkgs / games / freedroidrpg / default.nix
blob8c9b3e0cbf0d754511e8dca28b7191f71742775a
1 { fetchurl, lib, stdenv, pkg-config, gettext, glew, python3, SDL, SDL_image, SDL_gfx, SDL_mixer, libogg, libvorbis, lua5_3, libjpeg, libpng, zlib, libiconv }:
3 let
4   version = "1.0";
5 in stdenv.mkDerivation {
6   pname = "freedroidrpg";
7   inherit version;
9   src = fetchurl {
10     url = "ftp://ftp.osuosl.org/pub/freedroid/freedroidRPG-${lib.versions.majorMinor version}/freedroidRPG-${version}.tar.gz";
11     hash = "sha256-eZW3C1lCSOoU0bTvWVOXpgGDAxyZFjsBwainDM7zu88=";
12   };
14   patches = [
15     # Do not embed build flags in the binary to reduce closure size.
16     ./drop-build-deps.patch
17   ];
19   nativeBuildInputs = [ pkg-config gettext python3 ];
21   buildInputs = [
22     glew SDL SDL_image SDL_gfx SDL_mixer libogg libvorbis lua5_3 libjpeg libpng zlib
23   ] ++ lib.optional stdenv.hostPlatform.isDarwin libiconv;
25   enableParallelBuilding = true;
27   meta = with lib; {
28     description = "Isometric 3D RPG similar to game Diablo";
29     mainProgram = "freedroidRPG";
31     longDescription = ''
32       <para>
33         FreedroidRPG is an original isometric 3D role playing game
34         taking place in the future, on Earth. It features action and
35         dialogs.
36       </para>
37       <para>
38         The game tells the story of a world destroyed by a conflict between
39         robots and their human masters. Play as Tux in a quest to save the
40         world from the murderous rebel bots who know no mercy. You get to
41         choose which path you wish to follow, and freedom of choice is
42         everywhere in the game.
43       </para>
44       <para>
45         FreedroidRPG features a real time combat system with melee and
46         ranged weapons, fairly similar to the proprietary game Diablo.
47         There is an innovative system of programs that can be run in order
48         to take control of enemy robots, alter their behavior, or improve one's
49         characteristics. You can use over 50 different kinds of items and
50         fight countless enemies on your way to your destiny. An advanced
51         dialog system provides story background and immersive role
52         playing situations.
53       </para>
54       <para>
55         The game is complete, fully playable, and can provide about
56         12 hours of fun. It is still being actively developed, and
57         help is welcome in many areas. People having - or trying to acquire -
58         programming, map editing, or writing skills will find FreedroidRPG
59         to be an exciting, fast-moving project in which they can fully
60         express their creativity.
61       </para>
62     '';
64     homepage = "https://www.freedroid.org/";
66     license = licenses.gpl2Plus;
68     maintainers = [ ];
69     platforms = platforms.unix;
70     hydraPlatforms = platforms.linux; # sdl-config times out on darwin
71   };