add package for openmv-ide
This commit is contained in:
parent
ae714f5d6d
commit
5340e71dd1
2 changed files with 133 additions and 0 deletions
132
pkgs/openmv-ide/default.nix
Normal file
132
pkgs/openmv-ide/default.nix
Normal file
|
|
@ -0,0 +1,132 @@
|
|||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchurl,
|
||||
|
||||
at-spi2-atk,
|
||||
autoPatchelfHook,
|
||||
cairo,
|
||||
cups,
|
||||
dbus,
|
||||
fontconfig,
|
||||
freetype,
|
||||
gdk-pixbuf,
|
||||
glib,
|
||||
gtk3,
|
||||
libGL,
|
||||
libdrm,
|
||||
libxcb-cursor,
|
||||
libxkbcommon,
|
||||
makeWrapper,
|
||||
pango,
|
||||
wayland,
|
||||
xorg,
|
||||
zlib,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "openmv-ide";
|
||||
version = "4.8.9";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/openmv/openmv-ide/releases/download/v${version}/openmv-ide-linux-x86_64-${version}.tar.gz";
|
||||
hash = "sha256-D0Uunb6IIX8gkirZIISjjhvrrCsR5bgRBcXidtjN/n0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoPatchelfHook
|
||||
makeWrapper
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
at-spi2-atk
|
||||
cairo
|
||||
cups
|
||||
dbus.lib
|
||||
fontconfig
|
||||
freetype
|
||||
gdk-pixbuf
|
||||
glib
|
||||
gtk3
|
||||
libGL
|
||||
libdrm
|
||||
libxcb-cursor
|
||||
libxkbcommon
|
||||
pango
|
||||
stdenv.cc.cc.lib
|
||||
wayland
|
||||
xorg.libX11
|
||||
xorg.libxcb
|
||||
xorg.xcbutil
|
||||
xorg.xcbutilimage
|
||||
xorg.xcbutilkeysyms
|
||||
xorg.xcbutilrenderutil
|
||||
xorg.xcbutilwm
|
||||
zlib
|
||||
];
|
||||
|
||||
autoPatchelfIgnoreMissingDeps = [
|
||||
"libQt6Designer.so.6"
|
||||
"libQt6Labs*.so.6"
|
||||
"libQt6OpenGLWidgets.so.6"
|
||||
"libQt6Qml*.so.6"
|
||||
"libQt6Quick*.so.6"
|
||||
"libQt6ShaderTools.so.6"
|
||||
"libgssapi_krb5.so.2"
|
||||
"libicudata.so.56"
|
||||
"libicui18n.so.56"
|
||||
"libicuuc.so.56"
|
||||
"libmysqlclient.so.21"
|
||||
"libodbc.so.2"
|
||||
"libpq.so.5"
|
||||
];
|
||||
|
||||
dontAutoPatchelf = true;
|
||||
dontBuild = true;
|
||||
dontConfigure = true;
|
||||
dontStrip = true;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/share/openmv-ide
|
||||
cp -r bin lib share $out/share/openmv-ide/
|
||||
|
||||
chmod -R u+w $out/share/openmv-ide/
|
||||
|
||||
mkdir -p $out/share/applications
|
||||
cp share/applications/io.openmv.openmvide.desktop $out/share/applications/
|
||||
|
||||
mkdir -p $out/share/icons
|
||||
cp -r share/icons/hicolor $out/share/icons/
|
||||
|
||||
substituteInPlace $out/share/applications/io.openmv.openmvide.desktop \
|
||||
--replace "Exec=openmvide" "Exec=$out/bin/openmvide"
|
||||
|
||||
mkdir -p $out/bin
|
||||
makeWrapper $out/share/openmv-ide/bin/openmvide $out/bin/openmvide \
|
||||
--prefix LD_LIBRARY_PATH : "$out/share/openmv-ide/lib:$out/share/openmv-ide/lib/qtcreator:$out/share/openmv-ide/lib/Qt/lib" \
|
||||
--add-flags "-user-library-path \"\$LD_LIBRARY_PATH\""
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
postFixup = ''
|
||||
addAutoPatchelfSearchPath $out/share/openmv-ide/lib/Qt/lib
|
||||
addAutoPatchelfSearchPath $out/share/openmv-ide/lib/qtcreator
|
||||
|
||||
# skip embedded third-party toolchains and tools under share/
|
||||
autoPatchelf -- \
|
||||
$out/share/openmv-ide/bin \
|
||||
$out/share/openmv-ide/lib
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "QtCreator based IDE for the OpenMV Cam";
|
||||
homepage = "https://openmv.io/";
|
||||
license = lib.licenses.gpl3Plus;
|
||||
mainProgram = "openmvide";
|
||||
platforms = [ "x86_64-linux" ];
|
||||
sourceProvenance = [ lib.sourceTypes.binaryNativeCode ];
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue