Fix session scripts and package update
[platform/core/system/tlm.git] / dists / rpm / tizen / packaging / tlm.spec
1 # enable debug features such as control environment variables
2 # WARNING! do not use for production builds as it will break security
3 %define debug_build 0
4 %define efl 0
5
6 %if %{debug_build} == 1
7 %define extra_config_options1 --enable-gtk-doc --enable-debug
8 %endif
9
10 %if %{efl} == 1
11 %define extra_config_options1 --enable-examples
12 %endif
13
14
15 Name: tlm
16 Summary: Login manager for Tizen
17 Version: 1.0.1
18 Release: 0
19 Group: System/Service
20 License: LGPL-2.1+
21 Source: %{name}-%{version}.tar.gz
22 URL: https://github.com/01org/tlm
23 Source1001: %{name}.manifest
24 Requires(post): /sbin/ldconfig, systemd
25 Requires(postun): /sbin/ldconfig, systemd
26 Requires: gumd
27 Requires: libsystemd
28 Requires: tlm-config
29 BuildRequires: pkgconfig(glib-2.0) >= 2.30
30 BuildRequires: pkgconfig(gobject-2.0)
31 BuildRequires: pkgconfig(gio-2.0)
32 BuildRequires: pkgconfig(gio-unix-2.0)
33 BuildRequires: pkgconfig(gmodule-2.0)
34 BuildRequires: pkgconfig(libgum)
35 BuildRequires: pam-devel
36 %if %{debug_build} == 1
37 BuildRequires: gtk-doc
38 %endif
39 %if %{efl} == 1
40 BuildRequires: pkgconfig(elementary)
41 %endif
42
43 %description
44 Login manager daemon for Tizen.
45
46
47 %package devel
48 Summary:    Development files for %{name}
49 Group:      Development/Libraries
50 Requires:   %{name} = %{version}-%{release}
51
52 %description devel
53 %{summary} package.
54
55
56 %package doc
57 Summary:    Documentation files for %{name}
58 Group:      Development/Libraries
59 Requires:   %{name} = %{version}-%{release}
60
61 %description doc
62 %{summary} package.
63
64
65 %if "%{profile}" != "ivi"
66
67 %package config-common
68 Summary:    Configuration files for common-profile
69 Group:      System/Service
70 Requires:   %{name} = %{version}-%{release}
71 Provides:   tlm-config
72
73 %description config-common
74 Tizen Login Manager configuration files for common-profile.
75
76 %else
77
78 %package config-ivi-singleseat
79 Summary:    Configuration files for ivi-profile with single seat
80 Group:      System/Service
81 Requires:   %{name} = %{version}-%{release}
82 Provides:   tlm-config
83 Conflicts:  tlm-config-ivi-multiseat, tlm-config-ivi-vtc1010
84
85 %description config-ivi-singleseat
86 Generic Tizen Login Manager configuration files for ivi-profile with
87 single seat.
88
89
90 %package config-ivi-multiseat
91 Summary:    Configuration files for ivi-profile with multi seat
92 Group:      System/Service
93 Requires:   %{name} = %{version}-%{release}
94 Provides:   tlm-config
95 Conflicts:  tlm-config-ivi-singleseat, tlm-config-ivi-vtc1010
96
97 %description config-ivi-multiseat
98 Generic Tizen Login Manager configuration files for ivi-profile with
99 multi seat.
100
101
102 %package config-ivi-vtc1010
103 Summary:    Configuration files for ivi-profile on VTC-1010
104 Group:      System/Service
105 Requires:   %{name} = %{version}-%{release}
106 Provides:   tlm-config
107 Conflicts:  tlm-config-ivi-singleseat, tlm-config-ivi-multiseat
108
109 %description config-ivi-vtc1010
110 Tizen Login Manager configuration files for ivi-profile on VTC-1010 hardware.
111
112 %endif
113
114
115 %prep
116 %setup -q -n %{name}-%{version}
117 cp %{SOURCE1001} .
118
119
120 %build
121 %if %{debug_build} == 1
122 ./autogen.sh
123 %endif
124 %reconfigure --enable-gum \
125              %{?extra_config_options1:%extra_config_options1} \
126              %{?extra_config_options2:%extra_config_options2}
127 make %{?_smp_mflags}
128
129
130 %install
131 rm -rf %{buildroot}
132 %make_install
133 rm -f %{buildroot}%{_sysconfdir}/tlm.conf
134 install -m 755 -d %{buildroot}%{_unitdir}
135 install -m 644 data/tlm.service %{buildroot}%{_unitdir}
136 install -m 755 -d %{buildroot}%{_sysconfdir}/pam.d
137 install -m 644 data/tlm-login %{buildroot}%{_sysconfdir}/pam.d/
138 install -m 644 data/tlm-default-login %{buildroot}%{_sysconfdir}/pam.d/
139 install -m 644 data/tlm-system-login %{buildroot}%{_sysconfdir}/pam.d/
140 install -m 755 -d %{buildroot}%{_sysconfdir}/session.d
141 install -m 755 -d %{buildroot}%{_sysconfdir}/xdg/weston
142 %if "%{profile}" == "ivi"
143 install -m 644 data/tizen-ivi/etc/tlm*.conf %{buildroot}%{_sysconfdir}
144 install -m 755 data/tizen-ivi/etc/session.d/* %{buildroot}%{_sysconfdir}/session.d/
145 install -m 644 data/tizen-ivi/weston-*.ini %{buildroot}%{_sysconfdir}/xdg/weston/
146 install -m 755 -d %{buildroot}%{_sysconfdir}/udev/rules.d
147 install -m 644 data/tizen-ivi/10-multiseat-vtc1010.rules %{buildroot}%{_sysconfdir}/udev/rules.d/
148 %else
149 install -m 644 data/tizen-common/etc/tlm.conf %{buildroot}%{_sysconfdir}
150 install -m 755 data/tizen-common/etc/session.d/* %{buildroot}%{_sysconfdir}/session.d/
151 %endif
152
153
154 %post
155 /sbin/ldconfig
156 /usr/bin/systemctl enable tlm
157 /usr/bin/systemctl daemon-reload
158
159
160 %preun
161 if [ $1 == 0 ]; then
162         /usr/bin/systemctl disable tlm
163         /usr/bin/systemctl daemon-reload
164 fi
165
166 %postun -p /sbin/ldconfig
167
168
169 %if "%{profile}" == "ivi"
170
171 %post config-ivi-singleseat
172 if [ ! -e /etc/tlm.conf ] || [ -h /etc/tlm.conf ]; then
173 ln -s -f /etc/tlm-singleseat.conf /etc/tlm.conf
174 fi
175
176 %postun config-ivi-singleseat
177 if [ -h /etc/tlm.conf ]; then
178 rm -f /etc/tlm.conf
179 fi
180
181
182 %post config-ivi-multiseat
183 if [ ! -e /etc/tlm.conf ] || [ -h /etc/tlm.conf ]; then
184 ln -s -f /etc/tlm-multiseat.conf /etc/tlm.conf
185 fi
186
187 %postun config-ivi-multiseat
188 if [ -h /etc/tlm.conf ]; then
189 rm -f /etc/tlm.conf
190 fi
191
192
193 %post config-ivi-vtc1010
194 if [ ! -e /etc/tlm.conf ] || [ -h /etc/tlm.conf ]; then
195 ln -s -f /etc/tlm-vtc1010.conf /etc/tlm.conf
196 fi
197
198 %postun config-ivi-vtc1010
199 if [ -h /etc/tlm.conf ]; then
200 rm -f /etc/tlm.conf
201 fi
202
203 %endif
204
205
206 %files
207 %defattr(-,root,root,-)
208 %manifest %{name}.manifest
209 %license COPYING
210 %doc AUTHORS NEWS README
211 %{_bindir}/%{name}
212 %{_bindir}/%{name}-sessiond
213 %{_bindir}/%{name}-client
214 %{_bindir}/%{name}-weston-launch
215 %{_libdir}/lib%{name}*.so.*
216 %{_libdir}/%{name}/plugins/*.so*
217 %{_unitdir}/tlm.service
218 %config %{_sysconfdir}/pam.d/tlm-login
219 %config %{_sysconfdir}/pam.d/tlm-default-login
220 %config %{_sysconfdir}/pam.d/tlm-system-login
221
222
223 %files devel
224 %defattr(-,root,root,-)
225 %{_includedir}/%{name}/*.h
226 %{_libdir}/lib%{name}*.so
227 %{_libdir}/pkgconfig/%{name}.pc
228 %if %{efl} == 1
229 %{_bindir}/tlm-ui
230 %endif
231
232
233 %files doc
234 %defattr(-,root,root,-)
235 %{_datadir}/gtk-doc/html/tlm/*
236
237
238 %if "%{profile}" != "ivi"
239
240 %files config-common
241 %defattr(-,root,root,-)
242 %manifest %{name}.manifest
243 %config(noreplace) %{_sysconfdir}/tlm.conf
244 %config(noreplace) %{_sysconfdir}/session.d/*
245
246 %else
247
248 %files config-ivi-singleseat
249 %defattr(-,root,root,-)
250 %manifest %{name}.manifest
251 %config(noreplace) %{_sysconfdir}/tlm-singleseat.conf
252 %config(noreplace) %{_sysconfdir}/session.d/genivi-session-singleseat
253 %config(noreplace) %{_sysconfdir}/session.d/user-session
254 %config(noreplace) %{_sysconfdir}/session.d/user-session.modello
255 %config(noreplace) %{_sysconfdir}/xdg/weston/weston-genivi.ini
256 %config(noreplace) %{_sysconfdir}/xdg/weston/weston-user.ini
257
258
259 %files config-ivi-multiseat
260 %defattr(-,root,root,-)
261 %manifest %{name}.manifest
262 %config(noreplace) %{_sysconfdir}/tlm-multiseat.conf
263 %config(noreplace) %{_sysconfdir}/session.d/genivi-session-multiseat
264 %config(noreplace) %{_sysconfdir}/session.d/user-session
265 %config(noreplace) %{_sysconfdir}/session.d/user-session.modello
266 %config(noreplace) %{_sysconfdir}/xdg/weston/weston-genivi.ini
267 %config(noreplace) %{_sysconfdir}/xdg/weston/weston-user.ini
268
269
270 %files config-ivi-vtc1010
271 %defattr(-,root,root,-)
272 %manifest %{name}.manifest
273 %config(noreplace) %{_sysconfdir}/tlm-vtc1010.conf
274 %config(noreplace) %{_sysconfdir}/session.d/genivi-session-vtc1010
275 %config(noreplace) %{_sysconfdir}/session.d/user-session
276 %config(noreplace) %{_sysconfdir}/session.d/user-session.modello
277 %config(noreplace) %{_sysconfdir}/xdg/weston/weston-genivi-vtc1010.ini
278 %config(noreplace) %{_sysconfdir}/xdg/weston/weston-user.ini
279 %config(noreplace) %{_sysconfdir}/udev/rules.d/*
280
281 %endif
282