diff options
Diffstat (limited to 'Tools.pm')
-rw-r--r-- | Tools.pm | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/Tools.pm b/Tools.pm new file mode 100644 index 0000000..2e4ce72 --- /dev/null +++ b/Tools.pm @@ -0,0 +1,35 @@ +# +# + +package Tools; + +use strict; +use warnings; + +our $VERSION = '0.1'; + +use base 'Exporter'; + +#our @EXPORT = qw(parse_mageia_iso_name); + +sub parse_mageia_iso_name { + my ($name) = @_; + my %info = (); + + if ($name =~ m/^(Mageia)-(\d+)(-(alpha|beta|RC)(\d*))?(-(.*))?-(i586|x86_64|dual)?(-(CD|DVD|BD))?(-(build\_\w+))?\.(.*)$/) { + $info{"full"} = $name; + $info{"name"} = $1 if defined $1; + $info{"version"} = $2 if defined $2; + $info{"release"} = "$4$5" if defined $4; + $info{"variant"} = $7 if defined $7; + $info{"arch"} = $8 if defined $8; + $info{"medium"} = $10 if defined $10; + $info{"build"} = $12 if defined $12; + $info{"ext"} = $13 if defined $13; + + } + + return %info; +} + +1; |