55 lines
989 B
Nix
55 lines
989 B
Nix
#
|
|
# flexbv board viewer
|
|
#
|
|
{
|
|
stdenv,
|
|
libGL,
|
|
SDL2,
|
|
makeWrapper,
|
|
buildFHSEnv,
|
|
libz,
|
|
fontconfig
|
|
}:
|
|
let
|
|
|
|
#
|
|
# The FlexBV provided binaries are static and self-unpacking, with a hardcoded next-stage
|
|
# dynamic loader path; and the format is an atypical variant of UPX.
|
|
#
|
|
# We'll create an inner package, and wrap it in an FHSEnv so we don't have to deal
|
|
# with patching the interpreter.
|
|
#
|
|
flexbv = stdenv.mkDerivation {
|
|
pname = "flexbv-unwrapped";
|
|
version = "5.0345";
|
|
|
|
src = ../proprietary/flexbv5/FlexBV-5.0436-linux-3N5871753H701314U.tgz;
|
|
|
|
dontBuild = true;
|
|
dontConfigure = true;
|
|
|
|
nativeBuildInputs = [
|
|
makeWrapper
|
|
];
|
|
|
|
buildInputs = [
|
|
libGL
|
|
SDL2.out
|
|
libz.out
|
|
fontconfig.lib
|
|
];
|
|
|
|
# Set up the env with our binaries.
|
|
installPhase = ''
|
|
mkdir -p $out/bin
|
|
cp * $out/bin
|
|
'';
|
|
};
|
|
|
|
in buildFHSEnv {
|
|
name = "flexbv";
|
|
targetPkgs = (pkgs: flexbv.buildInputs ++ [ flexbv ]);
|
|
runScript = ''
|
|
flexbv "$@"
|
|
'';
|
|
}
|