49 lines
1.1 KiB
Bash
Executable file
49 lines
1.1 KiB
Bash
Executable file
#!/usr/bin/env sh
|
|
|
|
rclone_remote="s3-serguzim-me:public/screenshots"
|
|
screenshot_host="https://s3.serguzim.me/public/screenshots"
|
|
path="/tmp/screenshot.png"
|
|
file="$(date '+%F_%H-%M-%S').png"
|
|
|
|
clip_image()
|
|
{
|
|
xclip -t image/png "$1" -selection clipboard
|
|
}
|
|
|
|
upload_image()
|
|
{
|
|
# to have link available in clipboard manager
|
|
printf '%s' "$screenshot_host/$file" | xclip -selection clipboard
|
|
printf '%s' "$screenshot_host/$file" | xclip -selection primary
|
|
rclone copyto "$1" "$rclone_remote/$file"
|
|
notify-send -a "Screenshot" "Uploaded screenshot to s3"
|
|
}
|
|
|
|
main_no_upload()
|
|
{
|
|
if [ "$(flameshot gui -r | tee $path | wc -c)" -gt 0 ]
|
|
then
|
|
clip_image $path
|
|
fi
|
|
}
|
|
|
|
main()
|
|
{
|
|
if [ -n "$1" ] && [ -e "$1" ]
|
|
then
|
|
convert "$1" "$path"
|
|
clip_image "$path"
|
|
upload_image "$path"
|
|
else
|
|
if [ "$(flameshot gui -r | tee $path | wc -c)" -gt 0 ]
|
|
then
|
|
clip_image "$path"
|
|
upload_image "$path"
|
|
fi
|
|
fi
|
|
}
|
|
|
|
case $1 in
|
|
no_upload) main_no_upload ;;
|
|
*) main "$1" ;;
|
|
esac
|