diff --git a/pkgs/development/python-modules/scrap-engine/default.nix b/pkgs/development/python-modules/scrap-engine/default.nix new file mode 100644 index 000000000000..07d942f01099 --- /dev/null +++ b/pkgs/development/python-modules/scrap-engine/default.nix @@ -0,0 +1,24 @@ +{ lib +, buildPythonPackage +, fetchPypi +, setuptools-scm +}: + +buildPythonPackage rec { + pname = "scrap_engine"; + version = "1.2.0"; + + src = fetchPypi { + inherit pname version; + sha256 = "sha256-dn/9wxK1UHd3cc3Jo1Cp9tynOFUlndH+cZfIc244ysE="; + }; + + nativeBuildInputs = [ setuptools-scm ]; + + meta = with lib; { + maintainers = with maintainers; [ fgaz ]; + description = "A 2D ascii game engine for the terminal"; + homepage = "https://github.com/lxgr-linux/scrap_engine"; + license = licenses.gpl3Only; + }; +} diff --git a/pkgs/games/pokete/default.nix b/pkgs/games/pokete/default.nix new file mode 100644 index 000000000000..9d4469e1705c --- /dev/null +++ b/pkgs/games/pokete/default.nix @@ -0,0 +1,54 @@ +{ lib +, python3 +, fetchFromGitHub +, testers +, pokete +}: + +python3.pkgs.buildPythonApplication rec { + pname = "pokete"; + version = "0.7.2"; + + format = "other"; + + src = fetchFromGitHub { + owner = "lxgr-linux"; + repo = "pokete"; + rev = version; + sha256 = "sha256-P6007qY6MsnQH4LGiNPoKCUt3+YI0OinKFdosaj3Wrc="; + }; + + pythonPath = with python3.pkgs; [ + scrap-engine + pynput + ]; + + buildPhase = '' + ${python3.interpreter} -O -m compileall . + ''; + + installPhase = '' + mkdir -p $out/share/pokete + cp -r assets pokete_classes pokete_data mods *.py $out/share/pokete/ + mkdir -p $out/bin + ln -s $out/share/pokete/pokete.py $out/bin/pokete + ''; + + postFixup = '' + wrapPythonProgramsIn $out/share/pokete "$pythonPath" + ''; + + passthru.tests = { + pokete-version = testers.testVersion { + package = pokete; + command = "pokete --help"; + }; + }; + + meta = with lib; { + description = "A terminal based Pokemon like game"; + homepage = "https://lxgr-linux.github.io/pokete"; + license = licenses.gpl3Only; + maintainers = with maintainers; [ fgaz ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3b2e0e737692..d44bd8cbbaaf 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -32239,6 +32239,8 @@ with pkgs; target = "server"; }; + pokete = callPackage ../games/pokete { }; + powermanga = callPackage ../games/powermanga { }; prboom-plus = callPackage ../games/prboom-plus { }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 01a47e8360b6..72043221a4db 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -9519,6 +9519,8 @@ in { scramp = callPackage ../development/python-modules/scramp { }; + scrap-engine = callPackage ../development/python-modules/scrap-engine { }; + scrapy = callPackage ../development/python-modules/scrapy { }; scrapy-deltafetch = callPackage ../development/python-modules/scrapy-deltafetch { };