tizen 2.3 release
[framework/system/deviced.git] / packaging / deviced.spec
1 Name:       deviced
2 Summary:    deviced
3 Version:    1.0.0
4 Release:    1
5 Group:      Framework/system
6 License:    Apache License, Version 2.0
7 Source0:    %{name}-%{version}.tar.gz
8 Source1:    %{name}.service
9 Source2:    zbooting-done.service
10 Source3:    shutdown-notify.service
11 Source4:    deviced-pre.service
12 Source5:    devicectl-start@.service
13 Source6:    devicectl-stop@.service
14 Source1001: deviced.manifest
15 Source1002: libdeviced.manifest
16
17 BuildRequires:  cmake
18 BuildRequires:  libattr-devel
19 BuildRequires:  gettext-devel
20 BuildRequires:  pkgconfig(ecore)
21 BuildRequires:  pkgconfig(vconf)
22 BuildRequires:  pkgconfig(dlog)
23 BuildRequires:  pkgconfig(device-node)
24 BuildRequires:  pkgconfig(edbus)
25 BuildRequires:  pkgconfig(capi-base-common)
26 BuildRequires:  systemd-devel
27 BuildRequires:  pkgconfig(systemd)
28 BuildRequires:  pkgconfig(sqlite3)
29 BuildRequires:  pkgconfig(libbuxton)
30 BuildRequires:  pkgconfig(storage)
31 BuildRequires:  pkgconfig(dbus-glib-1)
32 BuildRequires:  pkgconfig(journal)
33 BuildRequires:  pkgconfig(libarchive)
34 BuildRequires:  pkgconfig(sensor)
35 BuildRequires:  pkgconfig(tapi)
36
37 Requires(preun): /usr/bin/systemctl
38 Requires(post): sys-assert
39 Requires(post): /usr/bin/systemctl
40 Requires(post): /usr/bin/vconftool
41 Requires(post): pulseaudio
42 Requires(post): buxton
43 Requires(post): pkgconfig(journal)
44 Requires(post): pkgconfig(libarchive)
45 Requires(postun): /usr/bin/systemctl
46
47 %description
48 deviced
49
50 %package deviced
51 Summary:    deviced daemon
52 Group:      main
53 Requires:   %{name} = %{version}-%{release}
54
55 %description deviced
56 deviced daemon.
57
58 %package -n libdeviced
59 Summary:    Deviced library
60 Group:      Development/Libraries
61
62 %description -n libdeviced
63 Deviced library for device control
64
65 %package -n libdeviced-devel
66 Summary:    Deviced library for (devel)
67 Group:      Development/Libraries
68 Requires:   libdeviced = %{version}-%{release}
69
70 %description -n libdeviced-devel
71 Deviced library for device control (devel)
72
73 %prep
74 %setup -q
75 %if "%{?tizen_profile_name}" == "wearable"
76 export CFLAGS+=" -DMICRO_DD"
77 %endif
78
79 export CFLAGS+=" -DTIZEN_DEBUG_ENABLE"
80 export CFLAGS+=" -DTIZEN_ENGINEER_MODE"
81 %define ENGINEER_MODE 1
82
83 %ifarch %{arm}
84 %define ARCH arm
85 %else
86 %define ARCH emulator
87 %endif
88 cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} -DARCH=%{ARCH}
89
90 %build
91 cp %{SOURCE1001} .
92 cp %{SOURCE1002} .
93
94 make
95
96 %install
97 rm -rf %{buildroot}
98 %make_install
99
100 mkdir -p %{buildroot}%{_libdir}/systemd/system/multi-user.target.wants
101 mkdir -p %{buildroot}%{_libdir}/systemd/system/graphical.target.wants
102 mkdir -p %{buildroot}%{_libdir}/systemd/system/shutdown.target.wants
103 install -m 0644 %{SOURCE1} %{buildroot}%{_libdir}/systemd/system/deviced.service
104 install -m 0644 %{SOURCE2} %{buildroot}%{_libdir}/systemd/system/zbooting-done.service
105 install -m 0644 %{SOURCE3} %{buildroot}%{_libdir}/systemd/system/shutdown-notify.service
106 install -m 0644 %{SOURCE4} %{buildroot}%{_libdir}/systemd/system/deviced-pre.service
107 install -m 0644 %{SOURCE5} %{buildroot}%{_libdir}/systemd/system/devicectl-start@.service
108 install -m 0644 %{SOURCE6} %{buildroot}%{_libdir}/systemd/system/devicectl-stop@.service
109 ln -s ../deviced.service %{buildroot}%{_libdir}/systemd/system/multi-user.target.wants/deviced.service
110 # Temporary symlink
111 ln -s deviced.service %{buildroot}%{_libdir}/systemd/system/system-server.service
112 ln -s ../zbooting-done.service %{buildroot}%{_libdir}/systemd/system/graphical.target.wants/zbooting-done.service
113 ln -s ../shutdown-notify.service %{buildroot}%{_libdir}/systemd/system/shutdown.target.wants/shutdown-notify.service
114 ln -s ../devicectl-stop@.service %{buildroot}%{_libdir}/systemd/system/shutdown.target.wants/devicectl-stop@display.service
115 mkdir -p %{buildroot}%{_sysconfdir}/systemd/default-extra-dependencies/ignore-units.d/
116 ln -s %{_libdir}/systemd/system/deviced.service %{buildroot}%{_sysconfdir}/systemd/default-extra-dependencies/ignore-units.d/
117
118 mkdir -p %{buildroot}%{_datadir}/license
119 cp LICENSE.Apache-2.0 %{buildroot}/usr/share/license/%{name}
120 cp LICENSE.Apache-2.0 %{buildroot}/usr/share/license/libdeviced
121
122 %post
123 %if "%{?tizen_profile_name}" == "wearable"
124 %else
125 #memory type vconf key init
126 vconftool set -t int memory/sysman/mmc 0 -i -s system::vconf_system
127 vconftool set -t int memory/sysman/earjack_key 0 -i -s system::vconf_system
128 vconftool set -t int memory/sysman/cradle_status 0 -i -s system::vconf_system
129 vconftool set -t int memory/sysman/added_usb_storage 0 -i -s system::vconf_system
130 vconftool set -t int memory/sysman/removed_usb_storage 0 -i -s system::vconf_system
131 vconftool set -t int memory/sysman/earjack -1 -i -s system::vconf_system
132 vconftool set -t int memory/sysman/sliding_keyboard -1 -i -s system::vconf_system
133 vconftool set -t int memory/sysman/mmc_mount -1 -i -s system::vconf_system
134 vconftool set -t int memory/sysman/mmc_unmount -1 -i -s system::vconf_system
135 vconftool set -t int memory/sysman/mmc_format -1 -i -s system::vconf_system
136 vconftool set -t int memory/sysman/mmc_format_progress 0 -i -s system::vconf_system
137 vconftool set -t int memory/sysman/hdmi 0 -i -s system::vconf_system
138 vconftool set -t int memory/sysman/mmc_err_status 0 -i -s system::vconf_system
139 vconftool set -t int memory/private/sysman/enhance_pid 0 -i -s system::vconf_system
140 vconftool set -t int memory/private/sysman/siop_disable 0 -i -s system::vconf_system
141 vconftool set -t string memory/private/sysman/added_storage_uevent "" -i -s system::vconf_system
142 vconftool set -t string memory/private/sysman/removed_storage_uevent "" -u 5000 -i -s system::vconf_system
143 vconftool set -t string memory/private/sysman/siop_level_uevent "" -i -s system::vconf_system
144 #db type vconf key init
145 vconftool set -t int db/sysman/mmc_dev_changed 0 -i -s system::vconf_system
146 vconftool set -t int db/private/sysman/enhance_mode 0 -i -s system::vconf_system
147 vconftool set -t int db/private/sysman/enhance_scenario 0 -i -s system::vconf_system
148 vconftool set -t int db/private/sysman/enhance_tone 0 -i -s system::vconf_system
149 vconftool set -t int db/private/sysman/enhance_outdoor 0 -i -s system::vconf_system
150 vconftool set -t string db/private/sysman/mmc_device_id "" -i -s system::vconf_system
151 %endif
152
153 #memory type vconf key init
154 vconftool set -t int memory/sysman/usbhost_status -1 -i -s system::vconf_system
155 vconftool set -t int memory/sysman/charger_status 0 -i -s system::vconf_system
156 vconftool set -t int memory/sysman/charge_now 0 -i -s system::vconf_system
157 vconftool set -t int memory/sysman/battery_status_low -1 -i -s system::vconf_system
158 vconftool set -t int memory/sysman/battery_capacity -1 -i -s system::vconf_system
159 vconftool set -t int memory/sysman/usb_status -1 -i -s system::vconf_system
160 vconftool set -t int memory/sysman/factory_mode 0 -i -s system::vconf_system
161 vconftool set -t int memory/sysman/stime_changed 0 -i -s system::vconf_system
162 vconftool set -t int memory/sysman/power_off 0 -u 5000 -i -f -s system::vconf_system
163 vconftool set -t int memory/deviced/boot_power_on 0 -u 5000 -i -f -s system::vconf_system
164 vconftool set -t int memory/sysman/battery_level_status -1 -i -s system::vconf_system
165 vconftool set -t int memory/sysman/low_memory 1 -i -s system::vconf_system
166
167 #db type vconf key init
168 vconftool set -t int db/private/sysman/cool_down_mode 0 -i -s system::vconf_system
169 vconftool set -t bool db/private/deviced/lcd_brightness_init 0 -i -s system::vconf_system
170
171 vconftool set -t int memory/pm/state 0 -i -g 5000 -s system::vconf_system
172 vconftool set -t int memory/pm/camera_status 0 -i -s system::vconf_system
173 vconftool set -t int memory/pm/battery_timetofull -1 -i -s system::vconf_system
174 vconftool set -t int memory/pm/battery_timetoempty -1 -i -s system::vconf_system
175 vconftool set -t int memory/pm/sip_status 0 -i -g 5000 -s system::vconf_system
176 vconftool set -t int memory/pm/custom_brightness_status 0 -i -g 5000 -s system::vconf_system
177 vconftool set -t bool memory/pm/brt_changed_lpm 0 -i -s system::vconf_system
178 vconftool set -t int memory/pm/current_brt 60 -i -g 5000 -s system::vconf_system
179 vconftool set -t int memory/pm/lcdoff_source 0 -i -g 5000 -s system::vconf_system
180 vconftool set -t int memory/pm/key_ignore 0 -i -g 5000 -s system::vconf_system
181
182 #USB client
183 vconftool set -t int memory/usb/cur_mode "0" -u 0 -i -s system::vconf_system
184 vconftool set -t int db/usb/sel_mode "1" -s system::vconf_system
185 vconftool set -t int db/private/usb/usb_control "1" -u 0 -i -s system::vconf_system
186 vconftool set -t int memory/private/usb/conf_enabled "0" -u 0 -i -s system::vconf_system
187
188 systemctl daemon-reload
189 if [ $1 == 1 ]; then
190     systemctl restart deviced.service
191     systemctl restart zbooting-done.service
192 fi
193
194 if [ $1 == 2 ]; then # upgrade begins, it's rpm -Uvh
195     #buxton could be started by socket activation
196    systemctl start buxton.service
197 fi
198
199 %pre
200 #without updating services "daemon-reload" following systemctl stop is wait a
201 # lot of time
202 systemctl daemon-reload
203 if [ $1 == 2 ]; then # it's upgrade, for rpm -Uvh
204     systemctl stop buxton.service
205 fi
206
207 %preun
208 if [ $1 == 0 ]; then
209     systemctl stop deviced.service
210     systemctl stop zbooting-done.service
211 fi
212
213 %postun
214 systemctl daemon-reload
215
216 %files -n deviced
217 %{_bindir}/deviced-pre.sh
218 %{_bindir}/deviced
219 %{_bindir}/devicectl
220 %{_bindir}/deviced-auto-test
221 %{_datadir}/dbus-1/services/org.tizen.system.deviced-auto-test.service
222 %{_libdir}/systemd/system/deviced-auto-test.service
223 %{_libdir}/systemd/system/deviced.service
224 %{_libdir}/systemd/system/multi-user.target.wants/deviced.service
225 %{_sysconfdir}/systemd/default-extra-dependencies/ignore-units.d/deviced.service
226 # Temporary symlink service
227 %{_libdir}/systemd/system/system-server.service
228 %{_libdir}/systemd/system/zbooting-done.service
229 %{_libdir}/systemd/system/graphical.target.wants/zbooting-done.service
230 %{_libdir}/systemd/system/shutdown-notify.service
231 %{_libdir}/systemd/system/shutdown.target.wants/shutdown-notify.service
232 %{_libdir}/systemd/system/deviced-pre.service
233 %{_libdir}/systemd/system/devicectl-stop@.service
234 %{_libdir}/systemd/system/devicectl-start@.service
235 %{_libdir}/systemd/system/shutdown.target.wants/devicectl-stop@display.service
236 %{_datadir}/license/%{name}
237 %{_sysconfdir}/smack/accesses.d/deviced.efl
238 /etc/deviced/pass.conf
239 /etc/deviced/usb-client-configuration.conf
240 /etc/deviced/usb-client-operation.conf
241 %if "%{?tizen_profile_name}" == "wearable"
242 %else
243 /etc/deviced/led.conf
244 %{_bindir}/movi_format.sh
245 %{_bindir}/mmc-smack-label
246 %{_bindir}/fsck_msdosfs
247 %{_bindir}/newfs_msdos
248 %{_datadir}/license/fsck_msdosfs
249 %{_datadir}/license/newfs_msdos
250 %endif
251
252 %manifest deviced.manifest
253 %attr(110,root,root) /opt/etc/dump.d/module.d/dump_pm.sh
254 %{_sysconfdir}/deviced/display.conf
255 %{_sysconfdir}/deviced/mmc.conf
256 %{_sysconfdir}/deviced/battery.conf
257 %{_sysconfdir}/deviced/pmqos.conf
258 %{_sysconfdir}/deviced/storage.conf
259 %{_sysconfdir}/deviced/haptic.conf
260
261 %attr(750,root,root)%{_bindir}/start_dr.sh
262 %if %ENGINEER_MODE
263 %attr(750,root,root) %{_bindir}/set_usb_debug.sh
264 %attr(750,root,root) %{_bindir}/direct_set_debug.sh
265 %endif
266
267 %files -n libdeviced
268 %defattr(-,root,root,-)
269 %{_libdir}/libdeviced.so.*
270 %{_datadir}/license/libdeviced
271 %manifest libdeviced.manifest
272
273 %files -n libdeviced-devel
274 %defattr(-,root,root,-)
275 %{_includedir}/deviced/*.h
276 %{_libdir}/libdeviced.so
277 %{_libdir}/pkgconfig/deviced.pc