--- loncom/build/distprobe 2009/06/28 14:22:04 1.15 +++ loncom/build/distprobe 2011/05/06 21:29:41 1.19 @@ -2,7 +2,7 @@ # # The LearningOnline Network with CAPA # -# $Id: distprobe,v 1.15 2009/06/28 14:22:04 raeburn Exp $ +# $Id: distprobe,v 1.19 2011/05/06 21:29:41 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -55,12 +55,29 @@ if (-e '/etc/redhat-release') { $dist = 'rhes'.$1; } elsif ($versionstring =~ /CentOS release (\d+)/) { $dist = 'centos'.$1; - } elsif ($versionstring =~ /Scientific Linux SL release ([\d\.]+) /) { - $dist = 'scientific'.$1; + } elsif ($versionstring =~ /Scientific Linux (?:SL )?release ([\d.]+) /) { + my $ver = $1; + $ver =~ s/\.\d+$//; + $dist = 'scientific'.$ver; } else { warn('Unable to interpret /etc/redhat-release '. 'to determine system type'); } +} elsif (-e '/etc/SuSE-release') { + open(IN,'; + chomp($versionstring); + close(IN); + if ($versionstring =~ /^SUSE LINUX Enterprise Server ([\d\.]+) /i) { + $dist='sles'.$1; + } elsif ($versionstring =~ /^SuSE Linux ([\d\.]+) /i) { + $dist = 'suse'.$1; + } elsif ($versionstring =~ /^openSUSE ([\d\.]+) /i) { + $dist = 'suse'.$1; + } else { + warn('Unable to interpret /etc/SuSE-release '. + 'to determine system type'); + } } elsif (-e '/etc/issue') { open(IN,'; @@ -96,21 +113,6 @@ if (-e '/etc/redhat-release') { warn('Unable to interpret /etc/debian_version '. 'to determine system type'); } -} elsif (-e '/etc/SuSE-release') { - open(IN,'; - chomp($versionstring); - close(IN); - if ($versionstring =~ /^SUSE LINUX Enterprise Server ([\d\.]+) /i) { - $dist='sles'.$1; - } elsif ($versionstring =~ /^SuSE Linux ([\d\.]+) /i) { - $dist = 'suse'.$1; - } elsif ($versionstring =~ /^openSUSE ([\d\.]+) /i) { - $dist = 'suse'.$1; - } else { - warn('Unable to interpret /etc/SuSE-release '. - 'to determine system type'); - } } else { warn('Unknown installation: expecting a debian, suse, or redhat system'); }