diff --git a/pkgs/by-name/sp/speed-dreams/package.nix b/pkgs/by-name/sp/speed-dreams/package.nix new file mode 100644 index 000000000000..b314ef9aeadc --- /dev/null +++ b/pkgs/by-name/sp/speed-dreams/package.nix @@ -0,0 +1,159 @@ +{ + lib, + stdenv, + libGLU, + libGL, + libglut, + libX11, + plib, + openal, + freealut, + libXrandr, + xorgproto, + libXext, + libSM, + libICE, + libXi, + libXt, + libXrender, + libXxf86vm, + openscenegraph, + expat, + libpng12, + zlib, + bash, + SDL2, + SDL2_mixer, + enet, + libjpeg, + cmake, + pkg-config, + libvorbis, + runtimeShell, + curl, + fetchgit, + cjson, + minizip, + rhash, + copyDesktopItems, +}: + +stdenv.mkDerivation rec { + version = "2.4.2"; + pname = "speed-dreams"; + + src = fetchgit { + url = "https://forge.a-lec.org/speed-dreams/speed-dreams-code.git"; + rev = "v${version}"; + sha256 = "sha256-ZY/0tf0wFbepEUNqpaBA4qgkWDij/joqPtbiF/48oN4="; + fetchSubmodules = true; + }; + NIX_CFLAGS_COMPILE = "-I${src}/src/libs/tgf -I${src}/src/libs/tgfdata -I${src}/src/interfaces -I${src}/src/libs/math -I${src}/src/libs/portability"; + + postInstall = '' + mkdir -p "$out/bin" + # Wrapper for main executable + cat > "$out/bin/speed-dreams" <> "$out/bin/$(basename "$i")" - echo "$i"' "$@"' >> "$out/bin/$(basename "$i")" - chmod a+x "$out/bin/$(basename "$i")" - done - - mkdir -p $out/share/pixmaps/ - ln -s "$out/share/games/speed-dreams-2/data/icons/icon.png" "$out/share/pixmaps/speed-dreams-2.png" - ''; - - desktopItems = [ - (makeDesktopItem { - name = "Speed Dreams 2"; - exec = "speed-dreams-2"; - icon = "speed-dreams-2.png"; - desktopName = "speed-dreams-2"; - comment = "The Open Racing Car Simulator Fork"; - categories = [ - "Application" - "Game" - ]; - }) - ]; - - # RPATH of binary /nix/store/.../lib64/games/speed-dreams-2/drivers/shadow_sc/shadow_sc.so contains a forbidden reference to /build/ - cmakeFlags = [ "-DCMAKE_SKIP_BUILD_RPATH=ON" ]; - - nativeBuildInputs = [ - pkg-config - cmake - copyDesktopItems - ]; - - buildInputs = [ - libpng - libGLU - libGL - libglut - libX11 - plib - openal - freealut - libXrandr - xorgproto - libXext - libSM - libICE - libXi - libXt - libXrender - libXxf86vm - zlib - bash - expat - SDL2 - SDL2_mixer - enet - libjpeg - openscenegraph - libvorbis - curl - ]; - - meta = { - description = "Car racing game - TORCS fork with more experimental approach"; - homepage = "https://speed-dreams.sourceforge.net/"; - license = lib.licenses.gpl2Plus; - maintainers = with lib.maintainers; [ raskin ]; - platforms = lib.platforms.linux; - hydraPlatforms = [ ]; - }; -} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 04751798c858..e601974af6a3 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -12616,12 +12616,6 @@ with pkgs; tibia = pkgsi686Linux.callPackage ../games/tibia { }; - speed_dreams = callPackage ../games/speed-dreams { - # Torcs wants to make shared libraries linked with plib libraries (it provides static). - # i686 is the only platform I know than can do that linking without plib built with -fPIC - libpng = libpng12; - }; - ultrastar-creator = libsForQt5.callPackage ../tools/misc/ultrastar-creator { }; ultrastar-manager = libsForQt5.callPackage ../tools/misc/ultrastar-manager { };