Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 37 additions & 0 deletions flatpak/io.github.open_vv.vv_4d_slicer.metainfo.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
<?xml version="1.0" encoding="UTF-8"?>
<component type="desktop-application">
<id>io.github.open_vv.vv_4d_slicer</id>

<name>VV 4D Slicer</name>
<summary>VV is an open-source and cross platform image viewer, designed for fast and simple visualization of spatio-temporal images: 2D, 2D+t, 3D and 3D+t (or 4D) images.</summary>

<metadata_license>FSFAP</metadata_license>
<project_license>BSD-3-Clause-Attribution</project_license>

<description>
<p>
VV is an open-source and cross platform image viewer, designed for fast and simple visualization of spatio-temporal images: 2D, 2D+t, 3D and 3D+t (or 4D) images. VV runs (at least!) on Linux, Windows and Mac OS in 32 and 64 bits.
</p>
<p>
VV is more specifically designed for qualitative evaluation of image registration and deformation field visualization. It contains several tools for superimposing images using complementary colors or transparency, visualizing vector fields and defining landmarks. With a modern graphic card, navigation is fast and smooth.
</p>
<p>
VV is distributed under two open source licenses: BSD and CeCILL-B license from the CNRS, without restrictions and without warranty. Feel free to use it as you like! We would like to encourage you to share your experience by sending an email to vv[at]creatis.insa-lyon.fr briefly describing your use of vv. When using it for publications, please make reference to the article:
</p>
<p>
Seroul, P. and Sarrut, D. VV : Viewer for the evaluation of 4D image registration. 2008. presented at the MICCAI workshop Systems and Architectures for Computer Assisted Interventions. pdf bibtex
</p>
</description>

<releases>
<release version="1.4.0+" date="2022-10-26">
<description>
<p>
It's based on VTK 8.1.2, ITK 5.2.1 with patches
</description>
<url>https://github.com/open-vv/vv</url>
</release>
</releases>

<launchable type="desktop-id">io.github.open_vv.vv_4d_slicer.desktop</launchable>
</component>
143 changes: 143 additions & 0 deletions flatpak/io.github.open_vv.vv_4d_slicer.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,143 @@
app-id: io.github.open_vv.vv_4d_slicer
runtime: org.kde.Platform
runtime-version: 5.15-23.08
sdk: org.kde.Sdk
command: vv
finish-args:
- --filesystem=host:rw
- --share=ipc
- --share=network
- --socket=x11
- --device=dri
- --device=all
cleanup:
- /include
- /lib/pkgconfig
- /lib/cmake
- /lib/*.a
- /share/cmake
- /share/doc

add-extensions:
org.freedesktop.Platform.GL:
directory: lib/GL
version: '1.4'
versions: 23.08;1.4
subdirectories: true
no-autodownload: false
autodelete: false
add-ld-path: lib
merge-dirs: vulkan/icd.d;glvnd/egl_vendor.d
download-if: active-gl-driver
enable-if: active-gl-driver

modules:
- name: OpenCL-Headers
buildsystem: cmake-ninja
sources:
- type: git
url: https://github.com/KhronosGroup/OpenCL-Headers.git
tag: v2022.01.04

- name: OpenCL-CLHPP
buildsystem: cmake-ninja
config-opts:
- -D OPENCL_INCLUDE_DIR=/app/include
- -D OPENCL_LIB_DIR=/app/lib
- -D BUILD_EXAMPLES=OFF
- -D BUILD_TESTS=OFF
- -D BUILD_DOCS=OFF
sources:
- type: git
url: https://github.com/KhronosGroup/OpenCL-CLHPP.git
tag: v2.0.11
- shared-modules/glew/glew.json
- shared-modules/glu/glu-9.json
- name: freeglut
buildsystem: cmake
build-options:
# https://github.com/flathub/org.openscad.OpenSCAD/blob/ce6220f8674bcd738d09244feb753204cd9a5904/org.openscad.OpenSCAD.json
- cflags: -fcommon
config-opts:
- -D FREEGLUT_BUILD_STATIC_LIBS=OFF
sources:
- type: archive
url: https://sourceforge.net/projects/freeglut/files/freeglut/3.2.2/freeglut-3.2.2.tar.gz
sha256: c5944a082df0bba96b5756dddb1f75d0cd72ce27b5395c6c1dde85c2ff297a50

- name: vtk
buildsystem: cmake-ninja
build-options:
build-args:
- --share=network
builddir: true
sources:
- type: git
url: https://github.com/Kitware/VTK.git
tag: v8.1.2
- type: patch
path: patches/vtk-v8.1.2-qt15-gcc13.patch
use-git-am: false
config-opts:
- -W no-dev
- -D CMAKE_INSTALL_PREFIX=/app
- -D VTK_BUILD_SHARED_LIBS=ON
- -D CMAKE_BUILD_TYPE:STRING=Release
- -D CMAKE_CXX_FLAGS='-fPIC'
- -D CMAKE_C_FLAGS='-fPIC'
- -D Module_vtkGUISupportQt=ON
- -D Module_vtkGUISupportQtOpenGL=ON
- -D Module_vtkRenderingQt=ON
- -D Module_vtkViewsQt=ON
- -D VTK_RENDERING_BACKEND:STRING=OpenGL2
- -D VTK_QT_VERSION=5
- -D BUILD_TESTING=OFF
- -D VTK_Group_Rendering:BOOL=ON

- name: itk
buildsystem: cmake-ninja
build-options:
build-args:
- --share=network
builddir: true
sources:
- type: git
url: https://github.com/InsightSoftwareConsortium/ITK.git
tag: v5.2.1
- type: patch
path: patches/itk-v5.2.1-gcc133.patch
use-git-am: false
config-opts:
- -W no-dev
- -D CMAKE_INSTALL_PREFIX=/app
- -D BUILD_SHARED_LIBS=ON
- -D Module_ITKVtkGlue=ON
- -D CMAKE_BUILD_TYPE:STRING=Release
- -D CMAKE_CXX_FLAGS='-fPIC'
- -D CMAKE_C_FLAGS='-fPIC'
- -D BUILD_EXAMPLES=OFF
- -D BUILD_TESTING=OFF
- -D VTK_DIR="/app/bin"

- name: vv
buildsystem: cmake-ninja
build-options:
build-args:
- --share=network
builddir: true
sources:
- type: git
url: https://github.com/open-vv/vv.git
- type: patch
path: patches/vv-1.4.0-itk-vtk.patch
use-git-am: false
config-opts:
- -W no-dev
- -D CMAKE_INSTALL_PREFIX=/app
- -D BUILD_SHARED_LIBS=OFF
- -D CMAKE_BUILD_TYPE:STRING=Release
- -D CMAKE_CXX_FLAGS='-fPIC'
- -D CMAKE_C_FLAGS='-fPIC'
post-install:
- echo "Post-install of VV..."
- mkdir -p /app/lib/GL
45 changes: 45 additions & 0 deletions flatpak/patches/itk-v5.2.1-gcc133.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
Only in itk-patch: itk.patch
diff -crB -x '*.git*' itk/Modules/Core/GPUFiniteDifference/include/itkGPUFiniteDifferenceFilterEnum.h itk-patch/Modules/Core/GPUFiniteDifference/include/itkGPUFiniteDifferenceFilterEnum.h
*** itk/Modules/Core/GPUFiniteDifference/include/itkGPUFiniteDifferenceFilterEnum.h 2024-05-23 15:43:14.197001000 +0200
--- itk-patch/Modules/Core/GPUFiniteDifference/include/itkGPUFiniteDifferenceFilterEnum.h 2024-05-24 09:26:50.648500000 +0200
***************
*** 20,25 ****
--- 20,26 ----

#include <iostream>
#include "ITKGPUFiniteDifferenceExport.h"
+ #include "itkIntTypes.h"

namespace itk
{
diff -crB -x '*.git*' itk/Modules/Filtering/MathematicalMorphology/include/itkMathematicalMorphologyEnums.h itk-patch/Modules/Filtering/MathematicalMorphology/include/itkMathematicalMorphologyEnums.h
*** itk/Modules/Filtering/MathematicalMorphology/include/itkMathematicalMorphologyEnums.h 2024-05-23 15:43:19.203739000 +0200
--- itk-patch/Modules/Filtering/MathematicalMorphology/include/itkMathematicalMorphologyEnums.h 2024-05-23 09:22:51.582247000 +0200
***************
*** 19,24 ****
--- 19,25 ----
#define itkMathematicalMorphologyEnums_h

#include <iostream>
+ #include <cstdint>
#include "ITKMathematicalMorphologyExport.h"


***************
*** 38,44 ****
* \brief Algorithm or implementation used in the dilation/erosion operations.
* \ingroup ITKMathematicalMorphology
*/
! enum class Algorithm : uint8_t
{
BASIC = 0,
HISTO = 1,
--- 39,45 ----
* \brief Algorithm or implementation used in the dilation/erosion operations.
* \ingroup ITKMathematicalMorphology
*/
! enum class Algorithm : std::uint8_t
{
BASIC = 0,
HISTO = 1,
Only in itk-patch/Modules/Remote: SimpleITKFilters
52 changes: 52 additions & 0 deletions flatpak/patches/vtk-v8.1.2-qt15-gcc13.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
diff -crB -x '*.git*' VTK/CMake/VTKGenerateExportHeader.cmake VTK-patch/CMake/VTKGenerateExportHeader.cmake
*** VTK/CMake/VTKGenerateExportHeader.cmake 2024-05-23 14:53:49.359235000 +0200
--- VTK-patch/CMake/VTKGenerateExportHeader.cmake 2024-05-22 21:17:24.191408000 +0200
***************
*** 174,181 ****
execute_process(COMMAND ${CMAKE_C_COMPILER} --version
OUTPUT_VARIABLE _gcc_version_info
ERROR_VARIABLE _gcc_version_info)
! string(REGEX MATCH "[3-9]\\.[0-9]\\.[0-9]*"
_gcc_version "${_gcc_version_info}")
# gcc on mac just reports: "gcc (GCC) 3.3 20030304 ..." without the
# patch level, handle this here:
if(NOT _gcc_version)
--- 174,185 ----
execute_process(COMMAND ${CMAKE_C_COMPILER} --version
OUTPUT_VARIABLE _gcc_version_info
ERROR_VARIABLE _gcc_version_info)
! string(REGEX MATCH "[1-9][0-9]\\.[0-9]\\.[0-9]*"
_gcc_version "${_gcc_version_info}")
+ if(NOT _gcc_version)
+ string(REGEX MATCH "[3-9]\\.[0-9]\\.[0-9]*"
+ _gcc_version "${_gcc_version_info}")
+ endif()
# gcc on mac just reports: "gcc (GCC) 3.3 20030304 ..." without the
# patch level, handle this here:
if(NOT _gcc_version)
diff -crB -x '*.git*' VTK/Rendering/Qt/vtkQtLabelRenderStrategy.cxx VTK-patch/Rendering/Qt/vtkQtLabelRenderStrategy.cxx
*** VTK/Rendering/Qt/vtkQtLabelRenderStrategy.cxx 2024-05-23 14:54:07.016275000 +0200
--- VTK-patch/Rendering/Qt/vtkQtLabelRenderStrategy.cxx 2024-05-22 19:04:14.000000000 +0200
***************
*** 40,45 ****
--- 40,46 ----
#include <QImage>
#include <QMap>
#include <QPainter>
+ #include <QPainterPath>
#include <QPair>
#include <QPixmap>
#include <QTextDocument>
diff -crB -x '*.git*' VTK/Rendering/Qt/vtkQtStringToImage.cxx VTK-patch/Rendering/Qt/vtkQtStringToImage.cxx
*** VTK/Rendering/Qt/vtkQtStringToImage.cxx 2024-05-23 14:54:07.019265000 +0200
--- VTK-patch/Rendering/Qt/vtkQtStringToImage.cxx 2024-05-22 19:04:40.000000000 +0200
***************
*** 31,36 ****
--- 31,37 ----
#include <QFontMetrics>
#include <QImage>
#include <QPainter>
+ #include <QPainterPath>
#include <QPixmap>
#include <QTextDocument>
#include <QTextStream>
Loading