diff --git a/.local/bin/videosearch b/.local/bin/videosearch new file mode 100644 index 00000000..0d7a8a3c --- /dev/null +++ b/.local/bin/videosearch @@ -0,0 +1,22 @@ +#!/bin/sh + +command -v locate >/dev/null || { + notify-send "Locate not found. Installing..." + sudo pacman -S mlocate +} || { + notify-send "Failed. Run the script once on terminal OR change sudo permissions." + exit 1 +} + +[ -s "$HOME/.config/.mymlocate.db" ] || { + notify-send "You have no database. Creating it..." + disk_path=$(echo "" | rofi -dmenu -l 0 -p "Enter the disk path (e.g '/mnt/harddisk'): ") + sudo updatedb -o ~/.config/.mymlocate.db -U "$disk_path" || { + notify-send "Failed. Run the script once on terminal OR change sudo permissions." + exit 1 + } +} + +video_files=$(locate -d ~/.config/.mymlocate.db -b -r '.*\.\(mp4\|mkv\|webm\|mov\|m4v\|wmv\|flv\|avi\)$') +chosen_file=$(echo "$video_files" | sed 's|.*/||; s/\.[^.]*$//' | rofi -dmenu -p "Select Video") +mpv "$(echo "$video_files" | grep -F "/$chosen_file.")"