


___x_cmd_termux_pkg_snap(){
    [ $# -gt 0 ]    ||  set -- --help

    local pkgnamelist="$___X_CMD_SNAP_APK_NAMELIST"

    while [ $# -gt 0 ]; do
        case "$1" in
            -h|--help)          ___x_cmd help -m termux pkg snap "$@" ;;
            -n|--namelist)      [ $# -ge 2 ] || N=termux M="Please provide argument after $1" log:ret:64 ; pkgnamelist="$2"; shift 2 ;;
            *)                  break
        esac
    done

    local cmd="$1"; shift

    ___x_cmd_hascmd "$cmd" || {
        [ -n "$pkgnamelist" ] || {
            local x_=""
            if ___x_cmd snap --whichpkg_ apt "$cmd"; then
                pkgnamelist="$x_"
            else
                pkgnamelist="$cmd"
            fi
        }

        eval ___x_cmd_cmds pkg install -y "$pkgnamelist" || {
            termux:error --next "pkg install -y $pkgnamelist"  \
                "Fail to isntall $pkgnamelist. You can try it manually"
            return 1
        }
    }

    ___x_cmd snap --runcmd "$cmd" "$@"
}

