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>
This commit is contained in:
oluceps 2024-09-25 20:38:12 +08:00 committed by oluceps
parent a97ed17136
commit e56f2b60dc
No known key found for this signature in database

View File

@ -0,0 +1,109 @@
{
lib,
stdenv,
fetchFromGitea,
meson,
libGLU,
ninja,
python3,
cmake,
pkg-config,
xxd,
libopus,
libogg,
zlib,
SDL2,
SDL2_mixer,
libopenmpt,
libXrandr,
libXext,
libXfixes,
libXcursor,
libXi,
libXScrnSaver,
makeDesktopItem,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "apotris";
version = "4.1.0";
src = fetchFromGitea {
domain = "gitea.com";
owner = "akouzoukos";
repo = "apotris";
rev = "v${finalAttrs.version}";
hash = "sha256-jP0fmfAAjWkgI5I3OTLS5+7+xLvcGhV8yP80qDWDjC8=";
fetchSubmodules = true;
};
postPatch = ''
patchShebangs tools/bin2s.py
'';
nativeBuildInputs = [
meson
ninja
python3
cmake
pkg-config
xxd
];
buildInputs = [
libGLU
libopus
libogg
zlib
SDL2_mixer
libopenmpt
SDL2
libXrandr
libXext
libXfixes
libXcursor
libXi
libXScrnSaver
];
strictDeps = true;
dontUseCmakeConfigure = true;
desktopItem = makeDesktopItem {
name = "Apotris";
exec = "Apotris";
comment = "A block stacking game";
desktopName = "Apotris";
categories = [
"Game"
];
};
meta = {
description = "Block stacking game";
longDescription = ''
Apotris is a multiplatform open-source block stacking game! What sets
Apotris apart from other block stacking games is its extensive
customization options, complemented by ultra-responsive controls that let
you execute your moves with precision. With 14 unique game modes and a
plethora of settings, you can tailor the game to your preferences,
ensuring a fresh and challenging experience every time you play. Whether
you're a casual player or a hardcore enthusiast, Apotris has something for
everyone. You can even battle your friends using the Gameboy Advance Link
Cable or Wireless Adapters in 2-Player Battle! While Apotris was
originally designed for Gameboy Advance, it now supports all kinds of
platforms, so between the ports and emulation you can play Apotris on
almost anything.
'';
homepage = "https://akouzoukos.com/apotris/";
license = lib.licenses.agpl3Only;
maintainers = with lib.maintainers; [
oluceps
bizmyth
];
mainProgram = "Apotris";
inherit (SDL2.meta) platforms;
broken = stdenv.hostPlatform.isDarwin;
};
})