#include "iapp.h"
 
 #include <QtCore>
-#include <QDesktopServices>
 
 
 //-------------------------------------------------------------------
     mLogDir.clear();
     mDocDir.clear();
 
+    // Set the data root directory
+#ifdef Q_OS_LINUX
+    QString dataLoc = QDir::homePath();
+    if (!dataLoc.endsWith('/'))
+        dataLoc.append('/');
+    dataLoc.append(".local/share/data/");
+    mDataRootDir = dataLoc + iApp::instance()->name();
+    if (!mDataRootDir.endsWith('/'))
+        mDataRootDir.append('/');
+#endif
+    /// @TODO: Needs local data directory on Windows
+
     // Process the environment
-    QStringList env = QProcess::systemEnvironment();
+    QStringList env = QProcessEnvironment::systemEnvironment().toStringList();
     int sz = env.size();
     for (int i = 0; i < sz; ++i) {
         // Get the name/value pair
 
 QString const Env::dataRootDir() const
 {
-    if (mDataRootDir.isEmpty()) {
-        QString dataLoc = QDesktopServices::storageLocation(QDesktopServices::DataLocation);
-        if (!dataLoc.endsWith('/'))
-            dataLoc.append('/');
-        mDataRootDir = dataLoc.append(iApp::instance()->name());
-        if (!mDataRootDir.endsWith('/'))
-            mDataRootDir.append('/');
-    }
-
+    // Fall-back to the application's root directory if the data root directory is empty
+    if (mDataRootDir.isEmpty())
+        mDataRootDir = rootDir();
     return mDataRootDir;
 }
 
 
 /**
  * Module/library version number in the form major,minor,release,build
  */
-#define VER_FILE_VERSION                0,1,1,2
+#define VER_FILE_VERSION                0,1,1,3
 
 /**
  * Module/library version number in the string format (shall end with \0)
  */
-#define VER_FILE_VERSION_STR            "0.1.1.2\0"
+#define VER_FILE_VERSION_STR            "0.1.1.3\0"
 
 /**
  * Module/library name (shall end with \0)