apotris: init at 4.1.0

Co-authored-by: Anderson Torres <torres.anderson.85@protonmail.com>
Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
Co-authored-by: bizmythy <andrew.p.council@gmail.com>

authored by oluceps Anderson Torres Sandro bizmythy and committed by oluceps e56f2b60 a97ed171

+109
+109
pkgs/by-name/ap/apotris/package.nix
··· 1 + { 2 + lib, 3 + stdenv, 4 + fetchFromGitea, 5 + meson, 6 + libGLU, 7 + ninja, 8 + python3, 9 + cmake, 10 + pkg-config, 11 + xxd, 12 + libopus, 13 + libogg, 14 + zlib, 15 + SDL2, 16 + SDL2_mixer, 17 + libopenmpt, 18 + libXrandr, 19 + libXext, 20 + libXfixes, 21 + libXcursor, 22 + libXi, 23 + libXScrnSaver, 24 + makeDesktopItem, 25 + }: 26 + 27 + stdenv.mkDerivation (finalAttrs: { 28 + pname = "apotris"; 29 + version = "4.1.0"; 30 + 31 + src = fetchFromGitea { 32 + domain = "gitea.com"; 33 + owner = "akouzoukos"; 34 + repo = "apotris"; 35 + rev = "v${finalAttrs.version}"; 36 + hash = "sha256-jP0fmfAAjWkgI5I3OTLS5+7+xLvcGhV8yP80qDWDjC8="; 37 + fetchSubmodules = true; 38 + }; 39 + 40 + postPatch = '' 41 + patchShebangs tools/bin2s.py 42 + ''; 43 + 44 + nativeBuildInputs = [ 45 + meson 46 + ninja 47 + python3 48 + cmake 49 + pkg-config 50 + xxd 51 + ]; 52 + 53 + buildInputs = [ 54 + libGLU 55 + libopus 56 + libogg 57 + zlib 58 + SDL2_mixer 59 + libopenmpt 60 + SDL2 61 + libXrandr 62 + libXext 63 + libXfixes 64 + libXcursor 65 + libXi 66 + libXScrnSaver 67 + ]; 68 + 69 + strictDeps = true; 70 + 71 + dontUseCmakeConfigure = true; 72 + 73 + desktopItem = makeDesktopItem { 74 + name = "Apotris"; 75 + exec = "Apotris"; 76 + comment = "A block stacking game"; 77 + desktopName = "Apotris"; 78 + categories = [ 79 + "Game" 80 + ]; 81 + }; 82 + 83 + meta = { 84 + description = "Block stacking game"; 85 + longDescription = '' 86 + Apotris is a multiplatform open-source block stacking game! What sets 87 + Apotris apart from other block stacking games is its extensive 88 + customization options, complemented by ultra-responsive controls that let 89 + you execute your moves with precision. With 14 unique game modes and a 90 + plethora of settings, you can tailor the game to your preferences, 91 + ensuring a fresh and challenging experience every time you play. Whether 92 + you're a casual player or a hardcore enthusiast, Apotris has something for 93 + everyone. You can even battle your friends using the Gameboy Advance Link 94 + Cable or Wireless Adapters in 2-Player Battle! While Apotris was 95 + originally designed for Gameboy Advance, it now supports all kinds of 96 + platforms, so between the ports and emulation you can play Apotris on 97 + almost anything. 98 + ''; 99 + homepage = "https://akouzoukos.com/apotris/"; 100 + license = lib.licenses.agpl3Only; 101 + maintainers = with lib.maintainers; [ 102 + oluceps 103 + bizmyth 104 + ]; 105 + mainProgram = "Apotris"; 106 + inherit (SDL2.meta) platforms; 107 + broken = stdenv.hostPlatform.isDarwin; 108 + }; 109 + })