1 # enable debug features such as control environment variables
2 # WARNING! do not use for production builds as it will break security
6 %if %{debug_build} == 1
7 %define extra_config_options1 --enable-gtk-doc --enable-debug
11 %define extra_config_options1 --enable-examples
16 Summary: Login manager for Tizen
21 URL: https://github.com/01org/tlm
22 Source: %{name}-%{version}.tar.gz
23 Source1001: %{name}.manifest
24 Requires(post): /sbin/ldconfig
25 Requires(post): systemd
26 Requires(postun): /sbin/ldconfig
27 Requires(postun): systemd
28 Requires(post): tizen-platform-config
30 Requires: pam-modules-extra
31 BuildRequires: pkgconfig(glib-2.0) >= 2.38
32 BuildRequires: pkgconfig(gobject-2.0)
33 BuildRequires: pkgconfig(gio-2.0)
34 BuildRequires: pkgconfig(gio-unix-2.0)
35 BuildRequires: pkgconfig(gmodule-2.0)
36 BuildRequires: pkgconfig(libgum)
37 BuildRequires: pam-devel
38 BuildRequires: pkgconfig(libtzplatform-config)
39 %if %{debug_build} == 1
40 BuildRequires: gtk-doc
43 BuildRequires: pkgconfig(elementary)
47 TLM is a daemon that handles user logins in a multi-user, multi-seat system by
48 authenticating the users through PAM, and setting up, launching, and tracking
52 Summary: Dev files for %{name}
53 Group: Development/Libraries
54 Requires: %{name} = %{version}-%{release}
57 Development files for %{name}.
61 Summary: Doc files for %{name}
62 Group: Development/Libraries
63 Requires: %{name} = %{version}-%{release}
66 Documentation files for %{name}.
69 %package config-common
70 Summary: Common configuration files
72 Requires: %{name} = %{version}-%{release}
73 Provides: %{name}-config
75 %description config-common
76 Tiny Login Manager common configuration files.
78 %package config-common-singleseat
79 Summary: Common configuration files with single seat
81 Requires: %{name} = %{version}-%{release}
82 Provides: %{name}-config
84 %description config-common-singleseat
85 Tiny Login Manager common configuration files with signle seat.
88 %setup -q -n %{name}-%{version}
93 # for Address space layout randomization
94 export CFLAGS="$CFLAGS -fPIE"
95 export LDFLAGS="$LDFLAGS -pie"
97 %if %{debug_build} == 1
100 %reconfigure --enable-gum \
101 %{?extra_config_options1:%extra_config_options1} \
102 %{?extra_config_options2:%extra_config_options2}
103 %__make %{?_smp_mflags}
109 rm -f %{buildroot}%{_sysconfdir}/tlm.conf
110 install -m 755 -d %{buildroot}%{_unitdir}
111 install -m 644 data/tlm.service %{buildroot}%{_unitdir}
112 mkdir -p %{buildroot}%{_unitdir}/multi-user.target.wants
113 ln -s ../tlm.service %{buildroot}%{_unitdir}/multi-user.target.wants/tlm.service
114 install -m 755 -d %{buildroot}%{_sysconfdir}/pam.d
115 install -m 644 data/tlm-login %{buildroot}%{_sysconfdir}/pam.d/
116 install -m 644 data/tlm-default-login %{buildroot}%{_sysconfdir}/pam.d/
117 install -m 644 data/tlm-system-login %{buildroot}%{_sysconfdir}/pam.d/
118 install -m 755 -d %{buildroot}%{_sysconfdir}/session.d
119 install -m 644 data/tizen-common/etc/tlm*.conf %{buildroot}%{_sysconfdir}
120 install -m 755 data/tizen-common/etc/session.d/* %{buildroot}%{_sysconfdir}/session.d/
121 chmod 700 %{buildroot}%{_bindir}/%{name}
122 chmod 700 %{buildroot}%{_bindir}/%{name}-sessiond
123 chmod 700 %{buildroot}%{_bindir}/%{name}-launcher
128 %postun -p /sbin/ldconfig
132 if [ ! -e /etc/tlm.conf ] || [ -h /etc/tlm.conf ]; then
133 ln -s -f /etc/tlm-default.conf /etc/tlm.conf
136 systemctl daemon-reload
140 systemctl disable tlm
141 systemctl daemon-reload
144 %postun config-common
145 if [ -h /etc/tlm.conf ] && [ $1 == 0 ]; then
150 %post config-common-singleseat
151 if [ ! -e /etc/tlm.conf ] || [ -h /etc/tlm.conf ]; then
152 ln -s -f /etc/tlm-singleseat.conf /etc/tlm.conf
154 #systemctl enable tlm
155 #systemctl daemon-reload
157 #%preun config-common-singleseat
158 #if [ $1 == 0 ]; then
159 #systemctl disable tlm
160 #systemctl daemon-reload
163 %postun config-common-singleseat
164 if [ -h /etc/tlm.conf ] && [ $1 == 0 ]; then
169 %defattr(-,root,root,-)
170 %manifest %{name}.manifest
172 %doc AUTHORS NEWS README
174 %{_bindir}/%{name}-sessiond
175 %{_bindir}/%{name}-client
176 %{_bindir}/%{name}-launcher
177 %{_libdir}/lib%{name}*.so.*
178 %{_libdir}/%{name}/plugins/*.so*
179 %{_unitdir}/tlm.service
180 %{_unitdir}/multi-user.target.wants/tlm.service
181 %config %{_sysconfdir}/pam.d/tlm-login
182 %config %{_sysconfdir}/pam.d/tlm-default-login
183 %config %{_sysconfdir}/pam.d/tlm-system-login
187 %defattr(-,root,root,-)
188 %{_includedir}/%{name}/*.h
189 %{_libdir}/lib%{name}*.so
190 %{_libdir}/pkgconfig/%{name}.pc
197 %defattr(-,root,root,-)
198 %{_datadir}/gtk-doc/html/tlm/*
202 %defattr(-,root,root,-)
203 %manifest %{name}.manifest
205 %config(noreplace) %{_sysconfdir}/tlm-default.conf
206 %config(noreplace) %{_sysconfdir}/session.d/*
208 %files config-common-singleseat
209 %defattr(-,root,root,-)
210 %manifest %{name}.manifest
212 %config(noreplace) %{_sysconfdir}/tlm-singleseat.conf