import UBI environment-modules-5.6.1-2.el10

This commit is contained in:
AlmaLinux RelEng Bot 2026-05-19 18:33:05 -04:00
parent 6e21de7d60
commit 0ada5e614b
5 changed files with 53 additions and 194 deletions

2
.gitignore vendored
View File

@ -1 +1 @@
modules-5.3.1.tar.bz2
modules-5.6.1.tar.bz2

View File

@ -1,26 +0,0 @@
From 8c757d59c068d7c41e78f59f575eca9d58785a36 Mon Sep 17 00:00:00 2001
From: Xavier Delaruelle <xavier.delaruelle@cea.fr>
Date: Mon, 28 Oct 2024 06:16:20 +0100
Subject: [PATCH] ts: fix 70/410 when no stdin and re chars in path
Fixes #552
Cherry-picked-by: Lukáš Zaoral <lzaoral@redhat.com>
Upstream-commit: 8c757d59c068d7c41e78f59f575eca9d58785a36
---
testsuite/modules.70-maint/410-timer.exp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/testsuite/modules.70-maint/410-timer.exp b/testsuite/modules.70-maint/410-timer.exp
index fe1dd0ffb..14ba2d2b1 100644
--- a/testsuite/modules.70-maint/410-timer.exp
+++ b/testsuite/modules.70-maint/410-timer.exp
@@ -77,7 +77,7 @@ testouterr_cmd_re sh {list --timer --silent} OK $tserr
# debug
set tserr "($timer_msgs .* \\\(\\d+.\\d+ ms\\\))*
-[msg_load foo/1.0 "Evaluate modulefile: '$mpre/foo/1.0' as 'foo/1.0'"]
+[escre [msg_load foo/1.0 "Evaluate modulefile: '$mp/foo/1.0' as 'foo/1.0'"]]
($timer_msgs .* \\\(\\d+.\\d+ ms\\\))*

View File

@ -1,131 +0,0 @@
From a124745566804f8987a2c68944d395be10591f8c Mon Sep 17 00:00:00 2001
From: Xavier Delaruelle <xavier.delaruelle@cea.fr>
Date: Tue, 15 Oct 2024 07:52:44 +0200
Subject: [PATCH] ts: adapt 50/400 tests when install manpath is default
Fix source-sh tests in 50/400 test case to adapt expected value set to
MANPATH variable when the installed MANPATH value set at configure step
is included in the default MANPATH value set for test.
Fixes #549
---
testsuite/modules.50-cmds/400-source-sh.exp | 46 ++++++++++++++-------
1 file changed, 30 insertions(+), 16 deletions(-)
diff --git a/testsuite/modules.50-cmds/400-source-sh.exp b/testsuite/modules.50-cmds/400-source-sh.exp
index 19a23fb81..753975c2a 100644
--- a/testsuite/modules.50-cmds/400-source-sh.exp
+++ b/testsuite/modules.50-cmds/400-source-sh.exp
@@ -1612,12 +1612,26 @@ if {$install_setmanpath eq {y}} {
} else {
set mandirenc $install_mandir
}
- if {$install_appendmanpath eq {y}} {
- set updatedmanpath $default_manpath:$install_mandir
- set lmsourceshpath "append-path MANPATH $mandirenc|"
- } else {
- set updatedmanpath $install_mandir:$default_manpath
- set lmsourceshpath "prepend-path MANPATH $mandirenc|"
+ set updated_manpath_list [split $default_manpath :]
+ set is_default_manpath_updated 0
+ foreach install_manpath_elt [split $install_mandir :] {
+ if {$install_manpath_elt ni $updated_manpath_list} {
+ if {$install_appendmanpath eq {y}} {
+ lappend updated_manpath_list $install_manpath_elt
+ } else {
+ set updated_manpath_list [linsert $updated_manpath_list 0 $install_manpath_elt]
+ }
+ set is_default_manpath_updated 1
+ }
+ }
+ set updatedmanpath [join $updated_manpath_list :]
+
+ if {$is_default_manpath_updated} {
+ if {$install_appendmanpath eq {y}} {
+ set lmsourceshpath "append-path MANPATH $mandirenc|"
+ } else {
+ set lmsourceshpath "prepend-path MANPATH $mandirenc|"
+ }
}
}
# setup PATH without Modules bin location
@@ -1647,13 +1661,13 @@ if {$install_versioning eq {y}} {
lappend ans [list set MODULE_VERSION_STACK $install_version]
}
# MANPATH is set before PATH if the latter is appended and not the former
-if {$install_setmanpath eq {y} && $install_appendbinpath eq {y} && $install_appendmanpath eq {n}} {
+if {$install_setmanpath eq {y} && $install_appendbinpath eq {y} && $install_appendmanpath eq {n} && $is_default_manpath_updated} {
lappend ans [list set MANPATH $updatedmanpath]
}
if {$install_setbinpath eq {y}} {
lappend ans [list set PATH $updatedpath]
}
-if {$install_setmanpath eq {y} && ($install_appendbinpath eq {n} || $install_appendmanpath eq {y})} {
+if {$install_setmanpath eq {y} && ($install_appendbinpath eq {n} || $install_appendmanpath eq {y}) && $is_default_manpath_updated} {
lappend ans [list set MANPATH $updatedmanpath]
}
lappend ans [list set _LMFILES_ $mp/source-sh/1]
@@ -1703,7 +1717,7 @@ set extratserr {}
set tserr "-------------------------------------------------------------------
$mp/source-sh/1:\n\n"
set tserr_path {}
-if {$install_setmanpath eq {y}} {
+if {$install_setmanpath eq {y} && $is_default_manpath_updated} {
if {$install_appendmanpath eq {y}} {
append tserr_path "append-path\tMANPATH $mandirenc\n"
} else {
@@ -1754,13 +1768,13 @@ if {$install_versioning eq {y}} {
lappend ans [list set MODULE_VERSION_STACK $install_version]
}
# MANPATH is set before PATH if the latter is appended and not the former
-if {$install_setmanpath eq {y} && $install_appendbinpath eq {y} && $install_appendmanpath eq {n}} {
+if {$install_setmanpath eq {y} && $install_appendbinpath eq {y} && $install_appendmanpath eq {n} && $is_default_manpath_updated} {
lappend ans [list set MANPATH $updatedmanpath]
}
if {$install_setbinpath eq {y}} {
lappend ans [list set PATH $updatedpath]
}
-if {$install_setmanpath eq {y} && ($install_appendbinpath eq {n} || $install_appendmanpath eq {y})} {
+if {$install_setmanpath eq {y} && ($install_appendbinpath eq {n} || $install_appendmanpath eq {y}) && $is_default_manpath_updated} {
lappend ans [list set MANPATH $updatedmanpath]
}
lappend ans [list set _LMFILES_ $mp/source-sh/1]
@@ -1792,13 +1806,13 @@ if {$install_versioning eq {y}} {
lappend ans [list set MODULE_VERSION_STACK $install_version]
}
# MANPATH is set before PATH if the latter is appended and not the former
-if {$install_setmanpath eq {y} && $install_appendbinpath eq {y} && $install_appendmanpath eq {n}} {
+if {$install_setmanpath eq {y} && $install_appendbinpath eq {y} && $install_appendmanpath eq {n} && $is_default_manpath_updated} {
lappend ans [list set MANPATH $updatedmanpath]
}
if {$install_setbinpath eq {y}} {
lappend ans [list set PATH $updatedpath]
}
-if {$install_setmanpath eq {y} && ($install_appendbinpath eq {n} || $install_appendmanpath eq {y})} {
+if {$install_setmanpath eq {y} && ($install_appendbinpath eq {n} || $install_appendmanpath eq {y}) && $is_default_manpath_updated} {
lappend ans [list set MANPATH $updatedmanpath]
}
lappend ans [list set _LMFILES_ $modpath/setenv/1.0:$mp/source-sh/1]
@@ -1829,19 +1843,19 @@ setenv_var MODULES_COLLECTION_TARGET bar
if {$install_setbinpath eq {y}} {
setenv_var PATH $updatedpath
}
-if {$install_setmanpath eq {y}} {
+if {$install_setmanpath eq {y} && $is_default_manpath_updated} {
setenv_var MANPATH $updatedmanpath
}
setenv_var __MODULES_LMSOURCESH source-sh/1\&bash\ testsuite/example/sh-to-mod.sh\|${lmsourceshpath}setenv\ MODULES_COLLECTION_TARGET\ bar\|setenv\ testsuite\ yes
set ans [list]
# MANPATH is set before PATH if the latter is appended and not the former
-if {$install_setmanpath eq {y} && $install_appendbinpath eq {y} && $install_appendmanpath eq {n}} {
+if {$install_setmanpath eq {y} && $install_appendbinpath eq {y} && $install_appendmanpath eq {n} && $is_default_manpath_updated} {
lappend ans [list set MANPATH $default_manpath]
}
if {$install_setbinpath eq {y}} {
lappend ans [list set PATH $default_path]
}
-if {$install_setmanpath eq {y} && ($install_appendbinpath eq {n} || $install_appendmanpath eq {y})} {
+if {$install_setmanpath eq {y} && ($install_appendbinpath eq {n} || $install_appendmanpath eq {y}) && $is_default_manpath_updated} {
lappend ans [list set MANPATH $default_manpath]
}
lappend ans [list unset _LMFILES_]

View File

@ -1,28 +1,20 @@
%global macrosdir %(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || d=%{_sysconfdir}/rpm; echo $d)
%global vimdatadir %{_datadir}/vim/vimfiles
Name: environment-modules
Version: 5.3.1
Release: 8%{?dist}
Version: 5.6.1
Release: 2%{?dist}
Summary: Provides dynamic modification of a user's environment
License: GPL-2.0-or-later
URL: http://modules.sourceforge.net/
URL: https://envmodules.io
Source0: http://downloads.sourceforge.net/modules/modules-%{version}.tar.bz2
# fix source-sh test with non-default manpath (RHEL-62847)
# https://github.com/cea-hpc/modules/commit/a124745566804f8987a2c68944d395be10591f8c
Patch0: environment-modules-5.3.1-fix-source-sh-test.patch
# fix intermittent test failures (RHEL-62847)
# https://github.com/cea-hpc/modules/commit/8c757d59c068d7c41e78f59f575eca9d58785a36
Patch1: environment-modules-5.3.1-fix-intermittent-test-failures.patch
BuildRequires: tcl
BuildRequires: dejagnu
BuildRequires: make
BuildRequires: sed
BuildRequires: less
BuildRequires: util-linux-core
BuildRequires: hostname
BuildRequires: procps-ng
# specific requirements to build extension library
@ -31,7 +23,11 @@ BuildRequires: tcl-devel
Requires: tcl
Requires: sed
Requires: less
Requires: util-linux-core
BuildRequires: vim-filesystem
Requires: vim-filesystem
BuildRequires: emacs-nw
Requires: emacs-filesystem%{?_emacs_version: >= %{_emacs_version}}
Requires: procps-ng
Requires: man-db
Requires(post): coreutils
@ -40,8 +36,10 @@ Requires(postun): %{_sbindir}/update-alternatives
Provides: environment(modules)
Obsoletes: environment-modules-compat <= 4.8.99
%if 0%{?fedora}
# Tcl linter is useful for module lint command
Recommends: nagelfar
%endif
%description
The Environment Modules package provides for the dynamic modification of
@ -61,7 +59,7 @@ clean fashion. All popular shells are supported, including bash, ksh,
zsh, sh, csh, tcsh, as well as some scripting languages such as perl.
Modules are useful in managing different versions of applications.
Modules can also be bundled into metamodules that will load an entire
Modules can also be bundled into meta-modules that will load an entire
suite of different applications.
NOTE: You will need to get a new shell after installing this package to
@ -79,11 +77,12 @@ have access to the module alias.
--bindir=%{_datadir}/Modules/bin \
--libexecdir=%{_datadir}/Modules/libexec \
--mandir=%{_mandir} \
--vimdatadir=%{vimdatadir} \
--vimdatadir=%{vimfiles_root} \
--emacsdatadir=%{_emacs_sitelispdir}/%{name} \
--nagelfardatadir=%{_datadir}/Modules/nagelfar \
--with-bashcompletiondir=%{_datadir}/bash-completion/completions \
--with-fishcompletiondir=%{_datadir}/fish/vendor_completions.d \
--with-zshcompletiondir=%{_datadir}/zsh/site-functions \
--with-bashcompletiondir=%{bash_completions_dir} \
--with-fishcompletiondir=%{fish_completions_dir} \
--with-zshcompletiondir=%{zsh_completions_dir} \
--enable-multilib-support \
--disable-doc-install \
--enable-modulespath \
@ -93,6 +92,9 @@ have access to the module alias.
%make_build
# compile Elisp file
%{_emacs_bytecompile} share/emacs/lisp/modulefile-mode.el
%install
%make_install
@ -120,7 +122,10 @@ mv {doc/build/,}INSTALL.txt
mv {doc/build/,}changes.txt
# install the rpm config file
install -Dpm 644 contrib/rpm/macros.%{name} %{buildroot}/%{macrosdir}/macros.%{name}
install -Dpm 644 share/rpm/macros.%{name} %{buildroot}/%{macrosdir}/macros.%{name}
# install Emacs init file
install -Dpm 644 share/emacs/lisp/%{name}-init.el %{buildroot}/%{_emacs_sitestartdir}/%{name}-init.el
%check
@ -136,18 +141,18 @@ make test QUICKTEST=1
# Migration from version 3.x to 4
if [ "$(readlink /etc/alternatives/modules.sh)" = '%{_datadir}/Modules/init/modules.sh' ]; then
%{_sbindir}/update-alternatives --remove modules.sh %{_datadir}/Modules/init/modules.sh
update-alternatives --remove modules.sh %{_datadir}/Modules/init/modules.sh
fi
%{_sbindir}/update-alternatives \
update-alternatives \
--install %{_sysconfdir}/profile.d/modules.sh modules.sh %{_datadir}/Modules/init/profile.sh 40 \
--slave %{_sysconfdir}/profile.d/modules.csh modules.csh %{_datadir}/Modules/init/profile.csh \
--slave %{_datadir}/fish/vendor_conf.d/modules.fish modules.fish %{_datadir}/Modules/init/fish \
--slave %{_bindir}/modulecmd modulecmd %{_datadir}/Modules/libexec/modulecmd.tcl
--follower %{_sysconfdir}/profile.d/modules.csh modules.csh %{_datadir}/Modules/init/profile.csh \
--follower %{_datadir}/fish/vendor_conf.d/modules.fish modules.fish %{_datadir}/Modules/init/fish \
--follower %{_bindir}/modulecmd modulecmd %{_datadir}/Modules/libexec/modulecmd.tcl
%postun
if [ $1 -eq 0 ] ; then
%{_sbindir}/update-alternatives --remove modules.sh %{_datadir}/Modules/init/profile.sh
update-alternatives --remove modules.sh %{_datadir}/Modules/init/profile.sh
fi
@ -170,31 +175,42 @@ fi
%dir %{_datadir}/Modules/init
%{_datadir}/Modules/init/*
# do not need to require shell package as we "own" completion dir
%dir %{_datadir}/bash-completion/completions
%{_datadir}/bash-completion/completions/module
%{_datadir}/bash-completion/completions/ml
%dir %{_datadir}/zsh/site-functions
%{_datadir}/zsh/site-functions/_module
%dir %{_datadir}/fish/vendor_completions.d
%{_datadir}/fish/vendor_completions.d/module.fish
%dir %{bash_completions_dir}
%{bash_completions_dir}/module
%{bash_completions_dir}/ml
%dir %{zsh_completions_dir}
%{zsh_completions_dir}/_module
%dir %{fish_completions_dir}
%{fish_completions_dir}/module.fish
%dir %{_sysconfdir}/%{name}
%config(noreplace) %{_sysconfdir}/%{name}/initrc
%config(noreplace) %{_sysconfdir}/%{name}/modulespath
%config(noreplace) %{_sysconfdir}/%{name}/siteconfig.tcl
%{_datadir}/Modules/modulefiles
%{_datadir}/modulefiles
%{_mandir}/man1/envml.1.gz
%{_mandir}/man1/ml.1.gz
%{_mandir}/man1/module.1.gz
%{_mandir}/man4/modulefile.4.gz
%{_mandir}/man5/modulefile.5.gz
%{macrosdir}/macros.%{name}
%{vimdatadir}/ftdetect/modulefile.vim
%{vimdatadir}/ftplugin/modulefile.vim
%{vimdatadir}/syntax/modulefile.vim
%{vimfiles_root}/ftdetect/modulefile.vim
%{vimfiles_root}/ftplugin/modulefile.vim
%{vimfiles_root}/syntax/modulefile.vim
%dir %{_emacs_sitelispdir}/%{name}
%{_emacs_sitelispdir}/%{name}/*
%{_emacs_sitestartdir}/%{name}-init.el
%dir %{_datadir}/Modules/nagelfar
%{_datadir}/Modules/nagelfar/*
%changelog
* Thu Jan 15 2026 Lukáš Zaoral <lzaoral@redhat.com> - 5.6.1-2
- remove recommends on nagelfar (RHEL-139084)
* Fri Dec 12 2025 Lukáš Zaoral <lzaoral@redhat.com> - 5.6.1-1
- rebase to 5.6.1 (RHEL-132336)
+ Based on spec by Xavier Delaruelle in Fedora Rawhide. Thanks a lot!
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 5.3.1-8
- Bump release for October 2024 mass rebuild:
Resolves: RHEL-64018

View File

@ -1 +1 @@
SHA512 (modules-5.3.1.tar.bz2) = b78cab4adf2c980ee52bcf9168f95c4809131e023c2d8298489741fe713ec85f2e84b13d561b85c1a54eb6b4fc77dd8ee3b36ef2662c631f70b07aed7e674636
SHA512 (modules-5.6.1.tar.bz2) = ec953891423d70e213ffade6aac8113e56a9ba3a8a754b0eb1d2f79c5d50dcb4671d3ca75836a3e05aae11476e27c3c5463f5cb58ee62f4ed459fb93bcf34c1c