O problema é que seu $PATH
contém o literal ~
em vez do caminho real. A sintaxe ~/...
é algo específico para o shell; não é expandido pela função execvp()
da glibc, por exemplo.
Use caminhos absolutos, como em PATH="$HOME/.local/bin:$HOME/.gem/ruby/1.9.1/bin:$PATH