diff --git a/app/src/handlers/confighandler.cpp b/app/src/handlers/confighandler.cpp
index 4463b50179f32c7ceb01f0a0e6bcefc8beaa8a63..e106eeadadb900f8ff7d03cf47b466b63e77b863 100644
--- a/app/src/handlers/confighandler.cpp
+++ b/app/src/handlers/confighandler.cpp
@@ -8,7 +8,7 @@
 ConfigHandler::ConfigHandler(QObject *parent)
     : QObject(parent)
 {
-    appConfig_ = qtil::Config(":/configs");
+    appConfig_ = Qtil::Config(":/configs");
     importAppConfigApplication();
     importAppConfigInstallTypes();
 }
@@ -55,7 +55,7 @@ QString ConfigHandler::convertPathString(const QString &path) const
 {
     auto newPath = path;
     if (newPath.contains("$HOME")) {
-        newPath.replace("$HOME", qtil::Dir::homePath());
+        newPath.replace("$HOME", Qtil::Dir::homePath());
     }
     else if (newPath.contains("$XDG_DOCUMENTS_DIR")) {
         newPath.replace("$XDG_DOCUMENTS_DIR", QStandardPaths::writableLocation(QStandardPaths::DocumentsLocation));
@@ -73,13 +73,13 @@ QString ConfigHandler::convertPathString(const QString &path) const
         newPath.replace("$XDG_VIDEOS_DIR", QStandardPaths::writableLocation(QStandardPaths::MoviesLocation));
     }
     else if (newPath.contains("$XDG_DATA_HOME")) {
-        newPath.replace("$XDG_DATA_HOME", qtil::Dir::genericDataPath());
+        newPath.replace("$XDG_DATA_HOME", Qtil::Dir::genericDataPath());
     }
     else if (newPath.contains("$KDEHOME")) {
-        newPath.replace("$KDEHOME", qtil::Dir::kdehomePath());
+        newPath.replace("$KDEHOME", Qtil::Dir::kdehomePath());
     }
     else if (newPath.contains("$APP_DATA")) {
-        newPath.replace("$APP_DATA", qtil::Dir::genericDataPath() + "/" + getAppConfigApplication()["id"].toString());
+        newPath.replace("$APP_DATA", Qtil::Dir::genericDataPath() + "/" + getAppConfigApplication()["id"].toString());
     }
     return newPath;
 }
diff --git a/app/src/handlers/confighandler.h b/app/src/handlers/confighandler.h
index 3e7ab4db9440b855d95fa133b1c6ccd160688b99..82f2557eb6bf3d786b0a1df8d9a15a63f7e123df 100644
--- a/app/src/handlers/confighandler.h
+++ b/app/src/handlers/confighandler.h
@@ -21,7 +21,7 @@ private:
     void importAppConfigInstallTypes();
     QString convertPathString(const QString &path) const;
 
-    qtil::Config appConfig_;
+    Qtil::Config appConfig_;
     QJsonObject appConfigApplication_;
     QJsonObject appConfigInstallTypes_;
 };
diff --git a/app/src/handlers/ocsurlhandler.cpp b/app/src/handlers/ocsurlhandler.cpp
index 84915f474268d81fdd782840951fcea7aee93e61..a097e43e02504c90ded2e5c98d5e069d5dcf0813 100644
--- a/app/src/handlers/ocsurlhandler.cpp
+++ b/app/src/handlers/ocsurlhandler.cpp
@@ -40,9 +40,9 @@ void OcsUrlHandler::process()
     }
 
     auto url = metadata_["url"].toString();
-    auto *resource = new qtil::NetworkResource(url, QUrl(url), true, this);
-    connect(resource, &qtil::NetworkResource::downloadProgress, this, &OcsUrlHandler::downloadProgress);
-    connect(resource, &qtil::NetworkResource::finished, this, &OcsUrlHandler::networkResourceFinished);
+    auto *resource = new Qtil::NetworkResource(url, QUrl(url), true, this);
+    connect(resource, &Qtil::NetworkResource::downloadProgress, this, &OcsUrlHandler::downloadProgress);
+    connect(resource, &Qtil::NetworkResource::finished, this, &OcsUrlHandler::networkResourceFinished);
     resource->get();
     emit started();
 }
@@ -71,7 +71,7 @@ void OcsUrlHandler::openDestination() const
     QDesktopServices::openUrl(QUrl("file://" + configHandler_->getAppConfigInstallTypes()[type].toObject()["destination"].toString()));
 }
 
-void OcsUrlHandler::networkResourceFinished(qtil::NetworkResource *resource)
+void OcsUrlHandler::networkResourceFinished(Qtil::NetworkResource *resource)
 {
     if (!resource->isFinishedWithNoError()) {
         QJsonObject result;
@@ -126,14 +126,14 @@ void OcsUrlHandler::parse()
     }
 }
 
-void OcsUrlHandler::saveDownloadedFile(qtil::NetworkResource *resource)
+void OcsUrlHandler::saveDownloadedFile(Qtil::NetworkResource *resource)
 {
     QJsonObject result;
 
     auto type = metadata_["type"].toString();
-    qtil::Dir destDir(configHandler_->getAppConfigInstallTypes()[type].toObject()["destination"].toString());
+    Qtil::Dir destDir(configHandler_->getAppConfigInstallTypes()[type].toObject()["destination"].toString());
     destDir.make();
-    qtil::File destFile(destDir.path() + "/" + metadata_["filename"].toString());
+    Qtil::File destFile(destDir.path() + "/" + metadata_["filename"].toString());
 
     if (!resource->saveData(destFile.path())) {
         result["status"] = QString("error_save");
@@ -150,11 +150,11 @@ void OcsUrlHandler::saveDownloadedFile(qtil::NetworkResource *resource)
     resource->deleteLater();
 }
 
-void OcsUrlHandler::installDownloadedFile(qtil::NetworkResource *resource)
+void OcsUrlHandler::installDownloadedFile(Qtil::NetworkResource *resource)
 {
     QJsonObject result;
 
-    qtil::File tempFile(qtil::Dir::tempPath() + "/" + metadata_["filename"].toString());
+    Qtil::File tempFile(Qtil::Dir::tempPath() + "/" + metadata_["filename"].toString());
 
     if (!resource->saveData(tempFile.path())) {
         result["status"] = QString("error_save");
@@ -164,11 +164,11 @@ void OcsUrlHandler::installDownloadedFile(qtil::NetworkResource *resource)
         return;
     }
 
-    qtil::Package package(tempFile.path());
+    Qtil::Package package(tempFile.path());
     auto type = metadata_["type"].toString();
-    qtil::Dir destDir(configHandler_->getAppConfigInstallTypes()[type].toObject()["destination"].toString());
+    Qtil::Dir destDir(configHandler_->getAppConfigInstallTypes()[type].toObject()["destination"].toString());
     destDir.make();
-    qtil::File destFile(destDir.path() + "/" + metadata_["filename"].toString());
+    Qtil::File destFile(destDir.path() + "/" + metadata_["filename"].toString());
 
     if (type == "bin"
             && package.installAsProgram(destFile.path())) {
diff --git a/app/src/handlers/ocsurlhandler.h b/app/src/handlers/ocsurlhandler.h
index f2b9ebd355aeb6ff199e57828c645c3a3787198b..8f22cac4afb7e57ca802ba108410899ece95c45a 100644
--- a/app/src/handlers/ocsurlhandler.h
+++ b/app/src/handlers/ocsurlhandler.h
@@ -3,7 +3,7 @@
 #include <QObject>
 #include <QJsonObject>
 
-namespace qtil {
+namespace Qtil {
 class NetworkResource;
 }
 
@@ -31,12 +31,12 @@ public slots:
     void openDestination() const;
 
 private slots:
-    void networkResourceFinished(qtil::NetworkResource *resource);
+    void networkResourceFinished(Qtil::NetworkResource *resource);
 
 private:
     void parse();
-    void saveDownloadedFile(qtil::NetworkResource *resource);
-    void installDownloadedFile(qtil::NetworkResource *resource);
+    void saveDownloadedFile(Qtil::NetworkResource *resource);
+    void installDownloadedFile(Qtil::NetworkResource *resource);
 
     QString ocsUrl_;
     ConfigHandler *configHandler_;
diff --git a/scripts/prepare b/scripts/prepare
index be066fe42475a225f1638b48fba05bac530e823f..0186affcbb4d3203d76d6bd5eb06553173bec124 100755
--- a/scripts/prepare
+++ b/scripts/prepare
@@ -3,5 +3,5 @@
 PROJDIR="$(cd "$(dirname "${0}")/../" && pwd)"
 
 if [[ ! -d "${PROJDIR}/lib/qtil" ]]; then
-    git clone https://github.com/akiraohgaki/qtil.git -b release-0.3.1 --single-branch --depth=1 "${PROJDIR}/lib/qtil"
+    git clone https://github.com/akiraohgaki/qtil.git -b release-0.4.0 --single-branch --depth=1 "${PROJDIR}/lib/qtil"
 fi