summaryrefslogtreecommitdiffstats
path: root/conf/user
diff options
context:
space:
mode:
authorJosé Bollo <jose.bollo@iot.bzh>2017-11-23 15:44:24 +0100
committerJosé Bollo <jose.bollo@iot.bzh>2017-11-24 17:44:58 +0100
commit7998a472352c0272a90c66ab45c4c2758cd6040a (patch)
treede3fb484fa2bca0850354f611551b049083d1420 /conf/user
parent633ebe33015554a14b773053188e2faba0faff04 (diff)
Rework on systemd start of user sessions
Change-Id: Iad46596435eebdc5c521b572fd8320b52a61d197 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
Diffstat (limited to 'conf/user')
-rw-r--r--conf/user/CMakeLists.txt31
-rw-r--r--conf/user/afm-user-daemon.conf33
-rw-r--r--conf/user/afm-user-daemon.service.in16
-rw-r--r--conf/user/afm-user-start.service8
4 files changed, 88 insertions, 0 deletions
diff --git a/conf/user/CMakeLists.txt b/conf/user/CMakeLists.txt
new file mode 100644
index 0000000..1545b15
--- /dev/null
+++ b/conf/user/CMakeLists.txt
@@ -0,0 +1,31 @@
+###########################################################################
+# Copyright 2015, 2016, 2017 IoT.bzh
+#
+# author: José Bollo <jose.bollo@iot.bzh>
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+###########################################################################
+
+cmake_minimum_required(VERSION 2.8)
+
+configure_file(afm-user-daemon.service.in afm-user-daemon.service)
+
+if(NOT USE_SDK)
+ set(SYSCONFDIR_DBUS_USER ${CMAKE_INSTALL_SYSCONFDIR}/dbus-1/session.d CACHE STRING "Path to dbus session configuration files")
+ set(UNITDIR_USER ${CMAKE_INSTALL_LIBDIR}/systemd/user CACHE STRING "Path to systemd system unit files")
+
+ install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/afm-user-daemon.conf DESTINATION ${SYSCONFDIR_DBUS_USER})
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/afm-user-daemon.service DESTINATION ${UNITDIR_USER})
+ install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/afm-user-start.service DESTINATION ${UNITDIR_USER})
+endif()
+
diff --git a/conf/user/afm-user-daemon.conf b/conf/user/afm-user-daemon.conf
new file mode 100644
index 0000000..801c7ae
--- /dev/null
+++ b/conf/user/afm-user-daemon.conf
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
+ "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
+
+<!--
+ This file is part of afm-main
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<busconfig>
+
+ <policy group="afm">
+ <allow own="org.AGL.afm.user"/>
+ </policy>
+
+ <policy context="default">
+ <deny own="org.AGL.afm.user"/>
+ <allow send_destination="org.AGL.afm.system"/>
+ </policy>
+
+</busconfig>
+
diff --git a/conf/user/afm-user-daemon.service.in b/conf/user/afm-user-daemon.service.in
new file mode 100644
index 0000000..11e479c
--- /dev/null
+++ b/conf/user/afm-user-daemon.service.in
@@ -0,0 +1,16 @@
+[Unit]
+Description=Application Framework Master, User side
+
+[Service]
+Type=dbus
+BusName=org.AGL.afm.user
+ExecStart=/usr/bin/afm-user-daemon --user-dbus=unix:path=%t/bus unix:/run/afm/apis/ws/afm-main
+Environment=AFM_APP_INSTALL_DIR=%%r
+EnvironmentFile=-@afm_confdir@/unit.env.d/*
+Restart=on-failure
+RestartSec=5
+
+
+[Install]
+WantedBy=default.target
+
diff --git a/conf/user/afm-user-start.service b/conf/user/afm-user-start.service
new file mode 100644
index 0000000..130c460
--- /dev/null
+++ b/conf/user/afm-user-start.service
@@ -0,0 +1,8 @@
+[Unit]
+Description=start mark of afm user
+
+[Service]
+Type=oneshot
+ExecStart=/bin/touch %t/afm-user-started
+
+