Files
vim-ale/setcap-netbind/setcap-netbind.sh

31 lines
657 B
Bash

#!/bin/sh
set -e
set -u
main() {
my_bin="${1}"
# ex: node
if ! command -v "${my_bin}" > /dev/null; then
echo "setcap-netbind: '${my_bin}' not found"
exit 1
fi
my_sudo=""
if command -v sudo > /dev/null; then
my_sudo=sudo
fi
# get full path
# ex: ~/.local/opt/node/bin/node
my_bin="$(command -v "${my_bin}")"
# get canonical full path
# ex: ~/.local/opt/node-v16.13.0/bin/node
my_bin="$(readlink -f "${my_bin}")"
# ex: sudo setcap 'cap_net_bind_service=+ep' ~/.local/opt/node-v16.13.0/bin/node"
"${my_sudo}" setcap 'cap_net_bind_service=+ep' "${my_bin}"
}
main "${1-}"