jez / bask

:sunglasses: Bask in the convenience of a task runner for bash
Other
59 stars 4 forks source link

Wrong path when installing via npm #4

Closed pelletiermaxime closed 7 years ago

pelletiermaxime commented 7 years ago

Globally: └> bask /usr/bin/bask: line 15: /usr/src/bask.sh: No such file or directory /usr/bin/bask: line 19: /usr/src/cli.sh: No such file or directory

Locally: └> node_modules/.bin/bask node_modules/.bin/bask: line 15: /var/www/project/node_modules/src/bask.sh: No such file or directory node_modules/.bin/bask: line 19: /var/www/project/node_modules/src/cli.sh: No such file or directory

The code on github for BINDIR works fine, but the version from npm is doing

BINDIR="$(pushd "$(dirname "${BASH_SOURCE[0]}")" &> /dev/null; pwd -P)"

And this doesn't work. Not sure where it's coming from, as it seems to be the same version as the one on github ?

stylemistake commented 7 years ago

It's not the same as on NPM, so @jez should update it. This is because dirname does not dereference symlinks, and version on master uses perl to dereference symlinks.

Also, I believe this implementation is far more compatible with various systems: https://github.com/stylemistake/bash-task-runner/blob/master/bin/runner#L6-L17

jez commented 7 years ago

I've pushed an update to npm. Sorry about the discrepancy. I always just use submodules, and I'd forgotten to update it on npm as well.

In general, I agree with the above: it looks like the work @stylemistake has put in is more widely compatible.