Solved textproc/rarian -- shebang problem

textproc/rarian fails to build with shebang error:
Code:
Error: '/bin/bash' is an invalid shebang you need USES=shebangfix for 'bin/rarian-sk-rebuild'
Error: '/bin/bash' is an invalid shebang you need USES=shebangfix for 'bin/rarian-sk-update'
Error: '/bin/bash' is an invalid shebang you need USES=shebangfix for 'bin/rarian-sk-extract'
Error: '/bin/bash' is an invalid shebang you need USES=shebangfix for 'bin/rarian-sk-config'
How is that kind of error fixed? I've read something about adding USES=shebangfix to Makefile... But how exactly is that supposed to be done?

Thanks for help.
 
Which FreeBSD-version? Which rarian-version?
Textproc/rarian compiled fine on FreeBSD-9.3 and 10.1 for me - seems something not updated.

(If needed, you could add "shebangfix" in this line in the Makefile
Code:
USES=  gmake libtool pathfix python tar:bzip2
)
 
Hm, it's fresh installing from the yesterday's portsnap update. Should be the last one, then (it's 0.8.1).

Adding shebangfix doesn't really fix it. Adding SHEBANG_FILES doesn't work either, because the files rarian-sk-* to be fixed only appear after ./configure is run. And shebangfix tries to fix it before that.

And lastly, /bin/bash is indeed a wrong command for any FreeBSD version, as I see it.
 
No, don't modify port files without good reason and a plan to submit a PR afterward. Ending up with customized versions only makes for more and more mysterious problems.

The first thing to check is /usr/ports/UPDATING. Have you been following the instructions in that file? Some are required for general ports use, do not just search on a port name. Next, look at /etc/make.conf for settings that seemed like a good idea at the time. Other possibilities include doing things that would be expected on Linux but are not done the same way on FreeBSD, like linking sh to bash.

textproc/rarian 0.8.1_3 builds here.
 
Right, though it wasn't linking sh to bash, but I had a link /bin/bash pointing to /usr/local/bin/bash. Don't even remember why I did it, but it was there. Now it's fine.
Didn't detect it from the start, because which bash returns /usr/local/bin/bash...
 
Another example of why FreeBSD's separation of "base" and applications (/usr/local) is a good thing. :)
 
I am having this issue, but I'm not sure what the solution was that is mentioned in this thread.
Code:
$ sudo portversion -vl "<" | grep -i "rarian"
[Reading data from pkg(8) ... - 1371 packages found - done]
rarian-0.8.1_3  <  needs updating (port has 0.8.1_4)

$ uname -vp
FreeBSD 10.1-RELEASE #0 r274401: Tue Nov 11 21:02:49 UTC 2014  root@releng1.nyi.freebsd.org:/usr/obj/usr/src/sys/GENERIC  amd64

--- Edit ---
Okay, seems that deleting /bin/bash fixed the problem for me. This is the command that I ran to upgrade textproc/rarian:
Code:
# portmaster -y -b -d -f rarian
 
Back
Top