chore: address review comments

This commit is contained in:
Marc Durdin 2021-06-30 13:03:30 +10:00
parent 4e878664d4
commit 2034818485
4 changed files with 49 additions and 21 deletions

16
docs/build/macos.md vendored
View file

@ -34,22 +34,21 @@ Many dependencies are only required for specific projects.
The remaining dependencies can be installed via script:
`resources/devbox/macos/macos.sh`
This script will also update your environment to the values in:
`resources/devbox/macos/keyman.macos.env.sh`
It will also add these environment settings to your `~/.bashrc`.
These dependencies are also listed below if you'd prefer to install manually.
## Shared Dependencies
* Shared: HomeBrew, Bash 5.0+, jq, Python 3, Meson, Ninja, Rust, coreutils
* Shared: HomeBrew, Bash 5.0+, jq, Python 3, Meson, Ninja, Rust, coreutils, Pandoc
```shell
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew install bash jq python3 meson ninja rustup-init coreutils
brew install rustup-init
brew install bash jq python3 meson ninja rustup-init coreutils pandoc rustup-init
```
* Web: node.js, emscripten, wasm-pack, openjdk 8
@ -60,7 +59,7 @@ These dependencies are also listed below if you'd prefer to install manually.
```
* iOS: swiftlint, carthage
```shell
brew install swiftlint carthage
```
@ -71,10 +70,10 @@ These dependencies are also listed below if you'd prefer to install manually.
brew install carthage cocoapods
```
* Android: openjdk 8, Android SDK, Android Studio, Ant, Gradle, Maven, Pandoc
* Android: openjdk 8, Android SDK, Android Studio, Ant, Gradle, Maven
```shell
brew install openjdk@8 android-sdk android-studio ant gradle maven pandoc
brew install openjdk@8 android-sdk android-studio ant gradle maven
# update path
source ../resources/devbox/macos/keyman.macos.env.sh
# optionally install sdk images
@ -99,3 +98,4 @@ These dependencies are also listed below if you'd prefer to install manually.
```
* Run Android Studio once after installation to install additional components
such as emulator images and SDK updates.

View file

@ -8,13 +8,13 @@ WARNING: these are old configuration notes. See [index.md](../index.md) for curr
* [Pandoc](#Install-Pandoc) for generating offline help
## Install Java
It is recommended to use openJDK because of oracle license issues.
It is recommended to use openJDK because of Oracle license issues.
Tested with latest release for openJDK 8 from
https://github.com/ojdkbuild/ojdkbuild
1. Download and unpack the zip archive
2. On on windows: use the default java path C:\Program Files\Java to avoid error message "Error 0x80010135 Path Too Long".
3. Aso set an environment variable for JAVA_HOME e.g C:\Program Files\Java\openjdk-1.8.0.232-1
2. On windows: use the default java path C:\Program Files\Java to avoid error message "Error 0x80010135 Path Too Long".
3. Also set an environment variable for JAVA_HOME e.g C:\Program Files\Java\openjdk-1.8.0.232-1
## Setup Android Studio
@ -22,16 +22,19 @@ https://github.com/ojdkbuild/ojdkbuild
2. For Windows users, set environment variable **ANDROID_HOME** to the location of your Android SDK. The default installation location is **C:\Users\\[USER]\AppData\Local\Android\sdk** where [USER] is your username. You may need to log out and log back in to take effect.
For MacOS/Linux users, add the following to **~/.bashrc** or **~/.bash_profile**
```bash
export ANDROID_HOME=$HOME/Android/Sdk
export PATH=$PATH:$ANDROID_HOME/tools
```
For MacOS users, add the following (adjusted appropriately) to **~/.bashrc** or **~/.bash_profile** if your Java version is too strange for gradlew to understand (e.g., 11.0.2)
```bash
export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)
echo $JAVA_HOME #should output: /Library/Java/JavaVirtualMachines/jdk1.8.0_201.jdk/Contents/Home
```
3. For Windows users, from a Git Bash Prompt window, cd to the **sdk/tools/bin** folder and accept all the SDK license agreements
```
yes | ./sdkmanager.bat --licenses
```

View file

@ -1,14 +1,15 @@
# Setting up sentry-cli
Contact the Keyman team if you need access to sentry.keyman.com for development.
You will also need to install [sentry-cli](https://docs.sentry.io/cli/installation/) for uploading Debug symbols.
Contact the Keyman team if you need access to sentry.keyman.com for development.
You will also need to install [sentry-cli](https://docs.sentry.io/cli/installation/) for uploading Debug symbols.
After setting up your personal [Auth token](http://sentry.keyman.com/settings/account/api/auth-tokens/), add the following to **~/.bashrc**
```bash
export SENTRY_AUTH_TOKEN={your Sentry auth token}
export SENTRY_URL=https://sentry.keyman.com
export SENTRY_ORG=keyman
# select the appropriate project here:
export SENTRY_PROJECT=keyman-android
```
To validate your configuration, from the `android/` folder run `sentry-cli info`.
To validate your configuration, for example for keyman-android, from the `android/` folder run `sentry-cli info`.

View file

@ -26,11 +26,24 @@ PARAMFOUND=false
function print_help() {
echo "Usage: macos.sh targets"
echo " targets: one or more of: "
echo " android ios macos web all"
echo
echo "The targets parameter determines the platforms and components"
echo "that this script will setup your environment to build."
echo
echo " group targets:"
echo " all build all platform targets"
echo " all-optional build all targets, including optional"
echo
echo " platform targets:"
echo " android ios macos web"
echo
echo " optional targets:"
echo " kmcomp pandoc sentry-cli"
echo "Targets will automatically include dependency targets."
echo " kmcomp Keyman keyboard compiler"
echo " pandoc Documentation compiler"
echo " sentry-cli sentry.keyman.com debug symbol uploader"
echo
echo "Note: If a target has dependencies, those will automatically"
echo " be included."
}
while [[ $# -gt 0 ]] ; do
@ -75,6 +88,16 @@ while [[ $# -gt 0 ]] ; do
REQUIRE_WEB=true
PARAMFOUND=true
;;
all-optional)
REQUIRE_ANDROID=true
REQUIRE_IOS=true
REQUIRE_MACOS=true
REQUIRE_WEB=true
REQUIRE_KMCOMP=true
REQUIRE_PANDOC=true
REQUIRE_SENTRYCLI=true
PARAMFOUND=true
;;
*)
echo "Error: unrecognised parameter."
echo
@ -86,7 +109,7 @@ while [[ $# -gt 0 ]] ; do
done
if ! $PARAMFOUND; then
echo "Error: must have a target parameter"
echo "Error: must specify target parameter"
echo
print_help
exit 1
@ -95,7 +118,7 @@ fi
# This script will configure your development environment from a bare metal mac install. It should be idempotent.
echo "This script will configure your macOS computer to build Keyman, installing build tools and prerequisites."
echo "You can also do this yourself following the notes in building.md."
echo "You can also do this yourself following the notes in docs/build/macos.md."
echo
read -p "Press ENTER to start install"
@ -103,7 +126,7 @@ if $REQUIRE_IOS || $REQUIRE_ANDROID; then
REQUIRE_WEB=true
fi
if $REQUIRE_ANDROID; then
if $REQUIRE_IOS || $REQUIRE_MACOS || $REQUIRE_ANDROID; then
REQUIRE_PANDOC=true
fi
@ -192,6 +215,7 @@ if $REQUIRE_MACOS || $REQUIRE_IOS || $REQUIRE_ANDROID; then
echo "additional components:"
if $REQUIRE_MACOS || $REQUIRE_IOS; then
echo " * XCode"
echo "You may need to run xcode-select to choose the correct version of XCode command line tools."
fi
if $REQUIRE_ANDROID; then
echo " * Android Studio"