# ugly temporary patch for initrd wearable
install -m 644 etc/fstab_initrd %{buildroot}%{_sysconfdir}
+# fstrim
+mkdir -p %{buildroot}%{_unitdir}/graphical.target.wants
+install -m 644 units/tizen-fstrim-user.timer %{buildroot}%{_unitdir}
+ln -s ../tizen-fstrim-user.timer %{buildroot}%{_unitdir}/graphical.target.wants/tizen-fstrim-user.timer
+install -m 644 units/tizen-fstrim-user.service %{buildroot}%{_unitdir}
+mkdir -p %{buildroot}%{_bindir}
+install -m 755 scripts/tizen-fstrim-on-charge.sh %{buildroot}%{_bindir}
+
%post
systemctl daemon-reload
%{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\x2dlabel-user.service
%{_unitdir}/basic.target.wants/resize2fs@dev-disk-by\x2dlabel-rootfs.service
%{_sysconfdir}/fstab
+%{_unitdir}/graphical.target.wants/tizen-fstrim-user.timer
+%{_unitdir}/tizen-fstrim-user.timer
+%{_unitdir}/tizen-fstrim-user.service
+%{_bindir}/tizen-fstrim-on-charge.sh
%files exynos
%manifest %{name}.manifest
%{_unitdir}/local-fs.target.wants/csa.mount
%{_unitdir}/umount-opt.service
%{_unitdir}/local-fs-pre.target.wants/umount-opt.service
+%{_unitdir}/graphical.target.wants/tizen-fstrim-user.timer
+%{_unitdir}/tizen-fstrim-user.timer
+%{_unitdir}/tizen-fstrim-user.service
+%{_bindir}/tizen-fstrim-on-charge.sh
--- /dev/null
+#!/bin/sh
+
+if [ "$#" -ne 1 ];then
+ echo "Argument was missed."
+ exit 1
+fi
+
+CHARGE_NOW_FILE=`/usr/bin/find /sys/devices -path */power_supply/battery/charge_now`
+if [ "x$CHARGE_NOW_FILE" == "x" ]; then
+ echo "Can not find 'charge_now'."
+ CHARGE_NOW_VALUE=0
+else
+ CHARGE_NOW_VALUE=`/bin/cat $CHARGE_NOW_FILE`
+fi
+
+BATTERY_STATUS_FILE=`/usr/bin/find /sys/devices -path */power_supply/battery/status`
+if [ "x$BATTERY_STATUS_FILE" == "x" ]; then
+ echo "Can not find 'status'."
+ exit 1
+else
+ STATUS_VALUE=`/bin/cat $BATTERY_STATUS_FILE`
+fi
+
+BATTERY_CAPACITY_FILE=`/usr/bin/find /sys/devices -path */power_supply/battery/capacity`
+if [ "x$BATTERY_CAPACITY_FILE" == "x" ]; then
+ echo "Can not find 'capacity'."
+ exit 1
+else
+ CAPACITY_VALUE=`/bin/cat $BATTERY_CAPACITY_FILE`
+fi
+
+echo $STATUS_VALUE
+echo $CAPACITY_VALUE
+
+if [ "$CHARGE_NOW_VALUE" -gt 0 ];then
+ echo "Do fstrim(C1)."
+ /sbin/fstrim -v $*
+else
+ if [ \( $STATUS_VALUE == "Charging" -o $STATUS_VALUE == "Full" \) -a \( $CAPACITY_VALUE -gt 30 \) ]; then
+ echo "Do fstrim(C2)."
+ /sbin/fstrim -v $*
+ else
+ echo "Not on charging."
+ fi
+fi