Merge pull request #140064 from bbigras/starsector

authored by Sandro and committed by GitHub b21b2e38 0f78b03a

+61
+57
pkgs/games/starsector/default.nix
···
··· 1 + { lib 2 + , alsa-lib 3 + , fetchzip 4 + , libXxf86vm 5 + , makeWrapper 6 + , openjdk 7 + , stdenv 8 + , xorg 9 + }: 10 + 11 + stdenv.mkDerivation rec { 12 + pname = "starsector"; 13 + version = "0.95a-RC15"; 14 + 15 + src = fetchzip { 16 + url = "https://s3.amazonaws.com/fractalsoftworks/starsector/starsector_linux-${version}.zip"; 17 + sha256 = "sha256-/5ij/079aOad7otXSFFcmVmiYQnMX/0RXGOr1j0rkGY="; 18 + }; 19 + 20 + nativeBuildInputs = [ makeWrapper ]; 21 + buildInputs = with xorg; [ 22 + alsa-lib 23 + libXxf86vm 24 + ]; 25 + 26 + dontBuild = true; 27 + 28 + # need to cd into $out in order for classpath to pick up correct jar files 29 + installPhase = '' 30 + mkdir -p $out/bin 31 + rm -r jre_linux # remove jre7 32 + rm starfarer.api.zip 33 + cp -r ./* $out 34 + 35 + wrapProgram $out/starsector.sh \ 36 + --prefix PATH : ${lib.makeBinPath [ openjdk ]} \ 37 + --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath buildInputs} \ 38 + --run "mkdir -p \$XDG_DATA_HOME/starsector; cd $out" 39 + ln -s $out/starsector.sh $out/bin/starsector 40 + ''; 41 + 42 + # it tries to run everything with relative paths, which makes it CWD dependent 43 + # also point mod, screenshot, and save directory to $XDG_DATA_HOME 44 + postPatch = '' 45 + substituteInPlace starsector.sh \ 46 + --replace "./jre_linux/bin/java" "${openjdk}/bin/java" \ 47 + --replace "./native/linux" "$out/native/linux" \ 48 + --replace "./" "\$XDG_DATA_HOME/starsector/" 49 + ''; 50 + 51 + meta = with lib; { 52 + description = "Open-world single-player space-combat, roleplaying, exploration, and economic game"; 53 + homepage = "https://fractalsoftworks.com"; 54 + license = licenses.unfree; 55 + maintainers = with maintainers; [ bbigras ]; 56 + }; 57 + }
+4
pkgs/top-level/all-packages.nix
··· 9332 9333 sqls = callPackage ../applications/misc/sqls { }; 9334 9335 stdman = callPackage ../data/documentation/stdman { }; 9336 9337 steck = callPackage ../servers/pinnwand/steck.nix { };
··· 9332 9333 sqls = callPackage ../applications/misc/sqls { }; 9334 9335 + starsector = callPackage ../games/starsector { 9336 + openjdk = openjdk8; 9337 + }; 9338 + 9339 stdman = callPackage ../data/documentation/stdman { }; 9340 9341 steck = callPackage ../servers/pinnwand/steck.nix { };