jonmatifa / zfsmanager

ZFS administration tool for Webmin
Other
108 stars 22 forks source link

Missing menu link in Hardware #11

Open khartahk opened 7 years ago

khartahk commented 7 years ago

After installation either via git clone or using the webmin plugin file the menu is not found. Also the search does not find it. The plugin works if you go to it usin a direct link or using the link provided after installation when using the webmin plugin file.

8layer8 commented 7 years ago

I had this too, if you go into Webmin - Webmin Users - Select your username - Available Webmin Modules - Check ZFS Manager and then click Save. The ZFS manager should appear now. I don't know how to fix it code-wise, but this seems to work. Nice work Jon!

jonmatifa commented 7 years ago

Yeah, I haven't been able to figure that one out yet. You'll have to follow 8layer8's advice above for now. Additionally, if the module is showing up under "other" or somewhere other than hardware (or you want to reassign the category yourself) you can go to Webmin -> Webmin Configuration -> Reassign Modules and change where any of the webmin modules are found including zfsmanager.

hjmallon commented 6 years ago

I have a fix lined up for Webmin not recognising the category in my branch fix_install. I will make a pull request after my first one (as it is based on top of that) (https://github.com/jonmatifa/zfsmanager/pull/29).

Perl on Linux does not strip CRLF from line endings with chomp, only LF, which leaves a random CR on the end of the "hardware" string (for example). This means it won't match the "hardware" string in the categories.

See the following Perl for info

#!/usr/bin/perl

$string = "hardware\n";
$retval  = chomp( $string );
$hstring = unpack ("H*",$string);

print " Chomped String is : $string\n";
print " Hex is : $hstring\n";
print " Number of characters removed : $retval\n";

$string = "hardware\r\n";
$retval  = chomp( $string );
$hstring = unpack ("H*",$string);

print " Chomped String is : $string\n";
print " Hex is : $hstring\n";
print " Number of characters removed : $retval\n";

$nline = unpack ("H*", %/);

print " Chomping off chars: $nline\n";

gives

# ./test.pl 
 Chomped String is : hardware
 Hex is : 6861726477617265
 Number of characters removed : 1
 Chomped String is : hardware
 Hex is : 68617264776172650d
 Number of characters removed : 1
 Chomping off chars: 30

The fix, as I have done, is to dos2unix all the files in this repo (this makes them match other webmin source too).