spiegel-keyman/resources/gosh
Marc Durdin 05a4c33200 chore(web): move common/core/web to common/web
Relates to #5816.

Moves folders under common/core/web to common/web:

* input-processor -> common/web/input-processor
* keyboard-processor -> common/web/keyboard-processor
* tools/recorder -> common/web/recorder
* tools/sentry-manager -> common/web/sentry-manager
* utils -> common/web/utils

Updates scripts and configuration to point to new folders.
2022-05-18 06:01:03 +10:00
..
gosh.bat change(common/resources): move gosh scripts to resource/gosh 2020-05-25 08:29:15 -06:00
gosh.js chore(web): move common/core/web to common/web 2022-05-18 06:01:03 +10:00
gosh.sh change(common/resources): move gosh scripts to resource/gosh 2020-05-25 08:29:15 -06:00
package.json chore(web): move version from package.json to keyman-version package 2022-04-17 06:47:39 +10:00
README.md docs(common/resources): spruce up gosh README 2020-05-25 08:27:25 -06:00

@keymanapp/resources-gosh

gosh is a simple platform-agnostic launcher for bash scripts. On Windows, it will locate an installation of Git for Windows and use bash from that script. On *nix, it uses the system-supplied version of bash.

TODO: it would be possible for gosh to grab a newer version of bash on macOS which could simplify some of our cross-platform scripts?

Usage

gosh can be run as an npm module command or from the command line with the gosh/gosh.bat pair. The first parameter should be the bash script to run, and all subsequent parameters passed to gosh will be passed to the script unmodified. Note that paths passed to gosh should always use forward slashes (/), irrespective of the platform.

Examples

package.json

Invoke bash scripts using gosh instead:

  "scripts": {
    "build": "gosh ./build.sh",
    "test": "gosh ./unit_tests/test.sh"
  },
  • TeamCity instantiation: (path = web/source) ../../resources/gosh/gosh ./build.sh -publish-sentry