diff options
Diffstat (limited to 'dmount')
-rwxr-xr-x | dmount | 25 |
1 files changed, 17 insertions, 8 deletions
@@ -29,6 +29,8 @@ while getopts "hpPugd:" o; do case "${o}" in exit 1;; esac done +IS_HFS="" + if [ -n "$WAYLAND_DISPLAY" ]; then DMENU="tofi" DEFARGS="-c $HOME/.config/tofi/themes/dmenu_vertical --prompt-text" @@ -89,24 +91,31 @@ getmount() { \ mount_device () { getmount "/mnt /media /mount /home -maxdepth 3 -type d -empty $alreadymounted" - if [ -z "$USE_USER_ID" ]; then - doas mount "$1" "$mp" && show "Mounted successfully\n" - else + if [ -n "$USE_USER_ID" ]; then if [ -n "$USERID" -a -n "$GROUPID" ]; then - MOUNTPROPS="uid=$USERID,gid=$GROUPID" + MOUNTPROPS="-o uid=$USERID,gid=$GROUPID" elif [ -n "$USERID" ]; then - MOUNTPROPS="uid=$USERID" + MOUNTPROPS="-o uid=$USERID" elif [ -n "$GROUPID" ]; then - MOUNTPROPS="gid=$GROUPID" + MOUNTPROPS="-o gid=$GROUPID" + else + MOUNTPROPS="-o $(grep "$(whoami)" /etc/passwd | sed 's/:/ /g' | awk '{print "uid="$3",gid="$4}')" + fi + fi + if [ -n "$IS_HFS" ]; then + MOUNTARGS="-t hfsplus" + if [ -z "$MOUNTPROPS" ]; then + MOUNTPROPS="-o force,rw" else - MOUNTPROPS="$(grep "$(whoami)" /etc/passwd | sed 's/:/ /g' | awk '{print "uid="$3",gid="$4}')" + MOUNTPROPS="${MOUNTPROPS},force,rw" fi - doas mount -o "$MOUNTPROPS" "$1" "$mp" && show "Mounted successfully\n" fi + doas mount $MOUNTARGS $MOUNTPROPS "$1" "$mp" && show "Mounted successfully\n" } DEVICE="$(get_available | $DMENU $DEFARGS "Devices" $ARGS )" [ -z "$DEVICE" ] && exit 1 +echo "$DEVICE" | grep -q "hfsplus" && IS_HFS="y" chosen="${DEVICE%% *}" if [ -n "$(is_crypto "$chosen")" ]; then |