lol
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

at master 122 lines 3.3 kB view raw
1{ 2 lib, 3 stdenv, 4 fetchFromGitHub, 5 makeDesktopItem, 6 makeWrapper, 7 cmake, 8 libjpeg, 9 zlib, 10 libpng, 11 libGL, 12 libX11, 13 SDL2, 14 unstableGitUpdater, 15}: 16 17let 18 jamp = makeDesktopItem rec { 19 name = "jamp"; 20 exec = name; 21 icon = "OpenJK_Icon_128"; 22 comment = "Open Source Jedi Academy game released by Raven Software"; 23 desktopName = "Jedi Academy (Multi Player)"; 24 genericName = "Jedi Academy"; 25 categories = [ "Game" ]; 26 }; 27 jasp = makeDesktopItem rec { 28 name = "jasp"; 29 exec = name; 30 icon = "OpenJK_Icon_128"; 31 comment = "Open Source Jedi Academy game released by Raven Software"; 32 desktopName = "Jedi Academy (Single Player)"; 33 genericName = "Jedi Academy"; 34 categories = [ "Game" ]; 35 }; 36 josp = makeDesktopItem rec { 37 name = "josp"; 38 exec = name; 39 icon = "OpenJK_Icon_128"; 40 comment = "Open Source Jedi Outcast game released by Raven Software"; 41 desktopName = "Jedi Outcast (Single Player)"; 42 genericName = "Jedi Outcast"; 43 categories = [ "Game" ]; 44 }; 45in 46stdenv.mkDerivation { 47 pname = "openjk"; 48 version = "0-unstable-2024-04-07"; 49 50 src = fetchFromGitHub { 51 owner = "JACoders"; 52 repo = "OpenJK"; 53 rev = "2815211a87ccb8de1b0ee090d429a63f47e0ac7a"; 54 hash = "sha256-F3JF6jFgyMinIZ7dZAJ0ugGrJFianh2b6dX5A4iEnns="; 55 }; 56 57 dontAddPrefix = true; 58 59 nativeBuildInputs = [ 60 makeWrapper 61 cmake 62 ]; 63 buildInputs = [ 64 libjpeg 65 zlib 66 libpng 67 libGL 68 libX11 69 SDL2 70 ]; 71 72 outputs = [ 73 "out" 74 "openjo" 75 "openja" 76 ]; 77 78 # move from $out/JediAcademy to $out/opt/JediAcademy 79 preConfigure = '' 80 cmakeFlagsArray=("-DCMAKE_INSTALL_PREFIX=$out/opt") 81 ''; 82 cmakeFlags = [ 83 "-DBuildJK2SPEngine:BOOL=ON" 84 "-DBuildJK2SPGame:BOOL=ON" 85 "-DBuildJK2SPRdVanilla:BOOL=ON" 86 ]; 87 88 postInstall = '' 89 mkdir -p $out/bin $openja/bin $openjo/bin 90 mkdir -p $openja/share/applications $openjo/share/applications 91 mkdir -p $openja/share/icons/hicolor/128x128/apps $openjo/share/icons/hicolor/128x128/apps 92 mkdir -p $openja/opt $openjo/opt 93 mv $out/opt/JediAcademy $openja/opt/ 94 mv $out/opt/JediOutcast $openjo/opt/ 95 jaPrefix=$openja/opt/JediAcademy 96 joPrefix=$openjo/opt/JediOutcast 97 98 makeWrapper $jaPrefix/openjk.* $openja/bin/jamp --chdir "$jaPrefix" 99 makeWrapper $jaPrefix/openjk_sp.* $openja/bin/jasp --chdir "$jaPrefix" 100 makeWrapper $jaPrefix/openjkded.* $openja/bin/openjkded --chdir "$jaPrefix" 101 makeWrapper $joPrefix/openjo_sp.* $openjo/bin/josp --chdir "$joPrefix" 102 103 cp $src/shared/icons/OpenJK_Icon_128.png $openjo/share/icons/hicolor/128x128/apps 104 cp $src/shared/icons/OpenJK_Icon_128.png $openja/share/icons/hicolor/128x128/apps 105 ln -s ${jamp}/share/applications/* $openja/share/applications 106 ln -s ${jasp}/share/applications/* $openja/share/applications 107 ln -s ${josp}/share/applications/* $openjo/share/applications 108 ln -s $openja/bin/* $out/bin 109 ln -s $openjo/bin/* $out/bin 110 rm -rf $out/opt 111 ''; 112 113 passthru.updateScript = unstableGitUpdater { }; 114 115 meta = with lib; { 116 description = "Open-source engine for Star Wars Jedi Academy game"; 117 homepage = "https://github.com/JACoders/OpenJK"; 118 license = licenses.gpl2Only; 119 platforms = platforms.linux; 120 maintainers = with maintainers; [ ]; 121 }; 122}