From 954060586f3caba6ddd538afd17cf1f95337cec6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Kr=C3=A1l?= Date: Wed, 11 Sep 2024 08:57:26 +0200 Subject: [PATCH 1/5] adding easyconfigs: NanoStat-1.6.0-foss-2023a.eb, nanoget-1.19.3-foss-2023a.eb, nanomath-1.4.0-foss-2023a.eb --- .../n/NanoStat/NanoStat-1.6.0-foss-2023a.eb | 32 ++++++++++++++++++ .../n/nanoget/nanoget-1.19.3-foss-2023a.eb | 30 +++++++++++++++++ .../n/nanomath/nanomath-1.4.0-foss-2023a.eb | 33 +++++++++++++++++++ 3 files changed, 95 insertions(+) create mode 100644 easybuild/easyconfigs/n/NanoStat/NanoStat-1.6.0-foss-2023a.eb create mode 100644 easybuild/easyconfigs/n/nanoget/nanoget-1.19.3-foss-2023a.eb create mode 100644 easybuild/easyconfigs/n/nanomath/nanomath-1.4.0-foss-2023a.eb diff --git a/easybuild/easyconfigs/n/NanoStat/NanoStat-1.6.0-foss-2023a.eb b/easybuild/easyconfigs/n/NanoStat/NanoStat-1.6.0-foss-2023a.eb new file mode 100644 index 00000000000..8f0fa5a053c --- /dev/null +++ b/easybuild/easyconfigs/n/NanoStat/NanoStat-1.6.0-foss-2023a.eb @@ -0,0 +1,32 @@ +easyblock = 'PythonPackage' + +name = 'NanoStat' +version = '1.6.0' + +homepage = 'https://github.com/wdecoster/nanostat' +description = """Calculate various statistics from a long read sequencing dataset in fastq, + bam or albacore sequencing summary format.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['e45fa8d1ab49bdaed17596c26c0af148b44e4af46238391a8bb7a1b4cc940079'] + +dependencies = [ + ('Python', '3.11.3'), + ('nanoget', '1.19.3'), + ('nanomath', '1.4.0'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/NanoStat'], + 'dirs': [], +} + +sanity_check_commands = ["NanoStat --help"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/n/nanoget/nanoget-1.19.3-foss-2023a.eb b/easybuild/easyconfigs/n/nanoget/nanoget-1.19.3-foss-2023a.eb new file mode 100644 index 00000000000..2aeb2ceaf26 --- /dev/null +++ b/easybuild/easyconfigs/n/nanoget/nanoget-1.19.3-foss-2023a.eb @@ -0,0 +1,30 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 +# Update: Petr Král (INUITS) + +easyblock = 'PythonPackage' + +name = 'nanoget' +version = '1.19.3' + +homepage = 'https://github.com/wdecoster/nanoget' +description = "Functions to extract information from Oxford Nanopore sequencing data and alignments" + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['da981810edb1cbe42cbbfbe5fcf753f29bf5555204cd51256b28a284a036a71b'] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Biopython', '1.83'), + ('Pysam', '0.22.0'), + ('nanomath', '1.4.0'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/n/nanomath/nanomath-1.4.0-foss-2023a.eb b/easybuild/easyconfigs/n/nanomath/nanomath-1.4.0-foss-2023a.eb new file mode 100644 index 00000000000..2a2f56955cc --- /dev/null +++ b/easybuild/easyconfigs/n/nanomath/nanomath-1.4.0-foss-2023a.eb @@ -0,0 +1,33 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 +# Update: Petr Král (INUITS) + +easyblock = 'PythonBundle' + +name = 'nanomath' +version = '1.4.0' + +homepage = 'https://github.com/wdecoster/nanomath' +description = "A few simple math functions for other Oxford Nanopore processing scripts" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('Python-Deprecated', '1.1.0', { + 'modulename': 'deprecated', + 'checksums': ['a242b3c1721f97912330b12cd5529abfa5b3876084a6c60a2c683a87d4b0dd6f'], + }), + (name, version, { + 'checksums': ['ed7a38fbb156d9a68a95c2570fe3c2035321d0a3e234580496750afca4927ced'], + }), +] + +moduleclass = 'math' From f0f1e6b727136bd358d2fe0f17a940d777f67ba8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Kr=C3=A1l?= Date: Wed, 11 Sep 2024 09:51:04 +0200 Subject: [PATCH 2/5] adding easyconfigs: nanoQC-0.9.4-foss-2023a.eb --- .../n/nanoQC/nanoQC-0.9.4-foss-2023a.eb | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 easybuild/easyconfigs/n/nanoQC/nanoQC-0.9.4-foss-2023a.eb diff --git a/easybuild/easyconfigs/n/nanoQC/nanoQC-0.9.4-foss-2023a.eb b/easybuild/easyconfigs/n/nanoQC/nanoQC-0.9.4-foss-2023a.eb new file mode 100644 index 00000000000..d0efa23525d --- /dev/null +++ b/easybuild/easyconfigs/n/nanoQC/nanoQC-0.9.4-foss-2023a.eb @@ -0,0 +1,31 @@ +easyblock = 'PythonPackage' + +name = 'nanoQC' +version = '0.9.4' + +homepage = 'https://github.com/wdecoster/nanoQC' +description = """Quality control tools for long read sequencing + data aiming to replicate some of the plots made by fastQC.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['05685656138cbaf099b18831d1ceeaca93faf3399881cc2efda44c04d3b316e3'] + +dependencies = [ + ('Python', '3.11.3'), + ('Biopython', '1.83'), + ('SciPy-bundle', '2023.07'), + ('bokeh', '3.2.2'), +] + +download_dep_fail = True +use_pip = True + +options = {'modulename': 'nanoQC'} + +sanity_check_commands = ["nanoQC --help"] + +sanity_pip_check = True + +moduleclass = 'tools' From e88c4378baf599d49732fa5019f792bf7f8b5595 Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Thu, 12 Sep 2024 16:48:24 +0200 Subject: [PATCH 3/5] adding easyconfigs: GObject-Introspection-1.80.1-GCCcore-13.3.0.eb and patches: GObject-Introspection-1.80.1_install-GLib-GIR-files.patch --- ...ect-Introspection-1.80.1-GCCcore-13.3.0.eb | 51 ++++++++++++++++++ ...ection-1.80.1_install-GLib-GIR-files.patch | 52 +++++++++++++++++++ 2 files changed, 103 insertions(+) create mode 100644 easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1-GCCcore-13.3.0.eb create mode 100644 easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1_install-GLib-GIR-files.patch diff --git a/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..4f1620c0db9 --- /dev/null +++ b/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1-GCCcore-13.3.0.eb @@ -0,0 +1,51 @@ +easyblock = 'MesonNinja' + +name = 'GObject-Introspection' +version = '1.80.1' + +homepage = 'https://gi.readthedocs.io/en/latest/' +description = """GObject introspection is a middleware layer between C libraries + (using GObject) and language bindings. The C library can be scanned at + compile time and generate a metadata file, in addition to the actual + native C library. Then at runtime, language bindings can read this + metadata and automatically provide bindings to call into the C library.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [FTPGNOME_SOURCE] +sources = [SOURCELOWER_TAR_XZ] +patches = ['GObject-Introspection-1.80.1_install-GLib-GIR-files.patch'] +checksums = [ + {'gobject-introspection-1.80.1.tar.xz': 'a1df7c424e15bda1ab639c00e9051b9adf5cea1a9e512f8a603b53cd199bc6d8'}, + {'GObject-Introspection-1.80.1_install-GLib-GIR-files.patch': + '2920b94cf33a41b424de2fb3a0f04b7a1076fd8f47417fa82cf4703ff1ba95fa'}, +] + +builddependencies = [ + ('binutils', '2.42'), + ('pkgconf', '2.2.0'), + ('CMake', '3.29.3'), + ('Meson', '1.4.0'), + ('Ninja', '1.12.1'), + ('Python', '3.12.3'), + ('Bison', '3.8.2'), + ('cairo', '1.18.0'), + ('flex', '2.6.4'), +] + +dependencies = [ + ('GLib', '2.80.4'), + ('libffi', '3.4.5'), + ('util-linux', '2.40'), +] + +preconfigopts = "env GI_SCANNER_DISABLE_CACHE=true " +configopts = "-Dcairo=enabled" + +sanity_check_paths = { + 'files': ['bin/g-ir-%s' % x for x in ['annotation-tool', 'compiler', 'generate', 'scanner']] + + ['lib/libgirepository-1.0.' + SHLIB_EXT], + 'dirs': ['include', 'share'] +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1_install-GLib-GIR-files.patch b/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1_install-GLib-GIR-files.patch new file mode 100644 index 00000000000..349eecf7c0b --- /dev/null +++ b/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1_install-GLib-GIR-files.patch @@ -0,0 +1,52 @@ +This reverts a commit from upstream +> build: Do not install generated GLib GIR files +> +> GLib 2.79 ships its own introspection data. + +However GObject-Introspection requires (optionally) Cairo, which requires GLib +which requires GLib-Introspection for generating the introspection data. + +So there is a cyclib dependency, see https://gitlab.gnome.org/GNOME/gobject-introspection/-/issues/517 + +Author: Alexander Grund (TU Dresden) + +diff --git a/gir/meson.build b/gir/meson.build +index 3a016831..312aa886 100644 +--- a/gir/meson.build ++++ b/gir/meson.build +@@ -241,6 +241,8 @@ glib_gir = custom_target('gir-glib', + output: 'GLib-2.0.gir', + depends: [gir_giscanner_pymod, glib_gir_dep, gdump], + depend_files: gir_giscanner_built_files, ++ install: true, ++ install_dir: girdir, + env: g_ir_scanner_env, + command: glib_command + [ + '--cflags-begin'] + glib_includes + extra_giscanner_cflags + [ +@@ -308,6 +310,8 @@ gobject_gir = custom_target('gir-gobject', + output: 'GObject-2.0.gir', + depends: [glib_gir, gir_giscanner_pymod, gobject_gir_dep, gdump], + depend_files: gir_giscanner_built_files, ++ install: true, ++ install_dir: girdir, + env: g_ir_scanner_env, + command: gobject_command + [ + '--include-uninstalled=' + glib_gir.full_path(), +@@ -360,6 +364,8 @@ uninstalled_gir_files += custom_target('gir-gmodule', + output: 'GModule-2.0.gir', + depends: [glib_gir, gir_giscanner_pymod, gmodule_gir_dep, gdump], + depend_files: gir_giscanner_built_files, ++ install: true, ++ install_dir: girdir, + env: g_ir_scanner_env, + command: gmodule_command + [ + '--include-uninstalled=' + glib_gir.full_path(), +@@ -455,6 +461,8 @@ gio_gir = custom_target('gir-gio', + output: 'Gio-2.0.gir', + depends: [gobject_gir, gir_giscanner_pymod, gio_gir_dep, gdump], + depend_files: gir_giscanner_built_files, ++ install: true, ++ install_dir: girdir, + env: g_ir_scanner_env, + command: gio_command + [ + '--include-uninstalled=' + gobject_gir.full_path(), From 545807433e6631ba3fe3c12c85867bdf064ee83c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Kr=C3=A1l?= Date: Thu, 12 Sep 2024 18:41:12 +0200 Subject: [PATCH 4/5] change moduleclass --- easybuild/easyconfigs/n/nanoQC/nanoQC-0.9.4-foss-2023a.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/n/nanoQC/nanoQC-0.9.4-foss-2023a.eb b/easybuild/easyconfigs/n/nanoQC/nanoQC-0.9.4-foss-2023a.eb index d0efa23525d..264a822a3ca 100644 --- a/easybuild/easyconfigs/n/nanoQC/nanoQC-0.9.4-foss-2023a.eb +++ b/easybuild/easyconfigs/n/nanoQC/nanoQC-0.9.4-foss-2023a.eb @@ -28,4 +28,4 @@ sanity_check_commands = ["nanoQC --help"] sanity_pip_check = True -moduleclass = 'tools' +moduleclass = 'bio' From f14cfd24a3040e012e3a95f1038f368a84ca5d78 Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Fri, 13 Sep 2024 09:16:34 +0200 Subject: [PATCH 5/5] Fix typo in patch --- .../GObject-Introspection-1.80.1-GCCcore-13.3.0.eb | 2 +- .../GObject-Introspection-1.80.1_install-GLib-GIR-files.patch | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1-GCCcore-13.3.0.eb index 4f1620c0db9..83ab6981ae3 100644 --- a/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1-GCCcore-13.3.0.eb +++ b/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1-GCCcore-13.3.0.eb @@ -18,7 +18,7 @@ patches = ['GObject-Introspection-1.80.1_install-GLib-GIR-files.patch'] checksums = [ {'gobject-introspection-1.80.1.tar.xz': 'a1df7c424e15bda1ab639c00e9051b9adf5cea1a9e512f8a603b53cd199bc6d8'}, {'GObject-Introspection-1.80.1_install-GLib-GIR-files.patch': - '2920b94cf33a41b424de2fb3a0f04b7a1076fd8f47417fa82cf4703ff1ba95fa'}, + 'c1909f1b7fd30784ae789ac0b5e45e0ca3dd2456890b864efa86a2f8c2e563aa'}, ] builddependencies = [ diff --git a/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1_install-GLib-GIR-files.patch b/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1_install-GLib-GIR-files.patch index 349eecf7c0b..5c09ded1cb2 100644 --- a/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1_install-GLib-GIR-files.patch +++ b/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1_install-GLib-GIR-files.patch @@ -6,7 +6,7 @@ This reverts a commit from upstream However GObject-Introspection requires (optionally) Cairo, which requires GLib which requires GLib-Introspection for generating the introspection data. -So there is a cyclib dependency, see https://gitlab.gnome.org/GNOME/gobject-introspection/-/issues/517 +So there is a cyclic dependency, see https://gitlab.gnome.org/GNOME/gobject-introspection/-/issues/517 Author: Alexander Grund (TU Dresden)