nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
at devShellTools-shell 80 lines 1.8 kB view raw
1{ 2 lib, 3 stdenv, 4 rustPlatform, 5 fetchFromGitLab, 6 makeDesktopItem, 7 installShellFiles, 8 dejavu_fonts, 9 SDL2, 10 SDL2_ttf, 11 SDL2_image, 12}: 13let 14 pname = "freenukum"; 15 description = "Clone of the original Duke Nukum 1 Jump'n Run game"; 16 17 desktopItem = makeDesktopItem { 18 desktopName = pname; 19 name = pname; 20 exec = pname; 21 icon = pname; 22 comment = description; 23 categories = [ 24 "Game" 25 "ArcadeGame" 26 "ActionGame" 27 ]; 28 genericName = pname; 29 }; 30 31in 32rustPlatform.buildRustPackage rec { 33 inherit pname; 34 version = "0.4.0"; 35 36 src = fetchFromGitLab { 37 domain = "salsa.debian.org"; 38 owner = "silwol"; 39 repo = "freenukum"; 40 rev = "v${version}"; 41 hash = "sha256-Tk9n2gPwyPin6JZ4RSO8d/+xVpEz4rF8C2eGKwrAXU0="; 42 }; 43 44 cargoHash = "sha256-lQZ9Z/1tbL7BeLmGxJXNUvrXsOGtgzGXNt6WYGezxi0="; 45 46 nativeBuildInputs = [ 47 installShellFiles 48 ]; 49 50 buildInputs = [ 51 SDL2 52 SDL2_ttf 53 SDL2_image 54 ]; 55 56 postPatch = '' 57 substituteInPlace src/graphics.rs \ 58 --replace /usr $out 59 ''; 60 61 postInstall = '' 62 mkdir -p $out/share/fonts/truetype/dejavu 63 ln -sf \ 64 ${dejavu_fonts}/share/fonts/truetype/DejaVuSans.ttf \ 65 $out/share/fonts/truetype/dejavu/DejaVuSans.ttf 66 mkdir -p $out/share/doc/freenukum 67 install -Dm644 README.md CHANGELOG.md $out/share/doc/freenukum/ 68 installManPage doc/freenukum.6 69 install -Dm644 "${desktopItem}/share/applications/"* -t $out/share/applications/ 70 ''; 71 72 meta = { 73 description = "Clone of the original Duke Nukum 1 Jump'n Run game"; 74 homepage = "https://salsa.debian.org/silwol/freenukum"; 75 changelog = "https://salsa.debian.org/silwol/freenukum/-/blob/v${version}/CHANGELOG.md"; 76 license = lib.licenses.agpl3Plus; 77 maintainers = with lib.maintainers; [ _0x4A6F ]; 78 broken = stdenv.hostPlatform.isDarwin; 79 }; 80}