2017-03-11 17:41 GMT+01:00 Christoph Feck <cf...@kde.org>: > On 11.03.2017 16:44, Elvis Stansvik wrote: >> >> 2017-03-10 23:26 GMT+01:00 Elvis Stansvik <elvst...@gmail.com>: >>> >>> In the end, I realized it wasn't really feasible to bundle Breeze >>> inside the AppImage anyway, because of the many KF5 dependencies. I >>> thought that the widget style .so would only have Qt as dependency, >>> but realize now that it does a fair amount of integration with Plasma >>> as well. >> >> >> For the heck of it, I gave it a go anyway, and it seems to work out >> fine. I was able to build/install ECM, KWindowSystem, KConfig, >> KGuiAddons, KCodecs, KWidgetAddons, KCoreAddons, KAuth, KI18n, >> KConfigWidgets, KArchive, KPackage and finally Breeze in the CentOS >> 6.7 Docker image I use for AppImage builds. The additional breeze.so + >> dependencies added around 7 MB to my image. This is quite a chunk, but >> I think it's acceptable, to get the Breeze look, since the primary >> target machines will be running Plasma. Everything seems to be working >> fine from my first tests, the AppImage even respects the Breeze >> settings and color scheme from "outside" the image. > > > The biggest chunk is the kcharselect-data file (3 MiB). If your application > does not use the KCharSelect widget, you can simply omit the file. > > For a future KF5 version, I plan to make the KCharSelect class work better > when the data file is missing.
Ah, I'm not including that. I simply have a bash script that uses ldd on my executable (and now breeze.so as well) to determine what to bundle (excluding some things which I expect to exist on the target system). So no data files from the dependencies are included (guess that could break things..). The file list for the image I have now is as below. It only grew from around 30 MB to 37 MB when I added in the KF-stuff + Breeze, so it's not that bad after all. I'm going to do some more testing of the image on other distros, only tested Ubuntu Xenial and Fedora 24 so far. Elvis estan@newton:~/orexplore/insight/appimage$ ./appimagetool-x86_64.AppImage --list insight.AppImage .DirIcon AppRun orexplore-insight.desktop orexplore-insight.svg usr usr/bin usr/bin/orexplore-insight usr/lib usr/lib/libKF5Auth.so.5 usr/lib/libKF5Codecs.so.5 usr/lib/libKF5ConfigCore.so.5 usr/lib/libKF5ConfigGui.so.5 usr/lib/libKF5ConfigWidgets.so.5 usr/lib/libKF5CoreAddons.so.5 usr/lib/libKF5GuiAddons.so.5 usr/lib/libKF5I18n.so.5 usr/lib/libKF5WidgetsAddons.so.5 usr/lib/libKF5WindowSystem.so.5 usr/lib/libQt5Concurrent.so.5 usr/lib/libQt5Core.so.5 usr/lib/libQt5DBus.so.5 usr/lib/libQt5Gui.so.5 usr/lib/libQt5Network.so.5 usr/lib/libQt5OpenGL.so.5 usr/lib/libQt5PrintSupport.so.5 usr/lib/libQt5Qml.so.5 usr/lib/libQt5Quick.so.5 usr/lib/libQt5Svg.so.5 usr/lib/libQt5Widgets.so.5 usr/lib/libQt5X11Extras.so.5 usr/lib/libQt5XcbQpa.so.5 usr/lib/libQt5Xml.so.5 usr/lib/libblosc.so.1 usr/lib/libcrypto.so.10 usr/lib/libexpat.so.1 usr/lib/libfreebl3.so usr/lib/libfreetype.so.6 usr/lib/libglib-2.0.so.0 usr/lib/libgnutls.so.26 usr/lib/libgobject-2.0.so.0 usr/lib/libgssapi_krb5.so.2 usr/lib/libgthread-2.0.so.0 usr/lib/libhdf5.so.10 usr/lib/libicudata.so.42 usr/lib/libicui18n.so.42 usr/lib/libicuuc.so.42 usr/lib/libinsightmodel.so usr/lib/libinsightview.so usr/lib/libjpeg.so.62 usr/lib/libk5crypto.so.3 usr/lib/libkeyutils.so.1 usr/lib/libkrb5.so.3 usr/lib/libkrb5support.so.0 usr/lib/libpng12.so.0 usr/lib/libqwt.so.6 usr/lib/libssl.so.10 usr/lib/libsz.so.2 usr/lib/libtasn1.so.3 usr/lib/libtiff.so.3 usr/lib/libudev.so.0 usr/lib/libvtkChartsCore-7.1.so.1 usr/lib/libvtkCommonColor-7.1.so.1 usr/lib/libvtkCommonComputationalGeometry-7.1.so.1 usr/lib/libvtkCommonCore-7.1.so.1 usr/lib/libvtkCommonDataModel-7.1.so.1 usr/lib/libvtkCommonExecutionModel-7.1.so.1 usr/lib/libvtkCommonMath-7.1.so.1 usr/lib/libvtkCommonMisc-7.1.so.1 usr/lib/libvtkCommonSystem-7.1.so.1 usr/lib/libvtkCommonTransforms-7.1.so.1 usr/lib/libvtkDICOMParser-7.1.so.1 usr/lib/libvtkFiltersCore-7.1.so.1 usr/lib/libvtkFiltersExtraction-7.1.so.1 usr/lib/libvtkFiltersGeneral-7.1.so.1 usr/lib/libvtkFiltersGeometry-7.1.so.1 usr/lib/libvtkFiltersHybrid-7.1.so.1 usr/lib/libvtkFiltersModeling-7.1.so.1 usr/lib/libvtkFiltersSources-7.1.so.1 usr/lib/libvtkFiltersStatistics-7.1.so.1 usr/lib/libvtkFiltersTexture-7.1.so.1 usr/lib/libvtkGUISupportQt-7.1.so.1 usr/lib/libvtkIOCore-7.1.so.1 usr/lib/libvtkIOImage-7.1.so.1 usr/lib/libvtkIOXML-7.1.so.1 usr/lib/libvtkIOXMLParser-7.1.so.1 usr/lib/libvtkImagingColor-7.1.so.1 usr/lib/libvtkImagingCore-7.1.so.1 usr/lib/libvtkImagingFourier-7.1.so.1 usr/lib/libvtkImagingGeneral-7.1.so.1 usr/lib/libvtkImagingHybrid-7.1.so.1 usr/lib/libvtkImagingMath-7.1.so.1 usr/lib/libvtkImagingSources-7.1.so.1 usr/lib/libvtkImagingStatistics-7.1.so.1 usr/lib/libvtkInfovisCore-7.1.so.1 usr/lib/libvtkInteractionStyle-7.1.so.1 usr/lib/libvtkInteractionWidgets-7.1.so.1 usr/lib/libvtkRenderingAnnotation-7.1.so.1 usr/lib/libvtkRenderingContext2D-7.1.so.1 usr/lib/libvtkRenderingContextOpenGL2-7.1.so.1 usr/lib/libvtkRenderingCore-7.1.so.1 usr/lib/libvtkRenderingFreeType-7.1.so.1 usr/lib/libvtkRenderingFreeTypeFontConfig-7.1.so.1 usr/lib/libvtkRenderingLabel-7.1.so.1 usr/lib/libvtkRenderingOpenGL2-7.1.so.1 usr/lib/libvtkRenderingQt-7.1.so.1 usr/lib/libvtkRenderingVolume-7.1.so.1 usr/lib/libvtkRenderingVolumeOpenGL2-7.1.so.1 usr/lib/libvtkViewsContext2D-7.1.so.1 usr/lib/libvtkViewsCore-7.1.so.1 usr/lib/libvtkalglib-7.1.so.1 usr/lib/libvtkglew-7.1.so.1 usr/lib/libvtkmetaio-7.1.so.1 usr/lib/libvtksys-7.1.so.1 usr/lib/libxcb-keysyms.so.1 usr/lib/orexplore-insight usr/lib/orexplore-insight/libinsightmodel.so usr/lib/orexplore-insight/libinsightview.so usr/lib/qt5 usr/lib/qt5/plugins usr/lib/qt5/plugins/iconengines usr/lib/qt5/plugins/iconengines/libqsvgicon.so usr/lib/qt5/plugins/imageformats usr/lib/qt5/plugins/imageformats/libqgif.so usr/lib/qt5/plugins/imageformats/libqico.so usr/lib/qt5/plugins/imageformats/libqjpeg.so usr/lib/qt5/plugins/imageformats/libqsvg.so usr/lib/qt5/plugins/platforminputcontexts usr/lib/qt5/plugins/platforminputcontexts/libcomposeplatforminputcontextplugin.so usr/lib/qt5/plugins/platforminputcontexts/libibusplatforminputcontextplugin.so usr/lib/qt5/plugins/platforms usr/lib/qt5/plugins/platforms/libqxcb.so usr/lib/qt5/plugins/printsupport usr/lib/qt5/plugins/printsupport/libcupsprintersupport.so usr/lib/qt5/plugins/styles usr/lib/qt5/plugins/styles/breeze.so usr/lib/qt5/plugins/xcbglintegrations usr/lib/qt5/plugins/xcbglintegrations/libqxcb-glx-integration.so usr/lib64 usr/local usr/local/hdf5 usr/local/hdf5/lib usr/local/hdf5/lib/plugin usr/local/hdf5/lib/plugin/libblosc_filter.so usr/share usr/share/applications usr/share/applications/orexplore-insight.desktop usr/share/icons usr/share/icons/hicolor usr/share/icons/hicolor/128x128 usr/share/icons/hicolor/128x128/apps usr/share/icons/hicolor/128x128/apps/orexplore-insight.png usr/share/icons/hicolor/128x128/mimetypes usr/share/icons/hicolor/128x128/mimetypes/application-x-orexplore-insight usr/share/icons/hicolor/16x16 usr/share/icons/hicolor/16x16/apps usr/share/icons/hicolor/16x16/apps/orexplore-insight.png usr/share/icons/hicolor/16x16/mimetypes usr/share/icons/hicolor/16x16/mimetypes/application-x-orexplore-insight usr/share/icons/hicolor/22x22 usr/share/icons/hicolor/22x22/apps usr/share/icons/hicolor/22x22/apps/orexplore-insight.png usr/share/icons/hicolor/22x22/mimetypes usr/share/icons/hicolor/22x22/mimetypes/application-x-orexplore-insight usr/share/icons/hicolor/24x24 usr/share/icons/hicolor/24x24/apps usr/share/icons/hicolor/24x24/apps/orexplore-insight.png usr/share/icons/hicolor/24x24/mimetypes usr/share/icons/hicolor/24x24/mimetypes/application-x-orexplore-insight usr/share/icons/hicolor/256x256 usr/share/icons/hicolor/256x256/apps usr/share/icons/hicolor/256x256/apps/orexplore-insight.png usr/share/icons/hicolor/256x256/mimetypes usr/share/icons/hicolor/256x256/mimetypes/application-x-orexplore-insight usr/share/icons/hicolor/32x32 usr/share/icons/hicolor/32x32/apps usr/share/icons/hicolor/32x32/apps/orexplore-insight.png usr/share/icons/hicolor/32x32/mimetypes usr/share/icons/hicolor/32x32/mimetypes/application-x-orexplore-insight usr/share/icons/hicolor/48x48 usr/share/icons/hicolor/48x48/apps usr/share/icons/hicolor/48x48/apps/orexplore-insight.png usr/share/icons/hicolor/48x48/mimetypes usr/share/icons/hicolor/48x48/mimetypes/application-x-orexplore-insight usr/share/icons/hicolor/512x512 usr/share/icons/hicolor/512x512/apps usr/share/icons/hicolor/512x512/apps/orexplore-insight.png usr/share/icons/hicolor/512x512/mimetypes usr/share/icons/hicolor/512x512/mimetypes/application-x-orexplore-insight usr/share/icons/hicolor/64x64 usr/share/icons/hicolor/64x64/apps usr/share/icons/hicolor/64x64/apps/orexplore-insight.png usr/share/icons/hicolor/64x64/mimetypes usr/share/icons/hicolor/64x64/mimetypes/application-x-orexplore-insight usr/share/icons/hicolor/scalable usr/share/icons/hicolor/scalable/apps usr/share/icons/hicolor/scalable/apps/orexplore-insight.svg usr/share/icons/hicolor/scalable/mimetypes usr/share/icons/hicolor/scalable/mimetypes/application-x-orexplore-insight.svg estan@newton:~/orexplore/insight/appimage$ > > Christoph Feck >