nixpkgs/pkgs/games/endgame-singularity/default.nix

56 lines
1.6 KiB
Nix
Raw Normal View History

{ lib
2020-07-05 17:29:17 +02:00
, fetchurl
, fetchFromGitHub
, unzip
, python3
, enableDefaultMusicPack ? true
2020-07-05 17:29:17 +02:00
}:
2020-07-05 17:29:17 +02:00
python3.pkgs.buildPythonApplication rec {
pname = "endgame-singularity";
2020-07-05 17:29:17 +02:00
version = "1.00";
srcs = [
2020-07-05 17:29:17 +02:00
(fetchFromGitHub {
owner = "singularity";
repo = "singularity";
rev = "v${version}";
sha256 = "0ndrnxwii8lag6vrjpwpf5n36hhv223bb46d431l9gsigbizv0hl";
})
2021-01-15 05:31:39 +01:00
] ++ lib.optional enableDefaultMusicPack (
fetchurl {
url = "http://www.emhsoft.com/singularity/endgame-singularity-music-007.zip";
sha256 = "0vf2qaf66jh56728pq1zbnw50yckjz6pf6c6qw6dl7vk60kkqnpb";
}
);
2020-07-05 17:29:17 +02:00
sourceRoot = "source";
nativeBuildInputs = [ unzip ]; # The music is zipped
2020-07-05 17:29:17 +02:00
propagatedBuildInputs = with python3.pkgs; [ pygame numpy polib ];
2020-07-05 17:29:17 +02:00
# Add the music
2021-01-15 05:31:39 +01:00
postInstall = lib.optionalString enableDefaultMusicPack ''
2020-07-05 17:29:17 +02:00
cp -R "../endgame-singularity-music-007" \
"$(echo $out/lib/python*/site-packages/singularity)/music"
# ↑ we cannot glob on [...]/music, it doesn't exist yet
'';
meta = {
homepage = "http://www.emhsoft.com/singularity/";
description = "A simulation game about strong AI";
longDescription = ''
A simulation of a true AI. Go from computer to computer, pursued by the
entire world. Keep hidden, and you might have a chance
'';
# License details are in LICENSE.txt
license = with lib.licenses; [
gpl2Plus # most of the code, some translations
mit # recursive_fix_pickle, polib
cc-by-sa-30 # data and artwork, some translations
free # earth images from NASA, some fonts
cc0 # cick0.wav
];
2021-01-15 05:31:39 +01:00
maintainers = with lib.maintainers; [ fgaz ];
};
}