From 624d634b4ba3565c4750ea49847e6ef54462a529 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Thu, 20 Feb 2025 02:54:30 +0100 Subject: [PATCH 1/3] replace make_module_req_guess with module_load_environment in repeatmodeler easyblock --- easybuild/easyblocks/r/repeatmodeler.py | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/easybuild/easyblocks/r/repeatmodeler.py b/easybuild/easyblocks/r/repeatmodeler.py index 76fddcbb51..ffc0a4bd84 100644 --- a/easybuild/easyblocks/r/repeatmodeler.py +++ b/easybuild/easyblocks/r/repeatmodeler.py @@ -31,7 +31,7 @@ import os from easybuild.easyblocks.generic.tarball import Tarball -from easybuild.easyblocks.perl import get_site_suffix +from easybuild.easyblocks.perl import get_major_perl_version, get_site_suffix from easybuild.tools.build_log import EasyBuildError from easybuild.tools.filetools import change_dir, patch_perl_script_autoflush from easybuild.tools.modules import get_software_root @@ -59,6 +59,13 @@ def get_dep_path(dep_name, rel_path, log, optional): class EB_RepeatModeler(Tarball): """Support for building/installing RepeatModeler.""" + def __init__(self, *args, **kwargs): + """Easyblock constructor.""" + super(EB_RepeatModeler, self).__init__(*args, **kwargs) + + # custom path-like environment variables for RepeatModelerConfig + self.module_load_environment.PATH = [''] + def install_step(self): """Custom install procedure for RepeatModeler.""" super(EB_RepeatModeler, self).install_step() @@ -182,13 +189,7 @@ def sanity_check_step(self): super(EB_RepeatModeler, self).sanity_check_step(custom_commands=custom_commands, custom_paths=custom_paths) - def make_module_req_guess(self): - """Custom guesses for path-like environment variables for RepeatModelerConfig.""" - guesses = super(EB_RepeatModeler, self).make_module_req_guess() - - guesses.update({ - 'PATH': [''], - 'PERL5LIB': [get_site_suffix('sitelib')], - }) - - return guesses + def make_module_step(self, *args, **kwargs): + """Additional path-like environment variables that depend on installation files""" + perl_lib_var = f"PERL{get_major_perl_version()}LIB" + setattr(self.module_load_environment, perl_lib_var, [get_site_suffix('sitelib')]) From c295c163ff942f3197852d4dc66a3d9ee38d0cb0 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Thu, 20 Feb 2025 02:54:38 +0100 Subject: [PATCH 2/3] replace make_module_req_guess with module_load_environment in repeatmasker easyblock --- easybuild/easyblocks/r/repeatmasker.py | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/easybuild/easyblocks/r/repeatmasker.py b/easybuild/easyblocks/r/repeatmasker.py index ba30642505..98505d1273 100644 --- a/easybuild/easyblocks/r/repeatmasker.py +++ b/easybuild/easyblocks/r/repeatmasker.py @@ -38,6 +38,13 @@ class EB_RepeatMasker(Tarball): """Support for building/installing RepeatMasker.""" + def __init__(self, *args, **kwargs): + """Easyblock constructor.""" + super(EB_RepeatMasker, self).__init__(*args, **kwargs) + + # custom path-like environment variables for RepeatMaskerConfig + self.module_load_environment.PATH = [''] + def install_step(self): """Custom install procedure for RepeatMasker.""" super(EB_RepeatMasker, self).install_step() @@ -124,11 +131,3 @@ def sanity_check_step(self): custom_commands = ['RepeatMasker'] super(EB_RepeatMasker, self).sanity_check_step(custom_paths=custom_paths, custom_commands=custom_commands) - - def make_module_req_guess(self): - """Custom guesses for path-like environment variables for RepeatMaskerConfig.""" - guesses = super(EB_RepeatMasker, self).make_module_req_guess() - - guesses['PATH'] = [''] - - return guesses From aeb19eceee225b35629b4d7b2b6262d7b2992bfd Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Thu, 20 Feb 2025 11:27:39 +0100 Subject: [PATCH 3/3] call parent make module step in RepeatModeler easyblock --- easybuild/easyblocks/r/repeatmodeler.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/easybuild/easyblocks/r/repeatmodeler.py b/easybuild/easyblocks/r/repeatmodeler.py index ffc0a4bd84..24cb40433f 100644 --- a/easybuild/easyblocks/r/repeatmodeler.py +++ b/easybuild/easyblocks/r/repeatmodeler.py @@ -193,3 +193,5 @@ def make_module_step(self, *args, **kwargs): """Additional path-like environment variables that depend on installation files""" perl_lib_var = f"PERL{get_major_perl_version()}LIB" setattr(self.module_load_environment, perl_lib_var, [get_site_suffix('sitelib')]) + + return super().make_module_step(*args, **kwargs)