summaryrefslogtreecommitdiff
path: root/parabolaiso/initcpio/hooks/parabolaiso
diff options
context:
space:
mode:
Diffstat (limited to 'parabolaiso/initcpio/hooks/parabolaiso')
-rw-r--r--parabolaiso/initcpio/hooks/parabolaiso15
1 files changed, 14 insertions, 1 deletions
diff --git a/parabolaiso/initcpio/hooks/parabolaiso b/parabolaiso/initcpio/hooks/parabolaiso
index 8f532c3..daac88b 100644
--- a/parabolaiso/initcpio/hooks/parabolaiso
+++ b/parabolaiso/initcpio/hooks/parabolaiso
@@ -69,10 +69,23 @@ _mnt_sfs() {
# defined via initcpio's parse_cmdline()
if [ "${copytoram}" = "y" ]; then
msg -n ":: Copying squashfs image to RAM..."
- if ! cp -- "${img}" "/run/parabolaiso/copytoram/${img_fullname}" ; then
+
+ # in case we have pv use it to display copy progress feedback otherwise
+ # fallback to using plain cp
+ if command -v pv > /dev/null 2>&1; then
+ echo ""
+ (pv "${img}" > "/run/parabolaiso/copytoram/${img_fullname}")
+ local rc=$?
+ else
+ (cp -- "${img}" "/run/parabolaiso/copytoram/${img_fullname}")
+ local rc=$?
+ fi
+
+ if [ $rc != 0 ]; then
echo "ERROR: while copy '${img}' to '/run/parabolaiso/copytoram/${img_fullname}'"
launch_interactive_shell
fi
+
img="/run/parabolaiso/copytoram/${img_fullname}"
msg "done."
fi