diff --git a/src/app/handlers/xdgurl.cpp b/src/app/handlers/xdgurl.cpp
index c5709c2f82a1a4637f3e2a6e8adce4872ba31839..cdb93519e0aaa8fbe7f71e9af7a0fc9425a3e2f4 100644
--- a/src/app/handlers/xdgurl.cpp
+++ b/src/app/handlers/xdgurl.cpp
@@ -5,14 +5,13 @@
 
 #include "qtlibs/file.h"
 #include "qtlibs/dir.h"
-#include "qtlibs/config.h"
 #include "qtlibs/networkresource.h"
 #include "qtlibs/package.h"
 
 namespace handlers {
 
-XdgUrl::XdgUrl(const QString &xdgUrl, qtlibs::Config *config, QObject *parent) :
-    QObject(parent), xdgUrl_(xdgUrl), config_(config)
+XdgUrl::XdgUrl(const QString &xdgUrl, const qtlibs::Config &config, QObject *parent)
+    : QObject(parent), xdgUrl_(xdgUrl), config_(config)
 {
     parse();
     loadDestinations();
@@ -132,8 +131,8 @@ void XdgUrl::parse()
 
 void XdgUrl::loadDestinations()
 {
-    QJsonObject configDestinations = config_->get("destinations");
-    QJsonObject configDestinationsAlias = config_->get("destinations_alias");
+    QJsonObject configDestinations = config_.get("destinations");
+    QJsonObject configDestinationsAlias = config_.get("destinations_alias");
 
     foreach (const QString key, configDestinations.keys()) {
         destinations_[key] = convertPathString(configDestinations[key].toString());
diff --git a/src/app/handlers/xdgurl.h b/src/app/handlers/xdgurl.h
index 7bd8472cf2d2851d0905f50f66da92db48e4de6c..266c5046ded5b92d1ca7abfe5481bd2f8dc961ae 100644
--- a/src/app/handlers/xdgurl.h
+++ b/src/app/handlers/xdgurl.h
@@ -3,8 +3,9 @@
 #include <QObject>
 #include <QJsonObject>
 
+#include "qtlibs/config.h"
+
 namespace qtlibs {
-class Config;
 class NetworkResource;
 }
 
@@ -15,7 +16,7 @@ class XdgUrl : public QObject
     Q_OBJECT
 
 public:
-    explicit XdgUrl(const QString &xdgUrl, qtlibs::Config *config, QObject *parent = 0);
+    explicit XdgUrl(const QString &xdgUrl, const qtlibs::Config &config, QObject *parent = 0);
 
 signals:
     void started();
@@ -42,7 +43,7 @@ private:
     void installDownloadedFile(qtlibs::NetworkResource *resource);
 
     QString xdgUrl_;
-    qtlibs::Config *config_;
+    qtlibs::Config config_;
     QJsonObject metadata_;
     QJsonObject destinations_;
     QString destination_;
diff --git a/src/app/main.cpp b/src/app/main.cpp
index 20319b369b71ca8fc08443f2ff9cfcb872d8e422..839bfc853ddde783e76baa38a1849b139b8e7de7 100644
--- a/src/app/main.cpp
+++ b/src/app/main.cpp
@@ -22,8 +22,8 @@ int main(int argc, char *argv[])
 #endif
     QGuiApplication app(argc, argv);
 
-    qtlibs::Config *config = new qtlibs::Config(":/configs");
-    QJsonObject configApplication = config->get("application");
+    qtlibs::Config config(":/configs");
+    QJsonObject configApplication = config.get("application");
 
     app.setApplicationName(configApplication["name"].toString());
     app.setApplicationVersion(configApplication["version"].toString());