commenting if containing chsmack
[platform/core/messaging/email-service.git] / packaging / email-service.spec
1 Name:       email-service
2 Summary:    E-mail Framework Middleware package
3 Version:    0.10.101
4 Release:    1
5 Group:      Messaging/Service
6 License:    Apache-2.0
7 Source0:    %{name}-%{version}.tar.gz
8 Source1:    email.service
9 Source1001:     email-service.manifest
10 Requires: connman
11 Requires: webkit2-efl
12 Requires(post):    /sbin/ldconfig
13 Requires(post):    systemd
14 Requires(post):    /usr/bin/sqlite3
15 Requires(post):    /usr/bin/vconftool
16 Requires(preun):   systemd
17 Requires(postun):  /sbin/ldconfig
18 Requires(postun):  systemd
19 BuildRequires:  cmake
20 BuildRequires:  pkgconfig(glib-2.0)
21 BuildRequires:  pkgconfig(gthread-2.0)
22 BuildRequires:  pkgconfig(aul)
23 BuildRequires:  pkgconfig(vconf-internal-keys)
24 BuildRequires:  pkgconfig(vconf)
25 BuildRequires:  pkgconfig(dlog)
26 BuildRequires:  pkgconfig(db-util)
27 BuildRequires:  pkgconfig(dbus-1)
28 BuildRequires:  pkgconfig(dbus-glib-1)
29 BuildRequires:  pkgconfig(contacts-service2)
30 BuildRequires:  pkgconfig(uw-imap-toolkit)
31 BuildRequires:  pkgconfig(drm-client)
32 BuildRequires:  pkgconfig(openssl)
33 BuildRequires:  pkgconfig(alarm-service)
34 BuildRequires:  pkgconfig(mm-player)
35 BuildRequires:  pkgconfig(mm-session)
36 BuildRequires:  pkgconfig(secure-storage)
37 BuildRequires:  pkgconfig(notification)
38 BuildRequires:  pkgconfig(accounts-svc)
39 BuildRequires:  pkgconfig(libsystemd-daemon)
40 BuildRequires:  pkgconfig(capi-base-common)
41 BuildRequires:  pkgconfig(libcurl)
42 BuildRequires:  pkgconfig(libxml-2.0)
43 BuildRequires:  pkgconfig(gconf-2.0)
44 BuildRequires:  pkgconfig(cert-svc)
45 BuildRequires:  pkgconfig(badge)
46 BuildRequires:  pkgconfig(feedback)
47 BuildRequires:  pkgconfig(capi-appfw-application)
48 BuildRequires:  pkgconfig(libwbxml2)
49 BuildRequires:  pkgconfig(msg-service)
50
51 %description
52 E-mail Framework Middleware Library/Binary package
53
54 %package tests
55 Summary:    E-mail Framework Middleware - Test Applications
56 Group:      Messaging/Testing
57 Requires:   %{name} = %{version}-%{release}
58
59 %description tests
60 E-mail Framework Middleware test application
61
62 %package devel
63 Summary:    E-mail Framework Middleware Development package
64 Group:      Development/Messaging
65 Requires:   %{name} = %{version}-%{release}
66
67 %description devel
68 E-mail Framework Middleware Development package
69
70
71 %prep
72 %setup -q
73 cp %{SOURCE1001} .
74
75 %build
76
77 export CFLAGS="${CFLAGS} -fPIC -Wall -g -fvisibility=hidden"
78 export CXXFLAGS="${CXXFLAGS} -fPIC -Wall -g -fvisibility=hidden"
79
80 %cmake .
81
82 make %{?_smp_mflags}
83
84 %install
85 mkdir -p %{buildroot}/usr/share/license
86 %make_install
87
88 mkdir -p %{buildroot}/usr/lib/systemd/user/tizen-middleware.target.wants
89 install -m 0644 %SOURCE1 %{buildroot}/usr/lib/systemd/user/
90 ln -sf ../email.service %{buildroot}/usr/lib/systemd/user/tizen-middleware.target.wants/
91
92
93 %post
94 /sbin/ldconfig
95
96 #################################################################
97 # Add preset account information
98 #################################################################
99 echo "[EMAIL-SERVICE] Start adding preset account information..." 
100
101 ################################################################################################
102
103 # for default mail slot szie
104 vconftool set -t int    db/private/email-service/slot_size "100"        -g 6514
105
106 # for latest mail id
107 vconftool set -t int    db/private/email-service/latest_mail_id "0"     -g 6514
108
109 # for default account id
110 vconftool set -t int    db/private/email-service/default_account_id "0" -g 6514
111
112 # for default account id
113 vconftool set -t int    memory/sync/email "0" -i -g 6514
114
115 # for priority send 
116 vconftool set -t string db/private/email-service/noti_ringtone_path "Whistle.mp3" -g 6514
117 vconftool set -t int    db/private/email-service/noti_rep_type "0" -g 6514
118 vconftool set -t bool   db/private/email-service/noti_notification_ticker "0" -g 6514
119 vconftool set -t bool   db/private/email-service/noti_display_content_ticker "0" -g 6514
120 vconftool set -t bool   db/private/email-service/noti_badge_ticker "0" -i -g 6514
121 vconftool set -t int    db/private/email-service/noti_private_id/1 "0" -i -g 6514
122 vconftool set -t int    db/private/email-service/noti_private_id/2 "0" -i -g 6514
123 vconftool set -t int    db/private/email-service/noti_private_id/3 "0" -i -g 6514
124 vconftool set -t int    db/private/email-service/noti_private_id/4 "0" -i -g 6514
125 vconftool set -t int    db/private/email-service/noti_private_id/5 "0" -i -g 6514
126 vconftool set -t int    db/private/email-service/noti_private_id/6 "0" -i -g 6514
127 vconftool set -t int    db/private/email-service/noti_private_id/7 "0" -i -g 6514
128 vconftool set -t int    db/private/email-service/noti_private_id/8 "0" -i -g 6514
129 vconftool set -t int    db/private/email-service/noti_private_id/9 "0" -i -g 6514
130 vconftool set -t int    db/private/email-service/noti_private_id/10 "0" -i -g 6514
131
132 #################################################################
133 # Set executin script
134 #################################################################
135 echo "[EMAIL-SERVICE] Set executing script ..."
136 EMAIL_SERVICE_EXEC_SCRIPT=/etc/rc.d/init.d/email-service
137 EMAIL_SERVICE_BOOT_SCRIPT=/etc/rc.d/rc3.d/S70email-service
138 EMAIL_SERVICE_FASTBOOT_SCRIPT=/etc/rc.d/rc5.d/S70email-service
139 echo '#!/bin/sh' > ${EMAIL_SERVICE_EXEC_SCRIPT}
140 echo 'account_count=$(sqlite3 /opt/usr/dbspace/.email-service.db "select COUNT(*) from mail_account_tbl")' >> ${EMAIL_SERVICE_EXEC_SCRIPT}
141 echo 'if [ "$(echo "$account_count" | cut -c0-1)" == "0" ]' >> ${EMAIL_SERVICE_EXEC_SCRIPT}
142 echo 'then' >> ${EMAIL_SERVICE_EXEC_SCRIPT}
143 echo '  echo 'There is no account'' >> ${EMAIL_SERVICE_EXEC_SCRIPT}
144 echo 'elif [ "$(echo "$account_count" | cut -c0-1)" == "" ]' >> ${EMAIL_SERVICE_EXEC_SCRIPT}
145 echo 'then' >> ${EMAIL_SERVICE_EXEC_SCRIPT}
146 echo '  echo 'DB failure'' >> ${EMAIL_SERVICE_EXEC_SCRIPT}
147 echo 'else' >> ${EMAIL_SERVICE_EXEC_SCRIPT}
148 echo '  /usr/bin/email-service & ' >> ${EMAIL_SERVICE_EXEC_SCRIPT}
149 echo 'fi' >> ${EMAIL_SERVICE_EXEC_SCRIPT}
150 chmod 755 ${EMAIL_SERVICE_EXEC_SCRIPT}
151 rm -rf ${EMAIL_SERVICE_BOOT_SCRIPT}
152 rm -rf ${EMAIL_SERVICE_FASTBOOT_SCRIPT}
153 ln -s ${EMAIL_SERVICE_EXEC_SCRIPT} ${EMAIL_SERVICE_BOOT_SCRIPT} 
154 ln -s ${EMAIL_SERVICE_EXEC_SCRIPT} ${EMAIL_SERVICE_FASTBOOT_SCRIPT}
155 echo "[EMAIL-SERVICE] Finish executing script ..."
156
157 #################################################################
158 # Create DB file and tables.
159 #################################################################
160 echo "[EMAIL-SERVICE] Creating Email Tables ..."
161 mkdir -p /opt/usr
162 mkdir -p /opt/usr/dbspace
163
164 sqlite3 /opt/usr/dbspace/.email-service.db 'PRAGMA journal_mode = PERSIST;'
165 sqlite3 /opt/usr/dbspace/.email-service.db < /opt/usr/data/email/res/email-service.sql
166
167 echo "[EMAIL-SERVICE] Finish Creating Email Tables."
168
169 chgrp 6006 /opt/usr/dbspace/.email-service.db*
170 chmod 664 /opt/usr/dbspace/.email-service.db
171 chmod 664 /opt/usr/dbspace/.email-service.db-journal
172
173 mkdir -m775 -p /opt/usr/data/email/.email_data
174 chgrp 6006 /opt/usr/data/email/.email_data
175 #chsmack -a 'email-service' /opt/usr/data/email/.email_data
176
177 mkdir -m775 -p /opt/usr/data/email/.email_data/tmp
178 chgrp 6006 /opt/usr/data/email/.email_data/tmp
179 #chsmack -a 'email-service' /opt/usr/data/email/.email_data/tmp
180
181 mkdir -p /opt/share/cert-svc/certs/trusteduser/email
182 chgrp 6006 /opt/share/cert-svc/certs/trusteduser/email
183
184 #if [ -f /opt/usr/dbspace/.email-service.db ]
185 #then
186 #       chsmack -a 'email-service::db' /opt/usr/dbspace/.email-service.db*
187 #fi
188
189 systemctl daemon-reload
190 if [ $1 == 1 ]; then
191     systemctl restart email.service
192 fi
193
194 %preun
195 if [ $1 == 0]; then
196     systemctl stop email.service
197 fi
198
199 %postun
200 /sbin/ldconfig
201 systemctl daemon-reload
202
203
204 %files
205 %manifest %{name}.manifest
206 #%manifest email-service.manifest
207 %{_bindir}/email-service
208 /opt/usr/data/email/res/*
209 %{_libdir}/lib*.so.*
210 /usr/lib/systemd/user/email.service
211 /usr/lib/systemd/user/tizen-middleware.target.wants/email.service
212 /usr/share/dbus-1/services/email-service.service
213 /usr/share/license/email-service/LICENSE
214
215 /opt/etc/smack/accesses.d/email-service.rule
216
217 %files tests
218 %manifest %{name}.manifest
219 /usr/bin/email-test-app
220
221 %files devel
222 %manifest %{name}.manifest
223 %{_includedir}/email-service/*.h
224 %{_libdir}/lib*.so
225 %{_libdir}/pkgconfig/*.pc