fishnet: 2.2.6 -> 2.4.0, fix build
fishnet-assets has been archived in favor of a submodule-based approach where Stockfish and Fairy-Stockfish are built from source. This means we now need to fetch the NNUE file, similar to Stockfish's standalone derivation.
This commit is contained in:
parent
48bf1250a8
commit
f73f35b8c8
2 changed files with 13 additions and 70 deletions
|
@ -1,58 +0,0 @@
|
||||||
{ lib
|
|
||||||
, stdenv
|
|
||||||
, fetchFromGitHub
|
|
||||||
, xz
|
|
||||||
, autoPatchelfHook }:
|
|
||||||
|
|
||||||
# Assets for fishnet: A collection of pre-built compressed stockfish binaries.
|
|
||||||
# We have to decompress them, patch them using auto-patchelf and compress them
|
|
||||||
# again so that a selection of them can be embedded into the fishnet binary.
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
pname = "fishnet-assets";
|
|
||||||
version = "unstable-2020-03-27";
|
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "niklasf";
|
|
||||||
repo = pname;
|
|
||||||
rev = "a1fe3ec6074ad9dc43e6d46e0d42fab5d7cce12c";
|
|
||||||
sha256 = "1548wj2bs89b5w42z3c98hpnbln5w8p1909wyl7a63d8vkvnyn5l";
|
|
||||||
};
|
|
||||||
|
|
||||||
relAssetsPath = "share/${pname}";
|
|
||||||
|
|
||||||
nativeBuildInputs = [ xz autoPatchelfHook ];
|
|
||||||
|
|
||||||
postPatch = ''
|
|
||||||
# Delete packed .exe files and all non .xz files (documentation and readme)
|
|
||||||
rm *.exe.xz
|
|
||||||
find \! -name "*.xz" -delete
|
|
||||||
# Extract .xz files, except *.nnue.xz
|
|
||||||
# We don't have to unpack the latter and it takes ages to repack
|
|
||||||
find -name "*.xz" \! -name "*.nnue.xz" | xargs unxz -v
|
|
||||||
'';
|
|
||||||
|
|
||||||
dontBuild = true;
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
mkdir -p $out/${relAssetsPath}
|
|
||||||
cp ./* $out/${relAssetsPath}
|
|
||||||
'';
|
|
||||||
|
|
||||||
preFixup = ''
|
|
||||||
gatherLibraries '${stdenv.cc.cc.lib}'
|
|
||||||
'';
|
|
||||||
|
|
||||||
doDist = true;
|
|
||||||
distPhase = ''
|
|
||||||
# repack assets
|
|
||||||
find $out/${relAssetsPath} -type f \! -name "*.xz" | xargs xz -v
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
description = "Assets for fishnet, only required during build";
|
|
||||||
homepage = "https://github.com/niklasf/fishnet-assets";
|
|
||||||
license = licenses.gpl3Only;
|
|
||||||
maintainers = with maintainers; [ tu-maurice ];
|
|
||||||
platforms = [ "x86_64-linux" ];
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -2,33 +2,34 @@
|
||||||
, stdenv
|
, stdenv
|
||||||
, rustPlatform
|
, rustPlatform
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
, xz
|
, fetchurl
|
||||||
, autoPatchelfHook }:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
assets = import ./assets.nix {
|
nnueFile = "nn-6762d36ad265.nnue";
|
||||||
inherit lib stdenv fetchFromGitHub xz autoPatchelfHook;
|
nnue = fetchurl {
|
||||||
|
url = "https://tests.stockfishchess.org/api/nn/${nnueFile}";
|
||||||
|
sha256 = "0727dsxfpns9fkyir95fybibqmigk5h45k154b2c5rk5s9md6qk7";
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "fishnet";
|
pname = "fishnet";
|
||||||
version = "2.2.6";
|
version = "2.4.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "niklasf";
|
owner = "niklasf";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "0dmc58wzv758b82pjpfzcfi0hr14hqcr61cd9v5xlgk5w78cisjq";
|
sha256 = "sha256-1Gl2vJFn9yVYH62yBJefAOBX/jJaFAdSZj2Lj3imcps=";
|
||||||
|
fetchSubmodules = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoSha256 = "1s37b0w1aav6gz399zncfp0zqh5sfy0zmabhl7n8p5cwlmlvnlsj";
|
postPatch = ''
|
||||||
|
cp -v '${nnue}' 'Stockfish/src/${nnueFile}'
|
||||||
preBuild = ''
|
cp -v '${nnue}' 'Fairy-Stockfish/src/${nnueFile}'
|
||||||
rmdir ./assets
|
|
||||||
ln -snf ${assets}/${assets.relAssetsPath} ./assets
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
passthru.assets = assets;
|
cargoSha256 = "sha256-/s7Yyi2FUh+EDvgaHLgZ/FA6kk2FQrZr3L3B76fqTuc=";
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "Distributed Stockfish analysis for lichess.org";
|
description = "Distributed Stockfish analysis for lichess.org";
|
||||||
|
|
Loading…
Reference in a new issue