The original launcher was this bash script
https://github.com/geany/geany-osx/blob/master/launcher-gtk3.sh
which sets various environment variables and command-line parameters of the Geany executable. I've rewritten it in Objective C with some improvements as we now have access to the full OS X API:
https://github.com/geany/geany-osx/blob/master/LauncherGtk3/geany/geany/main...
The result is a compiled binary which is signed by my development certificate like the rest of the binaries so from the point of view of macOS it's one application rather than two (bash and Geany).
We could probably set the environment variables in Geany too but we wouldn't have access to macOS API because we don't link against the Objective C runtime so we would miss some stuff like the locale detection.