diff --git a/CMakeLists.txt b/CMakeLists.txt
index 51a813bde3454bf79c5373eaf9a288926d32b79b..b2f77dc6b24aba3f244872a855ed91a2a950ecb2 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -31,6 +31,7 @@ set( QT_VERSION 5.3.0 )
 
 find_package( Qt5 ${QT_VERSION} CONFIG REQUIRED Core Gui Widgets LinguistTools Svg )
 find_package( YamlCpp 0.5.1 REQUIRED )
+find_package( PolkitQt5-1 REQUIRED )
 
 option( WITH_PYTHON "Enable Python modules support." ON )
 
@@ -178,3 +179,10 @@ install(
     DESTINATION
         share/calamares
 )
+
+install(
+  FILES
+      com.github.calamares.calamares.bin
+  DESTINATION
+      "${POLKITQT-1_POLICY_FILES_INSTALL_DIR}"
+)
diff --git a/calamares.desktop b/calamares.desktop
index 06df67598bad4f992b359e80105c1153a460ac2f..776d2635936489c4788f150a42d0098a085f568b 100644
--- a/calamares.desktop
+++ b/calamares.desktop
@@ -4,8 +4,9 @@ Version=1.0
 Name=Calamares
 GenericName=System Installer
 TryExec=calamares
-Exec=calamares
+Exec=pkexec /usr/bin/calamares
 Comment=Calamares — System Installer
 Icon=calamares
 Terminal=false
+StartupNotify=false
 Categories=Qt;System;
diff --git a/com.github.calamares.calamares.bin b/com.github.calamares.calamares.bin
new file mode 100644
index 0000000000000000000000000000000000000000..6bc250e3bbdf6d0af8700ed7bf39696c64630b9d
--- /dev/null
+++ b/com.github.calamares.calamares.bin
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE policyconfig PUBLIC
+"-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN"
+"http://www.freedesktop.org/standards/PolicyKit/1/policyconfig.dtd">
+<policyconfig>
+
+ <vendor>Calamares</vendor>
+ <vendor_url>https://github.com/calamares</vendor_url>
+
+ <action id="com.github.calamares.calamares.pkexec.run">
+    <description>Run Installer</description>
+    <message>Authentication is required to run the installation program</message>
+    <icon_name>drive-harddisk</icon_name>
+    <defaults>
+     <allow_any>no</allow_any>
+     <allow_inactive>no</allow_inactive>
+     <allow_active>auth_admin</allow_active>
+    </defaults>
+    <annotate key="org.freedesktop.policykit.exec.path">/usr/bin/calamares</annotate>
+    <annotate key="org.freedesktop.policykit.exec.allow_gui">true</annotate>
+ </action>
+</policyconfig>
\ No newline at end of file