gepetto-viewer: init at 5.1.0
This commit is contained in:
@@ -0,0 +1,136 @@
|
||||
{
|
||||
boost,
|
||||
cmake,
|
||||
darwin,
|
||||
doxygen,
|
||||
fetchFromGitHub,
|
||||
fetchpatch,
|
||||
fontconfig,
|
||||
lib,
|
||||
jrl-cmakemodules,
|
||||
libsForQt5,
|
||||
makeWrapper,
|
||||
openscenegraph,
|
||||
osgqt,
|
||||
pkg-config,
|
||||
python3Packages,
|
||||
qgv,
|
||||
stdenv,
|
||||
runCommand,
|
||||
}:
|
||||
let
|
||||
gepetto-viewer = stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "gepetto-viewer";
|
||||
version = "5.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "gepetto";
|
||||
repo = "gepetto-viewer";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-A2J3HidG+OHJO8LpLiOEvORxDtViTdeVD85AmKkkOg8=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# fix use of CMAKE_INSTALL_BINDIR for $bin output
|
||||
(fetchpatch {
|
||||
url = "https://github.com/Gepetto/gepetto-viewer/pull/230/commits/9b1b3a61da016934c3e766e6b491c1d6f3fc80d6.patch";
|
||||
hash = "sha256-dpviEkOyCZpTYntZ4sCG1AvobljJphPQxg7gA6JxfWs=";
|
||||
})
|
||||
# fix use of CMAKE_INSTALL_FULL_INCLUDEDIR for $dev output
|
||||
(fetchpatch {
|
||||
url = "https://github.com/Gepetto/gepetto-viewer/pull/230/commits/4e1c2bbe063db20b605e51495e9f9eca40138cca.patch";
|
||||
hash = "sha256-HrecvW1ulCSt9+DUaQVBOoDkilGRqU2+GUx7NUw7hqc=";
|
||||
})
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
(lib.cmakeBool "BUILD_PY_QCUSTOM_PLOT" (!stdenv.isDarwin))
|
||||
(lib.cmakeBool "BUILD_PY_QGV" (!stdenv.isDarwin))
|
||||
];
|
||||
|
||||
outputs = [
|
||||
"out"
|
||||
"dev"
|
||||
"bin"
|
||||
"doc"
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
python3Packages.boost
|
||||
python3Packages.python-qt
|
||||
libsForQt5.qtbase
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
doxygen
|
||||
libsForQt5.wrapQtAppsHook
|
||||
pkg-config
|
||||
python3Packages.python
|
||||
] ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [ darwin.autoSignDarwinBinariesHook ];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
jrl-cmakemodules
|
||||
openscenegraph
|
||||
osgqt
|
||||
qgv
|
||||
];
|
||||
|
||||
doCheck = true;
|
||||
|
||||
# wrapQtAppsHook uses isMachO, which fails to detect binaries without this
|
||||
# ref. https://github.com/NixOS/nixpkgs/pull/138334
|
||||
preFixup = lib.optionalString stdenv.isDarwin "export LC_ALL=C";
|
||||
|
||||
postFixup = ''
|
||||
# CMake is not aware exports are in $dev
|
||||
substituteInPlace $dev/lib/cmake/gepetto-viewer/gepetto-viewerConfig.cmake --replace-fail \
|
||||
"$out/lib/cmake" \
|
||||
"$dev/lib/cmake"
|
||||
|
||||
# wrapQtAppsHook does only wrap stuff in $out, we want $bin
|
||||
echo wrapping $bin/bin/gepetto-gui
|
||||
wrapQtApp $bin/bin/gepetto-gui
|
||||
'';
|
||||
|
||||
# Fontconfig error: Cannot load default config file: No such file: (null)
|
||||
env.FONTCONFIG_FILE = "${fontconfig.out}/etc/fonts/fonts.conf";
|
||||
|
||||
# Fontconfig error: No writable cache directories
|
||||
preBuild = "export XDG_CACHE_HOME=$(mktemp -d)";
|
||||
|
||||
passthru.withPlugins =
|
||||
plugins:
|
||||
runCommand "gepetto-gui"
|
||||
{
|
||||
meta = {
|
||||
# can't just "inherit (gepetto-viewer) meta;" because:
|
||||
# error: derivation '/nix/store/…-gepetto-gui.drv' does not have wanted outputs 'bin'
|
||||
inherit (gepetto-viewer.meta)
|
||||
description
|
||||
homepage
|
||||
license
|
||||
maintainers
|
||||
mainProgram
|
||||
platforms
|
||||
;
|
||||
};
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
propagatedBuildInputs = plugins;
|
||||
}
|
||||
''
|
||||
makeWrapper ${lib.getExe gepetto-viewer} $out/bin/gepetto-gui \
|
||||
--set GEPETTO_GUI_PLUGIN_DIRS ${lib.makeLibraryPath plugins}
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Graphical Interface for Pinocchio and HPP.";
|
||||
homepage = "https://github.com/gepetto/gepetto-viewer";
|
||||
license = lib.licenses.lgpl3Only;
|
||||
maintainers = [ lib.maintainers.nim65s ];
|
||||
mainProgram = "gepetto-gui";
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
});
|
||||
in
|
||||
gepetto-viewer
|
||||
@@ -4982,6 +4982,8 @@ self: super: with self; {
|
||||
|
||||
georss-wa-dfes-client = callPackage ../development/python-modules/georss-wa-dfes-client { };
|
||||
|
||||
gepetto-viewer = toPythonModule (pkgs.gepetto-viewer.override { python3Packages = self; });
|
||||
|
||||
gerbonara = callPackage ../development/python-modules/gerbonara { };
|
||||
|
||||
getjump = callPackage ../development/python-modules/getjump { };
|
||||
|
||||
Reference in New Issue
Block a user