1 #%define _unpackaged_files_terminate_build 0
2 #%define debug_package %{nil}
4 %define temp_wait_mount 1
7 Summary: Target specific system configuration files
12 Source0: %{name}-%{version}.tar.bz2
13 Source1: %{name}.manifest
14 Source2: liblazymount.manifest
15 Source3: systemd-user-helper.manifest
17 Requires(post): /usr/bin/systemctl
18 Requires(post): /usr/bin/vconftool
19 BuildRequires: pkgconfig(vconf)
20 BuildRequires: pkgconfig(libsystemd)
21 BuildRequires: pkgconfig(libtzplatform-config)
24 This package provides target specific system configuration files.
27 Summary: U3/XU3 specific system configuration files
28 Requires: %{name} = %{version}-%{release}
29 Requires: %{name}-exynos = %{version}-%{release}
33 This package provides U3/XU3 specific system configuration files.
36 Summary: Note4 specific system configuration files
37 Requires: %{name} = %{version}-%{release}
38 Requires: %{name}-exynos = %{version}-%{release}
42 This package provides Note4 specific system configuration files.
45 Summary: Exynos specific system configuration files
46 Requires: %{name} = %{version}-%{release}
50 This package provides Exynos specific system configuration files.
53 Summary: Spreadtrum specific system configuration files
54 Requires: %{name} = %{version}-%{release}
57 %description spreadtrum
58 This package provides Spreadtrum specific system configuration files.
61 Summary: Circle specific system configuration files
62 Requires: %{name} = %{version}-%{release}
66 This package provides Circle specific system configuration files.
68 %package -n liblazymount
69 Summary: Library for lazy mount feature
72 Requires: liblazymount = %{version}
74 %description -n liblazymount
75 Library for lazy mount feature. It supports some interface functions.
77 %package -n liblazymount-devel
78 Summary: Development library for lazy mount feature
81 Requires: liblazymount = %{version}
83 %description -n liblazymount-devel
84 Development library for lazy mount feature.It supports some interface functions.
86 %package -n systemd-user-helper
87 Summary: Systemd user launch helper for supporting Tizen specific feature
90 %description -n systemd-user-helper
91 Systemd user launch helper supports Tizen specific feature like directory compatibility and container.
93 %package -n system-upgrade
94 Summary: System upgrade available patch
97 %description -n system-upgrade
98 Systemd offline system update activation package
101 Summary: ivi specific system configuration files
102 Requires: %{name} = %{version}-%{release}
105 %description profile_ivi
106 This package provides ivi specific system configuration files.
119 --prefix=%{_prefix} \
120 --disable-debug-mode \
123 %__make %{?jobs:-j%jobs}
129 mkdir -p %{buildroot}%{_unitdir}
130 mkdir -p %{buildroot}/csa
131 mkdir -p %{buildroot}/initrd
132 install -m 644 units/resize2fs@.service %{buildroot}%{_unitdir}
133 install -m 644 units/tizen-system-env.service %{buildroot}%{_unitdir}
134 install -m 644 units/ivi-network.service %{buildroot}%{_unitdir}
137 install -m 644 units/csa.mount %{buildroot}%{_unitdir}
138 mkdir -p %{buildroot}%{_unitdir}/local-fs.target.wants
139 ln -s ../csa.mount %{buildroot}%{_unitdir}/local-fs.target.wants/csa.mount
141 # Resize partition for 3-parted target
142 mkdir -p %{buildroot}%{_unitdir}/basic.target.wants
143 ln -s ../resize2fs@.service %{buildroot}%{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\\x2dlabel-system\\x2ddata.service
144 ln -s ../resize2fs@.service %{buildroot}%{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\\x2dlabel-user.service
145 ln -s ../resize2fs@.service %{buildroot}%{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\\x2dlabel-rootfs.service
147 ln -s ../resize2fs@.service %{buildroot}%{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\\x2dpartlabel-user.service
148 ln -s ../resize2fs@.service %{buildroot}%{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\\x2dpartlabel-system\\x2ddata.service
150 ln -s ../tizen-system-env.service %{buildroot}%{_unitdir}/basic.target.wants/tizen-system-env.service
151 %install_service multi-user.target.wants ivi-network.service
153 mkdir -p %{buildroot}%{_prefix}/lib/udev/rules.d/
154 install -m 644 rules/51-system-plugin-exynos.rules %{buildroot}%{_prefix}/lib/udev/rules.d/
155 install -m 644 rules/51-system-plugin-spreadtrum.rules %{buildroot}%{_prefix}/lib/udev/rules.d/
158 install -m 644 units/umount-opt.service %{buildroot}%{_unitdir}
159 mkdir -p %{buildroot}%{_unitdir}/local-fs-pre.target.wants
160 ln -s ../umount-opt.service %{buildroot}%{_unitdir}/local-fs-pre.target.wants/umount-opt.service
163 mkdir -p %{buildroot}%{_sysconfdir}
164 install -m 644 etc/fstab %{buildroot}%{_sysconfdir}
165 # ugly temporary patch for initrd wearable
166 install -m 644 etc/fstab_initrd %{buildroot}%{_sysconfdir}
168 install -m 644 etc/fstab_lazymnt %{buildroot}%{_sysconfdir}
169 install -m 644 etc/fstab_initrd_lazymnt %{buildroot}%{_sysconfdir}
170 %if %{temp_wait_mount}
171 mkdir -p %{buildroot}%{_unitdir_user}/basic.target.wants
172 install -m 644 units/wait-user-mount.service %{buildroot}%{_unitdir_user}
173 ln -s ../wait-user-mount.service %{buildroot}%{_unitdir_user}/basic.target.wants/wait-user-mount.service
177 mkdir -p %{buildroot}%{_unitdir}/graphical.target.wants
178 install -m 644 units/tizen-fstrim-user.timer %{buildroot}%{_unitdir}
179 ln -s ../tizen-fstrim-user.timer %{buildroot}%{_unitdir}/graphical.target.wants/tizen-fstrim-user.timer
180 install -m 644 units/tizen-fstrim-user.service %{buildroot}%{_unitdir}
181 mkdir -p %{buildroot}%{_bindir}
182 install -m 755 scripts/tizen-fstrim-on-charge.sh %{buildroot}%{_bindir}
185 mkdir -p %{buildroot}%{_datadir}
186 cp -r upgrade %{buildroot}%{_datadir}
187 mkdir -p %{buildroot}%{_unitdir}/system-update.target.wants
188 install -m 644 units/offline-update.service %{buildroot}%{_unitdir}
189 ln -s ../offline-update.service %{buildroot}%{_unitdir}/system-update.target.wants/offline-update.service
190 ln -s %{_datadir}/upgrade %{buildroot}/system-update
196 systemctl daemon-reload
198 %post -n liblazymount
200 /usr/bin/vconftool set -f -t int db/system/lazy_mount_show_ui 0
201 systemctl daemon-reload
203 %postun -n liblazymount -p /sbin/ldconfig
206 %manifest %{name}.manifest
207 %license LICENSE.Apache-2.0
208 %{_unitdir}/resize2fs@.service
209 %{_unitdir}/tizen-system-env.service
210 %{_unitdir}/basic.target.wants/tizen-system-env.service
213 %manifest %{name}.manifest
214 %{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\x2dlabel-system\x2ddata.service
215 %{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\x2dlabel-user.service
216 %{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\x2dlabel-rootfs.service
220 %manifest %{name}.manifest
221 %{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\x2dlabel-system\x2ddata.service
222 %{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\x2dlabel-user.service
223 %{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\x2dlabel-rootfs.service
224 %{_sysconfdir}/fstab_lazymnt
225 %{_unitdir}/graphical.target.wants/tizen-fstrim-user.timer
226 %{_unitdir}/tizen-fstrim-user.timer
227 %{_unitdir}/tizen-fstrim-user.service
228 %{_bindir}/tizen-fstrim-on-charge.sh
231 %manifest %{name}.manifest
232 %{_prefix}/lib/udev/rules.d/51-system-plugin-exynos.rules
235 %manifest %{name}.manifest
238 %{_sysconfdir}/fstab_initrd
239 %{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\x2dpartlabel-user.service
240 %{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\x2dpartlabel-system\x2ddata.service
241 %{_unitdir}/csa.mount
242 %{_unitdir}/local-fs.target.wants/csa.mount
243 %{_unitdir}/umount-opt.service
244 %{_unitdir}/local-fs-pre.target.wants/umount-opt.service
246 # ugly temporary patch for initrd wearable
248 rm %{_sysconfdir}/fstab
249 mv %{_sysconfdir}/fstab_initrd %{_sysconfdir}/fstab
252 rm %{_sysconfdir}/fstab
253 mv %{_sysconfdir}/fstab_initrd_lazymnt %{_sysconfdir}/fstab
255 rm %{_sysconfdir}/fstab
256 mv %{_sysconfdir}/fstab_lazymnt %{_sysconfdir}/fstab
259 %manifest %{name}.manifest
262 %{_prefix}/lib/udev/rules.d/51-system-plugin-spreadtrum.rules
263 %{_unitdir}/tizen-system-env.service
264 %{_sysconfdir}/fstab_initrd_lazymnt
265 %{_unitdir}/basic.target.wants/tizen-system-env.service
266 %{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\x2dpartlabel-user.service
267 %{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\x2dpartlabel-system\x2ddata.service
268 %{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\x2dlabel-rootfs.service
269 %{_unitdir}/csa.mount
270 %{_unitdir}/local-fs.target.wants/csa.mount
271 %{_unitdir}/umount-opt.service
272 %{_unitdir}/local-fs-pre.target.wants/umount-opt.service
273 %{_unitdir}/graphical.target.wants/tizen-fstrim-user.timer
274 %{_unitdir}/tizen-fstrim-user.timer
275 %{_unitdir}/tizen-fstrim-user.service
276 %{_bindir}/tizen-fstrim-on-charge.sh
278 %files -n liblazymount
279 %defattr(-,root,root,-)
280 %{_libdir}/liblazymount.so.*
281 %manifest liblazymount.manifest
282 %{_unitdir}/basic.target.wants/lazy_mount.path
283 %{_unitdir}/lazy_mount.path
284 %{_unitdir}/lazy_mount.service
285 %{_bindir}/mount-user.sh
286 %if %{temp_wait_mount}
287 %{_bindir}/test_lazymount
288 %{_unitdir_user}/basic.target.wants/wait-user-mount.service
289 %{_unitdir_user}/wait-user-mount.service
292 %files -n liblazymount-devel
293 %defattr(-,root,root,-)
294 %manifest liblazymount.manifest
295 %{_libdir}/liblazymount.so
296 %{_includedir}/lazymount/lazy_mount.h
297 %{_libdir}/pkgconfig/liblazymount.pc
298 %if ! %{temp_wait_mount}
299 %{_bindir}/test_lazymount
302 %files -n system-upgrade
304 %{_unitdir}/offline-update.service
305 %{_unitdir}/system-update.target.wants/offline-update.service
308 %files -n systemd-user-helper
309 %manifest systemd-user-helper.manifest
310 %caps(cap_sys_admin,cap_mac_admin,cap_mac_override,cap_dac_override,cap_setgid=ei) %{_bindir}/systemd_user_helper
312 %posttrans -n systemd-user-helper
313 cp -a /usr/lib/systemd/system/user\@.service /usr/lib/systemd/system/__user@.service
314 /usr/bin/sed -i -e 's/Type=\(.*\)/Type=simple/' /usr/lib/systemd/system/user\@.service
315 /usr/bin/sed -i -e 's/ExecStart=\(.*\)/ExecStart=\/usr\/bin\/systemd_user_helper %i/' /usr/lib/systemd/system/user\@.service
316 /usr/bin/sed -i -e '/RemainAfterExit=\(.*\)/d' /usr/lib/systemd/system/user\@.service
317 echo 'RemainAfterExit=yes' >> /usr/lib/systemd/system/user\@.service
320 %{_unitdir}/ivi-network.service
321 %{_unitdir}/multi-user.target.wants/ivi-network.service