To get the code:
- Fork https://github.com/domokit/sky_engine into your own GitHub account.
- Download depot_tools and make sure it is in your path.
- If you haven't configured your machine with an SSH key that's shared by github then follow the directions here: https://help.github.com/articles/generating-ssh-keys/.
- Create a
.gclient
file in an empty directory with the following contents, replacing<your_name_here
> with your GitHub account name:
solutions = [
{
"managed": False,
"name": "src",
"url": "[email protected]:<your_name_here>/sky_engine.git",
"custom_deps": {},
"deps_file": "DEPS",
"safesync_url": "",
},
]
target_os = ["android"]
gclient sync
cd src
git remote add upstream [email protected]:domokit/sky_engine.git
Currently we support building on Linux only, for an Android target and for a headless Linux target. Building on MacOS for Android, iOS, and a head-less MacOS target is coming soon.
- (Only the first time)
sudo ./build/install-build-deps-android.sh
- (Only the first time)
./tools/android/download_android_tools.py
./sky/tools/gn --android
ninja -C out/android_Debug
./sky/tools/shelldb start out/android_Debug/ sky/sdk/example/hello_world/lib/main.dart
- (Only the first time)
sudo ./build/install-build-deps.sh
./sky/tools/gn
ninja -C out/Debug
./sky/tools/test_sky --debug
runs the tests on the host machine usingout/Debug
../out/Debug/sky_shell --package-root=out/Debug/gen/dart-pkg/packages sky/sdk/example/hello_world/lib/main.dart
Note: Because Linux is headless, you won't see any UI. You can useprint
to generate console output or you can interact with the DartVM via observatory at http://localhost:8181/.
The Sky engine repository gladly accepts contributions via GitHub pull requests:
git fetch upstream
git checkout upstream/master -b name_of_your_branch
- Hack away
git commit -a
git push origin name_of_your_branch
git pull-request
(if you are using Hub) or go tohttps://github.com/<your_name_here>/sky_engine
and click the "Compare & pull request" button
Please make sure all your checkins have detailed commit messages explaining the patch. If you made multiple commits for a single pull request, either make sure each one has a detailed message explaining that specific commit, or squash your commits into one single checkin with a detailed message before sending the pull request.
You must complete the Contributor License Agreement. You can do this online, and it only takes a minute. If you've never submitted code before, you must add your (or your organization's) name and contact info to the AUTHORS file.
Tests are only supported on Linux currently.
sky/tools/test_sky --debug
- This runs the tests against
//out/Debug
. If you want to run against//out/Release
, omit the--debug
flag.
- This runs the tests against