1 #%define _unpackaged_files_terminate_build 0
2 #%define debug_package %{nil}
5 Summary: Target specific system configuration files
10 Source0: %{name}-%{version}.tar.bz2
11 Source1: %{name}.manifest
12 Source2: liblazymount.manifest
14 Requires(post): /usr/bin/systemctl
15 Requires(post): /usr/bin/udevadm
16 BuildRequires: pkgconfig(vconf)
17 BuildRequires: pkgconfig(libsystemd)
20 This package provides target specific system configuration files.
22 %package device-spreadtrum
23 Summary: Spreadtrum specific system configuration files
24 Requires: %{name} = %{version}-%{release}
27 %description device-spreadtrum
28 This package provides Spreadtrum specific system configuration files.
31 Summary: Note4 specific system configuration files
32 Requires: %{name} = %{version}-%{release}
35 %description device-n4
36 This package provides Note4 specific system configuration files.
38 %package device-circle
39 Summary: Circle specific system configuration files
40 Requires: %{name} = %{version}-%{release}
43 %description device-circle
44 This package provides Circle specific system configuration files.
47 Summary: U3/XU3 specific system configuration files
48 Requires: %{name} = %{version}-%{release}
51 %description device-u3
52 This package provides U3/XU3 specific system configuration files.
56 Requires: %{name} = %{version}-%{release}
59 %description device-rpi3
60 This package provides system configuration files for the RPI3 device.
62 %package feature-init_wrapper
63 Summary: Support init.wrapper booting.
64 Requires: %{name} = %{version}-%{release}
67 %description feature-init_wrapper
68 This package provides init.wrapper and init symlink file for init wrapper booting.
70 %package feature-init_wrapper_overlayfs
71 Summary: Support init.wrapper and overlayfs booting.
72 Requires: %{name} = %{version}-%{release}
75 %description feature-init_wrapper_overlayfs
76 This package provides init.wrapper and init symlink file for init wrapper booting.
77 In addition, overlayfs is mounted upon the rootfs.
79 %package feature-lazymount
80 Summary: Library for lazy mount feature
81 Requires(post): /usr/bin/vconftool
84 %description feature-lazymount
85 Library for lazy mount feature. It supports some interface functions.
87 %package feature-lazymount-devel
88 Summary: Development library for lazy mount feature
90 Requires: %{name}-feature-lazymount = %{version}
92 %description feature-lazymount-devel
93 Development library for lazy mount feature. It supports some interface functions.
95 %package feature-image-reduction
96 Summary: System configuration files for reducing image size
97 Requires: %{name} = %{version}-%{release}
102 %description feature-image-reduction
103 This package provides system configuration files for reducing image size.
105 %package feature-namespace
106 Summary: System configuration files for namespace separation
107 Requires: %{name} = %{version}-%{release}
110 %description feature-namespace
111 This package provides namespace separation of user sessions.
113 %package config-env-headless
114 Summary: System configuration files for headless images
115 Requires: %{name} = %{version}-%{release}
118 %description config-env-headless
119 This package provides system configuration files for headless images.
121 %package config-udev-sdbd
122 Summary: System configuration files to trigger sdb with udev rule
123 Requires: %{name} = %{version}-%{release}
126 %description config-udev-sdbd
127 This package provides configuration files to trigger sdb with udev rule.
129 %package config-2parts
130 Summary: System configuration files for storage partitions
131 Requires: %{name} = %{version}-%{release}
134 %description config-2parts
135 This package provides configuration files for /etc/fstab(remount) and resize2fs@.service.
137 %package config-3parts
138 Summary: System configuration files for storage partitions
139 Requires: %{name} = %{version}-%{release}
142 %description config-3parts
143 This package provides configuration files for /etc/fstab(remount) and resize2fs@.service.
145 %package config-3parts-lzuser
146 Summary: System configuration files for storage partitions
147 Requires: %{name} = %{version}-%{release}
150 %description config-3parts-lzuser
151 This package provides configuration files for /etc/fstab(remount) and resize2fs@.service.
163 --prefix=%{_prefix} \
164 --disable-debug-mode \
167 %__make %{?jobs:-j%jobs} \
168 CFLAGS+=-DLIBDIR=\\\"%{_libdir}\\\"
174 mkdir -p %{buildroot}%{_unitdir}
175 mkdir -p %{buildroot}%{_userunitdir}
176 mkdir -p %{buildroot}/csa
177 mkdir -p %{buildroot}/initrd
178 install -m 644 units/resize2fs@.service %{buildroot}%{_unitdir}
179 install -m 644 units/tizen-system-env.service %{buildroot}%{_unitdir}
182 install -m 644 units/csa.mount %{buildroot}%{_unitdir}
183 mkdir -p %{buildroot}%{_unitdir}/local-fs.target.wants
184 ln -s ../csa.mount %{buildroot}%{_unitdir}/local-fs.target.wants/csa.mount
186 # Resize partition for 3-parted target
187 mkdir -p %{buildroot}%{_unitdir}/basic.target.wants
188 ln -s ../resize2fs@.service %{buildroot}%{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\\x2dlabel-system\\x2ddata.service
189 ln -s ../resize2fs@.service %{buildroot}%{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\\x2dlabel-user.service
190 ln -s ../resize2fs@.service %{buildroot}%{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\\x2dlabel-rootfs.service
192 ln -s ../tizen-system-env.service %{buildroot}%{_unitdir}/basic.target.wants/tizen-system-env.service
194 mkdir -p %{buildroot}%{_prefix}/lib/udev/rules.d/
195 install -m 644 rules/51-system-plugin-exynos.rules %{buildroot}%{_prefix}/lib/udev/rules.d/
196 install -m 644 rules/51-system-plugin-spreadtrum.rules %{buildroot}%{_prefix}/lib/udev/rules.d/
198 mkdir -p %{buildroot}%{_prefix}/lib/udev/hwdb.d/
199 install -m 644 rules/60-evdev.hwdb %{buildroot}%{_prefix}/lib/udev/hwdb.d/
202 mkdir -p %{buildroot}%{_sysconfdir}
203 install -m 644 etc/fstab_3parts %{buildroot}%{_sysconfdir}
204 install -m 644 etc/fstab_2parts %{buildroot}%{_sysconfdir}
207 mkdir -p %{buildroot}%{_unitdir}/graphical.target.wants
208 install -m 644 units/tizen-fstrim-user.timer %{buildroot}%{_unitdir}
209 ln -s ../tizen-fstrim-user.timer %{buildroot}%{_unitdir}/graphical.target.wants/tizen-fstrim-user.timer
210 install -m 644 units/tizen-fstrim-user.service %{buildroot}%{_unitdir}
211 mkdir -p %{buildroot}%{_bindir}
212 install -m 755 scripts/tizen-fstrim-on-charge.sh %{buildroot}%{_bindir}
215 install -m 775 -D scripts/fixed-multi-user.sh %{buildroot}%{_datadir}/fixed_multiuser/fixed-multi-user.sh
218 mkdir -p %{buildroot}%{_sbindir}
219 install -m 755 scripts/init.wrapper %{buildroot}%{_sbindir}
220 install -m 755 scripts/init.wrapper.overlayfs %{buildroot}%{_sbindir}
223 mkdir -p %{buildroot}%{_sbindir}
224 install -m 755 scripts/sdb-mode.sh %{buildroot}%{_bindir}
225 mkdir -p %{buildroot}%{_sysconfdir}/profile.d
226 install -m 755 scripts/headless_env.sh %{buildroot}%{_sysconfdir}/profile.d
229 mkdir -p %{buildroot}%{_prefix}/lib/udev/rules.d/
230 install -m 644 rules/99-sdb-extcon.rules %{buildroot}%{_prefix}/lib/udev/rules.d/
232 # /opt/usr lazy mount
233 mkdir -p %{buildroot}%{_unitdir}/local-fs.target.wants
234 mkdir -p %{buildroot}%{_unitdir}/wait-mount@opt-usr.service.d
235 mkdir -p %{buildroot}%{_userunitdir}/basic.target.wants
236 mkdir -p %{buildroot}%{_userunitdir}/wait-mount@opt-usr.service.d
237 install -m 644 units/opt-usr.mount %{buildroot}%{_unitdir}
238 install -m 644 units/opt-usr-fsck.service %{buildroot}%{_unitdir}
239 install -m 644 units/wait-mount@.service %{buildroot}%{_unitdir}
240 install -m 644 units/wait-mount-session@.service %{buildroot}%{_userunitdir}/wait-mount@.service
241 install -m 644 units/no-wait.conf %{buildroot}%{_unitdir}/wait-mount@opt-usr.service.d
242 install -m 644 units/no-wait.conf %{buildroot}%{_userunitdir}/wait-mount@opt-usr.service.d
243 ln -s ../opt-usr.mount %{buildroot}%{_unitdir}/local-fs.target.wants/opt-usr.mount
244 ln -s ../wait-mount@.service %{buildroot}%{_unitdir}/local-fs.target.wants/wait-mount@opt-usr.service
245 ln -s ../wait-mount@.service %{buildroot}%{_userunitdir}/basic.target.wants/wait-mount@opt-usr.service
248 mkdir -p %{buildroot}%{_unitdir}/user@.service.d
249 install -m 644 units/namespace.conf %{buildroot}%{_unitdir}/user@.service.d/
255 systemctl daemon-reload
258 %manifest %{name}.manifest
259 %license LICENSE.Apache-2.0
260 %{_unitdir}/resize2fs@.service
261 %{_unitdir}/tizen-system-env.service
262 %{_unitdir}/basic.target.wants/tizen-system-env.service
264 %files device-spreadtrum
265 %manifest %{name}.manifest
266 %license LICENSE.Apache-2.0
269 %{_prefix}/lib/udev/rules.d/51-system-plugin-spreadtrum.rules
270 %{_unitdir}/tizen-system-env.service
271 %{_unitdir}/basic.target.wants/tizen-system-env.service
272 %{_unitdir}/csa.mount
273 %{_unitdir}/local-fs.target.wants/csa.mount
274 %{_unitdir}/graphical.target.wants/tizen-fstrim-user.timer
275 %{_unitdir}/tizen-fstrim-user.timer
276 %{_unitdir}/tizen-fstrim-user.service
277 %{_bindir}/tizen-fstrim-on-charge.sh
278 %{_datadir}/fixed_multiuser/fixed-multi-user.sh
281 %manifest %{name}.manifest
282 %license LICENSE.Apache-2.0
283 %{_unitdir}/graphical.target.wants/tizen-fstrim-user.timer
284 %{_unitdir}/tizen-fstrim-user.timer
285 %{_unitdir}/tizen-fstrim-user.service
286 %{_bindir}/tizen-fstrim-on-charge.sh
289 %manifest %{name}.manifest
290 %license LICENSE.Apache-2.0
293 %{_unitdir}/csa.mount
294 %{_unitdir}/local-fs.target.wants/csa.mount
297 %manifest %{name}.manifest
298 %license LICENSE.Apache-2.0
299 %{_prefix}/lib/udev/hwdb.d/60-evdev.hwdb
300 %{_prefix}/lib/udev/rules.d/51-system-plugin-exynos.rules
303 %{_prefix}/bin/udevadm hwdb --update
306 %manifest %{name}.manifest
307 %license LICENSE.Apache-2.0
308 %{_prefix}/lib/udev/hwdb.d/60-evdev.hwdb
311 %{_prefix}/bin/udevadm hwdb --update
313 %files feature-init_wrapper
314 %license LICENSE.Apache-2.0
315 %{_sbindir}/init.wrapper
317 %posttrans feature-init_wrapper
319 ln -s /sbin/init.wrapper /sbin/init
321 %files feature-init_wrapper_overlayfs
322 %license LICENSE.Apache-2.0
323 %{_sbindir}/init.wrapper.overlayfs
325 %posttrans feature-init_wrapper_overlayfs
327 ln -s /sbin/init.wrapper.overlayfs /sbin/init
328 mkdir -p /.overlayfs_merged
329 mkdir -p /.rootfs_old
331 %files feature-lazymount
332 %defattr(-,root,root,-)
333 %manifest liblazymount.manifest
334 %license LICENSE.Apache-2.0
335 %{_libdir}/liblazymount.so.*
336 %{_unitdir}/basic.target.wants/lazy_mount.path
337 %{_unitdir}/lazy_mount.path
338 %{_unitdir}/lazy_mount.service
339 %{_bindir}/mount-user.sh
341 %post feature-lazymount
343 systemctl daemon-reload
345 %postun feature-lazymount -p /sbin/ldconfig
347 %files feature-lazymount-devel
348 %defattr(-,root,root,-)
349 %manifest liblazymount.manifest
350 %license LICENSE.Apache-2.0
351 %{_libdir}/liblazymount.so
352 %{_includedir}/lazymount/lazy_mount.h
353 %{_libdir}/pkgconfig/liblazymount.pc
355 %posttrans feature-image-reduction
356 # platform/upstream/dbus
357 rm -f %{_bindir}/dbus-cleanup-sockets
358 rm -f %{_bindir}/dbus-run-session
359 rm -f %{_bindir}/dbus-test-tool
360 rm -f %{_bindir}/dbus-update-activation-environment
361 rm -f %{_bindir}/dbus-uuidgen
362 # platform/upstream/e2fsprogs
363 rm -f %{_sbindir}/e4crypt
365 %files feature-namespace
366 %manifest %{name}.manifest
367 %license LICENSE.Apache-2.0
368 %{_unitdir}/user@.service.d/namespace.conf
370 %files config-env-headless
371 %manifest %{name}.manifest
372 %license LICENSE.Apache-2.0
373 %{_sysconfdir}/profile.d/headless_env.sh
375 %files config-udev-sdbd
376 %manifest %{name}.manifest
377 %license LICENSE.Apache-2.0
378 %{_bindir}/sdb-mode.sh
379 %{_prefix}/lib/udev/rules.d/99-sdb-extcon.rules
382 %manifest %{name}.manifest
383 %license LICENSE.Apache-2.0
384 %{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\x2dlabel-rootfs.service
385 %{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\x2dlabel-system\x2ddata.service
386 %{_sysconfdir}/fstab_2parts
387 %{_unitdir}/wait-mount@.service
388 %{_unitdir}/wait-mount@opt-usr.service.d/no-wait.conf
389 %{_unitdir}/local-fs.target.wants/wait-mount@opt-usr.service
390 %{_userunitdir}/wait-mount@.service
391 %{_userunitdir}/wait-mount@opt-usr.service.d/no-wait.conf
392 %{_userunitdir}/basic.target.wants/wait-mount@opt-usr.service
395 mv %{_sysconfdir}/fstab_2parts %{_sysconfdir}/fstab
398 %manifest %{name}.manifest
399 %license LICENSE.Apache-2.0
400 %{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\x2dlabel-rootfs.service
401 %{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\x2dlabel-system\x2ddata.service
402 %{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\x2dlabel-user.service
403 %{_sysconfdir}/fstab_3parts
404 %{_unitdir}/wait-mount@.service
405 %{_unitdir}/local-fs.target.wants/wait-mount@opt-usr.service
406 %{_userunitdir}/wait-mount@.service
407 %{_userunitdir}/basic.target.wants/wait-mount@opt-usr.service
410 mv %{_sysconfdir}/fstab_3parts %{_sysconfdir}/fstab
412 %files config-3parts-lzuser
413 %manifest %{name}.manifest
414 %license LICENSE.Apache-2.0
415 %{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\x2dlabel-rootfs.service
416 %{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\x2dlabel-system\x2ddata.service
417 %{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\x2dlabel-user.service
418 %{_sysconfdir}/fstab_2parts
419 %{_unitdir}/opt-usr.mount
420 %{_unitdir}/opt-usr-fsck.service
421 %{_unitdir}/wait-mount@.service
422 %{_unitdir}/local-fs.target.wants/opt-usr.mount
423 %{_userunitdir}/wait-mount@.service
424 %{_userunitdir}/basic.target.wants/wait-mount@opt-usr.service
426 %post config-3parts-lzuser
427 mv %{_sysconfdir}/fstab_2parts %{_sysconfdir}/fstab