hooks/post-install: add hook to rewrite unversioned python shebangs.
This commit is contained in:
parent
5972d742ac
commit
830ca26644
1 changed files with 27 additions and 0 deletions
27
common/hooks/post-install/07-rewrite-python-shebang.sh
Normal file
27
common/hooks/post-install/07-rewrite-python-shebang.sh
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
# This hook executes the following tasks:
|
||||||
|
# - rewrites python shebangs with the corresponding python version
|
||||||
|
|
||||||
|
hook() {
|
||||||
|
local pyver= shebang= warn=
|
||||||
|
|
||||||
|
for i in $python_versions; do
|
||||||
|
if [ "$pyver" ]; then
|
||||||
|
warn=1
|
||||||
|
break;
|
||||||
|
fi
|
||||||
|
pyver=$i
|
||||||
|
done
|
||||||
|
|
||||||
|
: ${pyver:=2.7}
|
||||||
|
shebang="#!/usr/bin/python$pyver"
|
||||||
|
find ${PKGDESTDIR} -type f -print0 | \
|
||||||
|
xargs -0 grep -l -m 1 "^#!.*\([[:space:]]\|/\)python\([[:space:]]\|$\)" -- | while read f; do
|
||||||
|
if [ "$warn" ]; then
|
||||||
|
msg_warn "$pkgname: multiple python versions defined!"
|
||||||
|
msg_warn "$pkgname: using $pyver for shebang"
|
||||||
|
warn=
|
||||||
|
fi
|
||||||
|
echo " Unversioned shebang replaced by '$shebang': ${f#$PKGDESTDIR}"
|
||||||
|
sed -i "1s@.*python@${shebang}@" -- "$f"
|
||||||
|
done
|
||||||
|
}
|
Loading…
Reference in a new issue