From e44647c0db20f76100a091b96269c3ede6b967d9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Krup=C4=8D=C3=ADk?= <lukas.krupcik@vsb.cz>
Date: Wed, 25 Mar 2020 10:19:54 +0100
Subject: [PATCH] 	new file:   a/ATK/ATK-2.34.1.eb 	new file:  
 a/ant/ant-1.10.7-Java-13.0.1.eb 	new file:  
 a/at-spi2-atk/at-spi2-atk-2.34.1.eb 	new file:  
 a/at-spi2-core/at-spi2-core-2.34.0.eb 	modified:   c/cairo/cairo-1.17.2.eb 
 new file:   f/FFmpeg/FFmpeg-4.2.2.eb 	new file:   f/FriBidi/FriBidi-1.0.9.eb
 	new file:   f/fontconfig/fontconfig-2.12.6.eb 	modified:  
 f/fontconfig/fontconfig-2.13.1.eb 	new file:  
 f/freetype/freetype-2.10.1.eb 	new file:   g/GLib/GLib-2.64.0.eb 	new
 file:   g/GObject-Introspection/GObject-Introspection-1.63.1-Py-3.7.eb 
 new file:   g/GTK+/GTK+-3.24.13.eb 	new file:  
 g/Gdk-Pixbuf/Gdk-Pixbuf-2.38.2.eb 	new file:  
 h/HarfBuzz/HarfBuzz-2.6.4.eb 	new file:   i/ICU/ICU-64.2.eb 	new file:  
 l/LibTIFF/LibTIFF-4.1.0.eb 	new file:   l/libepoxy/libepoxy-1.5.4.eb 
 new file:   l/libjpeg-turbo/libjpeg-turbo-2.0.4.eb 	new file:  
 o/OpenCV/OpenCV-3.4.7-intel-2020a-Py-3.7.eb 	new file:  
 o/OpenCV/OpenCV-4.2.0-Py-3.7.eb 	new file:   p/Pango/Pango-1.44.7.eb 
 new file:   v/VTK/VTK-8.2.0-foss-2019b-Python-3.7.4.eb 	modified:  
 v/VTK/VTK-8.2.0-intel-2020a-Py-3.7.eb 	new file:   "v/VTK/\\" 	modified:  
 x/X11/X11-20190717.eb

---
 a/ATK/ATK-2.34.1.eb                           | 40 +++++++++
 a/ant/ant-1.10.7-Java-13.0.1.eb               | 29 ++++++
 a/at-spi2-atk/at-spi2-atk-2.34.1.eb           | 45 ++++++++++
 a/at-spi2-core/at-spi2-core-2.34.0.eb         | 41 +++++++++
 c/cairo/cairo-1.17.2.eb                       |  2 +-
 f/FFmpeg/FFmpeg-4.2.2.eb                      | 46 ++++++++++
 f/FriBidi/FriBidi-1.0.9.eb                    | 34 +++++++
 f/fontconfig/fontconfig-2.12.6.eb             | 30 +++++++
 f/fontconfig/fontconfig-2.13.1.eb             |  7 +-
 f/freetype/freetype-2.10.1.eb                 | 39 ++++++++
 g/GLib/GLib-2.64.0.eb                         | 44 +++++++++
 .../GObject-Introspection-1.63.1-Py-3.7.eb    | 45 ++++++++++
 g/GTK+/GTK+-3.24.13.eb                        | 72 +++++++++++++++
 g/Gdk-Pixbuf/Gdk-Pixbuf-2.38.2.eb             | 48 ++++++++++
 h/HarfBuzz/HarfBuzz-2.6.4.eb                  | 37 ++++++++
 i/ICU/ICU-64.2.eb                             | 31 +++++++
 l/LibTIFF/LibTIFF-4.1.0.eb                    | 21 +++++
 l/libepoxy/libepoxy-1.5.4.eb                  | 40 +++++++++
 l/libjpeg-turbo/libjpeg-turbo-2.0.4.eb        | 49 ++++++++++
 o/OpenCV/OpenCV-3.4.7-intel-2020a-Py-3.7.eb   | 54 +++++++++++
 o/OpenCV/OpenCV-4.2.0-Py-3.7.eb               | 37 ++++++++
 p/Pango/Pango-1.44.7.eb                       | 43 +++++++++
 v/VTK/VTK-8.2.0-foss-2019b-Python-3.7.4.eb    | 90 +++++++++++++++++++
 v/VTK/VTK-8.2.0-intel-2020a-Py-3.7.eb         |  2 +-
 "v/VTK/\\"                                    | 87 ++++++++++++++++++
 x/X11/X11-20190717.eb                         |  4 +-
 26 files changed, 1012 insertions(+), 5 deletions(-)
 create mode 100644 a/ATK/ATK-2.34.1.eb
 create mode 100644 a/ant/ant-1.10.7-Java-13.0.1.eb
 create mode 100644 a/at-spi2-atk/at-spi2-atk-2.34.1.eb
 create mode 100644 a/at-spi2-core/at-spi2-core-2.34.0.eb
 create mode 100644 f/FFmpeg/FFmpeg-4.2.2.eb
 create mode 100644 f/FriBidi/FriBidi-1.0.9.eb
 create mode 100644 f/fontconfig/fontconfig-2.12.6.eb
 create mode 100644 f/freetype/freetype-2.10.1.eb
 create mode 100644 g/GLib/GLib-2.64.0.eb
 create mode 100644 g/GObject-Introspection/GObject-Introspection-1.63.1-Py-3.7.eb
 create mode 100644 g/GTK+/GTK+-3.24.13.eb
 create mode 100644 g/Gdk-Pixbuf/Gdk-Pixbuf-2.38.2.eb
 create mode 100644 h/HarfBuzz/HarfBuzz-2.6.4.eb
 create mode 100644 i/ICU/ICU-64.2.eb
 create mode 100644 l/LibTIFF/LibTIFF-4.1.0.eb
 create mode 100644 l/libepoxy/libepoxy-1.5.4.eb
 create mode 100644 l/libjpeg-turbo/libjpeg-turbo-2.0.4.eb
 create mode 100644 o/OpenCV/OpenCV-3.4.7-intel-2020a-Py-3.7.eb
 create mode 100644 o/OpenCV/OpenCV-4.2.0-Py-3.7.eb
 create mode 100644 p/Pango/Pango-1.44.7.eb
 create mode 100644 v/VTK/VTK-8.2.0-foss-2019b-Python-3.7.4.eb
 create mode 100644 "v/VTK/\\"

diff --git a/a/ATK/ATK-2.34.1.eb b/a/ATK/ATK-2.34.1.eb
new file mode 100644
index 00000000..a23530e4
--- /dev/null
+++ b/a/ATK/ATK-2.34.1.eb
@@ -0,0 +1,40 @@
+# JH 2020
+
+easyblock = 'MesonNinja'
+
+name = 'ATK'
+version = '2.34.1'
+
+homepage = 'https://developer.gnome.org/ATK/stable/'
+description = """
+ ATK provides the set of accessibility interfaces that are implemented by other
+ toolkits and applications. Using the ATK interfaces, accessibility tools have
+ full access to view and control running applications.
+"""
+
+toolchain = SYSTEM
+
+source_urls = [FTPGNOME_SOURCE]
+sources = [SOURCELOWER_TAR_XZ]
+
+
+builddependencies = [
+    ('Meson', '0.53.0', '-Py-3.7'),
+    ('Ninja', '1.9.0'),
+    ('pkg-config', '0.29.2'),
+    ('GObject-Introspection', '1.63.1', '-Py-3.7'),
+]
+
+dependencies = [
+    ('GLib', '2.64.0'),
+]
+
+configopts = "--buildtype=release --default-library=both "
+configopts += "-Dintrospection=true "
+
+sanity_check_paths = {
+    'files': ['lib/libatk-1.0.%s' % SHLIB_EXT],
+    'dirs': [],
+}
+
+moduleclass = 'vis'
diff --git a/a/ant/ant-1.10.7-Java-13.0.1.eb b/a/ant/ant-1.10.7-Java-13.0.1.eb
new file mode 100644
index 00000000..1041eb62
--- /dev/null
+++ b/a/ant/ant-1.10.7-Java-13.0.1.eb
@@ -0,0 +1,29 @@
+# JH 2020
+
+easyblock = 'PackedBinary'
+
+name = 'ant'
+version = '1.10.7'
+versionsuffix = '-Java-%(javaver)s'
+
+homepage = 'https://ant.apache.org/'
+description = """Apache Ant is a Java library and command-line tool whose mission is to drive processes described in
+ build files as targets and extension points dependent upon each other. The main known usage of Ant is the build of
+ Java applications."""
+
+toolchain = SYSTEM
+
+source_urls = ['https://apache.mirrors.cu.be/ant/binaries']
+sources = ['apache-%(name)s-%(version)s-bin.tar.gz']
+checksums = ['2e0f2e0348e146b5a366de55bb97a1508c57544623f35f2432b7f6b844581341']
+
+dependencies = [('Java', '13.0.1')]
+
+sanity_check_paths = {
+    'files': ['bin/ant', 'lib/ant.jar'],
+    'dirs': [],
+}
+
+modextravars = {'ANT_HOME': '%(installdir)s'}
+
+moduleclass = 'devel'
diff --git a/a/at-spi2-atk/at-spi2-atk-2.34.1.eb b/a/at-spi2-atk/at-spi2-atk-2.34.1.eb
new file mode 100644
index 00000000..2a5780e5
--- /dev/null
+++ b/a/at-spi2-atk/at-spi2-atk-2.34.1.eb
@@ -0,0 +1,45 @@
+# JH 2020
+
+easyblock = 'MesonNinja'
+
+name = 'at-spi2-atk'
+version = '2.34.1'
+
+homepage = 'https://wiki.gnome.org/Accessibility'
+description = """
+ AT-SPI 2 toolkit bridge
+"""
+
+toolchain = SYSTEM
+
+source_urls = [FTPGNOME_SOURCE]
+sources = [SOURCELOWER_TAR_XZ]
+patches = ['at-spi2-atk-2.34.1_add-time-header-test.patch']
+checksums = [
+    '776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16',  # at-spi2-atk-2.34.1.tar.xz
+    'df7d3e29716d2e5a72bf919df675e3742253a356682f6fe0d75cd3849f4a89a3',  # at-spi2-atk-2.34.1_add-time-header-test.patch
+]
+
+builddependencies = [
+    ('binutils', '2.32'),
+    ('Meson', '0.53.0', '-Py-3.7'),
+    ('Ninja', '1.9.0'),
+    ('pkg-config', '0.29.2'),
+]
+
+dependencies = [
+    ('GLib', '2.64.0'),
+    ('DBus', '1.13.8'),
+    ('at-spi2-core', '2.34.0'),
+    ('libxml2', '2.9.9'),
+    ('ATK', '2.34.1'),
+]
+
+configopts = "--libdir lib "
+
+sanity_check_paths = {
+    'files': ['lib/libatk-bridge-2.0.%s' % SHLIB_EXT],
+    'dirs': [],
+}
+
+moduleclass = 'vis'
diff --git a/a/at-spi2-core/at-spi2-core-2.34.0.eb b/a/at-spi2-core/at-spi2-core-2.34.0.eb
new file mode 100644
index 00000000..c33b88e2
--- /dev/null
+++ b/a/at-spi2-core/at-spi2-core-2.34.0.eb
@@ -0,0 +1,41 @@
+# JH 2020
+
+easyblock = 'MesonNinja'
+
+name = 'at-spi2-core'
+version = '2.34.0'
+
+homepage = 'https://wiki.gnome.org/Accessibility'
+description = """
+ Assistive Technology Service Provider Interface.
+"""
+
+toolchain = SYSTEM
+
+source_urls = [FTPGNOME_SOURCE]
+sources = [SOURCELOWER_TAR_XZ]
+checksums = ['d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6']
+
+builddependencies = [
+    ('binutils', '2.32'),
+    ('Meson', '0.53.0', '-Py-3.7'),
+    ('Ninja', '1.9.0'),
+    ('GObject-Introspection', '1.63.1', '-Py-3.7'),
+    ('gettext', '0.20.1'),
+    ('pkg-config', '0.29.2'),
+]
+
+dependencies = [
+    ('GLib', '2.64.0'),
+    ('DBus', '1.13.8'),
+    ('X11', '20190717'),
+]
+
+configopts = "--libdir lib "
+
+sanity_check_paths = {
+    'files': ['lib/libatspi.%s' % SHLIB_EXT],
+    'dirs': [],
+}
+
+moduleclass = 'vis'
diff --git a/c/cairo/cairo-1.17.2.eb b/c/cairo/cairo-1.17.2.eb
index cc66ecc2..63105980 100644
--- a/c/cairo/cairo-1.17.2.eb
+++ b/c/cairo/cairo-1.17.2.eb
@@ -22,7 +22,7 @@ dependencies = [
 #    ('freetype', '2.7.1', '-libpng-1.6.29'),
     ('pixman', '0.38.4'),
 #    ('expat', '2.2.0'),
-    ('GLib', '2.62.4'),
+    ('GLib', '2.64.0'),
     ('X11', '20190717'),
 ]
 
diff --git a/f/FFmpeg/FFmpeg-4.2.2.eb b/f/FFmpeg/FFmpeg-4.2.2.eb
new file mode 100644
index 00000000..5b692d8d
--- /dev/null
+++ b/f/FFmpeg/FFmpeg-4.2.2.eb
@@ -0,0 +1,46 @@
+# JH 2020
+
+easyblock = 'ConfigureMake'
+
+name = 'FFmpeg'
+version = '4.2.2'
+
+homepage = 'https://www.ffmpeg.org/'
+description = """A local_complete, cross-platform solution to record, convert and stream audio and video."""
+
+toolchain = SYSTEM
+
+source_urls = ['http://ffmpeg.org/releases/']
+sources = [SOURCELOWER_TAR_BZ2]
+
+builddependencies = [
+    ('pkg-config', '0.29.2')
+]
+
+dependencies = [
+    ('NASM', '2.13.03'),
+    ('zlib', '1.2.11'),
+    ('bzip2', '1.0.6'),
+    ('x264', '20181203'),
+    ('LAME', '3.100'),
+    ('x265', '2.9'),
+    ('X11', '20190717'),
+    ('fontconfig', '2.12.6'), # don't use v2.13, trust me!
+    ('freetype', '2.9.1'),
+    ('FriBidi', '1.0.9'),
+]
+
+preconfigopts = 'echo "PKG path: $PKG_CONFIG_PATH" && '
+
+configopts = '--enable-pic --enable-shared --enable-gpl --enable-version3 --enable-nonfree --cc="$CC" --cxx="$CXX" '
+configopts += '--enable-libx264 --enable-libx265 --enable-libmp3lame --enable-libfreetype --enable-fontconfig '
+configopts += '--enable-libfribidi'
+
+sanity_check_paths = {
+    'files': ['bin/ff%s' % x for x in ['mpeg', 'probe']] +
+             ['lib/lib%s.%s' % (x, y) for x in ['avdevice', 'avfilter', 'avformat', 'avcodec', 'postproc',
+                                                'swresample', 'swscale', 'avutil'] for y in [SHLIB_EXT, 'a']],
+    'dirs': ['include']
+}
+
+moduleclass = 'vis'
diff --git a/f/FriBidi/FriBidi-1.0.9.eb b/f/FriBidi/FriBidi-1.0.9.eb
new file mode 100644
index 00000000..4a7ea197
--- /dev/null
+++ b/f/FriBidi/FriBidi-1.0.9.eb
@@ -0,0 +1,34 @@
+# JH 2020
+
+easyblock = 'ConfigureMake'
+
+name = 'FriBidi'
+version = '1.0.9'
+
+homepage = 'https://github.com/fribidi/fribidi'
+
+description = """
+ The Free Implementation of the Unicode Bidirectional Algorithm.
+"""
+
+toolchain = SYSTEM
+
+source_urls = [
+    'https://github.com/%(namelower)s/%(namelower)s/releases/download/v%(version)s']
+sources = [SOURCELOWER_TAR_XZ]
+
+builddependencies = [
+    ('Autotools', '20180311'),
+    ('binutils', '2.31.1'),
+    ('pkg-config', '0.29.2'),
+]
+
+configopts = '--disable-docs'
+
+sanity_check_paths = {
+    'files': ['bin/%(namelower)s', 'include/%(namelower)s/%(namelower)s.h',
+              'lib/lib%%(namelower)s.%s' % SHLIB_EXT],
+    'dirs': []
+}
+
+moduleclass = 'lang'
diff --git a/f/fontconfig/fontconfig-2.12.6.eb b/f/fontconfig/fontconfig-2.12.6.eb
new file mode 100644
index 00000000..7121e86e
--- /dev/null
+++ b/f/fontconfig/fontconfig-2.12.6.eb
@@ -0,0 +1,30 @@
+# IT4Innovations 2019
+
+easyblock = 'ConfigureMake'
+
+name = "fontconfig"
+version = '2.12.6'
+
+homepage = 'http://www.freedesktop.org/software/fontconfig'
+description = """Fontconfig is a library designed to provide system-wide font configuration, customization and
+application access."""
+
+toolchain = SYSTEM
+
+source_urls = ['http://www.freedesktop.org/software/fontconfig/release/']
+sources = [SOURCE_TAR_GZ]
+
+builddependencies = [
+    ('gperf', '3.1'),
+    ('pkg-config', '0.29.2'),
+]
+
+dependencies = [
+    ('expat', '2.1.0'),
+    ('freetype', '2.9.1'),
+    ('util-linux', '2.34'),
+]
+
+configopts = '--disable-docs '
+
+moduleclass = 'vis'
diff --git a/f/fontconfig/fontconfig-2.13.1.eb b/f/fontconfig/fontconfig-2.13.1.eb
index 9e9f804e..09b53b33 100644
--- a/f/fontconfig/fontconfig-2.13.1.eb
+++ b/f/fontconfig/fontconfig-2.13.1.eb
@@ -14,10 +14,15 @@ toolchain = SYSTEM
 source_urls = ['http://www.freedesktop.org/software/fontconfig/release/']
 sources = [SOURCE_TAR_GZ]
 
+builddependencies = [
+    ('gperf', '3.1'),
+    ('pkg-config', '0.29.2'),
+]
+
 dependencies = [
     ('expat', '2.1.0'),
     ('freetype', '2.9.1'),
-    ('gperf', '3.1'),
+    ('util-linux', '2.34'),
 ]
 
 configopts = '--disable-docs '
diff --git a/f/freetype/freetype-2.10.1.eb b/f/freetype/freetype-2.10.1.eb
new file mode 100644
index 00000000..b5a891c2
--- /dev/null
+++ b/f/freetype/freetype-2.10.1.eb
@@ -0,0 +1,39 @@
+# JH 2020
+
+name = 'freetype'
+version = '2.10.1'
+
+homepage = 'https://www.freetype.org'
+
+description = """
+ FreeType 2 is a software font engine that is designed to be small, efficient,
+ highly customizable, and portable while capable of producing high-quality
+ output (glyph images). It can be used in graphics libraries, display servers,
+ font conversion tools, text image generation tools, and many other products
+ as well.
+"""
+
+toolchain = SYSTEM
+toolchainopts = {'pic': True}
+
+source_urls = [GNU_SAVANNAH_SOURCE]
+sources = [SOURCE_TAR_GZ]
+checksums = ['3a60d391fd579440561bf0e7f31af2222bc610ad6ce4d9d7bd2165bca8669110']
+
+builddependencies = [('binutils', '2.32')]
+
+dependencies = [
+    ('bzip2', '1.0.8'),
+    ('libpng', '1.6.37'),
+    ('zlib', '1.2.11'),
+]
+
+configopts = '--enable-freetype-config --with-harfbuzz=no'
+
+sanity_check_paths = {
+    'files': ['bin/freetype-config', 'lib/libfreetype.a',
+              'lib/libfreetype.%s' % SHLIB_EXT, 'lib/pkgconfig/freetype2.pc'],
+    'dirs': ['include/freetype2'],
+}
+
+moduleclass = 'vis'
diff --git a/g/GLib/GLib-2.64.0.eb b/g/GLib/GLib-2.64.0.eb
new file mode 100644
index 00000000..25548dd2
--- /dev/null
+++ b/g/GLib/GLib-2.64.0.eb
@@ -0,0 +1,44 @@
+# JH 2020
+
+easyblock = 'MesonNinja'
+
+name = 'GLib'
+version = '2.64.0'
+
+homepage = 'http://www.gtk.org/'
+description = """GLib is one of the base libraries of the GTK+ project"""
+
+toolchain = SYSTEM
+toolchainopts = {'pic': True}
+
+source_urls = ['http://ftp.gnome.org/pub/gnome/sources/glib/%(version_major_minor)s/']
+sources = ['glib-%(version)s.tar.xz']
+
+builddependencies = [
+    ('Meson', '0.53.0', '', ('Py', '3.7')),
+    ('Ninja', '1.9.0', '', ('Py', '3.7')),
+    ('binutils', '2.32'),
+    ('pkg-config', '0.29.2'),
+]
+
+dependencies = [
+    ('libffi', '3.3'),
+    ('gettext', '0.20.1'),
+    ('libxml2', '2.9.9'),
+    ('PCRE', '8.43'),
+    ('util-linux', '2.34'),
+]
+
+# avoid using hardcoded path to Python binary in build step
+preconfigopts = "export PYTHON=python && "
+
+configopts = "--buildtype=release --default-library=both "
+
+fix_python_shebang_for = ['bin/*']
+
+sanity_check_paths = {
+    'files': ['lib/libglib-%(version_major)s.0.a', 'lib/libglib-%%(version_major)s.0.%s' % SHLIB_EXT],
+    'dirs': ['bin', 'include'],
+}
+
+moduleclass = 'vis'
diff --git a/g/GObject-Introspection/GObject-Introspection-1.63.1-Py-3.7.eb b/g/GObject-Introspection/GObject-Introspection-1.63.1-Py-3.7.eb
new file mode 100644
index 00000000..ab9ed833
--- /dev/null
+++ b/g/GObject-Introspection/GObject-Introspection-1.63.1-Py-3.7.eb
@@ -0,0 +1,45 @@
+# JH 2020
+
+easyblock = 'MesonNinja'
+
+name = 'GObject-Introspection'
+version = '1.63.1'
+versionsuffix = '-Py-3.7'
+
+homepage = 'https://wiki.gnome.org/GObjectIntrospection/'
+description = """GObject introspection is a middleware layer between C libraries
+ (using GObject) and language bindings. The C library can be scanned at
+ compile time and generate a metadata file, in addition to the actual
+ native C library. Then at runtime, language bindings can read this
+ metadata and automatically provide bindings to call into the C library."""
+
+toolchain = SYSTEM
+
+source_urls = [FTPGNOME_SOURCE]
+sources = [SOURCELOWER_TAR_XZ]
+checksums = ['476379bde8d080d92dd1bb1684f6aa8d79d90ddb81fc85dfa3576e36f9777ab6']
+
+builddependencies = [
+    ('Meson', '0.53.0', '-Py-3.7'),
+    ('Ninja', '1.9.0'),
+    ('flex', '2.6.4'),
+    ('Bison', '3.3.2'),
+    ('cairo', '1.17.2'),
+]
+
+dependencies = [
+    ('Py', '3.7'),
+    ('GLib', '2.64.0'),
+    ('libffi', '3.3'),
+    ('util-linux', '2.34'),
+]
+
+preconfigopts = "env GI_SCANNER_DISABLE_CACHE=true "
+
+sanity_check_paths = {
+    'files': ['bin/g-ir-%s' % x for x in ['annotation-tool', 'compiler', 'generate', 'scanner']] +
+             ['lib/libgirepository-1.0.' + SHLIB_EXT],
+    'dirs': ['include', 'share']
+}
+
+moduleclass = 'devel'
diff --git a/g/GTK+/GTK+-3.24.13.eb b/g/GTK+/GTK+-3.24.13.eb
new file mode 100644
index 00000000..1eefb6f9
--- /dev/null
+++ b/g/GTK+/GTK+-3.24.13.eb
@@ -0,0 +1,72 @@
+# JH 2020
+
+easyblock = 'Bundle'
+
+name = 'GTK+'
+version = '3.24.13'
+
+homepage = 'https://developer.gnome.org/gtk3/stable/'
+description = """GTK+ is the primary library used to construct user interfaces in GNOME. It
+ provides all the user interface controls, or widgets, used in a common
+ graphical application. Its object-oriented API allows you to construct
+ user interfaces without dealing with the low-level details of drawing and
+ device interaction.
+"""
+
+#toolchain = {'name': 'GCCcore', 'version': '8.3.0'}
+toolchain = SYSTEM
+
+builddependencies = [
+    ('binutils', '2.32'),
+    ('GObject-Introspection', '1.63.1', '-Py-3.7'),
+    ('gettext', '0.20.1'),
+    ('pkg-config', '0.29.2'),
+    ('cairo', '1.17.2'),
+    ('Perl', '5.30.0', '', ('GCCcore', '8.3.0')),
+]
+
+dependencies = [
+    ('ATK', '2.34.1'),
+    ('at-spi2-atk', '2.34.1'),
+    ('Gdk-Pixbuf', '2.38.2'),
+    ('Pango', '1.44.7'),
+    ('libepoxy', '1.5.4'),
+    ('X11', '20190717'),
+    ('FriBidi', '1.0.9'),
+]
+
+default_easyblock = 'ConfigureMake'
+
+default_component_specs = {
+    'sources': [SOURCELOWER_TAR_XZ],
+    'start_dir': '%(namelower)s-%(version)s',
+}
+
+components = [
+    ('hicolor-icon-theme', '0.17', {
+        'source_urls': ['https://icon-theme.freedesktop.org/releases/'],
+        'checksums': ['317484352271d18cbbcfac3868eab798d67fff1b8402e740baa6ff41d588a9d8'],
+    }),
+    ('adwaita-icon-theme', '3.34.3', {
+        'source_urls': [FTPGNOME_SOURCE],
+        'checksums': ['e7c2d8c259125d5f35ec09522b88c8fe7ecf625224ab0811213ef0a95d90b908'],
+    }),
+    (name, version, {
+        'source_urls': [FTPGNOME_SOURCE],
+        'checksums': ['4c775c38cf1e3c534ef0ca52ca6c7a890fe169981af66141c713e054e68930a9'],
+        'configopts': "--disable-silent-rules --disable-glibtest --enable-introspection=yes --disable-visibility ",
+    }),
+]
+
+postinstallcmds = ['gtk-update-icon-cache']
+
+sanity_check_paths = {
+    'files': ['bin/%s' % x for x in ['gtk3-demo', 'gtk3-demo-application', 'gtk3-icon-browser', 'gtk3-widget-factory',
+                                     'gtk-builder-tool', 'gtk-launch', 'gtk-query-immodules-3.0', 'gtk-query-settings',
+                                     'gtk-update-icon-cache']] +
+             ['lib/%s-%%(version_major)s.%s' % (x, SHLIB_EXT) for x in ['libgailutil', 'libgdk', 'libgtk']],
+    'dirs': ['include/%s-%%(version_major)s.0' % x for x in ['gail', 'gtk']] +
+            ['share/icons/hicolor', 'share/icons/Adwaita'],
+}
+
+moduleclass = 'vis'
diff --git a/g/Gdk-Pixbuf/Gdk-Pixbuf-2.38.2.eb b/g/Gdk-Pixbuf/Gdk-Pixbuf-2.38.2.eb
new file mode 100644
index 00000000..08fb0524
--- /dev/null
+++ b/g/Gdk-Pixbuf/Gdk-Pixbuf-2.38.2.eb
@@ -0,0 +1,48 @@
+# JH 2020
+
+easyblock = 'MesonNinja'
+
+name = 'Gdk-Pixbuf'
+version = '2.38.2'
+
+homepage = 'https://developer.gnome.org/gdk-pixbuf/stable/'
+description = """
+ The Gdk Pixbuf is a toolkit for image loading and pixel buffer manipulation.
+ It is used by GTK+ 2 and GTK+ 3 to load and manipulate images. In the past it
+ was distributed as part of GTK+ 2 but it was split off into a separate package
+ in preparation for the change to GTK+ 3.
+"""
+
+toolchain = SYSTEM
+
+source_urls = [FTPGNOME_SOURCE]
+sources = [SOURCELOWER_TAR_XZ]
+patches = ['Gdk-Pixbuf-2.38.1-post-install-bin.patch']
+
+builddependencies = [
+    ('Meson', '0.53.0', '-Py-3.7'),
+    ('Ninja', '1.9.0'),
+    ('binutils', '2.32'),
+    ('pkg-config', '0.29.2'),
+    ('GObject-Introspection', '1.63.1', '-Py-3.7'),
+]
+
+dependencies = [
+    ('GLib', '2.64.0'),
+    ('libjpeg-turbo', '2.0.4'),
+    ('libpng', '1.6.37'),
+    ('LibTIFF', '4.1.0'),
+    ('X11', '20190717'),
+]
+
+configopts = "--buildtype=release --default-library=both "
+configopts += "-Dgio_sniffing=false -Dgir=true -Dman=false"
+
+maxparallel = 1
+
+sanity_check_paths = {
+    'files': ['lib/libgdk_pixbuf-%(version_major)s.0.a', 'lib/libgdk_pixbuf-%%(version_major)s.0.%s' % SHLIB_EXT],
+    'dirs': ['bin', 'include/gdk-pixbuf-%(version_major)s.0', 'lib/gdk-pixbuf-%(version_major)s.0', 'share'],
+}
+
+moduleclass = 'vis'
diff --git a/h/HarfBuzz/HarfBuzz-2.6.4.eb b/h/HarfBuzz/HarfBuzz-2.6.4.eb
new file mode 100644
index 00000000..d0ffafb1
--- /dev/null
+++ b/h/HarfBuzz/HarfBuzz-2.6.4.eb
@@ -0,0 +1,37 @@
+# JH 2020
+
+easyblock = 'ConfigureMake'
+
+name = 'HarfBuzz'
+version = '2.6.4'
+
+homepage = 'https://www.freedesktop.org/wiki/Software/HarfBuzz'
+description = """HarfBuzz is an OpenType text shaping engine."""
+
+toolchain = SYSTEM
+
+source_urls = ['https://www.freedesktop.org/software/harfbuzz/release/']
+sources = [SOURCELOWER_TAR_XZ]
+checksums = ['9413b8d96132d699687ef914ebb8c50440efc87b3f775d25856d7ec347c03c12']
+
+builddependencies = [
+    ('binutils', '2.32'),
+    ('GObject-Introspection', '1.63.1', '-Py-3.7'),
+    ('pkg-config', '0.29.2'),
+]
+
+dependencies = [
+    ('GLib', '2.64.0'),
+    ('ICU', '64.2'),
+    ('cairo', '1.17.2'),
+    ('freetype', '2.9.1'),
+]
+
+configopts = "--enable-introspection=yes --with-gobject=yes --enable-static --enable-shared --with-cairo "
+
+sanity_check_paths = {
+    'files': ['lib/libharfbuzz.%s' % SHLIB_EXT, 'bin/hb-view'],
+    'dirs': []
+}
+
+moduleclass = 'vis'
diff --git a/i/ICU/ICU-64.2.eb b/i/ICU/ICU-64.2.eb
new file mode 100644
index 00000000..ac606bdf
--- /dev/null
+++ b/i/ICU/ICU-64.2.eb
@@ -0,0 +1,31 @@
+# JH 2020
+
+easyblock = 'ConfigureMake'
+
+name = 'ICU'
+version = '64.2'
+
+homepage = 'http://site.icu-project.org/home'
+description = """ICU is a mature, widely used set of C/C++ and Java libraries providing Unicode and Globalization
+ support for software applications."""
+
+toolchain = SYSTEM
+toolchainopts = {'pic': True}
+
+source_urls = ['http://download.icu-project.org/files/icu4c/%(version)s']
+sources = ['icu4c-%(version_major)s_%(version_minor)s-src.tgz']
+checksums = ['627d5d8478e6d96fc8c90fed4851239079a561a6a8b9e48b0892f24e82d31d6c']
+
+builddependencies = [
+    ('binutils', '2.32'),
+    ('Py', '3.7'),
+]
+
+start_dir = 'source'
+
+sanity_check_paths = {
+    'files': ['lib/libicu%s.%s' % (x, SHLIB_EXT) for x in ['data', 'i18n', 'io', 'test', 'tu', 'uc']],
+    'dirs': ['bin', 'include/unicode', 'share/icu', 'share/man'],
+}
+
+moduleclass = 'lib'
diff --git a/l/LibTIFF/LibTIFF-4.1.0.eb b/l/LibTIFF/LibTIFF-4.1.0.eb
new file mode 100644
index 00000000..ace5d8ef
--- /dev/null
+++ b/l/LibTIFF/LibTIFF-4.1.0.eb
@@ -0,0 +1,21 @@
+# JH 2020
+
+easyblock = 'ConfigureMake'
+
+name = 'LibTIFF'
+version = '4.1.0'
+
+homepage = 'http://download.osgeo.org/libtiff/'
+description = "tiff: Library and tools for reading and writing TIFF data files"
+
+source_urls = ['https://download.osgeo.org/libtiff']
+sources = ['tiff-%(version)s.tar.gz']
+
+toolchain = SYSTEM
+
+sanity_check_paths = {
+    'files': ['bin/tiffinfo'],
+    'dirs': [],
+}
+
+moduleclass = 'lib'
diff --git a/l/libepoxy/libepoxy-1.5.4.eb b/l/libepoxy/libepoxy-1.5.4.eb
new file mode 100644
index 00000000..60f1df38
--- /dev/null
+++ b/l/libepoxy/libepoxy-1.5.4.eb
@@ -0,0 +1,40 @@
+# JH 2020
+
+easyblock = 'MesonNinja'
+
+name = 'libepoxy'
+version = '1.5.4'
+
+homepage = "https://github.com/anholt/libepoxy"
+description = "Epoxy is a library for handling OpenGL function pointer management for you"
+
+toolchain = SYSTEM
+
+#source_urls = ['https://github.com/anholt/libepoxy/releases/download/%(version)s']
+#sources = [SOURCE_TAR_XZ]
+github_account = 'anholt'
+source_urls = [GITHUB_LOWER_SOURCE]
+sources = ['%(version)s.tar.gz']
+checksums = ['c926fcc606901f3e03e371027056fd478da43e01ce2da7ffc48b5a0de0ca107c']
+
+builddependencies = [
+    ('binutils', '2.32'),
+    ('Meson', '0.53.0', '-Py-3.7'),
+    ('Ninja', '1.9.0'),
+    ('pkg-config', '0.29.2'),
+]
+
+dependencies = [
+    ('X11', '20190717'),
+    ('Mesa', '18.3.1'),
+]
+
+configopts = '-Degl=no --libdir %(installdir)s/lib '
+
+sanity_check_paths = {
+    'files': ['include/epoxy/%s' % x for x in ['common.h', 'gl_generated.h', 'gl.h', 'glx_generated.h', 'glx.h']] +
+             ['lib/libepoxy.%s' % SHLIB_EXT],
+    'dirs': ['lib']
+}
+
+moduleclass = 'lib'
diff --git a/l/libjpeg-turbo/libjpeg-turbo-2.0.4.eb b/l/libjpeg-turbo/libjpeg-turbo-2.0.4.eb
new file mode 100644
index 00000000..9a3eeaa3
--- /dev/null
+++ b/l/libjpeg-turbo/libjpeg-turbo-2.0.4.eb
@@ -0,0 +1,49 @@
+# JH 2020
+
+easyblock = 'CMakeMake'
+
+name = 'libjpeg-turbo'
+version = '2.0.4'
+
+homepage = 'http://sourceforge.net/projects/libjpeg-turbo/'
+description = """libjpeg-turbo is a fork of the original IJG libjpeg which uses SIMD to accelerate baseline JPEG
+local_compression and delocal_compression. libjpeg is a library that implements JPEG image encoding, decoding and transcoding.
+"""
+
+toolchain = SYSTEM
+toolchainopts = {'pic': True}
+
+source_urls = [SOURCEFORGE_SOURCE]
+sources = [SOURCELOWER_TAR_GZ]
+
+dependencies = [
+    ('NASM', '2.13.03', '', True),
+]
+
+builddependencies = [
+    ('CMake', '3.16.2'),
+]
+
+#configopts = "--with-jpeg8"
+runtest = "test"
+
+sanity_check_paths = {
+    'files': [
+        'bin/cjpeg',
+        'bin/djpeg',
+        'bin/jpegtran',
+        'bin/rdjpgcom',
+        'bin/tjbench',
+        'bin/wrjpgcom',
+        'lib/libjpeg.a',
+        'lib/libjpeg.%s' %
+        SHLIB_EXT,
+        'lib/libturbojpeg.a',
+        'lib/libturbojpeg.%s' %
+        SHLIB_EXT],
+    'dirs': [
+        'include',
+        'share'],
+}
+
+moduleclass = 'lib'
diff --git a/o/OpenCV/OpenCV-3.4.7-intel-2020a-Py-3.7.eb b/o/OpenCV/OpenCV-3.4.7-intel-2020a-Py-3.7.eb
new file mode 100644
index 00000000..03df432e
--- /dev/null
+++ b/o/OpenCV/OpenCV-3.4.7-intel-2020a-Py-3.7.eb
@@ -0,0 +1,54 @@
+# 2020
+
+name = 'OpenCV'
+version = '3.4.7'
+versionsuffix = '-Py-3.7'
+
+homepage = 'https://opencv.org/'
+description = """OpenCV (Open Source Computer Vision Library) is an open source computer vision
+ and machine learning software library. OpenCV was built to provide
+ a common infrastructure for computer vision applications and to accelerate
+ the use of machine perception in the commercial products."""
+
+#toolchain = {'name': 'intel', 'version': '2020a'}
+toolchain = SYSTEM
+
+source_urls = [
+    'https://github.com/opencv/opencv/archive/',
+    # the hash is version dependent! see 3rdparty/ippicv/ippicv.cmake
+    'https://raw.githubusercontent.com/opencv/opencv_3rdparty/32e315a5b106a7b89dbed51c28f8120a48b368b4/ippicv',
+]
+sources = [
+    '%(version)s.zip',
+    {'filename': 'ippicv_2019_lnx_intel64_general_20180723.tgz', 'extract_cmd': "cp %s %(builddir)s"},
+]
+patches = ['OpenCV-%(version)s_fix-AVX512-CascadeLake.patch']
+checksums = [
+    '4f7668a83828e0b290b8da999305b7ee30156898de00fe4db524ccf71edaf148',  # 3.4.7.zip
+    'fc167cb60deb8924339a7050f3da168bb02e221b2d6b8c00139d1fa7eace0c7d',  # ippicv_2019_lnx_intel64_general_20180723.tgz
+    '765d115916e15071422abc515230792be8ae05fd0b328da029431f3890285c87',  # OpenCV-3.4.7_fix-AVX512-CascadeLake.patch
+]
+
+builddependencies = [
+    ('CMake', '3.16.2', '', True),
+]
+
+dependencies = [
+    ('Py', '3.7', '', True),
+    ('numpy', '1.18.1', versionsuffix, True),
+    ('scipy', '1.3.3', versionsuffix, True),
+#    ('mpi4py', '3.0.1', versionsuffix),
+    ('pandas', '1.0.0', versionsuffix, True),
+    ('zlib', '1.2.11', '', True),
+    ('FFmpeg', '4.2.2', '', True),
+    ('libjpeg-turbo', '2.0.4', '', True),
+    ('libpng', '1.6.37', '', True),
+    ('LibTIFF', '4.1.0', '', True),
+    ('JasPer', '2.0.14', '', True),
+    ('Java', '13.0.1', '', True),
+    ('ant', '1.10.7', '-Java-13.0.1', True),
+    ('GLib', '2.62.4', '', True),
+    ('GTK+', '3.24.13', '', True),
+]
+
+moduleclass = 'vis'
diff --git a/o/OpenCV/OpenCV-4.2.0-Py-3.7.eb b/o/OpenCV/OpenCV-4.2.0-Py-3.7.eb
new file mode 100644
index 00000000..4c08cff2
--- /dev/null
+++ b/o/OpenCV/OpenCV-4.2.0-Py-3.7.eb
@@ -0,0 +1,37 @@
+# JH 2020
+
+name = 'OpenCV'
+version = '4.20'
+versionsuffix = '-Py-3.7'
+
+homepage = 'https://opencv.org/'
+description = """OpenCV (Open Source Computer Vision Library) is an open source computer vision
+ and machine learning software library. OpenCV was built to provide
+ a common infrastructure for computer vision applications and to accelerate
+ the use of machine perception in the commercial products."""
+
+toolchain = SYSTEM
+
+source_urls = ['https://github.com/opencv/opencv/archive/4.2.0']
+sources = [SOURCELOWER_TAR_GZ]
+
+builddependencies = [
+    ('CMake', '3.16.2', '', True),
+]
+
+dependencies = [
+    ('Py', '3.7', '', True),
+    ('numpy', '1.18.1', versionsuffix, True),
+    ('zlib', '1.2.11', '', True),
+    ('FFmpeg', '4.2.2', '', True),
+    ('libjpeg-turbo', '2.0.4', '', True),
+    ('libpng', '1.6.37', '', True),
+    ('LibTIFF', '4.1.0', '', True),
+    ('JasPer', '2.0.14', '', True),
+    ('Java', '13.0.1', '', True),
+    ('ant', '1.10.7', '-Java-13.0.1', True),
+    ('GLib', '2.64.0', '', True),
+    ('GTK+', '3.24.13', '', True),
+]
+
+moduleclass = 'vis'
diff --git a/p/Pango/Pango-1.44.7.eb b/p/Pango/Pango-1.44.7.eb
new file mode 100644
index 00000000..c33c345e
--- /dev/null
+++ b/p/Pango/Pango-1.44.7.eb
@@ -0,0 +1,43 @@
+# JH 2020
+
+easyblock = 'MesonNinja'
+
+name = 'Pango'
+version = '1.44.7'
+
+homepage = 'https://www.pango.org/'
+description = """Pango is a library for laying out and rendering of text, with an emphasis on internationalization.
+Pango can be used anywhere that text layout is needed, though most of the work on Pango so far has been done in the
+context of the GTK+ widget toolkit. Pango forms the core of text and font handling for GTK+-2.x."""
+
+toolchain = SYSTEM
+
+source_urls = [FTPGNOME_SOURCE]
+sources = [SOURCELOWER_TAR_XZ]
+checksums = ['66a5b6cc13db73efed67b8e933584509f8ddb7b10a8a40c3850ca4a985ea1b1f']
+
+builddependencies = [
+    ('binutils', '2.32'),
+    ('Meson', '0.53.0', '-Py-3.7'),
+    ('Ninja', '1.9.0'),
+    ('GObject-Introspection', '1.63.1', '-Py-3.7'),
+    ('pkg-config', '0.29.2'),
+]
+
+dependencies = [
+    ('X11', '20190717'),
+    ('GLib', '2.64.0'),
+    ('cairo', '1.17.2'),
+    ('HarfBuzz', '2.6.4'),
+    ('FriBidi', '1.0.9'),
+]
+
+configopts = "--buildtype=release --default-library=both "
+
+sanity_check_paths = {
+    'files': ['bin/pango-view', 'lib/libpango-1.0.%s' % SHLIB_EXT, 'lib/libpangocairo-1.0.%s' % SHLIB_EXT,
+              'lib/libpangoft2-1.0.%s' % SHLIB_EXT, 'lib/libpangoxft-1.0.%s' % SHLIB_EXT],
+    'dirs': [],
+}
+
+moduleclass = 'vis'
diff --git a/v/VTK/VTK-8.2.0-foss-2019b-Python-3.7.4.eb b/v/VTK/VTK-8.2.0-foss-2019b-Python-3.7.4.eb
new file mode 100644
index 00000000..29e8339a
--- /dev/null
+++ b/v/VTK/VTK-8.2.0-foss-2019b-Python-3.7.4.eb
@@ -0,0 +1,90 @@
+# IT4Innovations 2020
+
+easyblock = 'CMakeMake'
+
+name = 'VTK'
+version = '8.2.0'
+versionsuffix = '-Py-3.7'
+
+homepage = 'https://www.vtk.org'
+description = """The Visualization Toolkit (VTK) is an open-source, freely available software system for
+ 3D computer graphics, image processing and visualization. VTK consists of a C++ class library and several
+ interpreted interface layers including Tcl/Tk, Java, and Python. VTK supports a wide variety of visualization
+ algorithms including: scalar, vector, tensor, texture, and volumetric methods; and advanced modeling techniques
+ such as: implicit modeling, polygon reduction, mesh smoothing, cutting, contouring, and Delaunay triangulation."""
+
+toolchain = {'name': 'intel', 'version': '2020a'}
+toolchainopts = {'usempi': True}
+
+source_urls = ['https://www.vtk.org/files/release/%(version_major_minor)s']
+sources = [
+    SOURCE_TAR_GZ,
+    '%(name)sData-%(version)s.tar.gz',
+]
+patches = [('vtk-version.egg-info', '.')]
+checksums = [
+    '34c3dc775261be5e45a8049155f7228b6bd668106c72a3c435d95730d17d57bb',  # VTK-8.2.0.tar.gz
+    'd1ff312f7a63d90d8b7033a99109801f16a462ae411d648642838aae04bcc21e',  # VTKData-8.2.0.tar.gz
+    '787b82415ae7a4a1f815b4db0e25f7abc809a05fc85d7d219627f3a7e5d3867b',  # vtk-version.egg-info
+]
+
+builddependencies = [('CMake', '3.16.2', '', True)]
+
+dependencies = [
+    ('Py', '3.7', '', True),
+    ('XZ', '5.2.4'),
+    ('HDF5', '1.10.6'),
+    ('netCDF', '4.7.3'),
+    ('libGLU', '9.0.0', '', True),
+    ('X11', '20190717', '', True),
+    ('pandas', '1.0.0', versionsuffix, True),
+    ('numpy', '1.18.1', versionsuffix, True),
+    ('scipy', '1.3.3', versionsuffix, True),
+    ('mpi4py', '3.0.1', versionsuffix),
+]
+
+separate_build_dir = True
+
+# Third party modules
+configopts = "-DVTK_USE_SYSTEM_MPI4PY=ON "
+configopts += "-DVTK_USE_SYSTEM_LZMA=ON "
+configopts += "-DVTK_USE_SYSTEM_HDF5=ON "
+configopts += "-DVTK_USE_SYSTEM_NETCDF=ON "
+# OpenGL
+configopts += "-DOPENGL_glu_LIBRARY=$EBROOTLIBGLU/lib/libGLU.%s " % SHLIB_EXT
+configopts += "-DOPENGL_gl_LIBRARY=$EBROOTMESA/lib/libGL.%s " % SHLIB_EXT
+configopts += "-DOPENGL_INCLUDE_DIR=$EBROOTMESA/include "
+# Python
+configopts += "-DVTK_WRAP_PYTHON=ON "
+configopts += "-DVTK_PYTHON_VERSION=3.7 "
+configopts += "-DPYTHON_INCLUDE_DIR=$EBROOTPYTHON/include/python3.7m "
+configopts += "-DPYTHON_LIBRARY=$EBROOTPYTHON/lib/libpython3.7m.%s " % SHLIB_EXT
+# Other
+configopts += "-DVTK_Group_MPI:BOOL=ON "
+configopts += "-DCMAKE_INSTALL_LIBDIR=lib"
+
+preinstallopts = "export PYTHONPATH=%(installdir)s/lib/python3.7/site-packages:$PYTHONPATH && "
+
+# Install a egg-info file so VTK is more python friendly, required for mayavi
+local_egg_info_src = '%(builddir)s/VTK-%(version)s/vtk-version.egg-info'
+local_egg_info_dest = '%(installdir)s/lib/python3.7/site-packages/vtk-%(version)s.egg-info'
+postinstallcmds = [
+    'sed "s/#VTK_VERSION#/%%(version)s/" %s > %s' % (local_egg_info_src, local_egg_info_dest),
+]
+
+modextrapaths = {'PYTHONPATH': ['lib/python3.7/site-packages']}
+
+sanity_check_paths = {
+    'files': ['bin/vtk%s-%%(version_major_minor)s' % x for x in
+              ['WrapJava', 'ParseJava', 'WrapPythonInit', 'WrapPython', 'WrapHierarchy']] +
+             ['bin/pvtkpython', 'bin/vtkpython'],
+    'dirs': ['lib/python3.7/site-packages/', 'include/vtk-%(version_major_minor)s'],
+}
+
+sanity_check_commands = [
+    ('python', "-c 'import %(namelower)s'"),
+    ('python', "-c 'import pkg_resources; pkg_resources.get_distribution(\"vtk\")'"),
+]
+
+
+moduleclass = 'vis'
diff --git a/v/VTK/VTK-8.2.0-intel-2020a-Py-3.7.eb b/v/VTK/VTK-8.2.0-intel-2020a-Py-3.7.eb
index 64ad221f..330bbec0 100644
--- a/v/VTK/VTK-8.2.0-intel-2020a-Py-3.7.eb
+++ b/v/VTK/VTK-8.2.0-intel-2020a-Py-3.7.eb
@@ -58,7 +58,7 @@ configopts += "-DOPENGL_INCLUDE_DIR=$EBROOTMESA/include "
 configopts += "-DVTK_WRAP_PYTHON=ON "
 configopts += "-DVTK_PYTHON_VERSION=2.7 "
 configopts += "-DPYTHON_INCLUDE_DIR=$EBROOTPYTHON/include/python3.7m "
-configopts += "-DPYTHON_LIBRARY=$EBROOTPYTHON/lib/libpython3.7.%s " % SHLIB_EXT
+configopts += "-DPYTHON_LIBRARY=$EBROOTPYTHON/lib/libpython3.%s " % SHLIB_EXT
 # Other
 configopts += "-DVTK_Group_MPI:BOOL=ON "
 configopts += "-DCMAKE_INSTALL_LIBDIR=lib"
diff --git "a/v/VTK/\\" "b/v/VTK/\\"
new file mode 100644
index 00000000..7fd77a33
--- /dev/null
+++ "b/v/VTK/\\"
@@ -0,0 +1,87 @@
+# IT4Innovations 2020
+
+easyblock = 'CMakeMake'
+
+name = 'VTK'
+version = '8.2.0'
+versionsuffix = '-Python-%(pyver)s'
+
+homepage = 'https://www.vtk.org'
+description = """The Visualization Toolkit (VTK) is an open-source, freely available software system for
+ 3D computer graphics, image processing and visualization. VTK consists of a C++ class library and several
+ interpreted interface layers including Tcl/Tk, Java, and Python. VTK supports a wide variety of visualization
+ algorithms including: scalar, vector, tensor, texture, and volumetric methods; and advanced modeling techniques
+ such as: implicit modeling, polygon reduction, mesh smoothing, cutting, contouring, and Delaunay triangulation."""
+
+toolchain = {'name': 'foss', 'version': '2019b'}
+toolchainopts = {'usempi': True}
+
+source_urls = ['https://www.vtk.org/files/release/%(version_major_minor)s']
+sources = [
+    SOURCE_TAR_GZ,
+    '%(name)sData-%(version)s.tar.gz',
+]
+patches = [('vtk-version.egg-info', '.')]
+checksums = [
+    '34c3dc775261be5e45a8049155f7228b6bd668106c72a3c435d95730d17d57bb',  # VTK-8.2.0.tar.gz
+    'd1ff312f7a63d90d8b7033a99109801f16a462ae411d648642838aae04bcc21e',  # VTKData-8.2.0.tar.gz
+    '787b82415ae7a4a1f815b4db0e25f7abc809a05fc85d7d219627f3a7e5d3867b',  # vtk-version.egg-info
+]
+
+builddependencies = [('CMake', '3.15.3')]
+
+dependencies = [
+    ('Python', '3.7.4'),
+    ('SciPy-bundle', '2019.10', '-Python-3.7.4'),
+    ('XZ', '5.2.4'),
+    ('HDF5', '1.10.5'),
+    ('netCDF', '4.7.1'),
+    ('libGLU', '9.0.1'),
+    ('X11', '20190717'),
+]
+
+separate_build_dir = True
+
+# Third party modules
+configopts = "-DVTK_USE_SYSTEM_MPI4PY=ON "
+configopts += "-DVTK_USE_SYSTEM_LZMA=ON "
+configopts += "-DVTK_USE_SYSTEM_HDF5=ON "
+configopts += "-DVTK_USE_SYSTEM_NETCDF=ON "
+# OpenGL
+configopts += "-DOPENGL_glu_LIBRARY=$EBROOTLIBGLU/lib/libGLU.%s " % SHLIB_EXT
+configopts += "-DOPENGL_gl_LIBRARY=$EBROOTMESA/lib/libGL.%s " % SHLIB_EXT
+configopts += "-DOPENGL_INCLUDE_DIR=$EBROOTMESA/include "
+# Python
+configopts += "-DVTK_WRAP_PYTHON=ON "
+configopts += "-DVTK_PYTHON_VERSION=%(pyver)s "
+configopts += "-DPYTHON_INCLUDE_DIR=$EBROOTPYTHON/include/python%(pyshortver)sm "
+configopts += "-DPYTHON_LIBRARY=$EBROOTPYTHON/lib/libpython%%(pyshortver)sm.%s " % SHLIB_EXT
+# Other
+configopts += "-DVTK_Group_MPI:BOOL=ON "
+configopts += "-DCMAKE_INSTALL_LIBDIR=lib"
+
+preinstallopts = "export PYTHONPATH=%(installdir)s/lib/python%(pyshortver)s/site-packages:$PYTHONPATH && "
+
+# Install a egg-info file so VTK is more python friendly, required for mayavi
+local_egg_info_src = '%(builddir)s/VTK-%(version)s/vtk-version.egg-info'
+local_egg_info_dest = '%(installdir)s/lib/python%(pyshortver)s/site-packages/vtk-%(version)s.egg-info'
+postinstallcmds = [
+    'sed "s/#VTK_VERSION#/%%(version)s/" %s > %s' % (local_egg_info_src, local_egg_info_dest),
+]
+
+modextrapaths = {'PYTHONPATH': ['lib/python%(pyshortver)s/site-packages']}
+
+sanity_check_paths = {
+    'files': ['bin/vtk%s-%%(version_major_minor)s' % x for x in
+              ['WrapJava', 'ParseJava', 'WrapPythonInit', 'WrapPython', 'WrapHierarchy']] +
+             ['bin/pvtkpython', 'bin/vtkpython'],
+    'dirs': ['lib/python%(pyshortver)s/site-packages/', 'include/vtk-%(version_major_minor)s'],
+}
+
+sanity_check_commands = [
+    ('python', "-c 'import %(namelower)s'"),
+    ('python', "-c 'import pkg_resources; pkg_resources.get_distribution(\"vtk\")'"),
+]
+
+
+moduleclass = 'vis'
diff --git a/x/X11/X11-20190717.eb b/x/X11/X11-20190717.eb
index e3ef3c9d..6f234025 100644
--- a/x/X11/X11-20190717.eb
+++ b/x/X11/X11-20190717.eb
@@ -23,7 +23,7 @@ source_urls = [
 
 dependencies = [
     ('bzip2', '1.0.6'),
-    ('fontconfig', '2.13.1'),
+    ('fontconfig', '2.12.6'),
     ('freetype', '2.9.1'),
     ('zlib', '1.2.11'),
     ('LibUUID', '1.0.3'),
@@ -45,7 +45,7 @@ default_component_specs = {
 components = [
     ('xorg-macros', '1.19.2', {  # 2018-03-04
         'sources': ['util-macros-%(version)s.tar.gz'],
-        'checksums': ['9225c45c3de60faf971979a55a5536f3562baa4b6f02246c23e98ac0c09a75b7'],
+        'checksums': ['5d6e62803c9f20830b28ad8a9800c97a9987635089229e3e380ef3848c84d2a6'],
         'start_dir': 'util-macros-%(version)s',
     }),
     ('libpthread-stubs', '0.4', {  # 2017-03-14