Hello,
I create Flatpak for Paraview.
Flatpak is a packaging and distributing desktop software on Linux.
I would like it to be submit to Flathub, an app store for Flatpak apps. Many Linux distros supported Flatpak. So I think it would be beneficial to package large software like Paraview into Flatpak, it will make installing quick and easy.
Find and install hundreds of apps and games for Linux. Enjoy Firefox, Telegram, RetroArch, GIMP and many more!
This is what I have been working on so far.
I does build and runใ
I encounter a graphical issue. The graph show checker pattern glitch.
I encounter this glitch with Tomviz as well. So I think this might be issue with the display backend and Flatpak. Do anybody know what it is?
opened 06:16PM - 10 Mar 21 UTC
closed 01:23PM - 17 Jul 22 UTC
Hello,
I am trying to create Flatpak package for Tomviz and upload to Flathub… .
https://www.flatpak.org/
Flathub-builder is what use to build locally Flatpak.
I build dependencies in sequence below.
GLEW 2.2.0
Numpy 1.19.5
TBB 2019_U8
Swig 4.0.2 with flags below.
```
- --without-pcre
- --disable-ccache
- --without-tcl
- --without-tcl
- --without-perl5
- --without-octave
- --without-scilab
- --without-java
- --without-ruby
```
GDCM 3.0.8 Cmake-ninja
```
- -DGDCM_BUILD_APPLICATIONS=OFF
- -DGDCM_BUILD_SHARED_LIBS=ON
- -DCMAKE_BUILD_TYPE=Release
- -DGDCM_WRAP_PYTHON=ON
- -DPYTHON_EXECUTABLE=/usr/bin/python3
- -DGDCM_INSTALL_PYTHONMODULE_DIR=/app/lib/python3.8/site-packages/
- -DGDCM_USE_VTK=OFF
- -DGDCM_BUILD_DOCBOOK_MANPAGES:BOOL=OFF
```
CastXML 0.4.3. cmake
```
- -DCLANG_LINK_CLANG_DYLIB:BOOL=ON
- -DLLVM_DIR=/usr/lib/sdk/llvm11/lib/cmake/llvm
```
Eigen3 3.3.9 cmake-ninja
Paraview build with cmake from github.com/OpenChemistry/ParaView release v5.9.0 (commit 0aaf903ba3e8d012a608a466f798a041b4aebe17). The build flags were adopt from https://github.com/OpenChemistry/tomviz/blob/master/BUILDING.md.
```
- -DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo
- -DBUILD_TESTING:BOOL=OFF
- -DPARAVIEW_USE_PYTHON:BOOL=ON
- -DPARAVIEW_ENABLE_WEB:BOOL=OFF
- -DPARAVIEW_ENABLE_EMBEDDED_DOCUMENTATION:BOOL=OFF
- -DPARAVIEW_USE_QTHELP:BOOL=OFF
- -DPARAVIEW_PLUGINS_DEFAULT:BOOL=OFF
- -DVTK_SMP_IMPLEMENTATION_TYPE:STRING=TBB
- -DVTK_PYTHON_VERSION:STRING=3
- -DVTK_PYTHON_FULL_THREADSAFE:BOOL=ON
- -DVTK_NO_PYTHON_THREADS:BOOL=OFF
```
ITK release 5.1.2 with cmake, flags also adopt from BUILDING.md.
```
- -DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo
- -DITK_LEGACY_REMOVE:BOOL=ON
- -DITK_LEGACY_SILENT:BOOL=ON
- -DModule_ITKBridgeNumPy:BOOL=ON
- -DBUILD_TESTING:BOOL=OFF
- -DITK_WRAP_unsigned_short:BOOL=ON
- -DITK_WRAP_rgb_unsigned_char:BOOL=OFF
- -DITK_WRAP_rgba_unsigned_char:BOOL=OFF
- -DITK_BUILD_DEFAULT_MODULES:BOOL=OFF
- -DITKGroup_Core:BOOL=ON
- -DITKGroup_Filtering:BOOL=ON
- -DITKGroup_Segmentation:BOOL=ON
- -DITKGroup_Nonunit:BOOL=ON
- -DPython_ADDITIONAL_VERSIONS:STRING=3
- -DITK_WRAP_PYTHON:BOOL=ON
- -DBUILD_EXAMPLES:BOOL=OFF
- -DBUILD_SHARED_LIBS:BOOL=ON
- -DITK_USE_SYSTEM_LIBRARIES:BOOL=ON
- -DITK_USE_SYSTEM_CASTXML:BOOL=ON
- -DITK_USE_SYSTEM_GDCM:BOOL=ON
- -DITK_USE_SYSTEM_SWIG:BOOL=ON
- -DITK_USE_SYSTEM_VXL:BOOL=OFF
- -DITK_FORBID_DOWNLOADS=ON
```
And finally Tomviz build with cmake from github.com/OpenChemistry/tomviz tag:1.9.0 commit: b397df6d40810b97ad3afa221c2fa3e027d20754
` - -DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo`
During building of Tomviz, I got this error.
```
-- The C compiler identification is GNU 10.2.0
-- The CXX compiler identification is GNU 10.2.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Performing Test HAVE_GCC_ERROR_RETURN_TYPE
-- Performing Test HAVE_GCC_ERROR_RETURN_TYPE - Success
-- Found Git: /usr/bin/git (found version "2.30.0")
-- Determined Source Version : 1.9.0
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Check if compiler accepts -pthread
-- Check if compiler accepts -pthread - yes
-- Found Threads: TRUE
-- Found X11: /usr/include
-- Looking for XOpenDisplay in /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so
-- Looking for XOpenDisplay in /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Looking for IceConnectionNumber in ICE
-- Looking for IceConnectionNumber in ICE - found
-- Found OpenGL: /usr/lib/x86_64-linux-gnu/libOpenGL.so found components: OpenGL GLX
-- Found Python3: /usr/bin/python3.8 (found suitable version "3.8.7", minimum required is "3.8") found components: Interpreter Development.Module Development.Embed
-- Found Python3: /usr/bin/python3.8 (found version "3.8.7") found components: Interpreter Development Development.Module Development.Embed
-- Found PythonInterp: /usr/bin/python3.8 (found version "3.8.7")
-- Found PythonLibs: python3.8
-- pybind11 v2.2.3
-- Found OpenGL: /usr/lib/x86_64-linux-gnu/libOpenGL.so
-- Performing Test COMPILER_HAS_HIDDEN_VISIBILITY
-- Performing Test COMPILER_HAS_HIDDEN_VISIBILITY - Success
-- Performing Test COMPILER_HAS_HIDDEN_INLINE_VISIBILITY
-- Performing Test COMPILER_HAS_HIDDEN_INLINE_VISIBILITY - Success
-- Performing Test COMPILER_HAS_DEPRECATED_ATTR
-- Performing Test COMPILER_HAS_DEPRECATED_ATTR - Success
-- Performing Test HAS_FLTO
-- Performing Test HAS_FLTO - Success
-- LTO enabled
-- Configuring done
CMake Error at tomviz/CMakeLists.txt:631 (add_executable):
Target "tomviz" links to target "ParaView::ServerManagerRendering" but the
target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
CMake Error at tomviz/CMakeLists.txt:626 (add_library):
Target "tomvizlib" links to target "ParaView::ServerManagerRendering" but
the target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
-- Generating done
CMake Generate step failed. Build files cannot be regenerated correctly.
```
I suspect that I use OpenChemistry/ParaView version 5.9.0 (commit: 0aaf903ba3e8d012a608a466f798a041b4aebe17) instead of the commit: 98a2eea1af02a45fa6d9b72b97b67f991bcb1f0e (reference in superbuild) , that might fix this issue?
I will try rebuilding with the commit reference in superbuild (https://github.com/OpenChemistry/tomvizsuper), but it will take very long time to compile again.
left flatpak, right github binary
This is the “About Paraview” section.
Client Information:
Version: 5.9.0
VTK Version:
Qt Version: 5.15.2
vtkIdType size: 64bits
Embedded Python: On
Python Library Path: /usr/lib/python3.8
Python Library Version: 3.8.8 (default, Nov 10 2011, 15:00:00) [GCC 10.2.0]
Python Numpy Support: Off
Python Matplotlib Support: Off
Python Testing: Off
MPI Enabled: Off
Disable Registry: Off
Test Directory:
Data Directory:
OpenGL Vendor: Intel Open Source Technology Center
OpenGL Version: 4.2 (Core Profile) Mesa 20.3.4 (git-6d8c68603f)
OpenGL Renderer: Mesa DRI Intel(R) HD Graphics 4000 (IVB GT2)
Connection Information:
Remote Connection: No
I also think that this might cause by my outdate graphics driver.
Other problem I have is missing Examples and no matplotlib support.
If anybody is interest, please build Paraview Flatpak and try it out.
To build Paraview Flatpak.
Create new working folder.
Install flatpak-builder, for Ubuntu, sudo apt install flatpak-builder
Install KDE Sdk, choose version 5.15 (system), flatpak install org.kde.Platform org.kde.Sdk io.qt.qtwebengine.BaseApp
Clone sub-modules, these sub-modules are pre-made Flatpak manifest that commonly use, we will be using glew, git clone git://github.com/flathub/shared-modules.git
Download org.paraview.Paraview.yaml
and tbb_cmake.patch
from my github repo, put them in same folder.
flatpak-builder --install --user build org.paraview.Paraview.yaml --force-clean
Wait until finish and run with, flatpak run org.paraview.Paraview
Let me know if it work.
Anyone know where am I support to put the example data?