fix(insta): add temporary local fix for insta on nas
This commit is contained in:
parent
b9af444e74
commit
e602d788b0
1 changed files with 63 additions and 56 deletions
|
@ -1,15 +1,13 @@
|
||||||
function insta() {
|
insta () {
|
||||||
local cwd=$(pwd)
|
local cwd=$(pwd)
|
||||||
|
check_smb_mount () {
|
||||||
check_smb_mount() {
|
|
||||||
/sbin/mount | grep -q "$insta_mount_point"
|
/sbin/mount | grep -q "$insta_mount_point"
|
||||||
}
|
}
|
||||||
|
|
||||||
local stories_only=false
|
local stories_only=false
|
||||||
local user_list=()
|
local user_list=()
|
||||||
|
while [[ $# -gt 0 ]]
|
||||||
# Parse arguments
|
do
|
||||||
while [[ $# -gt 0 ]]; do
|
|
||||||
case "$1" in
|
case "$1" in
|
||||||
--cron)
|
--cron)
|
||||||
local random_wait=$((RANDOM % 1800))
|
local random_wait=$((RANDOM % 1800))
|
||||||
|
@ -27,32 +25,37 @@ function insta() {
|
||||||
esac
|
esac
|
||||||
shift
|
shift
|
||||||
done
|
done
|
||||||
|
|
||||||
echo "-----$(date)------"
|
echo "-----$(date)------"
|
||||||
|
|
||||||
|
local is_local_nas=false
|
||||||
|
if [[ "$NAS_IP" == "127.0.0.1" || "$NAS_IP" == "localhost" ]]; then
|
||||||
|
is_local_nas=true
|
||||||
|
fi
|
||||||
|
|
||||||
if [ ! -d "$insta_mount_point" ]; then
|
if [ ! -d "$insta_mount_point" ]; then
|
||||||
echo "Creating mount point directory..."
|
echo "Creating mount point directory..."
|
||||||
mkdir -p "$insta_mount_point"
|
mkdir -p "$insta_mount_point"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if ! $is_local_nas; then
|
||||||
if ! check_smb_mount; then
|
if ! check_smb_mount; then
|
||||||
echo "Mounting SMB share..."
|
echo "Mounting SMB share..."
|
||||||
/sbin/mount_smbfs "smb://janolehuebner:$(pass sudo-lana)@$insta_share_on_nas" "$insta_mount_point"
|
/sbin/mount_smbfs "smb://janolehuebner:$(pass sudo-lana)@$insta_share_on_nas" "$insta_mount_point"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if ! check_smb_mount; then
|
if ! check_smb_mount; then
|
||||||
echo "Failed to mount SMB share. Exiting."
|
echo "Failed to mount SMB share. Exiting."
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
cd "$insta_mount_point/$insta_path_on_nas" || return 1
|
cd "$insta_mount_point/$insta_path_on_nas" || return 1
|
||||||
|
|
||||||
# Use default users if no user was specified
|
|
||||||
if [[ ${#user_list[@]} -eq 0 ]]; then
|
if [[ ${#user_list[@]} -eq 0 ]]; then
|
||||||
user_list=("${insta_default_users[@]}")
|
user_list=("${insta_default_users[@]}")
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Build the instaloader command
|
|
||||||
local cmd=(uvx --with browser_cookie3 instaloader -b Safari -B "$insta_cookiefile" "${user_list[@]}" --fast-update)
|
local cmd=(uvx --with browser_cookie3 instaloader -b Safari -B "$insta_cookiefile" "${user_list[@]}" --fast-update)
|
||||||
|
|
||||||
if $stories_only; then
|
if $stories_only; then
|
||||||
cmd+=(--stories --no-profile-pic --no-posts)
|
cmd+=(--stories --no-profile-pic --no-posts)
|
||||||
else
|
else
|
||||||
|
@ -61,8 +64,12 @@ function insta() {
|
||||||
|
|
||||||
"${cmd[@]}"
|
"${cmd[@]}"
|
||||||
|
|
||||||
|
if ! $is_local_nas; then
|
||||||
echo "Unmounting SMB share..."
|
echo "Unmounting SMB share..."
|
||||||
sleep 3
|
sleep 3
|
||||||
/sbin/umount -f "$insta_mount_point"
|
/sbin/umount -f "$insta_mount_point"
|
||||||
|
fi
|
||||||
|
|
||||||
cd "$cwd"
|
cd "$cwd"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue