Fix .deb package: bundle full conda environment with all dependencies
- Build workflow now bundles the entire pixi/conda environment for .deb - This includes all shared libraries (xerces, Qt, Python, etc.) - Wrapper scripts updated with additional env vars (QT_QPA_PLATFORM_PLUGIN_PATH, XDG_DATA_DIRS, GI_TYPELIB_PATH) - Wrapper scripts now handle both FreeCAD and freecad binary names - Removes unnecessary files (headers, cmake, pycache) to reduce size
This commit is contained in:
@@ -99,9 +99,21 @@ cat > "${STAGING_DIR}/usr/bin/kindred-create" << 'WRAPPER'
|
||||
export KINDRED_CREATE_HOME="/opt/kindred-create"
|
||||
export LD_LIBRARY_PATH="${KINDRED_CREATE_HOME}/lib:${LD_LIBRARY_PATH:-}"
|
||||
export QT_PLUGIN_PATH="${KINDRED_CREATE_HOME}/lib/qt6/plugins:${QT_PLUGIN_PATH:-}"
|
||||
export QT_QPA_PLATFORM_PLUGIN_PATH="${KINDRED_CREATE_HOME}/lib/qt6/plugins/platforms:${QT_QPA_PLATFORM_PLUGIN_PATH:-}"
|
||||
export PYTHONHOME="${KINDRED_CREATE_HOME}"
|
||||
export PYTHONPATH="${KINDRED_CREATE_HOME}/lib/python3.11:${KINDRED_CREATE_HOME}/lib/python3.11/site-packages:${PYTHONPATH:-}"
|
||||
exec "${KINDRED_CREATE_HOME}/bin/FreeCAD" "$@"
|
||||
export XDG_DATA_DIRS="${KINDRED_CREATE_HOME}/share:${XDG_DATA_DIRS:-/usr/share}"
|
||||
export GI_TYPELIB_PATH="${KINDRED_CREATE_HOME}/lib/girepository-1.0:${GI_TYPELIB_PATH:-}"
|
||||
|
||||
# Try different binary names (FreeCAD or freecad depending on build)
|
||||
if [ -x "${KINDRED_CREATE_HOME}/bin/FreeCAD" ]; then
|
||||
exec "${KINDRED_CREATE_HOME}/bin/FreeCAD" "$@"
|
||||
elif [ -x "${KINDRED_CREATE_HOME}/bin/freecad" ]; then
|
||||
exec "${KINDRED_CREATE_HOME}/bin/freecad" "$@"
|
||||
else
|
||||
echo "Error: Cannot find FreeCAD binary in ${KINDRED_CREATE_HOME}/bin/" >&2
|
||||
exit 1
|
||||
fi
|
||||
WRAPPER
|
||||
chmod 755 "${STAGING_DIR}/usr/bin/kindred-create"
|
||||
|
||||
@@ -111,7 +123,16 @@ export KINDRED_CREATE_HOME="/opt/kindred-create"
|
||||
export LD_LIBRARY_PATH="${KINDRED_CREATE_HOME}/lib:${LD_LIBRARY_PATH:-}"
|
||||
export PYTHONHOME="${KINDRED_CREATE_HOME}"
|
||||
export PYTHONPATH="${KINDRED_CREATE_HOME}/lib/python3.11:${KINDRED_CREATE_HOME}/lib/python3.11/site-packages:${PYTHONPATH:-}"
|
||||
exec "${KINDRED_CREATE_HOME}/bin/FreeCADCmd" "$@"
|
||||
|
||||
# Try different binary names (FreeCADCmd or freecadcmd depending on build)
|
||||
if [ -x "${KINDRED_CREATE_HOME}/bin/FreeCADCmd" ]; then
|
||||
exec "${KINDRED_CREATE_HOME}/bin/FreeCADCmd" "$@"
|
||||
elif [ -x "${KINDRED_CREATE_HOME}/bin/freecadcmd" ]; then
|
||||
exec "${KINDRED_CREATE_HOME}/bin/freecadcmd" "$@"
|
||||
else
|
||||
echo "Error: Cannot find FreeCADCmd binary in ${KINDRED_CREATE_HOME}/bin/" >&2
|
||||
exit 1
|
||||
fi
|
||||
WRAPPER
|
||||
chmod 755 "${STAGING_DIR}/usr/bin/kindred-create-cmd"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user