1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
{ lib, mkDerivation, fetchFromGitHub, runCommand, fetchpatch, patchutils, qmake, qtbase
, SDL, SDL_mixer, boost, curl, gsasl, libgcrypt, libircclient, protobuf, sqlite
, wrapQtAppsHook
, tinyxml2, target ? "client" }:
let
hiDPI = fetchpatch {
url = "https://github.com/pokerth/pokerth/commit/ad8c9cabfb85d8293720d0f14840278d38b5feeb.patch";
sha256 = "192x3lqvd1fanasb95shdygn997qfrpk1k62k1f4j3s5chkwvjig";
};
revertPatch = patch: runCommand "revert-${patch.name}" {} ''
${patchutils}/bin/interdiff ${patch} /dev/null > $out
'';
in
mkDerivation rec {
pname = "pokerth-${target}";
version = "1.1.2";
src = fetchFromGitHub {
owner = "pokerth";
repo = "pokerth";
rev = "f5688e01b0efb37035e3b0e3a432200185b9a0c5";
sha256 = "0la8d036pbscjnbxf8lkrqjfq8a4ywsfwxil452fhlays6mr19h0";
};
patches = [
(revertPatch hiDPI)
];
postPatch = ''
for f in *.pro; do
substituteInPlace $f \
--replace '$$'{PREFIX}/include/libircclient ${libircclient.dev}/include/libircclient \
--replace 'LIB_DIRS =' 'LIB_DIRS = ${boost.out}/lib' \
--replace /opt/gsasl ${gsasl}
done
'';
nativeBuildInputs = [ qmake wrapQtAppsHook ];
buildInputs = [
SDL
SDL_mixer
boost
curl
gsasl
libgcrypt
libircclient
protobuf
qtbase
sqlite
tinyxml2
];
qmakeFlags = [
"CONFIG+=${target}"
"pokerth.pro"
];
NIX_CFLAGS_COMPILE = "-I${SDL.dev}/include/SDL";
meta = with lib; {
homepage = "https://www.pokerth.net";
description = "Poker game ${target}";
license = licenses.gpl3;
maintainers = with maintainers; [ obadz yegortimoshenko ];
platforms = platforms.all;
};
}
|