Group: System/Utilities
Source: %{name}-%{version}.tar.gz
Source1001: %{name}.manifest
+Source1: ramdisk-flush.service
Requires(post): bash
Requires(post): grep
mkdir -p %{buildroot}%{_mnt_initrd_dir}
+# ramdisk flush service
+mkdir -p %{buildroot}%{_unitdir}
+install -m 0644 %SOURCE1 %{buildroot}%{_unitdir}
+%install_service delayed.target.wants ramdisk-flush.service
+
# veritytool
mkdir -p %{buildroot}%{_bindir}
cp -f scripts/verityctl %{buildroot}%{_bindir}
%endif
%{_initrd_dir}/initrd-file-dmverity.list
%{_initrd_dir}/init.sh
+%{_unitdir}/ramdisk-flush.service
+%{_unitdir}/delayed.target.wants/ramdisk-flush.service
%files -n veritytool
%manifest initrd.manifest
--- /dev/null
+[Unit]
+Description=Flush ramdisk /dev/ram0
+ConditionKernelCommandLine=root=/dev/ram0
+ConditionPathIsMountPoint=!/mnt/initrd
+ConditionPathExists=!/dev/initramfs
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+User=system_fw
+Group=disk
+Capabilities=cap_sys_admin=i
+SecureBits=keep-caps
+ExecStart=/sbin/blockdev --flushbufs /dev/ram0
+SmackProcessLabel=System