shell: introduce sdb user daemon for user shell
[sdk/target/sdbd.git] / packaging / sdbd.spec
index 6a3da0b..e595e8c 100644 (file)
@@ -2,7 +2,7 @@
 
 Name:       sdbd
 Summary:    SDB daemon
-Version:    3.0.12
+Version:    3.0.15
 Release:    0
 License:    Apache-2.0
 Summary:    SDB daemon
@@ -12,6 +12,8 @@ Source1001:    sdbd_device.service
 Source1002:    sdbd_emulator.service
 Source1003:    %{name}.manifest
 Source1004:    sdbd_tcp.service
+Source1005:    sdbd_device_tv.service
+Source1006:    sdbd_emulator_tv.service
 
 BuildRequires: capi-system-info-devel >= 0.2.0
 BuildRequires: cmake >= 2.8.3
@@ -23,11 +25,18 @@ BuildRequires: pkgconfig(vconf)
 BuildRequires: pkgconfig(glib-2.0)
 BuildRequires: pkgconfig(dbus-1)
 BuildRequires: pkgconfig(dbus-glib-1)
+BuildRequires: pkgconfig(dlog)
 Requires: dbus
 
 %description
 Description: SDB daemon.
 
+%package -n sdbd-devel
+Summary:       SDBD plugin API
+Group:         Development/Libraries
+
+%description -n sdbd-devel
+SDBD plugin API library
 
 %prep
 %setup -q
@@ -39,7 +48,7 @@ cp %{SOURCE1003} .
 %else
 %define wearable_profile off
 %endif
-%ifarch %{ix86}
+%if %{with emulator}
 %define target_arch x86
 %else
 %define target_arch arm
@@ -55,17 +64,29 @@ mkdir -p %{buildroot}/usr/share/license
 cp LICENSE %{buildroot}/usr/share/license/%{name}
 
 %make_install
-mkdir -p %{buildroot}%{_libdir}/systemd/system
 mkdir -p %{buildroot}%{_unitdir}
-%ifarch %{ix86}
-install -m 0644 %SOURCE1002 %{buildroot}%{_libdir}/systemd/system/sdbd.service
-mkdir -p %{buildroot}/%{_libdir}/systemd/system/emulator_preinit.target.wants
-ln -s %{_libdir}/systemd/system/sdbd.service %{buildroot}/%{_libdir}/systemd/system/emulator_preinit.target.wants/
+
+%if %{with emulator}
+%if "%{profile}" == "tv"
+install -m 0644 %SOURCE1006 %{buildroot}%{_unitdir}/sdbd.service
+%else
+install -m 0644 %SOURCE1002 %{buildroot}%{_unitdir}/sdbd.service
+%endif
+mkdir -p %{buildroot}/%{_unitdir}/emulator_preinit.target.wants
+ln -s %{_unitdir}/sdbd.service %{buildroot}/%{_unitdir}/emulator_preinit.target.wants/
+
+%else
+%if "%{profile}" == "tv"
+install -m 0644 %SOURCE1005 %{buildroot}%{_unitdir}/sdbd.service
 %else
 install -m 0644 %SOURCE1001 %{buildroot}%{_unitdir}/sdbd.service
+%endif
 install -m 0644 %SOURCE1004 %{buildroot}%{_unitdir}/sdbd_tcp.service
-mkdir -p %{buildroot}/%{_libdir}/systemd/system/multi-user.target.wants
-ln -s %{_libdir}/systemd/system/sdbd.service %{buildroot}/%{_libdir}/systemd/system/multi-user.target.wants/
+mkdir -p %{buildroot}/%{_unitdir}/multi-user.target.wants
+ln -s %{_unitdir}/sdbd.service %{buildroot}/%{_unitdir}/multi-user.target.wants/
+
+mkdir -p %{buildroot}%{_prefix}/lib/udev/rules.d/
+install -m 644 rules/99-sdbd.rules %{buildroot}%{_prefix}/lib/udev/rules.d/
 %endif
 
 mkdir -p %{buildroot}%{_prefix}/sbin
@@ -74,6 +95,12 @@ install -m 755 script/sdk_launch %{buildroot}%{_prefix}/sbin/
 mkdir -p %{buildroot}%{TZ_SYS_BIN}
 install -m 755 script/profile_command %{buildroot}%{TZ_SYS_BIN}/
 
+mkdir -p %{buildroot}%{_includedir}/sdb/
+install -m 0644 src/sdbd_plugin.h %{buildroot}%{_includedir}/sdb/
+
+mkdir -p %{buildroot}%{_libdir}/pkgconfig/
+install -m 0644 packaging/sdbd.pc %{buildroot}%{_libdir}/pkgconfig/
+
 %post
 . %{_sysconfdir}/tizen-platform.conf
 if ! getent passwd "${TZ_SDK_USER_NAME}" > /dev/null; then
@@ -85,21 +112,33 @@ if ! getent passwd "${TZ_SDK_USER_NAME}" > /dev/null; then
   done
 fi
 
+cp -f /bin/sh /bin/sh-user
+chsmack -a "_" /bin/sh-user
+chsmack -e "User::Shell" /bin/sh-user
+chsmack -a "_" /sbin/sdbd-user
+chsmack -e "User::Shell" /sbin/sdbd-user
+
 %files
 %manifest sdbd.manifest
 %license LICENSE
 %defattr(-,root,root,-)
 %{_prefix}/sbin/sdbd
+%{_prefix}/sbin/sdbd-user
 %{_prefix}/sbin/sdk_launch
 %attr(0755, root, root) %{_sysconfdir}/init.d/sdbd
 %{_unitdir}/sdbd.service
-%ifarch %{ix86}
-%{_libdir}/systemd/system/emulator_preinit.target.wants/sdbd.service
+%if %{with emulator}
+%{_unitdir}/emulator_preinit.target.wants/sdbd.service
 %else
 %{_unitdir}/sdbd_tcp.service
-%{_libdir}/systemd/system/multi-user.target.wants/sdbd.service
+%{_unitdir}/multi-user.target.wants/sdbd.service
+%{_prefix}/lib/udev/rules.d/99-sdbd.rules
 %endif
 /usr/share/license/%{name}
 %{TZ_SYS_BIN}/profile_command
 
+%files -n sdbd-devel
+%{_includedir}/sdb/sdbd_plugin.h
+%{_libdir}/pkgconfig/sdbd.pc
+
 %changelog