Because each shell has its own configuration file which can contain different environment settings, it is useful to be able to specify which shell Geany should use.
To limit the shells to only those we know that work with Geany, this implementation only allows users to select from /bin/sh, /bin/bash and /bin/zsh. More shells can be added in the future.
The affected places where we used hard-coded /bin/sh are: 1. Running commands (in VTE or without, with launch script or without) 2. Build commands 3. Print command
On macOS, the shell defaults to /bin/bash, on other systems to /bin/sh.
For more discussion see #2344 You can view, comment on, or merge this pull request online at:
https://github.com/geany/geany/pull/2363
-- Commit Summary --
* Make the shell used by Geany to run various commands configurable
-- File Changes --
M data/geany.glade (44) M src/build.c (17) M src/keyfile.c (11) M src/prefs.c (13) M src/prefs.h (10) M src/printing.c (5) M src/utils.c (10) M src/utils.h (2)
-- Patch Links --
https://github.com/geany/geany/pull/2363.patch https://github.com/geany/geany/pull/2363.diff