diff --git a/src/plugins/qbsprojectmanager/qbsdeployconfigurationfactory.cpp b/src/plugins/qbsprojectmanager/qbsdeployconfigurationfactory.cpp
index 911e05631fe17f7003b4e2e449d6a35f5657e571..abd0028eb75c7b512cc4f38dc232066c4b185302 100644
--- a/src/plugins/qbsprojectmanager/qbsdeployconfigurationfactory.cpp
+++ b/src/plugins/qbsprojectmanager/qbsdeployconfigurationfactory.cpp
@@ -33,6 +33,8 @@
 #include "qbsproject.h"
 
 #include <projectexplorer/buildsteplist.h>
+#include <projectexplorer/kitinformation.h>
+#include <projectexplorer/projectexplorerconstants.h>
 #include <projectexplorer/target.h>
 
 namespace QbsProjectManager {
@@ -88,8 +90,11 @@ QbsDeployConfigurationFactory::QbsDeployConfigurationFactory(QObject *parent) :
 QList<Core::Id> QbsDeployConfigurationFactory::availableCreationIds(ProjectExplorer::Target *parent) const
 {
     QList<Core::Id> ids;
-    if (qobject_cast<QbsProject *>(parent->project()))
+    const Core::Id deviceId = ProjectExplorer::DeviceKitInformation::deviceId(parent->kit());
+    if (qobject_cast<QbsProject *>(parent->project())
+            && deviceId == ProjectExplorer::Constants::DESKTOP_DEVICE_ID) {
         ids << genericQbsDeployConfigurationId();
+    }
     return ids;
 }
 
diff --git a/src/plugins/qbsprojectmanager/qbsproject.cpp b/src/plugins/qbsprojectmanager/qbsproject.cpp
index 119c522a15b920be904f8578ef007ad25bc2204c..87389db717bde2e989580d18d3c28c4596232011 100644
--- a/src/plugins/qbsprojectmanager/qbsproject.cpp
+++ b/src/plugins/qbsprojectmanager/qbsproject.cpp
@@ -47,6 +47,8 @@
 #include <coreplugin/mimedatabase.h>
 #include <cpptools/cppmodelmanager.h>
 #include <projectexplorer/buildenvironmentwidget.h>
+#include <projectexplorer/buildtargetinfo.h>
+#include <projectexplorer/deploymentdata.h>
 #include <projectexplorer/kit.h>
 #include <projectexplorer/kitinformation.h>
 #include <projectexplorer/projectexplorer.h>
@@ -280,6 +282,8 @@ void QbsProject::handleQbsParsingDone(bool success)
 
     updateCppCodeModel(m_rootProjectNode->qbsProjectData());
     updateQmlJsCodeModel(m_rootProjectNode->qbsProjectData());
+    updateApplicationTargets(m_rootProjectNode->qbsProjectData());
+    updateDeploymentInfo(m_rootProjectNode->qbsProject());
 
     foreach (Target *t, targets())
         t->updateDefaultRunConfigurations();
@@ -617,6 +621,37 @@ void QbsProject::updateQmlJsCodeModel(const qbs::ProjectData &prj)
     modelManager->updateProjectInfo(projectInfo);
 }
 
+void QbsProject::updateApplicationTargets(const qbs::ProjectData &projectData)
+{
+    ProjectExplorer::BuildTargetInfoList applications;
+    foreach (const qbs::ProductData &productData, projectData.allProducts()) {
+        foreach (const qbs::TargetArtifact &ta, productData.targetArtifacts()) {
+            QTC_ASSERT(ta.isValid(), continue);
+            if (!ta.isExecutable())
+                continue;
+            applications.list << ProjectExplorer::BuildTargetInfo(Utils::FileName::fromString(ta.filePath()),
+                    Utils::FileName::fromString(productData.location().fileName()));
+        }
+    }
+    activeTarget()->setApplicationTargets(applications);
+}
+
+void QbsProject::updateDeploymentInfo(const qbs::Project *project)
+{
+    ProjectExplorer::DeploymentData deploymentData;
+    if (project) {
+        qbs::InstallOptions installOptions;
+        installOptions.setInstallRoot(QLatin1String("/"));
+        foreach (const qbs::InstallableFile &f,
+                 project->installableFilesForProject(project->projectData(), installOptions)) {
+            deploymentData.addFile(f.sourceFilePath(), f.targetDirectory(), f.isExecutable()
+                                   ? ProjectExplorer::DeployableFile::TypeExecutable
+                                   : ProjectExplorer::DeployableFile::TypeNormal);
+        }
+    }
+    activeTarget()->setDeploymentData(deploymentData);
+}
+
 QString QbsProject::qbsBuildDir() const
 {
     QString buildDir = Environment::systemEnvironment().value(QLatin1String("QBS_BUILD_DIR"));
diff --git a/src/plugins/qbsprojectmanager/qbsproject.h b/src/plugins/qbsprojectmanager/qbsproject.h
index 205dcb69962a1999a71db3f576c4bd86fc6a43e2..53f07f40f4e5051dd55f9037ee0462bca96d2ad0 100644
--- a/src/plugins/qbsprojectmanager/qbsproject.h
+++ b/src/plugins/qbsprojectmanager/qbsproject.h
@@ -128,6 +128,8 @@ private:
     void updateDocuments(const QSet<QString> &files);
     void updateCppCodeModel(const qbs::ProjectData &prj);
     void updateQmlJsCodeModel(const qbs::ProjectData &prj);
+    void updateApplicationTargets(const qbs::ProjectData &projectData);
+    void updateDeploymentInfo(const qbs::Project *project);
     QString qbsBuildDir() const;
 
     QbsManager *const m_manager;