Ubuntu has dash instead of bash as /bin/sh because it wanted to speed up system startup. This causes incompatibilities when we assume that sh is bash and continue to use bashisms. This problem is solved by explicitly requesting bash for the one script that needs it.
Before
$ ../scripts/install_fcitx5_bazel
../scripts/install_fcitx5_data: 8: Bad substitution
$
Ubuntu has
dash
instead ofbash
as/bin/sh
because it wanted to speed up system startup. This causes incompatibilities when we assume thatsh
isbash
and continue to use bashisms. This problem is solved by explicitly requestingbash
for the one script that needs it.Before
After