Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 libcoldclear,
6 luajit,
7}:
8
9stdenv.mkDerivation rec {
10 pname = "ccloader";
11 version = "11.4.2";
12
13 src = fetchFromGitHub {
14 owner = "26F-Studio";
15 repo = "cold_clear_ai_love2d_wrapper";
16 rev = version;
17 fetchSubmodules = true;
18 hash = "sha256-sguV+Dw+etZH43tXZYL46NAdsI/qvyvGWCPUiTEjhy4=";
19 };
20
21 buildInputs = [
22 libcoldclear
23 luajit
24 ];
25
26 buildPhase = ''
27 runHook preBuild
28
29 gcc -shared cold_clear_wrapper.c -lcold_clear -lluajit-${luajit.luaversion} -o CCLoader.so
30
31 runHook postBuild
32 '';
33
34 installPhase = ''
35 runHook preInstall
36
37 mkdir -p $out/lib/lua/${luajit.luaversion}
38 mv CCLoader.so $out/lib/lua/${luajit.luaversion}
39
40 runHook postInstall
41 '';
42
43 meta = with lib; {
44 description = "Luajit wrapper for Cold Clear, a Tetris AI";
45 homepage = "https://github.com/26F-Studio/cold_clear_ai_love2d_wrapper";
46 license = licenses.mpl20;
47 maintainers = with maintainers; [ chayleaf ];
48 };
49}