Error re-configuring Virtualmin plugin - Use of uninitialized value in string eq at ...

In Debian 9 installation of Virtualmin fails when reaches configuring step [21/23] Fail2banFirewalld. I already reported this in other post proving you should have unmasked/enabled/running services Fail2ban and Firewalld in order to configure Fail2banFirewalld plugin. If you don't make this modifications installation will give an error and exits because there is an IF statement you programmed into the script to look for an enabled service. Someone reported this in detail in a Forum post, but it was not fix as you promised.

In steps 22 and 23 are configuration for Postfix and Virtualmin. After getting working step [21/23] using this command "virtualmin-config-system --include Fail2banFirewalld" I did it for Postfix and Virtualmin plugins in order to complete a failure installation.

Here is for Postfix - SUCCESS

root@localhost:~# virtualmin-config-system --include Postfix
[1/2] Configuring Net                                                   [  ✔  ]
[2/2] Configuring Postfix                                               [  ✔  ]

Here is for Virtualmin

root@localhost:~# virtualmin-config-system --include Virtualmin
[1/2] Configuring Usermin                                               [  ✔  ]
[2/2] Configuring Virtualmin                                            ▒▒▒▒▒▒▒Use of uninitialized value in string eq at /usr/share/perl5/Virtualmin/Config/Plugin/Virtualmin.pm line 41.
Use of uninitialized value in string eq at /usr/share/perl5/Virtualmin/Config/Plugin/Virtualmin.pm line 41.
Use of uninitialized value in string eq at /usr/share/perl5/Virtualmin/Config/Plugin/Virtualmin.pm line 62.
Use of uninitialized value in string eq at /usr/share/perl5/Virtualmin/Config/Plugin/Virtualmin.pm line 62.

This is the IF statement in line 41:

    if ($self->bundle() eq "MiniLEMP" || $self->bundle() eq "MiniLAMP") {
      $vconfig{'spam'}       = 0;
      $vconfig{'virus'}      = 0;
      $vconfig{'postgresql'} = 0;
      $vconfig{'webalizer'}  = 0;
    }

This is the IF statement in line 41:

    if ($self->bundle() eq "LEMP" || $self->bundle() eq "MiniLEMP") {
      $vconfig{'ssl'}                  = 0;
      $vconfig{'web'}                  = 0;
      $vconfig{'avail_virtualmin-dav'} = '';
      $vconfig{'backup_feature_ssl'}   = 0;
    }
    else {
      $vconfig{'ssl'} = 2;
    }

Any thoughts why I cannot complete Virtualmin configuration?

Status: 
Active

Comments

Assigned: Unassigned »

Passing this to Joe for review.

Please note Virtualmin was installed before without any errors. Running command "virtualmin-config-system --include Virtualmin" is not completing. This is Debian 8 and 9. Probably it is not working in other operating systems.

Edited:

I went through the specified code, the error pops up when not using --bundle for config-system. Exact line is "if ($self->bundle() eq "LEMP" || $self->bundle() eq "MiniLEMP") {"

Just adding info to this.

Received the same error on Centos7 x86_64 for fresh install of 6.0.19.

* did not use install.sh
* Manually configured with "virtualmin config-system --include Webmin Nginx Net Postfix MySQL Firewalld Postfix Quotas Shells Status Upgrade Virtualmin NTP SASL"

Error as follows:

Use of uninitialized value in string eq at /usr/share/perl5/vendor_perl/Virtualmin/Config/Plugin/Virtualmin.pm line 41.
Use of uninitialized value in string eq at /usr/share/perl5/vendor_perl/Virtualmin/Config/Plugin/Virtualmin.pm line 41.
Use of uninitialized value in string eq at /usr/share/perl5/vendor_perl/Virtualmin/Config/Plugin/Virtualmin.pm line 62.
Use of uninitialized value in string eq at /usr/share/perl5/vendor_perl/Virtualmin/Config/Plugin/Virtualmin.pm line 62.

Virtualmin seems useable, but will still check further.

I also noticed that using config-system does not update default checklist on Features & Plugins.