From 9a12aa24f2f4c7d04202c30e4301719de379ed4d Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Wed, 13 Mar 2024 11:29:45 +0100 Subject: [PATCH 01/37] add wrapper for Julia with linking safeguards and delegate environment setup to JuliaPackage --- .../j/Julia/Julia-1.10.0-linux-x86_64.eb | 21 +++++++++---------- .../j/Julia/Julia-1.6.0-linux-aarch64.eb | 20 +++++++++--------- .../j/Julia/Julia-1.6.5-linux-x86_64.eb | 20 +++++++++--------- .../j/Julia/Julia-1.6.6-linux-x86_64.eb | 21 +++++++++---------- .../j/Julia/Julia-1.6.7-linux-x86_64.eb | 21 +++++++++---------- .../j/Julia/Julia-1.7.0-linux-x86_64.eb | 21 +++++++++---------- .../j/Julia/Julia-1.7.1-linux-x86_64.eb | 21 +++++++++---------- .../j/Julia/Julia-1.7.2-linux-x86_64.eb | 21 +++++++++---------- .../j/Julia/Julia-1.7.3-linux-x86_64.eb | 21 +++++++++---------- .../j/Julia/Julia-1.8.0-linux-x86_64.eb | 21 +++++++++---------- .../j/Julia/Julia-1.8.2-linux-x86_64.eb | 21 +++++++++---------- .../j/Julia/Julia-1.8.5-linux-x86_64.eb | 19 ++++++++--------- .../j/Julia/Julia-1.9.0-linux-x86_64.eb | 21 +++++++++---------- .../j/Julia/Julia-1.9.2-linux-x86_64.eb | 19 ++++++++--------- .../j/Julia/Julia-1.9.3-linux-x86_64.eb | 21 +++++++++---------- 15 files changed, 148 insertions(+), 161 deletions(-) diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.10.0-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.10.0-linux-x86_64.eb index 6671e1cd4ff..a7320c2365f 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.10.0-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.10.0-linux-x86_64.eb @@ -11,21 +11,20 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['a7298207f72f2b27b2ab1ce392a6ea37afbd1fbee0f1f8d190b054dcaba878fe'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.10.0-linux-x86_64.tar.gz': 'a7298207f72f2b27b2ab1ce392a6ea37afbd1fbee0f1f8d190b054dcaba878fe'}, + {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } sanity_check_commands = ['julia --help'] -modextrapaths_append = { - # Use default DEPOT_PATH where first entry is user's depot. - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths. - # Appending ':' to make sure we don't override the user's custom JULIA_DEPOT_PATH if set. - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.6.0-linux-aarch64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.6.0-linux-aarch64.eb index 225d86de75a..dee7717b5a0 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.6.0-linux-aarch64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.6.0-linux-aarch64.eb @@ -15,20 +15,20 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/aarch64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['0f496972d26cea88151204d03e6bd87702aa1ff983de3b1e4f320c48ef67325f'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.6.0-linux-aarch64.tar.gz': '0f496972d26cea88151204d03e6bd87702aa1ff983de3b1e4f320c48ef67325f'}, + {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.6.5-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.6.5-linux-x86_64.eb index 45b365aa65d..9bf44e78f13 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.6.5-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.6.5-linux-x86_64.eb @@ -19,20 +19,20 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['b8fe23ee547254a2fe14be587284ed77c78c06c2d8e9aad5febce0d21cab8e2c'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.6.5-linux-x86_64.tar.gz': 'b8fe23ee547254a2fe14be587284ed77c78c06c2d8e9aad5febce0d21cab8e2c'}, + {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.6.6-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.6.6-linux-x86_64.eb index 48c2259422e..6430a94ca59 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.6.6-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.6.6-linux-x86_64.eb @@ -19,20 +19,19 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['c25ff71a4242207ab2681a0fcc5df50014e9d99f814e77cacbc5027e20514945'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.6.6-linux-x86_64.tar.gz': 'c25ff71a4242207ab2681a0fcc5df50014e9d99f814e77cacbc5027e20514945'}, + {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } - sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.6.7-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.6.7-linux-x86_64.eb index f5d1446913f..6935d34d151 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.6.7-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.6.7-linux-x86_64.eb @@ -19,20 +19,19 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['6c4522d595e4cbcd00157ac458a72f8aec01757053d2073f99daa39e442b2a36'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.6.7-linux-x86_64.tar.gz': '6c4522d595e4cbcd00157ac458a72f8aec01757053d2073f99daa39e442b2a36'}, + {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } - sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.7.0-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.7.0-linux-x86_64.eb index ecc3020f4c0..45655ab233d 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.7.0-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.7.0-linux-x86_64.eb @@ -19,20 +19,19 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['7299f3a638aec5e0b9e14eaf0e6221c4fe27189aa0b38ac5a36f03f0dc4c0d40'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.7.0-linux-x86_64.tar.gz': '7299f3a638aec5e0b9e14eaf0e6221c4fe27189aa0b38ac5a36f03f0dc4c0d40'}, + {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } - sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.7.1-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.7.1-linux-x86_64.eb index b8b0a744c04..3dbb49f7345 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.7.1-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.7.1-linux-x86_64.eb @@ -19,20 +19,19 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['44658e9c7b45e2b9b5b59239d190cca42de05c175ea86bc346c294a8fe8d9f11'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.7.1-linux-x86_64.tar.gz': '44658e9c7b45e2b9b5b59239d190cca42de05c175ea86bc346c294a8fe8d9f11'}, + {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } - sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.7.2-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.7.2-linux-x86_64.eb index e88e509e098..1742ac0b42b 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.7.2-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.7.2-linux-x86_64.eb @@ -19,20 +19,19 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['a75244724f3b2de0e7249c861fbf64078257c16fb4203be78f1cf4dd5973ba95'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.7.2-linux-x86_64.tar.gz': 'a75244724f3b2de0e7249c861fbf64078257c16fb4203be78f1cf4dd5973ba95'}, + {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } - sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.7.3-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.7.3-linux-x86_64.eb index dac9088825a..61ab7eb2bdf 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.7.3-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.7.3-linux-x86_64.eb @@ -19,20 +19,19 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['9b2f4fa12d92b4dcc5d11dc66fb118c47681a76d3df8da064cc97573f2f5c739'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.7.3-linux-x86_64.tar.gz': '9b2f4fa12d92b4dcc5d11dc66fb118c47681a76d3df8da064cc97573f2f5c739'}, + {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } - sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.8.0-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.8.0-linux-x86_64.eb index c7f6214e4a8..77e3fee2212 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.8.0-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.8.0-linux-x86_64.eb @@ -19,20 +19,19 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['e80d732ccb7f79e000d798cb8b656dc3641ab59516d6e4e52e16765017892a00'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.8.0-linux-x86_64.tar.gz': 'e80d732ccb7f79e000d798cb8b656dc3641ab59516d6e4e52e16765017892a00'}, + {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } - sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.8.2-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.8.2-linux-x86_64.eb index 37b817f557e..fd619b4de39 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.8.2-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.8.2-linux-x86_64.eb @@ -19,20 +19,19 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['671cf3a450b63a717e1eedd7f69087e3856f015b2e146cb54928f19a3c05e796'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.8.2-linux-x86_64.tar.gz': '671cf3a450b63a717e1eedd7f69087e3856f015b2e146cb54928f19a3c05e796'}, + {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } - sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.8.5-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.8.5-linux-x86_64.eb index 1d5fa47c96c..d69227cc952 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.8.5-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.8.5-linux-x86_64.eb @@ -19,20 +19,19 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['e71a24816e8fe9d5f4807664cbbb42738f5aa9fe05397d35c81d4c5d649b9d05'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.8.5-linux-x86_64.tar.gz': 'e71a24816e8fe9d5f4807664cbbb42738f5aa9fe05397d35c81d4c5d649b9d05'}, + {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, +] + +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.9.0-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.9.0-linux-x86_64.eb index 2ee4230cbb9..7469924860b 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.9.0-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.9.0-linux-x86_64.eb @@ -19,20 +19,19 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['00c614466ef9809c2eb23480e38d196a2c577fff2730c4f83d135b913d473359'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.9.0-linux-x86_64.tar.gz': '00c614466ef9809c2eb23480e38d196a2c577fff2730c4f83d135b913d473359'}, + {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } - sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.9.2-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.9.2-linux-x86_64.eb index a0d92b7aacb..01939dc25f7 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.9.2-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.9.2-linux-x86_64.eb @@ -19,20 +19,19 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['4c2d799f442d7fe718827b19da2bacb72ea041b9ce55f24eee7b1313f57c4383'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.9.2-linux-x86_64.tar.gz': '4c2d799f442d7fe718827b19da2bacb72ea041b9ce55f24eee7b1313f57c4383'}, + {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, +] + +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.9.3-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.9.3-linux-x86_64.eb index 7b207dc635c..d5e1511d63e 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.9.3-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.9.3-linux-x86_64.eb @@ -19,20 +19,19 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['d76670cc9ba3e0fd4c1545dd3d00269c0694976a1176312795ebce1692d323d1'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.9.3-linux-x86_64.tar.gz': 'd76670cc9ba3e0fd4c1545dd3d00269c0694976a1176312795ebce1692d323d1'}, + {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } - sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' From 36fdc535eb94f43f97721d03a77b49006c0d1ffc Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Wed, 13 Mar 2024 11:40:02 +0100 Subject: [PATCH 02/37] adding file julia.wrapper --- easybuild/easyconfigs/j/Julia/julia.wrapper | 2 ++ 1 file changed, 2 insertions(+) create mode 100755 easybuild/easyconfigs/j/Julia/julia.wrapper diff --git a/easybuild/easyconfigs/j/Julia/julia.wrapper b/easybuild/easyconfigs/j/Julia/julia.wrapper new file mode 100755 index 00000000000..625ec57ab49 --- /dev/null +++ b/easybuild/easyconfigs/j/Julia/julia.wrapper @@ -0,0 +1,2 @@ +#!/bin/bash +LD_LIBRARY_PATH="$EBROOTJULIA/lib:$EBROOTJULIA/lib/julia:$LD_LIBRARY_PATH" julia.bin "$@" From ea076ae1def18d26b63fa2153e2be088d8d41bca Mon Sep 17 00:00:00 2001 From: mssmzs Date: Wed, 3 Apr 2024 22:59:26 +0100 Subject: [PATCH 03/37] adding easyconfigs: libzip-1.10.1-GCCcore-13.2.0.eb --- .../l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100755 easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb diff --git a/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb new file mode 100755 index 00000000000..e0998b1c6a6 --- /dev/null +++ b/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb @@ -0,0 +1,32 @@ +easyblock = 'CMakeMake' + +name = 'libzip' +version = '1.10.1' + +homepage = 'https://libzip.org/' +description = "libzip is a C library for reading, creating, and modifying zip archives." + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://github.com/nih-at/libzip/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['d56d857d1c3ad4a7f3a4c01a51c6a6e5530e35ab93503f62276e8ba2b306186a'] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.27.6'), +] + +dependencies = [('zlib', '1.2.13')] + +sanity_check_paths = { + 'files': [ + 'bin/zipcmp', + 'bin/zipmerge', + 'bin/ziptool', + 'lib64/libzip.%s' % SHLIB_EXT, + ], + 'dirs': ['include', 'lib/pkgconfig'], +} + +moduleclass = 'lib' From ccb9c6942a2838782d7ef256443ec2260afb7abf Mon Sep 17 00:00:00 2001 From: mssmzs Date: Thu, 4 Apr 2024 11:26:09 +0100 Subject: [PATCH 04/37] fix permissions --- easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb index e0998b1c6a6..99be49a252a 100755 --- a/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb @@ -4,7 +4,7 @@ name = 'libzip' version = '1.10.1' homepage = 'https://libzip.org/' -description = "libzip is a C library for reading, creating, and modifying zip archives." +description = "libzip is a C library for reading, creating, and modifying zip archives.." toolchain = {'name': 'GCCcore', 'version': '13.2.0'} From 6a0d3bdb8e5624ffd9afe0ab82de0bf744a934f5 Mon Sep 17 00:00:00 2001 From: mssmzs Date: Thu, 4 Apr 2024 19:39:29 +0100 Subject: [PATCH 05/37] adding sanity check commands as per reviewer's request --- .../easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb index 99be49a252a..887eaf37405 100755 --- a/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb @@ -29,4 +29,10 @@ sanity_check_paths = { 'dirs': ['include', 'lib/pkgconfig'], } +sanity_check_commands = [ + "zipcmp -h", + "zipmerge -h", + "ziptool -h" +] + moduleclass = 'lib' From 0f03e0cbff1bc6955aad67ced9fea1ca23b329f3 Mon Sep 17 00:00:00 2001 From: mssmzs Date: Wed, 10 Apr 2024 13:10:42 +0100 Subject: [PATCH 06/37] fix permissions --- easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100755 => 100644 easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb diff --git a/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb old mode 100755 new mode 100644 From a979c150597e208f458389ddf8a1a362300d22a1 Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Thu, 25 Jan 2024 13:22:17 +0100 Subject: [PATCH 07/37] adding easyconfigs: molmod-1.4.8-foss-2022a.eb, molmod-1.4.8-gfbf-2022b.eb, TAMkin-1.2.6-foss-2022a.eb, TAMkin-1.2.6-foss-2022b.eb --- .../m/molmod/molmod-1.4.8-foss-2022a.eb | 37 +++++++++++++++ .../m/molmod/molmod-1.4.8-gfbf-2022b.eb | 42 +++++++++++++++++ .../n/nose3/nose3-1.3.8-GCCcore-12.2.0.eb | 34 ++++++++++++++ .../t/TAMkin/TAMkin-1.2.6-foss-2022a.eb | 46 +++++++++++++++++++ .../t/TAMkin/TAMkin-1.2.6-foss-2022b.eb | 46 +++++++++++++++++++ 5 files changed, 205 insertions(+) create mode 100644 easybuild/easyconfigs/m/molmod/molmod-1.4.8-foss-2022a.eb create mode 100644 easybuild/easyconfigs/m/molmod/molmod-1.4.8-gfbf-2022b.eb create mode 100644 easybuild/easyconfigs/n/nose3/nose3-1.3.8-GCCcore-12.2.0.eb create mode 100644 easybuild/easyconfigs/t/TAMkin/TAMkin-1.2.6-foss-2022a.eb create mode 100644 easybuild/easyconfigs/t/TAMkin/TAMkin-1.2.6-foss-2022b.eb diff --git a/easybuild/easyconfigs/m/molmod/molmod-1.4.8-foss-2022a.eb b/easybuild/easyconfigs/m/molmod/molmod-1.4.8-foss-2022a.eb new file mode 100644 index 00000000000..e2e6b2f69cd --- /dev/null +++ b/easybuild/easyconfigs/m/molmod/molmod-1.4.8-foss-2022a.eb @@ -0,0 +1,37 @@ +easyblock = 'PythonPackage' + +name = 'molmod' +version = '1.4.8' + +homepage = 'https://molmod.github.io/molmod/' +description = "MolMod is a Python library with many compoments that are useful to write molecular modeling programs." + +toolchain = {'name': 'foss', 'version': '2022a'} + +source_urls = ['https://github.com/molmod/molmod/releases/download/%(version)s'] +sources = [SOURCE_TAR_GZ] +patches = ['molmod-1.4.8_fix-git-version-check.patch'] +checksums = [ + {'molmod-1.4.8.tar.gz': '759f8894f8a206e8d83f3f88882f29fcf73a7f9be375026e03c58e19496f42e8'}, + {'molmod-1.4.8_fix-git-version-check.patch': '6d1455f9dc3af07b723b05d144f6d8c3c0e5184e094eced1a6f59822f97dcf47'}, +] + +dependencies = [ + ('Python', '3.10.4'), + ('matplotlib', '3.5.2'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +# disable tests that require X11 by specifying "backend: agg" in matplotlibrc +runtest = "export MATPLOTLIBRC=$PWD; echo 'backend: agg' > $MATPLOTLIBRC/matplotlibrc;" +runtest += "python setup.py build_ext -i && pytest -ra" + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/m/molmod/molmod-1.4.8-gfbf-2022b.eb b/easybuild/easyconfigs/m/molmod/molmod-1.4.8-gfbf-2022b.eb new file mode 100644 index 00000000000..3f20a89299f --- /dev/null +++ b/easybuild/easyconfigs/m/molmod/molmod-1.4.8-gfbf-2022b.eb @@ -0,0 +1,42 @@ +easyblock = 'PythonPackage' + +name = 'molmod' +version = '1.4.8' + +homepage = 'https://molmod.github.io/molmod/' +description = "MolMod is a Python library with many compoments that are useful to write molecular modeling programs." + +toolchain = {'name': 'gfbf', 'version': '2022b'} + +source_urls = ['https://github.com/molmod/molmod/releases/download/%(version)s'] +sources = [SOURCE_TAR_GZ] +patches = [ + 'molmod-1.4.8_fix-git-version-check.patch', + 'molmod-1.4.8_fix-np-unicode.patch', +] +checksums = [ + {'molmod-1.4.8.tar.gz': '759f8894f8a206e8d83f3f88882f29fcf73a7f9be375026e03c58e19496f42e8'}, + {'molmod-1.4.8_fix-git-version-check.patch': '6d1455f9dc3af07b723b05d144f6d8c3c0e5184e094eced1a6f59822f97dcf47'}, + {'molmod-1.4.8_fix-np-unicode.patch': + '85bd2e2981d2cdd8cfab5d1c2cf37432e2967ff82de603700383d7c31530327c'}, +] + +dependencies = [ + ('Python', '3.10.8'), + ('matplotlib', '3.7.0'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +# disable tests that require X11 by specifying "backend: agg" in matplotlibrc +runtest = "export MATPLOTLIBRC=$PWD; echo 'backend: agg' > $MATPLOTLIBRC/matplotlibrc;" +runtest += "python setup.py build_ext -i && pytest -ra" + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/n/nose3/nose3-1.3.8-GCCcore-12.2.0.eb b/easybuild/easyconfigs/n/nose3/nose3-1.3.8-GCCcore-12.2.0.eb new file mode 100644 index 00000000000..3fb61c98db7 --- /dev/null +++ b/easybuild/easyconfigs/n/nose3/nose3-1.3.8-GCCcore-12.2.0.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonPackage' + +name = 'nose3' +version = '1.3.8' + +homepage = 'https://nose.readthedocs.io/' +description = """Nose extends unittest to make testing easier.""" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['762aae22cadb898b00b9d4f4bbb9f8e87f8e0dde6c49a88cd0c554f4e5925b76'] + +builddependencies = [('binutils', '2.39')] + +dependencies = [ + ('Python', '3.10.8'), + ('coverage', '7.2.3'), +] + +use_pip = True +sanity_pip_check = True +download_dep_fail = True + +sanity_check_paths = { + 'files': ['bin/nosetests'], + 'dirs': [], +} + +options = {'modulename': 'nose'} + +sanity_check_commands = ["nosetests --help"] + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/t/TAMkin/TAMkin-1.2.6-foss-2022a.eb b/easybuild/easyconfigs/t/TAMkin/TAMkin-1.2.6-foss-2022a.eb new file mode 100644 index 00000000000..c672ef52e80 --- /dev/null +++ b/easybuild/easyconfigs/t/TAMkin/TAMkin-1.2.6-foss-2022a.eb @@ -0,0 +1,46 @@ +easyblock = 'PythonPackage' + +name = 'TAMkin' +version = '1.2.6' + +homepage = 'https://molmod.github.io/tamkin/' +description = """TAMkin is a post-processing toolkit for normal mode analysis, + thermochemistry and reaction kinetics. It uses a Hessian computation from a + standard computational chemistry program as its input.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +source_urls = ['https://github.com/molmod/tamkin/releases/download/%(version)s'] +sources = [SOURCE_TAR_GZ] +patches = [ + 'TAMkin-1.2.6_fix-python38.patch', + 'TAMkin-1.2.6_fix-test_vsa_no_mass.patch', +] +checksums = [ + {'TAMkin-1.2.6.tar.gz': '1bde275a09be91e5241616aaa9fedc60cb359a263f5c5909bb14431c3a4ed5fd'}, + {'TAMkin-1.2.6_fix-python38.patch': '1633d5b24b012f8c4b6731491e4072c819ebbba65574966b7185ecca52eeac9b'}, + {'TAMkin-1.2.6_fix-test_vsa_no_mass.patch': '67d8b8671d7c71123e8ee9a7b9ebea6562e9711edb41555d1926b1b51d549066'}, +] + +builddependencies = [('nose3', '1.3.8')] +dependencies = [ + ('Python', '3.10.4'), + ('matplotlib', '3.5.2'), + ('molmod', '1.4.8'), +] + +download_dep_fail = True +use_pip = True + +# disable tests that require X11 by specifying "backend: agg" in matplotlibrc +runtest = 'export MATPLOTLIBRC=$PWD; echo "backend: agg" > $MATPLOTLIBRC/matplotlibrc; ' +runtest += 'export OMP_NUM_THREADS=1; nosetests -v tamkin' + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_pip_check = True + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/t/TAMkin/TAMkin-1.2.6-foss-2022b.eb b/easybuild/easyconfigs/t/TAMkin/TAMkin-1.2.6-foss-2022b.eb new file mode 100644 index 00000000000..f0ac1c8820c --- /dev/null +++ b/easybuild/easyconfigs/t/TAMkin/TAMkin-1.2.6-foss-2022b.eb @@ -0,0 +1,46 @@ +easyblock = 'PythonPackage' + +name = 'TAMkin' +version = '1.2.6' + +homepage = 'https://molmod.github.io/tamkin/' +description = """TAMkin is a post-processing toolkit for normal mode analysis, + thermochemistry and reaction kinetics. It uses a Hessian computation from a + standard computational chemistry program as its input.""" + +toolchain = {'name': 'foss', 'version': '2022b'} + +source_urls = ['https://github.com/molmod/tamkin/releases/download/%(version)s'] +sources = [SOURCE_TAR_GZ] +patches = [ + 'TAMkin-1.2.6_fix-python38.patch', + 'TAMkin-1.2.6_fix-test_vsa_no_mass.patch', +] +checksums = [ + {'TAMkin-1.2.6.tar.gz': '1bde275a09be91e5241616aaa9fedc60cb359a263f5c5909bb14431c3a4ed5fd'}, + {'TAMkin-1.2.6_fix-python38.patch': '1633d5b24b012f8c4b6731491e4072c819ebbba65574966b7185ecca52eeac9b'}, + {'TAMkin-1.2.6_fix-test_vsa_no_mass.patch': '67d8b8671d7c71123e8ee9a7b9ebea6562e9711edb41555d1926b1b51d549066'}, +] + +builddependencies = [('nose3', '1.3.8')] +dependencies = [ + ('Python', '3.10.8'), + ('matplotlib', '3.7.0'), + ('molmod', '1.4.8'), +] + +download_dep_fail = True +use_pip = True + +# disable tests that require X11 by specifying "backend: agg" in matplotlibrc +runtest = 'export MATPLOTLIBRC=$PWD; echo "backend: agg" > $MATPLOTLIBRC/matplotlibrc; ' +runtest += 'export OMP_NUM_THREADS=1; nosetests -v tamkin' + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_pip_check = True + +moduleclass = 'chem' From 72a229901b9801de78912563263fe94417aba5b3 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Wed, 8 May 2024 10:17:16 +0200 Subject: [PATCH 08/37] use generic posix shell in julia wrapper --- easybuild/easyconfigs/j/Julia/julia.wrapper | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/j/Julia/julia.wrapper b/easybuild/easyconfigs/j/Julia/julia.wrapper index 625ec57ab49..613b8a831f1 100755 --- a/easybuild/easyconfigs/j/Julia/julia.wrapper +++ b/easybuild/easyconfigs/j/Julia/julia.wrapper @@ -1,2 +1,2 @@ -#!/bin/bash +#!/bin/sh LD_LIBRARY_PATH="$EBROOTJULIA/lib:$EBROOTJULIA/lib/julia:$LD_LIBRARY_PATH" julia.bin "$@" From 116ab0c2ff2f8bde4782440b4c439c41cc86f27d Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Fri, 10 May 2024 10:22:09 +0200 Subject: [PATCH 09/37] update checksum of julia.wrapper --- easybuild/easyconfigs/j/Julia/Julia-1.10.0-linux-x86_64.eb | 2 +- easybuild/easyconfigs/j/Julia/Julia-1.6.0-linux-aarch64.eb | 2 +- easybuild/easyconfigs/j/Julia/Julia-1.6.5-linux-x86_64.eb | 2 +- easybuild/easyconfigs/j/Julia/Julia-1.6.6-linux-x86_64.eb | 2 +- easybuild/easyconfigs/j/Julia/Julia-1.6.7-linux-x86_64.eb | 2 +- easybuild/easyconfigs/j/Julia/Julia-1.7.0-linux-x86_64.eb | 2 +- easybuild/easyconfigs/j/Julia/Julia-1.7.1-linux-x86_64.eb | 2 +- easybuild/easyconfigs/j/Julia/Julia-1.7.2-linux-x86_64.eb | 2 +- easybuild/easyconfigs/j/Julia/Julia-1.7.3-linux-x86_64.eb | 2 +- easybuild/easyconfigs/j/Julia/Julia-1.8.0-linux-x86_64.eb | 2 +- easybuild/easyconfigs/j/Julia/Julia-1.8.2-linux-x86_64.eb | 2 +- easybuild/easyconfigs/j/Julia/Julia-1.8.5-linux-x86_64.eb | 2 +- easybuild/easyconfigs/j/Julia/Julia-1.9.0-linux-x86_64.eb | 2 +- easybuild/easyconfigs/j/Julia/Julia-1.9.2-linux-x86_64.eb | 2 +- easybuild/easyconfigs/j/Julia/Julia-1.9.3-linux-x86_64.eb | 2 +- 15 files changed, 15 insertions(+), 15 deletions(-) diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.10.0-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.10.0-linux-x86_64.eb index a7320c2365f..6081619a331 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.10.0-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.10.0-linux-x86_64.eb @@ -14,7 +14,7 @@ sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] patches = [('julia.wrapper', 'bin/')] checksums = [ {'julia-1.10.0-linux-x86_64.tar.gz': 'a7298207f72f2b27b2ab1ce392a6ea37afbd1fbee0f1f8d190b054dcaba878fe'}, - {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, ] # install wrapper with linking safeguards for Julia libraries diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.6.0-linux-aarch64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.6.0-linux-aarch64.eb index dee7717b5a0..17abf7d929c 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.6.0-linux-aarch64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.6.0-linux-aarch64.eb @@ -18,7 +18,7 @@ sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] patches = [('julia.wrapper', 'bin/')] checksums = [ {'julia-1.6.0-linux-aarch64.tar.gz': '0f496972d26cea88151204d03e6bd87702aa1ff983de3b1e4f320c48ef67325f'}, - {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, ] # install wrapper with linking safeguards for Julia libraries diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.6.5-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.6.5-linux-x86_64.eb index 9bf44e78f13..dd9ad4890db 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.6.5-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.6.5-linux-x86_64.eb @@ -22,7 +22,7 @@ sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] patches = [('julia.wrapper', 'bin/')] checksums = [ {'julia-1.6.5-linux-x86_64.tar.gz': 'b8fe23ee547254a2fe14be587284ed77c78c06c2d8e9aad5febce0d21cab8e2c'}, - {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, ] # install wrapper with linking safeguards for Julia libraries diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.6.6-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.6.6-linux-x86_64.eb index 6430a94ca59..03bdc16da5a 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.6.6-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.6.6-linux-x86_64.eb @@ -22,7 +22,7 @@ sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] patches = [('julia.wrapper', 'bin/')] checksums = [ {'julia-1.6.6-linux-x86_64.tar.gz': 'c25ff71a4242207ab2681a0fcc5df50014e9d99f814e77cacbc5027e20514945'}, - {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, ] # install wrapper with linking safeguards for Julia libraries diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.6.7-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.6.7-linux-x86_64.eb index 6935d34d151..7046809d33d 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.6.7-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.6.7-linux-x86_64.eb @@ -22,7 +22,7 @@ sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] patches = [('julia.wrapper', 'bin/')] checksums = [ {'julia-1.6.7-linux-x86_64.tar.gz': '6c4522d595e4cbcd00157ac458a72f8aec01757053d2073f99daa39e442b2a36'}, - {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, ] # install wrapper with linking safeguards for Julia libraries diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.7.0-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.7.0-linux-x86_64.eb index 45655ab233d..39df361aa99 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.7.0-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.7.0-linux-x86_64.eb @@ -22,7 +22,7 @@ sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] patches = [('julia.wrapper', 'bin/')] checksums = [ {'julia-1.7.0-linux-x86_64.tar.gz': '7299f3a638aec5e0b9e14eaf0e6221c4fe27189aa0b38ac5a36f03f0dc4c0d40'}, - {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, ] # install wrapper with linking safeguards for Julia libraries diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.7.1-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.7.1-linux-x86_64.eb index 3dbb49f7345..87f911a7da0 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.7.1-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.7.1-linux-x86_64.eb @@ -22,7 +22,7 @@ sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] patches = [('julia.wrapper', 'bin/')] checksums = [ {'julia-1.7.1-linux-x86_64.tar.gz': '44658e9c7b45e2b9b5b59239d190cca42de05c175ea86bc346c294a8fe8d9f11'}, - {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, ] # install wrapper with linking safeguards for Julia libraries diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.7.2-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.7.2-linux-x86_64.eb index 1742ac0b42b..5e48ff39fbe 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.7.2-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.7.2-linux-x86_64.eb @@ -22,7 +22,7 @@ sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] patches = [('julia.wrapper', 'bin/')] checksums = [ {'julia-1.7.2-linux-x86_64.tar.gz': 'a75244724f3b2de0e7249c861fbf64078257c16fb4203be78f1cf4dd5973ba95'}, - {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, ] # install wrapper with linking safeguards for Julia libraries diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.7.3-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.7.3-linux-x86_64.eb index 61ab7eb2bdf..0f1649345d9 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.7.3-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.7.3-linux-x86_64.eb @@ -22,7 +22,7 @@ sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] patches = [('julia.wrapper', 'bin/')] checksums = [ {'julia-1.7.3-linux-x86_64.tar.gz': '9b2f4fa12d92b4dcc5d11dc66fb118c47681a76d3df8da064cc97573f2f5c739'}, - {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, ] # install wrapper with linking safeguards for Julia libraries diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.8.0-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.8.0-linux-x86_64.eb index 77e3fee2212..701b6bcbde7 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.8.0-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.8.0-linux-x86_64.eb @@ -22,7 +22,7 @@ sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] patches = [('julia.wrapper', 'bin/')] checksums = [ {'julia-1.8.0-linux-x86_64.tar.gz': 'e80d732ccb7f79e000d798cb8b656dc3641ab59516d6e4e52e16765017892a00'}, - {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, ] # install wrapper with linking safeguards for Julia libraries diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.8.2-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.8.2-linux-x86_64.eb index fd619b4de39..c85c5bdc291 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.8.2-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.8.2-linux-x86_64.eb @@ -22,7 +22,7 @@ sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] patches = [('julia.wrapper', 'bin/')] checksums = [ {'julia-1.8.2-linux-x86_64.tar.gz': '671cf3a450b63a717e1eedd7f69087e3856f015b2e146cb54928f19a3c05e796'}, - {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, ] # install wrapper with linking safeguards for Julia libraries diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.8.5-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.8.5-linux-x86_64.eb index d69227cc952..6e60397495d 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.8.5-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.8.5-linux-x86_64.eb @@ -22,7 +22,7 @@ sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] patches = [('julia.wrapper', 'bin/')] checksums = [ {'julia-1.8.5-linux-x86_64.tar.gz': 'e71a24816e8fe9d5f4807664cbbb42738f5aa9fe05397d35c81d4c5d649b9d05'}, - {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, ] postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.9.0-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.9.0-linux-x86_64.eb index 7469924860b..2e89fb8640b 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.9.0-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.9.0-linux-x86_64.eb @@ -22,7 +22,7 @@ sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] patches = [('julia.wrapper', 'bin/')] checksums = [ {'julia-1.9.0-linux-x86_64.tar.gz': '00c614466ef9809c2eb23480e38d196a2c577fff2730c4f83d135b913d473359'}, - {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, ] # install wrapper with linking safeguards for Julia libraries diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.9.2-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.9.2-linux-x86_64.eb index 01939dc25f7..fef2c5a347c 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.9.2-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.9.2-linux-x86_64.eb @@ -22,7 +22,7 @@ sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] patches = [('julia.wrapper', 'bin/')] checksums = [ {'julia-1.9.2-linux-x86_64.tar.gz': '4c2d799f442d7fe718827b19da2bacb72ea041b9ce55f24eee7b1313f57c4383'}, - {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, ] postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.9.3-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.9.3-linux-x86_64.eb index d5e1511d63e..1d0f85d9874 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.9.3-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.9.3-linux-x86_64.eb @@ -22,7 +22,7 @@ sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] patches = [('julia.wrapper', 'bin/')] checksums = [ {'julia-1.9.3-linux-x86_64.tar.gz': 'd76670cc9ba3e0fd4c1545dd3d00269c0694976a1176312795ebce1692d323d1'}, - {'julia.wrapper': 'a36a3e0cb98ab4d2b05e0ca8f0bf2724baafbd669a0db318a00e40737d2f02f9'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, ] # install wrapper with linking safeguards for Julia libraries From 723f8f964289ee1e61ec12223a16e4881a971397 Mon Sep 17 00:00:00 2001 From: tanmoy1989 Date: Tue, 21 May 2024 13:33:40 +0100 Subject: [PATCH 10/37] adding easyconfigs: meshio-5.3.5-foss-2023b.eb --- .../m/meshio/meshio-5.3.5-foss-2023b.eb | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 easybuild/easyconfigs/m/meshio/meshio-5.3.5-foss-2023b.eb diff --git a/easybuild/easyconfigs/m/meshio/meshio-5.3.5-foss-2023b.eb b/easybuild/easyconfigs/m/meshio/meshio-5.3.5-foss-2023b.eb new file mode 100644 index 00000000000..c8cd7d931df --- /dev/null +++ b/easybuild/easyconfigs/m/meshio/meshio-5.3.5-foss-2023b.eb @@ -0,0 +1,37 @@ +easyblock = 'PythonBundle' + +name = 'meshio' +version = '5.3.5' + +homepage = 'https://github.com/nschloe/meshio' +description = "meshio is a tool for reading/writing various mesh formats representing unstructured meshes" + +toolchain = {'name': 'foss', 'version': '2023b'} + +dependencies = [ + ('Python', '3.11.5'), # includes numpy + ('h5py', '3.11.0'), + ('VTK', '9.3.0'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('appdirs', '1.4.4', { + 'checksums': ['7d5d0167b2b1ba821647616af46a749d1c653740dd0d2415100fe26e27afdf41'], + }), + ('pipdate', '0.5.6', { + 'checksums': ['1b6b7ec2c5468fb7036ec9d6b2ced7a8a538db55aaca03f30199216d3bbd264b'], + }), + (name, version, { + 'checksums': ['f21f01abd9f29ba06ea119304b3d39e610421cfe93b9dd23362834919f87586d'], + }), +] + +sanity_check_paths = { + 'files': ['bin/meshio', 'bin/pipdate'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'cae' From 825836a0cd34ab7a4f048574ca90de8766ec776b Mon Sep 17 00:00:00 2001 From: tanmoy1989 Date: Tue, 21 May 2024 14:07:58 +0100 Subject: [PATCH 11/37] adding easyconfigs: SuperLU_DIST-8.2.1-foss-2023b.eb --- .../SuperLU_DIST-8.2.1-foss-2023b.eb | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 easybuild/easyconfigs/s/SuperLU_DIST/SuperLU_DIST-8.2.1-foss-2023b.eb diff --git a/easybuild/easyconfigs/s/SuperLU_DIST/SuperLU_DIST-8.2.1-foss-2023b.eb b/easybuild/easyconfigs/s/SuperLU_DIST/SuperLU_DIST-8.2.1-foss-2023b.eb new file mode 100644 index 00000000000..a113fb7ef50 --- /dev/null +++ b/easybuild/easyconfigs/s/SuperLU_DIST/SuperLU_DIST-8.2.1-foss-2023b.eb @@ -0,0 +1,44 @@ +easyblock = "EB_SuperLU" + +name = 'SuperLU_DIST' +version = '8.2.1' + +homepage = 'https://crd-legacy.lbl.gov/~xiaoye/SuperLU/' +description = """SuperLU is a general purpose library for the direct solution of large, sparse, nonsymmetric systems + of linear equations on high performance machines.""" + +toolchain = {'name': 'foss', 'version': '2023b'} +toolchainopts = {'pic': True, 'openmp': True} + +github_account = 'xiaoyeli' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ["v%(version)s.tar.gz"] +checksums = ['b77d065cafa6bc1a1dcc15bf23fd854f54b05762b165badcffc195835ad2bddf'] + +builddependencies = [('CMake', '3.27.6')] + +dependencies = [ + ('ParMETIS', '4.0.3'), +] + +configopts = '-DTPL_PARMETIS_INCLUDE_DIRS="${EBROOTPARMETIS}/include" ' +configopts += '-DTPL_PARMETIS_LIBRARIES="${EBROOTPARMETIS}/lib/libparmetis.a;${EBROOTPARMETIS}/lib/libmetis.a" ' + +# Some tests run longer than default 1500s timeout on fairly big machine (36 cores). +# Include only first four tests, which should be fairly small to run +pretestopts = 'export ARGS="$ARGS --tests-regex pdtest_[21]x1_[13]_2_8_20_SP" && ' + +# remove broken symlink to libsuperlu.a +postinstallcmds = [ + "if [ -f %(installdir)s/lib64/libsuperlu.a ]; then rm %(installdir)s/lib64/libsuperlu.a; fi", + # This second one can be removed when https://github.com/easybuilders/easybuild-framework/pull/4435 is merged + # (i.e. in EasyBuild 5.0) + "if [ -f %(installdir)s/lib/libsuperlu.a ]; then rm %(installdir)s/lib/libsuperlu.a; fi" +] + +sanity_check_paths = { + 'files': ['lib64/libsuperlu_dist.a'], + 'dirs': ['include'] +} + +moduleclass = 'numlib' From 7a81d9530390904f871718ee02770dbcd4919688 Mon Sep 17 00:00:00 2001 From: tanmoy1989 Date: Tue, 21 May 2024 14:14:13 +0100 Subject: [PATCH 12/37] adding easyconfigs: SuiteSparse-7.7.0-foss-2023b-METIS-5.1.0.eb --- ...uiteSparse-7.7.0-foss-2023b-METIS-5.1.0.eb | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 easybuild/easyconfigs/s/SuiteSparse/SuiteSparse-7.7.0-foss-2023b-METIS-5.1.0.eb diff --git a/easybuild/easyconfigs/s/SuiteSparse/SuiteSparse-7.7.0-foss-2023b-METIS-5.1.0.eb b/easybuild/easyconfigs/s/SuiteSparse/SuiteSparse-7.7.0-foss-2023b-METIS-5.1.0.eb new file mode 100644 index 00000000000..260ca279304 --- /dev/null +++ b/easybuild/easyconfigs/s/SuiteSparse/SuiteSparse-7.7.0-foss-2023b-METIS-5.1.0.eb @@ -0,0 +1,29 @@ +name = 'SuiteSparse' +version = '7.7.0' +local_metis_ver = '5.1.0' +versionsuffix = '-METIS-%s' % local_metis_ver + +homepage = 'https://faculty.cse.tamu.edu/davis/suitesparse.html' +description = """SuiteSparse is a collection of libraries to manipulate sparse matrices.""" + +toolchain = {'name': 'foss', 'version': '2023b'} +toolchainopts = {'unroll': True, 'pic': True} + +source_urls = ['https://github.com/DrTimothyAldenDavis/SuiteSparse/archive'] +sources = ['v%(version)s.tar.gz'] +checksums = ['529b067f5d80981f45ddf6766627b8fc5af619822f068f342aab776e683df4f3'] + +builddependencies = [ + ('CMake', '3.27.6'), + ('M4', '1.4.19'), +] + +dependencies = [ + ('METIS', local_metis_ver), + ('MPFR', '4.2.1'), +] + +# make sure that bin/demo can find libsuitesparseconfig.so.5 during build +prebuildopts = "export LD_LIBRARY_PATH=%(builddir)s/SuiteSparse-%(version)s/lib:$LD_LIBRARY_PATH && " + +moduleclass = 'numlib' From 3e407588ee4b41b497a5dd7a33dd693b9b497cb4 Mon Sep 17 00:00:00 2001 From: Simon Pinches Date: Sat, 15 Jun 2024 19:05:11 +0200 Subject: [PATCH 13/37] adding easyconfigs: Sphinx-RTD-Theme-2.0.0-GCCcore-13.2.0.eb --- .../Sphinx-RTD-Theme-2.0.0-GCCcore-13.2.0.eb | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 easybuild/easyconfigs/s/Sphinx-RTD-Theme/Sphinx-RTD-Theme-2.0.0-GCCcore-13.2.0.eb diff --git a/easybuild/easyconfigs/s/Sphinx-RTD-Theme/Sphinx-RTD-Theme-2.0.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/s/Sphinx-RTD-Theme/Sphinx-RTD-Theme-2.0.0-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..6642b38d820 --- /dev/null +++ b/easybuild/easyconfigs/s/Sphinx-RTD-Theme/Sphinx-RTD-Theme-2.0.0-GCCcore-13.2.0.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonBundle' + +name = 'Sphinx-RTD-Theme' +version = '2.0.0' + +homepage = 'https://sphinx-rtd-theme.readthedocs.io' +description = """Sphinx theme designed to provide a great reader experience + for documentation users on both desktop and mobile devices.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [('binutils', '2.40')] + +dependencies = [ + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), +] + +use_pip = True + +exts_list = [ + ('sphinxcontrib-jquery', '4.1', { + 'modulename': 'sphinxcontrib.jquery', + 'checksums': ['1620739f04e36a2c779f1a131a2dfd49b2fd07351bf1968ced074365933abc7a'], + }), + ('sphinx_rtd_theme', version, { + 'checksums': ['bd5d7b80622406762073a04ef8fadc5f9151261563d47027de09910ce03afe6b'], + }), +] + +sanity_pip_check = True + +moduleclass = 'vis' From 63e79361f60a5684fe7bc01832147c28513f268a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bob=20Dr=C3=B6ge?= Date: Tue, 18 Jun 2024 14:42:29 +0200 Subject: [PATCH 14/37] add patch for numpy 1.26.4 that fixes RISC-V test failures --- .../SciPy-bundle-2024.05-gfbf-2024.05.eb | 7 +- ...mpy-1.26.4_fix-riscv64-test-failures.patch | 156 ++++++++++++++++++ 2 files changed, 162 insertions(+), 1 deletion(-) create mode 100644 easybuild/easyconfigs/s/SciPy-bundle/numpy-1.26.4_fix-riscv64-test-failures.patch diff --git a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2024.05-gfbf-2024.05.eb b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2024.05-gfbf-2024.05.eb index c3f76125dce..b80b8631909 100644 --- a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2024.05-gfbf-2024.05.eb +++ b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2024.05-gfbf-2024.05.eb @@ -30,11 +30,16 @@ use_pip = True # order is important! exts_list = [ ('numpy', '1.26.4', { - 'patches': ['numpy-1.22.3_disable-broken-override-test.patch'], + 'patches': [ + 'numpy-1.22.3_disable-broken-override-test.patch', + 'numpy-1.26.4_fix-riscv64-test-failures.patch', + ], 'checksums': [ {'numpy-1.26.4.tar.gz': '2a02aba9ed12e4ac4eb3ea9421c420301a0c6460d9830d74a9df87efa4912010'}, {'numpy-1.22.3_disable-broken-override-test.patch': '9c589bb073b28b25ff45eb3c63c57966aa508dd8b318d0b885b6295271e4983c'}, + {'numpy-1.26.4_fix-riscv64-test-failures.patch': + '81bd487dbca6da8285971a16a2c7b488718a051d3cd66450277bed6ff21741de'}, ], }), ('ply', '3.11', { diff --git a/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.26.4_fix-riscv64-test-failures.patch b/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.26.4_fix-riscv64-test-failures.patch new file mode 100644 index 00000000000..ccc444e1f4d --- /dev/null +++ b/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.26.4_fix-riscv64-test-failures.patch @@ -0,0 +1,156 @@ +From d9e88e32302b3842785a33d90cf22f8c1405cd05 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Bob=20Dr=C3=B6ge?= +Date: Tue, 18 Jun 2024 13:28:35 +0200 +Subject: [PATCH 1/2] TST: Fix fp_noncontiguous and fpclass on riscv64 + +Modify fp_noncontiguous and fpclass so that they pass on riscv64. +The subtests that verify that the signs of negative NaNs are preserved +do not pass on riscv64 builds and are disabled. Many RISC-V +instructions that produce NaNs return a canonical NaN, as defined by +the RISC-V specification. The canonical NaNs are always positive. See +section 11.3 NaN Generation and Propagation of the RISC-V Unprivileged +ISA for more details. +--- + numpy/core/tests/test_umath.py | 44 +++++++++++++++++++++++++++++----- + 1 file changed, 38 insertions(+), 6 deletions(-) + +diff --git a/numpy/core/tests/test_umath.py b/numpy/core/tests/test_umath.py +index 963e740d8dcb..8444893c80c3 100644 +--- a/numpy/core/tests/test_umath.py ++++ b/numpy/core/tests/test_umath.py +@@ -1852,8 +1852,22 @@ def test_fpclass(self, stride): + assert_equal(np.isnan(arr_f64[::stride]), nan[::stride]) + assert_equal(np.isinf(arr_f32[::stride]), inf[::stride]) + assert_equal(np.isinf(arr_f64[::stride]), inf[::stride]) +- assert_equal(np.signbit(arr_f32[::stride]), sign[::stride]) +- assert_equal(np.signbit(arr_f64[::stride]), sign[::stride]) ++ if platform.processor() == 'riscv64': ++ # On RISC-V, many operations that produce NaNs, such as converting ++ # a -NaN from f64 to f32, return a canonical NaN. The canonical ++ # NaNs are always positive. See section 11.3 NaN Generation and ++ # Propagation of the RISC-V Unprivileged ISA for more details. ++ # We disable the sign test on riscv64 for -np.nan as we ++ # cannot assume that its sign will be honoured in these tests. ++ arr_f64_rv = np.copy(arr_f64) ++ arr_f32_rv = np.copy(arr_f32) ++ arr_f64_rv[1] = -1.0 ++ arr_f32_rv[1] = -1.0 ++ assert_equal(np.signbit(arr_f32_rv[::stride]), sign[::stride]) ++ assert_equal(np.signbit(arr_f64_rv[::stride]), sign[::stride]) ++ else: ++ assert_equal(np.signbit(arr_f32[::stride]), sign[::stride]) ++ assert_equal(np.signbit(arr_f64[::stride]), sign[::stride]) + assert_equal(np.isfinite(arr_f32[::stride]), finite[::stride]) + assert_equal(np.isfinite(arr_f64[::stride]), finite[::stride]) + +@@ -1874,23 +1888,37 @@ def test_fp_noncontiguous(self, dtype): + ncontig_in = data[1::3] + ncontig_out = out[1::3] + contig_in = np.array(ncontig_in) ++ ++ if platform.processor() == 'riscv64': ++ # Disable the -np.nan signbit tests on riscv64. See comments in ++ # test_fpclass for more details. ++ data_rv = np.copy(data) ++ data_rv[1] = -1.0 ++ ncontig_sign_in = data_rv[1::3] ++ contig_sign_in = np.array(ncontig_sign_in) ++ else: ++ ncontig_sign_in = ncontig_in ++ contig_sign_in = contig_in ++ + assert_equal(ncontig_in.flags.c_contiguous, False) + assert_equal(ncontig_out.flags.c_contiguous, False) + assert_equal(contig_in.flags.c_contiguous, True) ++ assert_equal(ncontig_sign_in.flags.c_contiguous, False) ++ assert_equal(contig_sign_in.flags.c_contiguous, True) + # ncontig in, ncontig out + assert_equal(np.isnan(ncontig_in, out=ncontig_out), nan[1::3]) + assert_equal(np.isinf(ncontig_in, out=ncontig_out), inf[1::3]) +- assert_equal(np.signbit(ncontig_in, out=ncontig_out), sign[1::3]) ++ assert_equal(np.signbit(ncontig_sign_in, out=ncontig_out), sign[1::3]) + assert_equal(np.isfinite(ncontig_in, out=ncontig_out), finite[1::3]) + # contig in, ncontig out + assert_equal(np.isnan(contig_in, out=ncontig_out), nan[1::3]) + assert_equal(np.isinf(contig_in, out=ncontig_out), inf[1::3]) +- assert_equal(np.signbit(contig_in, out=ncontig_out), sign[1::3]) ++ assert_equal(np.signbit(contig_sign_in, out=ncontig_out), sign[1::3]) + assert_equal(np.isfinite(contig_in, out=ncontig_out), finite[1::3]) + # ncontig in, contig out + assert_equal(np.isnan(ncontig_in), nan[1::3]) + assert_equal(np.isinf(ncontig_in), inf[1::3]) +- assert_equal(np.signbit(ncontig_in), sign[1::3]) ++ assert_equal(np.signbit(ncontig_sign_in), sign[1::3]) + assert_equal(np.isfinite(ncontig_in), finite[1::3]) + # contig in, contig out, nd stride + data_split = np.array(np.array_split(data, 2)) +@@ -1900,7 +1928,11 @@ def test_fp_noncontiguous(self, dtype): + finite_split = np.array(np.array_split(finite, 2)) + assert_equal(np.isnan(data_split), nan_split) + assert_equal(np.isinf(data_split), inf_split) +- assert_equal(np.signbit(data_split), sign_split) ++ if platform.processor() == 'riscv64': ++ data_split_rv = np.array(np.array_split(data_rv, 2)) ++ assert_equal(np.signbit(data_split_rv), sign_split) ++ else: ++ assert_equal(np.signbit(data_split), sign_split) + assert_equal(np.isfinite(data_split), finite_split) + + class TestLDExp: + +From ccb1d4adc01b49c7e900e5f532dc6361eac1362a Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Bob=20Dr=C3=B6ge?= +Date: Tue, 18 Jun 2024 13:30:00 +0200 +Subject: [PATCH 2/2] TST: Use platform.machine() for improved portability on + riscv64 + +Replace `platform.processor()` with `platform.machine()` considering the latter is more portable. More specifically, `platform.processor()` returns empty string on Arch Linux, and this PR fixes the corresponding test failure. +--- + numpy/core/tests/test_numeric.py | 2 +- + numpy/core/tests/test_umath.py | 6 +++--- + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/numpy/core/tests/test_numeric.py b/numpy/core/tests/test_numeric.py +index e5edd3efce5a..ce5917a9b09f 100644 +--- a/numpy/core/tests/test_numeric.py ++++ b/numpy/core/tests/test_numeric.py +@@ -483,7 +483,7 @@ def setup_method(self): + # Propagation of the RISC-V Unprivileged ISA for more details. + # We disable the float32 sign test on riscv64 for -np.nan as the sign + # of the NaN will be lost when it's converted to a float32. +- if platform.processor() != 'riscv64': ++ if platform.machine() != 'riscv64': + self.signf[3::6][self.ef[3::6]] = -np.nan + self.signd[3::6][self.ed[3::6]] = -np.nan + self.signf[4::6][self.ef[4::6]] = -0. +diff --git a/numpy/core/tests/test_umath.py b/numpy/core/tests/test_umath.py +index 8444893c80c3..c5a3e2c81f83 100644 +--- a/numpy/core/tests/test_umath.py ++++ b/numpy/core/tests/test_umath.py +@@ -1852,7 +1852,7 @@ def test_fpclass(self, stride): + assert_equal(np.isnan(arr_f64[::stride]), nan[::stride]) + assert_equal(np.isinf(arr_f32[::stride]), inf[::stride]) + assert_equal(np.isinf(arr_f64[::stride]), inf[::stride]) +- if platform.processor() == 'riscv64': ++ if platform.machine() == 'riscv64': + # On RISC-V, many operations that produce NaNs, such as converting + # a -NaN from f64 to f32, return a canonical NaN. The canonical + # NaNs are always positive. See section 11.3 NaN Generation and +@@ -1889,7 +1889,7 @@ def test_fp_noncontiguous(self, dtype): + ncontig_out = out[1::3] + contig_in = np.array(ncontig_in) + +- if platform.processor() == 'riscv64': ++ if platform.machine() == 'riscv64': + # Disable the -np.nan signbit tests on riscv64. See comments in + # test_fpclass for more details. + data_rv = np.copy(data) +@@ -1928,7 +1928,7 @@ def test_fp_noncontiguous(self, dtype): + finite_split = np.array(np.array_split(finite, 2)) + assert_equal(np.isnan(data_split), nan_split) + assert_equal(np.isinf(data_split), inf_split) +- if platform.processor() == 'riscv64': ++ if platform.machine() == 'riscv64': + data_split_rv = np.array(np.array_split(data_rv, 2)) + assert_equal(np.signbit(data_split_rv), sign_split) + else: From d1c95d834fe2dee39743e8eaddebae9321d083a7 Mon Sep 17 00:00:00 2001 From: Pavel Tomanek Date: Fri, 21 Jun 2024 14:57:27 +0200 Subject: [PATCH 15/37] adding easyconfigs: orjson-3.9.15-GCC-12.3.0.eb --- .../o/orjson/orjson-3.9.15-GCC-12.3.0.eb | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 easybuild/easyconfigs/o/orjson/orjson-3.9.15-GCC-12.3.0.eb diff --git a/easybuild/easyconfigs/o/orjson/orjson-3.9.15-GCC-12.3.0.eb b/easybuild/easyconfigs/o/orjson/orjson-3.9.15-GCC-12.3.0.eb new file mode 100644 index 00000000000..c741b014f10 --- /dev/null +++ b/easybuild/easyconfigs/o/orjson/orjson-3.9.15-GCC-12.3.0.eb @@ -0,0 +1,37 @@ +easyblock = 'PythonBundle' + +name = 'orjson' +version = '3.9.15' + +homepage = 'https://github.com/ijl/orjson' +description = """Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +builddependencies = [ + ('maturin', '1.4.0', '-Rust-1.75.0'), +] +dependencies = [ + ('Python', '3.11.3'), +] + +use_pip = True + +exts_list = [ + ('ruff', '0.4.8', { + 'checksums': ['16d717b1d57b2e2fd68bd0bf80fb43931b79d05a7131aa477d66fc40fbd86268'], + }), + ('mypy_extensions', '1.0.0', { + 'checksums': ['75dbf8955dc00442a438fc4d0666508a9a97b6bd41aa2f0ffe9d2f2725af0782'], + }), + ('mypy', '1.10.0', { + 'checksums': ['3d087fcbec056c4ee34974da493a826ce316947485cef3901f511848e687c131'], + }), + (name, version, { + 'checksums': ['95cae920959d772f30ab36d3b25f83bb0f3be671e986c72ce22f8fa700dae061'], + }), +] + +sanity_pip_check = True + +moduleclass = 'math' From a90bce4d9ee877d64453984574a783425f64d0c8 Mon Sep 17 00:00:00 2001 From: Bart Oldeman Date: Wed, 26 Jun 2024 21:47:24 +0000 Subject: [PATCH 16/37] adding easyconfigs: impi-2021.13.0-intel-compilers-2024.2.0.eb, iimpi-2024.06.eb, OSU-Micro-Benchmarks-7.4-iimpi-2024.06.eb --- .../easyconfigs/i/iimpi/iimpi-2024.06.eb | 18 +++++++++++++ ...impi-2021.13.0-intel-compilers-2024.2.0.eb | 16 ++++++++++++ .../OSU-Micro-Benchmarks-7.4-iimpi-2024.06.eb | 26 +++++++++++++++++++ 3 files changed, 60 insertions(+) create mode 100644 easybuild/easyconfigs/i/iimpi/iimpi-2024.06.eb create mode 100644 easybuild/easyconfigs/i/impi/impi-2021.13.0-intel-compilers-2024.2.0.eb create mode 100644 easybuild/easyconfigs/o/OSU-Micro-Benchmarks/OSU-Micro-Benchmarks-7.4-iimpi-2024.06.eb diff --git a/easybuild/easyconfigs/i/iimpi/iimpi-2024.06.eb b/easybuild/easyconfigs/i/iimpi/iimpi-2024.06.eb new file mode 100644 index 00000000000..82db31cd099 --- /dev/null +++ b/easybuild/easyconfigs/i/iimpi/iimpi-2024.06.eb @@ -0,0 +1,18 @@ +# This is an easyconfig file for EasyBuild, see http://easybuilders.github.io/easybuild +easyblock = 'Toolchain' + +name = 'iimpi' +version = '2024.06' + +homepage = 'https://software.intel.com/parallel-studio-xe' +description = """Intel C/C++ and Fortran compilers, alongside Intel MPI.""" + +toolchain = SYSTEM + +local_comp_ver = '2024.2.0' +dependencies = [ + ('intel-compilers', local_comp_ver), + ('impi', '2021.13.0', '', ('intel-compilers', local_comp_ver)), +] + +moduleclass = 'toolchain' diff --git a/easybuild/easyconfigs/i/impi/impi-2021.13.0-intel-compilers-2024.2.0.eb b/easybuild/easyconfigs/i/impi/impi-2021.13.0-intel-compilers-2024.2.0.eb new file mode 100644 index 00000000000..2e99bc6c0d8 --- /dev/null +++ b/easybuild/easyconfigs/i/impi/impi-2021.13.0-intel-compilers-2024.2.0.eb @@ -0,0 +1,16 @@ +name = 'impi' +version = '2021.13.0' + +homepage = 'https://software.intel.com/content/www/us/en/develop/tools/mpi-library.html' +description = "Intel MPI Library, compatible with MPICH ABI" + +toolchain = {'name': 'intel-compilers', 'version': '2024.2.0'} + +# see https://software.intel.com/content/www/us/en/develop/articles/oneapi-standalone-components.html +source_urls = ['https://registrationcenter-download.intel.com/akdlm/IRC_NAS/9f84e1e8-11b2-4bd1-8512-3e3343585956'] +sources = ['l_mpi_oneapi_p_%(version)s.719_offline.sh'] +checksums = ['5e23cf495c919e17032577e3059438f632297ee63f2cdb906a2547298823cc64'] + +dependencies = [('UCX', '1.16.0')] + +moduleclass = 'mpi' diff --git a/easybuild/easyconfigs/o/OSU-Micro-Benchmarks/OSU-Micro-Benchmarks-7.4-iimpi-2024.06.eb b/easybuild/easyconfigs/o/OSU-Micro-Benchmarks/OSU-Micro-Benchmarks-7.4-iimpi-2024.06.eb new file mode 100644 index 00000000000..6f36b886477 --- /dev/null +++ b/easybuild/easyconfigs/o/OSU-Micro-Benchmarks/OSU-Micro-Benchmarks-7.4-iimpi-2024.06.eb @@ -0,0 +1,26 @@ +easyblock = 'ConfigureMake' + +name = 'OSU-Micro-Benchmarks' +version = '7.4' + +homepage = 'https://mvapich.cse.ohio-state.edu/benchmarks/' +description = """OSU Micro-Benchmarks""" + +toolchain = {'name': 'iimpi', 'version': '2024.06'} +toolchainopts = {'usempi': True} + +source_urls = ['https://mvapich.cse.ohio-state.edu/download/mvapich/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['1edd0c2efa61999409bfb28740a7f39689a5b42b1a1b4c66d1656e5637f7cefc'] + +local_benchmark_dirs = [ + 'libexec/osu-micro-benchmarks/mpi/%s' % x for x in ['collective', 'one-sided', 'pt2pt', 'startup'] +] +modextrapaths = {'PATH': local_benchmark_dirs} + +sanity_check_paths = { + 'files': [], + 'dirs': local_benchmark_dirs, +} + +moduleclass = 'perf' From 78a5b1b2b5bad75de0a7ee866bd3242766472323 Mon Sep 17 00:00:00 2001 From: "Tanmoy Chakraborty, Ph.D" <56235576+tanmoy1989@users.noreply.github.com> Date: Thu, 27 Jun 2024 16:34:10 +0100 Subject: [PATCH 17/37] Update easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Bob Dröge --- easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb index 887eaf37405..ae1adbcbcdd 100644 --- a/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb @@ -4,7 +4,7 @@ name = 'libzip' version = '1.10.1' homepage = 'https://libzip.org/' -description = "libzip is a C library for reading, creating, and modifying zip archives.." +description = "libzip is a C library for reading, creating, and modifying zip archives." toolchain = {'name': 'GCCcore', 'version': '13.2.0'} From 88ffac0a53e923d4c79db9c8d1f7e79bda5bd6f1 Mon Sep 17 00:00:00 2001 From: Pavel Tomanek <99190809+pavelToman@users.noreply.github.com> Date: Thu, 27 Jun 2024 18:09:07 +0200 Subject: [PATCH 18/37] Update orjson-3.9.15-GCC-12.3.0.eb toolchain --- easybuild/easyconfigs/o/orjson/orjson-3.9.15-GCC-12.3.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/o/orjson/orjson-3.9.15-GCC-12.3.0.eb b/easybuild/easyconfigs/o/orjson/orjson-3.9.15-GCC-12.3.0.eb index c741b014f10..14c64e5a008 100644 --- a/easybuild/easyconfigs/o/orjson/orjson-3.9.15-GCC-12.3.0.eb +++ b/easybuild/easyconfigs/o/orjson/orjson-3.9.15-GCC-12.3.0.eb @@ -6,7 +6,7 @@ version = '3.9.15' homepage = 'https://github.com/ijl/orjson' description = """Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy.""" -toolchain = {'name': 'GCC', 'version': '12.3.0'} +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} builddependencies = [ ('maturin', '1.4.0', '-Rust-1.75.0'), From 19df511a8aa4c695a8399eb274755aa904e33170 Mon Sep 17 00:00:00 2001 From: Pavel Tomanek <99190809+pavelToman@users.noreply.github.com> Date: Thu, 27 Jun 2024 18:25:27 +0200 Subject: [PATCH 19/37] Rename orjson-3.9.15-GCC-12.3.0.eb to orjson-3.9.15-GCCcore-12.3.0.eb --- ...rjson-3.9.15-GCC-12.3.0.eb => orjson-3.9.15-GCCcore-12.3.0.eb} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename easybuild/easyconfigs/o/orjson/{orjson-3.9.15-GCC-12.3.0.eb => orjson-3.9.15-GCCcore-12.3.0.eb} (100%) diff --git a/easybuild/easyconfigs/o/orjson/orjson-3.9.15-GCC-12.3.0.eb b/easybuild/easyconfigs/o/orjson/orjson-3.9.15-GCCcore-12.3.0.eb similarity index 100% rename from easybuild/easyconfigs/o/orjson/orjson-3.9.15-GCC-12.3.0.eb rename to easybuild/easyconfigs/o/orjson/orjson-3.9.15-GCCcore-12.3.0.eb From 148681d6cda7ff0947df6af188534f8313fd0c66 Mon Sep 17 00:00:00 2001 From: "Tanmoy Chakraborty, Ph.D" <56235576+tanmoy1989@users.noreply.github.com> Date: Thu, 27 Jun 2024 19:46:59 +0100 Subject: [PATCH 20/37] Update easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Bob Dröge --- .../easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb index ae1adbcbcdd..d54d1419fdc 100644 --- a/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb @@ -17,7 +17,12 @@ builddependencies = [ ('CMake', '3.27.6'), ] -dependencies = [('zlib', '1.2.13')] +dependencies = [ + ('zlib', '1.2.13'), + ('bzip2', '1.0.8'), + ('XZ', '5.4.4'), + ('zstd', '1.5.5'), +] sanity_check_paths = { 'files': [ From 0f993baeb64c2ad12a6dade46b8886f750f2d276 Mon Sep 17 00:00:00 2001 From: "Tanmoy Chakraborty, Ph.D" <56235576+tanmoy1989@users.noreply.github.com> Date: Thu, 27 Jun 2024 20:11:48 +0100 Subject: [PATCH 21/37] Update easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Bob Dröge --- easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb | 1 + 1 file changed, 1 insertion(+) diff --git a/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb index d54d1419fdc..2986a9fc694 100644 --- a/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb @@ -18,6 +18,7 @@ builddependencies = [ ] dependencies = [ + ('OpenSSL', '3'), ('zlib', '1.2.13'), ('bzip2', '1.0.8'), ('XZ', '5.4.4'), From 2183b333db9252aa6c821092180c39f7db3ff5d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bob=20Dr=C3=B6ge?= Date: Fri, 28 Jun 2024 09:24:04 +0200 Subject: [PATCH 22/37] Use OpenSSL 1.1, add SYSTEM toolchain to dep --- easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb index 2986a9fc694..99551efad57 100644 --- a/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/l/libzip/libzip-1.10.1-GCCcore-13.2.0.eb @@ -18,7 +18,7 @@ builddependencies = [ ] dependencies = [ - ('OpenSSL', '3'), + ('OpenSSL', '1.1', '', SYSTEM), ('zlib', '1.2.13'), ('bzip2', '1.0.8'), ('XZ', '5.4.4'), From 1d71b2ccb102c56036e5d9e92187bd5f4ec92318 Mon Sep 17 00:00:00 2001 From: tanmoy1989 Date: Fri, 28 Jun 2024 11:04:17 +0100 Subject: [PATCH 23/37] adding easyconfigs: ParMETIS-4.0.3-gompi-2023b.eb --- .../p/ParMETIS/ParMETIS-4.0.3-gompi-2023b.eb | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 easybuild/easyconfigs/p/ParMETIS/ParMETIS-4.0.3-gompi-2023b.eb diff --git a/easybuild/easyconfigs/p/ParMETIS/ParMETIS-4.0.3-gompi-2023b.eb b/easybuild/easyconfigs/p/ParMETIS/ParMETIS-4.0.3-gompi-2023b.eb new file mode 100644 index 00000000000..ae247e2b7c5 --- /dev/null +++ b/easybuild/easyconfigs/p/ParMETIS/ParMETIS-4.0.3-gompi-2023b.eb @@ -0,0 +1,29 @@ +## +# Author: Robert Mijakovic +## +name = 'ParMETIS' +version = '4.0.3' + +homepage = 'http://glaros.dtc.umn.edu/gkhome/metis/parmetis/overview' +description = """ParMETIS is an MPI-based parallel library that implements a variety of algorithms for partitioning + unstructured graphs, meshes, and for computing fill-reducing orderings of sparse matrices. ParMETIS extends the + functionality provided by METIS and includes routines that are especially suited for parallel AMR computations and + large scale numerical simulations. The algorithms implemented in ParMETIS are based on the parallel multilevel k-way + graph-partitioning, adaptive repartitioning, and parallel multi-constrained partitioning schemes.""" + +toolchain = {'name': 'gompi', 'version': '2023b'} +toolchainopts = {'usempi': True, 'pic': True} + +source_urls = [ + 'http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis', + 'http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis/OLD', +] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['f2d9a231b7cf97f1fee6e8c9663113ebf6c240d407d3c118c55b3633d6be6e5f'] + +builddependencies = [('CMake', '3.27.6')] + +# Build static and shared libraries +configopts = ['', '-DSHARED=1'] + +moduleclass = 'math' From 114545454db53ce382e7c2220def5d9e290eb278 Mon Sep 17 00:00:00 2001 From: tanmoy1989 Date: Fri, 28 Jun 2024 11:33:29 +0100 Subject: [PATCH 24/37] adding easyconfigs: MUMPS-5.6.1-foss-2023b-metis.eb --- .../m/MUMPS/MUMPS-5.6.1-foss-2023b-metis.eb | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 easybuild/easyconfigs/m/MUMPS/MUMPS-5.6.1-foss-2023b-metis.eb diff --git a/easybuild/easyconfigs/m/MUMPS/MUMPS-5.6.1-foss-2023b-metis.eb b/easybuild/easyconfigs/m/MUMPS/MUMPS-5.6.1-foss-2023b-metis.eb new file mode 100644 index 00000000000..b9fb9f3ce74 --- /dev/null +++ b/easybuild/easyconfigs/m/MUMPS/MUMPS-5.6.1-foss-2023b-metis.eb @@ -0,0 +1,35 @@ +name = 'MUMPS' +version = '5.6.1' +versionsuffix = '-metis' + +homepage = 'https://graal.ens-lyon.fr/MUMPS/' +description = "A parallel sparse direct solver" + +toolchain = {'name': 'foss', 'version': '2023b'} +toolchainopts = {'pic': True, 'usempi': True} + +source_urls = ['https://graal.ens-lyon.fr/MUMPS/'] +sources = ['%(name)s_%(version)s.tar.gz'] +patches = [ + '%(name)s-%(version)s_shared-pord.patch', # builds the shared libs of PORD + '%(name)s-%(version)s_shared-mumps.patch', # builds shared libs of MUMPS +] +checksums = [ + {'MUMPS_5.6.1.tar.gz': '1920426d543e34d377604070fde93b8d102aa38ebdf53300cbce9e15f92e2896'}, + {'MUMPS-5.6.1_shared-pord.patch': '51d3685208a42581b462592eea977f185d87e871fb65e8e90a54dd2ad18ac715'}, + {'MUMPS-5.6.1_shared-mumps.patch': '27f788a5f85e8c9a6a7ec1651097b87c1de0ede0be943df7a10fa7c1ff5f494f'}, +] + +dependencies = [ + ('SCOTCH', '7.0.4'), + ('METIS', '5.1.0'), +] + +parallel = 1 + +# fix 'Type mismatch between actual argument' errors with GCC 10.x +prebuildopts = 'export FFLAGS="$FFLAGS -fallow-argument-mismatch" && ' + +buildopts = 'all SONAME_VERSION="%(version)s"' + +moduleclass = 'math' From 69c12eae1f0a435685145af659dbd928a4afd8bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Kr=C3=A1l?= Date: Fri, 28 Jun 2024 15:42:01 +0200 Subject: [PATCH 25/37] adding easyconfigs: n2v-0.3.3-foss-2023a.eb, CSBDeep-0.7.4-foss-2023a.eb --- .../c/CSBDeep/CSBDeep-0.7.4-foss-2023a.eb | 37 ++++++++ .../easyconfigs/n/n2v/n2v-0.3.3-foss-2023a.eb | 87 +++++++++++++++++++ 2 files changed, 124 insertions(+) create mode 100644 easybuild/easyconfigs/c/CSBDeep/CSBDeep-0.7.4-foss-2023a.eb create mode 100644 easybuild/easyconfigs/n/n2v/n2v-0.3.3-foss-2023a.eb diff --git a/easybuild/easyconfigs/c/CSBDeep/CSBDeep-0.7.4-foss-2023a.eb b/easybuild/easyconfigs/c/CSBDeep/CSBDeep-0.7.4-foss-2023a.eb new file mode 100644 index 00000000000..3b3b0f37650 --- /dev/null +++ b/easybuild/easyconfigs/c/CSBDeep/CSBDeep-0.7.4-foss-2023a.eb @@ -0,0 +1,37 @@ +# This easyconfig was created by the BEAR Software team at the University of Birmingham. +# Update: Petr Král (INUITS) +easyblock = 'PythonBundle' + +name = 'CSBDeep' +version = '0.7.4' + +homepage = "https://csbdeep.bioimagecomputing.com/" +description = """CSBDeep is a toolbox for Content-aware Image Restoration (CARE).""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('TensorFlow', '2.13.0'), + ('matplotlib', '3.7.2'), + ('tqdm', '4.66.1'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('tifffile', '2024.6.18', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['67299c0445fc47463bbc71f3cb4676da2ab0242b0c6c6542a0680801b4b97d8a'], + }), + ('%(namelower)s', version, { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['155d61827439373dc9c2a730a1ef621f7e373fea16599d583e0a70f1e48bd6db'], + }), +] + +sanity_check_commands = ['care_predict'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/n/n2v/n2v-0.3.3-foss-2023a.eb b/easybuild/easyconfigs/n/n2v/n2v-0.3.3-foss-2023a.eb new file mode 100644 index 00000000000..dfc99c9d4d3 --- /dev/null +++ b/easybuild/easyconfigs/n/n2v/n2v-0.3.3-foss-2023a.eb @@ -0,0 +1,87 @@ +easyblock = 'PythonBundle' + +name = 'n2v' +version = '0.3.3' + +homepage = 'https://github.com/juglab/n2v' +description = "Learning Denoising from Single Noisy Images" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Pillow', '10.0.0'), + ('imagecodecs', '2024.1.1'), + ('ruamel.yaml', '0.17.32'), + ('CSBDeep', '0.7.4'), + ('xarray', '2023.9.0'), + ('imageio', '2.33.1'), + ('pydantic', '2.5.3'), +] + +use_pip = True + +exts_list = [ + ('typer', '0.12.3', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['070d7ca53f785acbccba8e7d28b08dcd88f79f1fbda035ade0aecec71ca5c914'], + }), + ('marshmallow_union', '0.1.15.post1', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['1e21b759c76735305f99179c1a16759ebb9629733159628241b3f2117ff55e86'], + }), + ('marshmallow_jsonschema', '0.13.0', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['2814f2afb94a6e01b3c0a5795b3dfb142b628763655f20378400af5c0a2307fb'], + }), + ('marshmallow', '3.21.3', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['86ce7fb914aa865001a4b2092c4c2872d13bc347f3d42673272cabfdbad386f1'], + }), + ('fire', '0.6.0', { + 'checksums': ['54ec5b996ecdd3c0309c800324a0703d6da512241bc73b553db959d98de0aa66'], + }), + ('ruyaml', '0.91.0', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['50e0ee3389c77ad340e209472e0effd41ae0275246df00cdad0a067532171755'], + }), + ('python_dotenv', '1.0.1', { + 'source_tmpl': SOURCE_PY3_WHL, + 'modulename': 'dotenv', + 'checksums': ['f7b63ef50f1b690dddf550d03497b66d609393b40b564ed0d674909a68ebf16a'], + }), + ('pydantic_settings', '2.2.1', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['0235391d26db4d2190cb9b31051c4b46882d28a51533f97440867f012d4da091'], + }), + ('loguru', '0.7.2', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['003d71e3d3ed35f0f8984898359d65b79e5b21943f78af86aa5491210429b8eb'], + }), + ('dnspython', '2.6.1', { + 'source_tmpl': SOURCE_PY3_WHL, + 'modulename': 'dns', + 'checksums': ['5ef3b9680161f6fa89daf8ad451b5f1a33b18ae8a1c6778cdf4b43f08c0a6e50'], + }), + ('email_validator', '2.2.0', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['561977c2d73ce3611850a06fa56b414621e0c8faa9d66f2611407d87465da631'], + }), + ('bioimageio.spec', '0.4.9.post5', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['a24ef7c0d6506d080655fbd8f322bc153a147329bd2258a8e958982d31885865'], + }), + ('bioimageio.core', '0.5.11', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['af8138f0c75fcebf7abbb873d01af8055d6209b2fd611269990b72e51fb991b5'], + }), + (name, version, { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['be5b24fe0bf3cdc15cd4771c50e577a81b7d83b27300a0b90035cc87bb95c33c'], + }), +] + +sanity_pip_check = True + +moduleclass = 'vis' From 519e6e93783eb5081123fabcc05112b7b7536a25 Mon Sep 17 00:00:00 2001 From: Simon Pinches Date: Fri, 28 Jun 2024 18:00:18 +0200 Subject: [PATCH 26/37] adding easyconfigs: Pylint-3.2.5-GCCcore-13.2.0.eb --- .../p/Pylint/Pylint-3.2.5-GCCcore-13.2.0.eb | 56 +++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 easybuild/easyconfigs/p/Pylint/Pylint-3.2.5-GCCcore-13.2.0.eb diff --git a/easybuild/easyconfigs/p/Pylint/Pylint-3.2.5-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/Pylint/Pylint-3.2.5-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..c919c6c4dd4 --- /dev/null +++ b/easybuild/easyconfigs/p/Pylint/Pylint-3.2.5-GCCcore-13.2.0.eb @@ -0,0 +1,56 @@ +easyblock = 'PythonBundle' + +name = 'Pylint' +version = '3.2.5' + +homepage = 'https://www.pylint.org/' +description = """Pylint is a tool that checks for errors in Python code, tries to enforce + a coding standard and looks for code smells. It can also look for certain type errors, + it can recommend suggestions about how particular blocks can be refactored and + can offer you details about the code's complexity.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [ + ('binutils', '2.40'), + ('poetry', '1.6.1'), +] + +dependencies = [ + ('Python', '3.11.5'), +] + +use_pip = True + +exts_list = [ + ('dill', '0.3.8', { + 'checksums': ['3ebe3c479ad625c4553aca177444d89b486b1d84982eeacded644afc0cf797ca'], + }), + ('platformdirs', '4.2.2', { + 'checksums': ['38b7b51f512eed9e84a22788b4bce1de17c0adb134d6becb09836e37d8654cd3'], + }), + ('tomlkit', '0.12.5', { + 'checksums': ['eef34fba39834d4d6b73c9ba7f3e4d1c417a4e56f89a7e96e090dd0d24b8fb3c'], + }), + ('astroid', '3.2.2', { + 'checksums': ['8ead48e31b92b2e217b6c9733a21afafe479d52d6e164dd25fb1a770c7c3cf94'], + }), + ('isort', '5.13.2', { + 'checksums': ['48fdfcb9face5d58a4f6dde2e72a1fb8dcaf8ab26f95ab49fab84c2ddefb0109'], + }), + ('mccabe', '0.7.0', { + 'checksums': ['348e0240c33b60bbdf4e523192ef919f28cb2c3d7d5c7794f74009290f236325'], + }), + ('pylint', version, { + 'checksums': ['e9b7171e242dcc6ebd0aaa7540481d1a72860748a0a7816b8fe6cf6c80a6fe7e'], + }), +] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/pylint'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'tools' From acb648012182241e07163dca94d299d948b0a3f1 Mon Sep 17 00:00:00 2001 From: vsc46128 Date: Fri, 28 Jun 2024 18:53:44 +0200 Subject: [PATCH 27/37] adding easyconfigs: biom-format-2.1.16-foss-2023b.eb --- .../biom-format-2.1.16-foss-2023b.eb | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 easybuild/easyconfigs/b/biom-format/biom-format-2.1.16-foss-2023b.eb diff --git a/easybuild/easyconfigs/b/biom-format/biom-format-2.1.16-foss-2023b.eb b/easybuild/easyconfigs/b/biom-format/biom-format-2.1.16-foss-2023b.eb new file mode 100644 index 00000000000..91d9cecbd99 --- /dev/null +++ b/easybuild/easyconfigs/b/biom-format/biom-format-2.1.16-foss-2023b.eb @@ -0,0 +1,49 @@ +## +# This is a contribution from DeepThought HPC Service, Flinders University, Adelaide, Australia +# Homepage: https://staff.flinders.edu.au/research/deep-thought +# +# Authors:: Robert Qiao +# License:: Revised BSD +# +# Notes:: updated by Kenneth Hoste (HPC-UGent) for foss/2021b +## +# Updated: Petr Král (INUITS) +# Updated: Lara Peeters (Ghent University) + +easyblock = 'PythonPackage' + +name = 'biom-format' +version = '2.1.16' + +homepage = 'https://biom-format.org' +description = """ +The BIOM file format (canonically pronounced biome) is designed to be + a general-use format for representing biological sample by observation + contingency tables. BIOM is a recognized standard for the Earth Microbiome + Project and is a Genomics Standards Consortium supported project. +""" + +toolchain = {'name': 'foss', 'version': '2023b'} +toolchainopts = {'usempi': True} + +sources = [SOURCE_TAR_GZ] +checksums = ['47f88d57a94ecaa4d06f3578ca394e78db6d12e46ab0886634743181e67dcfc9'] + +dependencies = [ + ('Python', '3.11.5'), + ('SciPy-bundle', '2023.11'), + ('h5py', '3.11.0'), +] + +use_pip = True +sanity_pip_check = True +download_dep_fail = True + +sanity_check_paths = { + 'files': ['bin/biom'], + 'dirs': ['lib'], +} + +options = {'modulename': 'biom'} + +moduleclass = 'bio' From 60cd0282b2f94e4cb24bdf4f4a1f1b8fede23bb5 Mon Sep 17 00:00:00 2001 From: Pavel Tomanek <99190809+pavelToman@users.noreply.github.com> Date: Mon, 1 Jul 2024 10:18:53 +0200 Subject: [PATCH 28/37] Update easybuild/easyconfigs/o/orjson/orjson-3.9.15-GCCcore-12.3.0.eb MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Bob Dröge --- easybuild/easyconfigs/o/orjson/orjson-3.9.15-GCCcore-12.3.0.eb | 1 + 1 file changed, 1 insertion(+) diff --git a/easybuild/easyconfigs/o/orjson/orjson-3.9.15-GCCcore-12.3.0.eb b/easybuild/easyconfigs/o/orjson/orjson-3.9.15-GCCcore-12.3.0.eb index 14c64e5a008..ab3a36eed7c 100644 --- a/easybuild/easyconfigs/o/orjson/orjson-3.9.15-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/o/orjson/orjson-3.9.15-GCCcore-12.3.0.eb @@ -9,6 +9,7 @@ description = """Fast, correct Python JSON library supporting dataclasses, datet toolchain = {'name': 'GCCcore', 'version': '12.3.0'} builddependencies = [ + ('binutils', '2.40'), ('maturin', '1.4.0', '-Rust-1.75.0'), ] dependencies = [ From f11b68170e8462c08c14b14896ed1224588c839c Mon Sep 17 00:00:00 2001 From: Victor Enrique Goitea Date: Mon, 1 Jul 2024 15:29:44 +0200 Subject: [PATCH 29/37] create Qualimap-2.3-foss-2022b.eb --- easybuild/easyconfigs/q/Qualimap/Qualimap-2.3-foss-2022b.eb | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 easybuild/easyconfigs/q/Qualimap/Qualimap-2.3-foss-2022b.eb diff --git a/easybuild/easyconfigs/q/Qualimap/Qualimap-2.3-foss-2022b.eb b/easybuild/easyconfigs/q/Qualimap/Qualimap-2.3-foss-2022b.eb new file mode 100644 index 00000000000..e69de29bb2d From d68b62bc098990285f17c4c8c517a9f72c77fb89 Mon Sep 17 00:00:00 2001 From: Victor Enrique Goitea <43407659+VictorGoitea@users.noreply.github.com> Date: Mon, 1 Jul 2024 15:33:54 +0200 Subject: [PATCH 30/37] Update and rename Qualimap-2.3-foss-2022b.eb to Qualimap-2.3-foss-2022b-R-4.2.2.eb --- .../Qualimap-2.3-foss-2022b-R-4.2.2.eb | 33 +++++++++++++++++++ .../q/Qualimap/Qualimap-2.3-foss-2022b.eb | 0 2 files changed, 33 insertions(+) create mode 100644 easybuild/easyconfigs/q/Qualimap/Qualimap-2.3-foss-2022b-R-4.2.2.eb delete mode 100644 easybuild/easyconfigs/q/Qualimap/Qualimap-2.3-foss-2022b.eb diff --git a/easybuild/easyconfigs/q/Qualimap/Qualimap-2.3-foss-2022b-R-4.2.2.eb b/easybuild/easyconfigs/q/Qualimap/Qualimap-2.3-foss-2022b-R-4.2.2.eb new file mode 100644 index 00000000000..487e169ee4b --- /dev/null +++ b/easybuild/easyconfigs/q/Qualimap/Qualimap-2.3-foss-2022b-R-4.2.2.eb @@ -0,0 +1,33 @@ +easyblock = 'Tarball' + +name = 'Qualimap' +version = '2.3' +versionsuffix = '-R-%(rver)s' + +homepage = 'http://qualimap.bioinfo.cipf.es/' +description = """Qualimap 2 is a platform-independent application written in Java and R that provides both + a Graphical User Inteface (GUI) and a command-line interface to facilitate the quality control of + alignment sequencing data and its derivatives like feature counts.""" + +toolchain = {'name': 'foss', 'version': '2022b'} + +source_urls = ['https://bitbucket.org/kokonech/qualimap/downloads/'] +sources = ['qualimap_v%(version)s.zip'] +checksums = ['2a04dd864b712da30923cce3bc8dfc6ea59612118e8b0ff1a246fe43b8d34c40'] + +dependencies = [ + ('Java', '17', '', SYSTEM), + ('R', '4.2.2'), + ('R-bundle-Bioconductor', '3.16', versionsuffix), +] + +sanity_check_paths = { + 'files': ['qualimap'], + 'dirs': [], +} + +sanity_check_commands = ["qualimap --help"] + +modextrapaths = {'PATH': ''} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/q/Qualimap/Qualimap-2.3-foss-2022b.eb b/easybuild/easyconfigs/q/Qualimap/Qualimap-2.3-foss-2022b.eb deleted file mode 100644 index e69de29bb2d..00000000000 From 5fc7093cee481cfc766ea9a5b606ecb5f5fd16c6 Mon Sep 17 00:00:00 2001 From: Victor Enrique Goitea <43407659+VictorGoitea@users.noreply.github.com> Date: Mon, 1 Jul 2024 17:21:36 +0200 Subject: [PATCH 31/37] Downgrade Java to v11 --- .../easyconfigs/q/Qualimap/Qualimap-2.3-foss-2022b-R-4.2.2.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/q/Qualimap/Qualimap-2.3-foss-2022b-R-4.2.2.eb b/easybuild/easyconfigs/q/Qualimap/Qualimap-2.3-foss-2022b-R-4.2.2.eb index 487e169ee4b..c6a3e40d231 100644 --- a/easybuild/easyconfigs/q/Qualimap/Qualimap-2.3-foss-2022b-R-4.2.2.eb +++ b/easybuild/easyconfigs/q/Qualimap/Qualimap-2.3-foss-2022b-R-4.2.2.eb @@ -16,7 +16,7 @@ sources = ['qualimap_v%(version)s.zip'] checksums = ['2a04dd864b712da30923cce3bc8dfc6ea59612118e8b0ff1a246fe43b8d34c40'] dependencies = [ - ('Java', '17', '', SYSTEM), + ('Java', '11', '', SYSTEM), ('R', '4.2.2'), ('R-bundle-Bioconductor', '3.16', versionsuffix), ] From bc6e08f89759b8b70166de5bfcb5056b9db8ec90 Mon Sep 17 00:00:00 2001 From: Pavel Tomanek <99190809+pavelToman@users.noreply.github.com> Date: Tue, 2 Jul 2024 10:05:42 +0200 Subject: [PATCH 32/37] Update easybuild/easyconfigs/o/orjson/orjson-3.9.15-GCCcore-12.3.0.eb moduleclass MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Bob Dröge --- easybuild/easyconfigs/o/orjson/orjson-3.9.15-GCCcore-12.3.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/o/orjson/orjson-3.9.15-GCCcore-12.3.0.eb b/easybuild/easyconfigs/o/orjson/orjson-3.9.15-GCCcore-12.3.0.eb index ab3a36eed7c..410c8131df9 100644 --- a/easybuild/easyconfigs/o/orjson/orjson-3.9.15-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/o/orjson/orjson-3.9.15-GCCcore-12.3.0.eb @@ -35,4 +35,4 @@ exts_list = [ sanity_pip_check = True -moduleclass = 'math' +moduleclass = 'lib' From 0b084b587011acc88402de8d1252ad16d974a271 Mon Sep 17 00:00:00 2001 From: WilleBell Date: Tue, 2 Jul 2024 11:22:48 +0200 Subject: [PATCH 33/37] adding easyconfigs: SHAP-0.43.0-foss-2023a.eb --- .../s/SHAP/SHAP-0.43.0-foss-2023a.eb | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 easybuild/easyconfigs/s/SHAP/SHAP-0.43.0-foss-2023a.eb diff --git a/easybuild/easyconfigs/s/SHAP/SHAP-0.43.0-foss-2023a.eb b/easybuild/easyconfigs/s/SHAP/SHAP-0.43.0-foss-2023a.eb new file mode 100644 index 00000000000..6be374eb213 --- /dev/null +++ b/easybuild/easyconfigs/s/SHAP/SHAP-0.43.0-foss-2023a.eb @@ -0,0 +1,37 @@ +easyblock = 'PythonBundle' + +name = 'SHAP' +version = '0.43.0' + +homepage = "https://github.com/shap/shap" +description = """SHAP (SHapley Additive exPlanations) is a game theoretic approach to explain the output of any + machine learning model. It connects optimal credit allocation with local explanations using the classic Shapley + values from game theory and their related extensions.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('scikit-learn', '1.3.1'), + ('tqdm', '4.66.1'), + ('numba', '0.58.1'), +] + +sanity_pip_check = True +use_pip = True + +exts_list = [ + ('cloudpickle', '3.0.0', { + 'checksums': ['996d9a482c6fb4f33c1a35335cf8afd065d2a56e973270364840712d9131a882'], + }), + ('slicer', '0.0.7', { + 'checksums': ['f5d5f7b45f98d155b9c0ba6554fa9770c6b26d5793a3e77a1030fb56910ebeec'], + }), + (name, version, { + 'sources': ['%(namelower)s-%(version)s.tar.gz'], + 'checksums': ['1eabe01444a24e181ef6a7c9593b4d7c7143eefaeb1fa4d97bd5d9fdc96c4c1e'], + }), +] + +moduleclass = 'data' From fcd8a3b5e8bd170a402212501f885c5c7aa17c90 Mon Sep 17 00:00:00 2001 From: "Tanmoy Chakraborty, Ph.D" <56235576+tanmoy1989@users.noreply.github.com> Date: Tue, 2 Jul 2024 12:20:33 +0100 Subject: [PATCH 34/37] Update easybuild/easyconfigs/m/meshio/meshio-5.3.5-foss-2023b.eb MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Bob Dröge --- easybuild/easyconfigs/m/meshio/meshio-5.3.5-foss-2023b.eb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/m/meshio/meshio-5.3.5-foss-2023b.eb b/easybuild/easyconfigs/m/meshio/meshio-5.3.5-foss-2023b.eb index c8cd7d931df..d4b1a912aa3 100644 --- a/easybuild/easyconfigs/m/meshio/meshio-5.3.5-foss-2023b.eb +++ b/easybuild/easyconfigs/m/meshio/meshio-5.3.5-foss-2023b.eb @@ -9,7 +9,9 @@ description = "meshio is a tool for reading/writing various mesh formats represe toolchain = {'name': 'foss', 'version': '2023b'} dependencies = [ - ('Python', '3.11.5'), # includes numpy + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), # includes rich + ('SciPy-bundle', '2023.11'), # includes numpy ('h5py', '3.11.0'), ('VTK', '9.3.0'), ] From 9eccebd3978dcf8a1a3aeca86ae648b717bc69a4 Mon Sep 17 00:00:00 2001 From: WilleBell Date: Tue, 2 Jul 2024 13:47:08 +0200 Subject: [PATCH 35/37] adding easyconfigs: packmol-20.14.4-GCC-12.3.0.eb --- .../p/packmol/packmol-20.14.4-GCC-12.3.0.eb | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 easybuild/easyconfigs/p/packmol/packmol-20.14.4-GCC-12.3.0.eb diff --git a/easybuild/easyconfigs/p/packmol/packmol-20.14.4-GCC-12.3.0.eb b/easybuild/easyconfigs/p/packmol/packmol-20.14.4-GCC-12.3.0.eb new file mode 100644 index 00000000000..4f5dd6ed6b8 --- /dev/null +++ b/easybuild/easyconfigs/p/packmol/packmol-20.14.4-GCC-12.3.0.eb @@ -0,0 +1,24 @@ +easyblock = 'MakeCp' + +name = 'packmol' +version = '20.14.4' + +homepage = 'http://m3g.iqm.unicamp.br/packmol' +description = "Packing Optimization for Molecular Dynamics Simulations" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://github.com/m3g/packmol/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['45ec33798d5f10c0aac6046675531a0e98567890c1a76f753450c5fc6b1aaa2f'] + +buildopts = 'FORTRAN="$F90"' + +files_to_copy = [(['packmol'], 'bin'), 'AUTHORS', 'LICENSE'] + +sanity_check_paths = { + 'files': ['bin/packmol', 'AUTHORS', 'LICENSE'], + 'dirs': [], +} + +moduleclass = 'chem' From 5557f5d43b3ac6799314a34970321f1f6f3a7ca9 Mon Sep 17 00:00:00 2001 From: James Carpenter Date: Wed, 3 Jul 2024 12:47:04 +0100 Subject: [PATCH 36/37] Set `SATSUMA2_PATH` so Satsuma2 can locate executables --- .../easyconfigs/s/Satsuma2/Satsuma2-20220304-GCC-11.3.0.eb | 6 ++++++ 1 file changed, 6 insertions(+) mode change 100644 => 100755 easybuild/easyconfigs/s/Satsuma2/Satsuma2-20220304-GCC-11.3.0.eb diff --git a/easybuild/easyconfigs/s/Satsuma2/Satsuma2-20220304-GCC-11.3.0.eb b/easybuild/easyconfigs/s/Satsuma2/Satsuma2-20220304-GCC-11.3.0.eb old mode 100644 new mode 100755 index e709378f6ea..304dbf50669 --- a/easybuild/easyconfigs/s/Satsuma2/Satsuma2-20220304-GCC-11.3.0.eb +++ b/easybuild/easyconfigs/s/Satsuma2/Satsuma2-20220304-GCC-11.3.0.eb @@ -21,6 +21,12 @@ checksums = [ builddependencies = [('CMake', '3.23.1')] +# Define SATSUMA2_PATH as per: +# https://github.com/bioinfologics/satsuma2/blob/37c5f386819614cd3ce96016b423ddc4df1d86ec/README.md#running-satsuma2 +modextravars = { + 'SATSUMA2_PATH': '%(installdir)s/bin', +} + sanity_check_paths = { 'files': ['bin/ChromosomePaint', 'bin/MatchDump', 'bin/SatsumaSynteny2'], 'dirs': [], From f5653db066a10d36cb7abf524b2400e360285d52 Mon Sep 17 00:00:00 2001 From: James Carpenter Date: Wed, 3 Jul 2024 13:04:56 +0100 Subject: [PATCH 37/37] Fix file permissions --- easybuild/easyconfigs/s/Satsuma2/Satsuma2-20220304-GCC-11.3.0.eb | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100755 => 100644 easybuild/easyconfigs/s/Satsuma2/Satsuma2-20220304-GCC-11.3.0.eb diff --git a/easybuild/easyconfigs/s/Satsuma2/Satsuma2-20220304-GCC-11.3.0.eb b/easybuild/easyconfigs/s/Satsuma2/Satsuma2-20220304-GCC-11.3.0.eb old mode 100755 new mode 100644