root/middleware-offline/trunk/_src/eidmw/pteidlinuxversion.pl @ 41

Revision 41, 2.7 KB (checked in by vsilva, 8 years ago)

Implement Check SOD; Resolve some fixes; Remove Auto load library from sdk(cause problems on windows); PINPAD ACR Plugin; Firefox Certificates Extension on MSI

  • Property svn:executable set to *
Line 
1#!/usr/bin/env perl
2
3# This script is intented to find which Linux distro PTeID is running
4# this is useful to auto updates mechanism to find supported distros.
5# Author: Luis Medinas <luis.medinas@caixamagica.pt>
6
7use strict;
8
9my $ARCH=`uname -m`;
10my @full_distribution;
11my $distro;
12my $distribution_version;
13
14print ("PTeID OS version!!!!\n\n");
15
16sub getarch
17{
18    print ("Checking Arch...\n");
19    chomp $ARCH;
20    return $ARCH;
21}
22
23sub getlinuxdistro
24{
25    print ("Checking Linux Distro...\n");
26
27    if ($^O =~ m/linux/)
28    {
29        if (-e "/etc/fedora-release")
30        {
31            @full_distribution    = split(/ /,`cat /etc/fedora-release`);
32            $distribution_version = $full_distribution[2];
33            chomp $distribution_version;
34            $distro               = "fedora";
35        }
36        elsif (-e "/etc/redhat-release")
37        {
38            @full_distribution    = split(/ /,`cat /etc/redhat-release`);
39            $distribution_version = $full_distribution[2];
40            chomp $distribution_version;
41            $distro               = "redhat";
42        }
43        elsif (-e "/etc/SuSE-release")
44        {
45            @full_distribution    = split(/ /,`cat /etc/SuSE-release`);
46            $distribution_version = $full_distribution[1];
47            chomp $distribution_version;
48            $distro               = "suse";
49        }
50        elsif (-e "/etc/mandriva-release")
51        {
52            @full_distribution    = split(/ /,`/etc/mandriva-release`);
53            $distribution_version = $full_distribution[1];
54            chomp $distribution_version;
55            $distro               = "mandriva";
56        }
57        #Support for Ubuntu/Caixamagica
58        elsif (-e "/etc/lsb-release")
59        {
60            my $tmp = `cat /etc/lsb-release`;
61            my @values = ($tmp =~ m/=(\S+)/g);
62            join(',', @values), "\n";
63
64            if ($values[0] =~ m/CaixaMagica/ || $values[0] =~ m/Ubuntu/ || $values[0] =~ m/Debian/)
65            {
66                $values[0] =~ s/"//g;
67                $distro = @values[0];
68                $distribution_version = @values[1];
69            } else {
70                $distro = "unsupported";
71            }
72        }
73        elsif (-e "/etc/debian_version")
74        {
75            my $tmp = `cat /etc/debian_version`;
76            chomp($tmp);   
77            $distribution_version = "squeeze";
78            chomp $distribution_version;
79            $distro               = "debian";
80        }
81        else
82        {
83            $distro = "unsupported";
84        }
85    }
86
87    return $distro;
88}
89
90
91my $linuxdistro = getlinuxdistro;
92
93print "$linuxdistro\n";
94
95my $linuxarch = getarch;
96
97print "$linuxarch\n";
98
99print "Writing to File\n";
100
101open (LINUXVERSIONFILE, '>/tmp/linuxversion');
102print LINUXVERSIONFILE $linuxdistro;
103print LINUXVERSIONFILE " ; ";
104print LINUXVERSIONFILE $linuxarch;
105print LINUXVERSIONFILE " ; ";
106print LINUXVERSIONFILE $distribution_version;
107print LINUXVERSIONFILE " ; \n";
108close (LINUXVERSIONFILE);
Note: See TracBrowser for help on using the browser.