32 lines
755 B
Bash
Executable File
32 lines
755 B
Bash
Executable File
#!/bin/bash
|
|
# Mount/unmount Android phones over MTP via gvfs, exposed as ~/Phone
|
|
# Usage: phone [mount|umount]
|
|
|
|
link="$HOME/Phone"
|
|
|
|
case "${1:-mount}" in
|
|
mount)
|
|
gio mount -li | sed -n 's/^ *activation_root=\(mtp:.*\)/\1/p' |
|
|
while read -r uri; do gio mount "$uri"; done
|
|
|
|
mounts=("$XDG_RUNTIME_DIR"/gvfs/mtp:host=*)
|
|
if [[ ! -e ${mounts[0]} ]]; then
|
|
echo "phone: no MTP device mounted" >&2
|
|
exit 1
|
|
fi
|
|
if [[ -e $link && ! -L $link ]]; then
|
|
echo "phone: $link exists and is not a symlink" >&2
|
|
exit 1
|
|
fi
|
|
ln -sfn "${mounts[0]}" "$link"
|
|
;;
|
|
umount)
|
|
gio mount -s mtp
|
|
if [[ -L $link ]]; then rm "$link"; fi
|
|
;;
|
|
*)
|
|
echo "usage: ${0##*/} [mount|umount]" >&2
|
|
exit 1
|
|
;;
|
|
esac
|