changeset 694:3ddadbeaebf1

Added Ubuntu detection partly and corrected return value. git-svn-id: svn://svn.code.sf.net/p/universalindent/code/trunk@963 59b1889a-e5ac-428c-b0c7-476e01d41282
author thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
date Fri, 29 May 2009 14:48:23 +0000
parents 84f5e9e9c297
children 82fb41ed0bfa
files src/UiGuiSystemInfo.cpp
diffstat 1 files changed, 16 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/UiGuiSystemInfo.cpp	Fri May 29 14:39:42 2009 +0000
+++ b/src/UiGuiSystemInfo.cpp	Fri May 29 14:48:23 2009 +0000
@@ -128,7 +128,7 @@
 
     process.start("uname -r");
     result = process.waitForFinished(1000);
-    QString kernel = process.readAllStandardOutput().trimmed();
+    QString rev = process.readAllStandardOutput().trimmed();
 
     process.start("uname -m");
     result = process.waitForFinished(1000);
@@ -145,7 +145,7 @@
         result = process.waitForFinished(1000);
         QString timestamp = process.readAllStandardOutput().trimmed();
 
-        operatingSystemString = os + "" + kernel + "" + arch + "" + timestamp;
+        operatingSystemString = os + " " + rev + " (" + arch + " " + timestamp + ")";
     }
     else if ( os == "AIX" ) {
         process.start("oslevel -r");
@@ -157,7 +157,7 @@
     else if ( os == "Linux" ) {
         QString dist;
         QString pseudoname;
-        QString rev;
+        QString kernel;
 
         if ( QFile::exists("/etc/redhat-release") ) {
             dist = "RedHat";
@@ -190,6 +190,17 @@
             result = process.waitForFinished(1000);
             rev = process.readAllStandardOutput().trimmed();
         }
+        else if ( QFile::exists("/etc/lsb-release") ) {
+            dist = "Ubuntu";
+
+            process.start("cat /etc/lsb-release | sed s/.*\\(// | sed s/\\)//");
+            result = process.waitForFinished(1000);
+            pseudoname = process.readAllStandardOutput().trimmed();
+
+            process.start("cat /etc/lsb-release | sed s/.*release\\ // | sed s/\\ .*//");
+            result = process.waitForFinished(1000);
+            rev = process.readAllStandardOutput().trimmed();
+        }
         else if ( QFile::exists("/etc/debian_version") ) {
             dist = "Debian";
 
@@ -205,6 +216,8 @@
             result = process.waitForFinished(1000);
             dist += process.readAllStandardOutput().trimmed();
         }
+
+        operatingSystemString = os + " " + dist + " " + rev + " (" + pseudoname + " " + kernel + " " + mach + ")";
     }
 #endif