aboutsummaryrefslogtreecommitdiffstats
path: root/home-manager/config/lf/cmds/dl_file
diff options
context:
space:
mode:
Diffstat (limited to 'home-manager/config/lf/cmds/dl_file')
-rwxr-xr-xhome-manager/config/lf/cmds/dl_file38
1 files changed, 38 insertions, 0 deletions
diff --git a/home-manager/config/lf/cmds/dl_file b/home-manager/config/lf/cmds/dl_file
new file mode 100755
index 00000000..dfd11f69
--- /dev/null
+++ b/home-manager/config/lf/cmds/dl_file
@@ -0,0 +1,38 @@
+#! /usr/bin/env dash
+# shellcheck disable=SC2086
+# shellcheck source=/dev/null
+# . ~/.local/lib/shell/lib
+. %SHELL_LIBRARY_PATH
+
+LIB_TEMP_DIR_FOR_SCRIPT=$(mktemp -d)
+
+# Provides the ability to download a file by dropping it into a window
+
+url=$(dragon -t -x)
+
+if [ -n "$url" ]; then
+ printf "File Name: "
+ name=""
+ while [ -z $name ] || [ -e $name ]
+ do
+ read -r name
+ if [ -e "$name" ]; then
+ printf "File already exists, overwrite (y|n): "
+ read -r ans
+
+ if [ "$ans" = "y" ]; then
+ break
+ else
+ printf "File Name: "
+ fi
+ fi
+ done
+
+ # Download the file with curl
+ [ -n "$name" ] && curl -o "$name" "$url" || die "curl failed"
+else
+ die "Url is not valid!"
+fi
+
+if [ -d "$LIB_TEMP_DIR_FOR_SCRIPT" ];then rm -r "$LIB_TEMP_DIR_FOR_SCRIPT"; fi
+# vim: ft=sh