diff --git a/README.md b/README.md index d7a10ebf3..12d772368 100644 --- a/README.md +++ b/README.md @@ -144,61 +144,54 @@ $ electron . --rpc ~/Library/Ethereum/geth.ipc --node-networkid 1234 --node-dat _NOTE: since `ipcpath` is also a Mist option you do not need to also include a `--node-ipcpath` option._ -You can also run `geth` separately yourself with the same options prior to start -Mist normally. +You can also launch `geth` separately with the same options prior starting +Mist. ### Deployment +Our build system relies on [gulp](http://gulpjs.com/) and [electron-builder](https://github.com/electron-userland/electron-builder/). -To create a binaries you need to install [`electron-builder` dependencies](https://github.com/electron-userland/electron-builder/wiki/Multi-Platform-Build#macos): +#### Dependencies + +[meteor-build-client](https://github.com/frozeman/meteor-build-client) bundles the [meteor](https://www.meteor.com/)-based interface. Install it via: - // tools for the windows binaries - $ brew install wine --without-x11 mono makensis - // tools for the Linux binaries - $ brew install gnu-tar libicns graphicsmagick xz - // general dependencies $ npm install -g meteor-build-client -To generate the binaries simply run: +Cross-platform builds may require additional [`electron-builder` dependencies](https://github.com/electron-userland/electron-builder/wiki/Multi-Platform-Build). On macOS those are: - $ cd mist - $ gulp + // windows deps + $ brew install wine --without-x11 mono makensis - // Or to generate the wallet (using the https://github.com/ethereum/meteor-dapp-wallet -> master) - $ gulp wallet + // linux deps + $ brew install gnu-tar libicns graphicsmagick xz -This will generate the binaries inside the `dist_mist/release` or `dist_wallet/release` folder. +#### Generate packages -#### Options +To generate the binaries for Mist run: -##### platform + $ gulp -Additional you can only build the windows, linux, mac or all binary by using the `platform` option: +To generate the Ethereum Wallet (this will pack the one DApp from https://github.com/ethereum/meteor-dapp-wallet): - $ gulp update-nodes --platform mac + $ gulp --wallet - // And - $ gulp mist --platform mac +The generated binaries will be under `dist_mist/release` or `dist_wallet/release`. - // Or - $ gulp mist --platform mac,win +#### Options -Options are: +##### platform -- `mac` (Mac OSX) -- `win` (Windows) -- `linux` (Linux) -- `all` (default) +To build binaries for specific platforms (default: all) use the following flags: + $ gulp --mac --win --linux ##### walletSource With the `walletSource` you can specify the branch to use, default ist `master`: - $ gulp mist --walletSource develop - + $ gulp --walletSource develop Options are: @@ -206,28 +199,23 @@ Options are: - `develop` - `local` Will try to build the wallet from [mist/]../meteor-dapp-wallet/app -##### mist-checksums | wallet-checksums +#### Checksums -Spits out the SHA256 checksums of distributables. +Spits out the MD5 checksums of distributables. It expects installer/zip files to be in the generated folders e.g. `dist_mist/release` - $ gulp mist-checksums + $ gulp checksums [--wallet] - 3f726fff186b85c600ea2459413d0bf5ada2dbc98877764efbefa545f96eb975 ./dist_mist/release/Mist-0.8.1-ia32.exe - ab4d26d5ebc66e9aba0fa610071266bacbb83faacbb7ed0dd2acb24386190bdb ./dist_mist/release/Mist-0.8.1.exe - 909b0fb4c7b09b731b2a442c457747e04ffdd9c03b6edc06079ae05a46200d13 ./dist_mist/release/Mist-0.8.1-ia32.deb - e114d6188963dfdae0489abf4e8923da58b39ff9cdbaad26e803af27c7ce55d1 ./dist_mist/release/Mist-0.8.1.deb - 930787dd2f5ed6931068bff9244bccc01f397f552c48ded0f08e515e276dd080 ./dist_mist/release/Mist-0.8.1.dmg -### Code signing for production +## Testing -**As of [#972](https://github.com/ethereum/mist/pull/972) we've updated the build process and thus need to redo code-signing.** +First make sure to build Mist with: + $ gulp [--wallet] -## Testing +Then run the tests: -First make sure to build Mist with: -`gulp mist --platform [mac,linux]` or `gulp wallet --platform [mac,linux]`. + $ gulp test [--wallet] -Then run `gulp test-mist` or `gulp test-wallet`, accordingly. +*Note: Integration tests are not yet supported on Windows.*