nixpkgs/pkgs/games/qgo/default.nix
2017-06-25 12:29:18 +02:00

48 lines
1.8 KiB
Nix

{ stdenv, fetchFromGitHub, makeWrapper, qmake, qt56 }:
stdenv.mkDerivation rec {
name = "qgo-${version}";
version = "unstable-2016-06-23";
meta = with stdenv.lib; {
description = "A Go client based on Qt5";
longDescription = ''
qGo is a Go Client based on Qt 5. It supports playing online at
IGS-compatible servers (including some special tweaks for WING and LGS,
also NNGS was reported to work) and locally against gnugo (or other
GTP-compliant engines). It also has rudimentary support for editing SGF
files and parital support for CyberORO/WBaduk, Tygem, Tom, and eWeiqi
(developers of these backends are currently inactive, everybody is welcome
to take them over).
Go is an ancient Chinese board game. It's called "(Wei Qi)" in
Chinese, "(Yi Go)" in Japanese, "(Baduk)" in Korean.
'';
homepage = "https://github.com/pzorin/qgo";
license = licenses.gpl2;
maintainers = with maintainers; [ zalakain ];
};
src = fetchFromGitHub {
owner = "pzorin";
repo = "qgo";
rev = "1e65b0c74914e534ea4d040f8f0ef8908383e374";
sha256 = "1xzkayclmhsi07p9mnbf8185jw8n5ikxp2mik3x8qz1i6rmrfl5b";
};
patches = [ ./fix-paths.patch ];
postPatch = ''
sed -i 's|@out@|'"''${out}"'|g' src/src.pro src/defines.h
'';
nativeBuildInputs = [ makeWrapper qmake ];
# qt58 does not provide platform plugins
# We need lib/qt*/plugins/platforms/libqxcb.so
buildInputs = with qt56; [ qtbase.out qtmultimedia qttranslations ];
enableParallelBuilding = true;
postFixup = ''
# libQt5XcbQpa is a platform plugin dependency and doesn't get linked
patchelf --add-needed libQt5XcbQpa.so.5 $out/bin/qgo
wrapProgram $out/bin/qgo \
--set QT_QPA_PLATFORM_PLUGIN_PATH "${qt56.qtbase}/lib/qt-5.6/plugins/platforms/"
'';
}