Package: environment-modules
Version: 4.1.2-1
Severity: normal

Dear Maintainer,

I have a problem with environment-modules and ZSH: the module function
defined as

module () {
        _moduleraw "$*" 2>&1
}

does not work correctly on my system with ZSH (the module command works
with Bash although). When using it without option, it works perfectly,
but using options like -t for module list or module avail does not work:
with list it leads to an error and with avail it leads to an empty
answer even if module avail is not "empty".

As I loads lots of ZSH config files, I have also tested module with a
new user without loading any ZSH config files and observed the same
behavior.

I am using ZSH 5.5.1.

The attached patch solves the problem for modules 4.1.2: it consists in
removing the " encapsulating the $* argument of _moduleraw.

Best,

Christophe

-- System Information:
Debian Release: buster/sid
  APT prefers testing
  APT policy: (986, 'testing'), (984, 'stable'), (982, 'stable'), (98, 
'unstable'), (96, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.15.0-3-amd64 (SMP w/8 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages environment-modules depends on:
ii  less       487-0.1
ii  libc6      2.27-3
ii  libtcl8.6  8.6.8+dfsg-4
ii  procps     2:3.3.14-1
ii  tcl        8.6.0+9
ii  tcl8.6     8.6.8+dfsg-4

environment-modules recommends no packages.

environment-modules suggests no packages.

-- no debconf information

-- 
Christophe Garion
GPG: 1982 15B2 64AC 3C34 532D  BF19 6CD6 246C 62DA 5A7F

Index: modules-4.1.2/modulecmd.tcl.in
===================================================================
--- modules-4.1.2.orig/modulecmd.tcl.in
+++ modules-4.1.2/modulecmd.tcl.in
@@ -3659,7 +3659,7 @@ $g_shell \$*`;
    return $_mlstatus;}
          append fdef "\n};"
          if {[isStderrTty]} {
-            append fdef "\nmodule() { _moduleraw \"\$*\" 2>&1; };"
+            append fdef "\nmodule() { _moduleraw \$* 2>&1; };"
          }
       }
       {fish} {

Reply via email to