86 lines
2 KiB
Nix
86 lines
2 KiB
Nix
|
{ stdenv, fetchgit, makeWrapper,
|
||
|
cmake,
|
||
|
lua5_1,
|
||
|
sfml,
|
||
|
sparsehash,
|
||
|
ssvjsoncpp,
|
||
|
ssvutils,
|
||
|
ssvluawrapper,
|
||
|
ssvmenusystem,
|
||
|
ssvutilsjson,
|
||
|
ssvstart,
|
||
|
ssventitysystem,
|
||
|
rsync,
|
||
|
}:
|
||
|
|
||
|
stdenv.mkDerivation rec {
|
||
|
pname = "OpenHexagon";
|
||
|
version = "1.92b";
|
||
|
|
||
|
src = fetchgit {
|
||
|
url = "https://github.com/SuperV1234/SSVOpenHexagon";
|
||
|
rev = "refs/tags/${version}";
|
||
|
deepClone = true;
|
||
|
sha256 = "0qg7zxjswplzxnp6pmimvyly68zk3pd8jbv6a1ywv8jrfrdfpah1";
|
||
|
};
|
||
|
|
||
|
binpkg = builtins.fetchTarball {
|
||
|
url = "https://vittorioromeo.info/Downloads/OpenHexagon/Linux/OpenHexagonV1.92.tar.gz";
|
||
|
sha256 = "08rv97kr4cix2zshmi9avs92x5cryhg9f18abhpqbrpcr0mrganh";
|
||
|
};
|
||
|
|
||
|
nativeBuildInputs = [
|
||
|
cmake
|
||
|
makeWrapper
|
||
|
];
|
||
|
|
||
|
buildInputs = [
|
||
|
lua5_1
|
||
|
sfml
|
||
|
sparsehash
|
||
|
ssvjsoncpp
|
||
|
ssvutils
|
||
|
ssvluawrapper
|
||
|
ssvmenusystem
|
||
|
ssvutilsjson
|
||
|
ssvstart
|
||
|
ssventitysystem
|
||
|
];
|
||
|
|
||
|
preConfigure = ''
|
||
|
rm -r ./extlibs/*
|
||
|
ln -s ${ssventitysystem}/share ./extlibs/${ssventitysystem.pname};
|
||
|
ln -s ${ssvjsoncpp}/share ./extlibs/${ssvjsoncpp.pname};
|
||
|
ln -s ${ssvmenusystem}/share ./extlibs/${ssvmenusystem.pname};
|
||
|
ln -s ${ssvstart}/share ./extlibs/${ssvstart.pname};
|
||
|
ln -s ${ssvutils}/share ./extlibs/${ssvutils.pname};
|
||
|
ln -s ${ssvutilsjson}/share ./extlibs/${ssvutilsjson.pname};
|
||
|
ln -s ${ssvluawrapper}/share ./extlibs/${ssvluawrapper.pname};
|
||
|
'';
|
||
|
|
||
|
patches = [
|
||
|
./SSVOpenHexagon-Profiles-in-home-dir.patch
|
||
|
];
|
||
|
|
||
|
cmakeFlags = [
|
||
|
"-DLUA_INCLUDE_DIR=${lua5_1}/include"
|
||
|
];
|
||
|
|
||
|
installPhase = ''
|
||
|
install -Dm755 SSVOpenHexagon $out/bin/openhexagon
|
||
|
mkdir -p $out/share/OpenHexagon
|
||
|
cp -r ${src}/_RELEASE/{config.json,ConfigOverrides} $out/share/OpenHexagon
|
||
|
cp -r ${binpkg}/{Assets,Packs} $out/share/OpenHexagon
|
||
|
'';
|
||
|
|
||
|
postFixup = ''
|
||
|
wrapProgram "$out/bin/openhexagon" --run "cd $out/share/OpenHexagon/"
|
||
|
'';
|
||
|
|
||
|
meta = with stdenv.lib; {
|
||
|
description = "C++14 FOSS clone of Super Hexagon";
|
||
|
homepage = "https://openhexagon.org/";
|
||
|
license = licenses.afl3;
|
||
|
};
|
||
|
}
|