This branch is 41 commits ahead, 968 commits behind ethereum:master.
The Mist browser is the tool of choice to browse and use Ðapps.
For the Mist API see the MISTAPI.md.
If you want install the app from a pre-built version on the release page, you can simply run the executable after download.
For updating simply download the new version and copy it over the old one (keep a backup of the old one if you want to be sure).
Config folder
The data folder for Mist is stored in other places:
Windows %APPDATA%\Mist
macOS ~/Library/Application Support/Mist
Linux ~/.config/Mist
For development, a Meteor server will to be started to assist with live reload and CSS injection. Once a Mist version is released the Meteor frontend part is bundled using meteor-build-client
npm package to create pure static files.
To run mist in development you need:
Node.js v6.x
(use the prefered installation method for your OS)
Meteor javascript app framework
Yarn package manager
Electron v1.3.13
cross platform desktop app framework
Gulp build and automation system
Install the later ones via:
$ curl https://install.meteor.com/ | sh$ curl -o- -L https://yarnpkg.com/install.sh | bash$ yarn global add [email protected]$ yarn global add gulp
Now you're ready to initialize Mist for development:
$ git clone https://github.com/expanse-org/mist.git$ cd mist$ yarn
To update Mist in the future, run:
$ cd mist$ git pull$ yarn
For development we start the interface with a Meteor server for auto reload etc. Start the interface in a separate terminal window:
$ cd mist/interface && meteor --no-release-check
In the original window you can then start Mist with:
$ cd mist$ electron .
NOTE: client-binaries (e.g. geth) specified in clientBinaries.json will be checked during every startup and downloaded if out-of-date, binaries are stored in the config folder
NOTE: use --help
to display available options, e.g. --loglevel debug
(or trace
) for verbose output
Start the wallet app for development, in a separate terminal window:
$ cd mist/interface && meteor --no-release-check// and in another terminal$ cd my/path/meteor-dapp-wallet/app && meteor --port 3050
In the original window you can then start Mist using wallet mode:
$ cd mist$ electron . --mode wallet
This is useful if you have a node running on another machine, though note that it's less secure than using the default IPC method.
$ electron . --rpc http://localhost:8545
You can pass command-line options directly to Gexp by prefixing them with --node-
in the command-line invocation:
$ electron . --mode mist --node-rpcport 19343 --node-networkid 2
The --rpc
Mist option is a special case. If you set this to an IPC socket file path then the --ipcpath
option automatically gets set, i.e.:
$ electron . --rpc /my/gexp.ipc
...is the same as doing...
$ electron . --rpc /my/gexp.ipc --node-ipcpath /my/gexp.ipc
To run a private network you will need to set the IPC path, network id and data folder:
$ electron . --rpc ~/Library/Expanse/gexp.ipc --node-networkid 1234 --node-datadir ~/Library/Expanse/privatenet
NOTE: since ipcpath
is also a Mist option you do not need to also include a --node-ipcpath
option.
You can also run gexp
separately yourself with the same options prior to start Mist normally.
To create a binaries you need to install electron-builder
dependencies:
// 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:
$ cd mist$ gulp// Or to generate the wallet (using the https://github.com/expanse-org/meteor-dapp-wallet -> master)$ gulp wallet
This will generate the binaries inside the dist_mist/release
or dist_wallet/release
folder.
Options
platform
Additional you can only build the windows, linux, mac or all binary by using the platform
option:
$ gulp update-nodes --platform mac// And$ gulp mist --platform mac// Or$ gulp mist --platform mac,win
Options are:
mac
(Mac OSX)
win
(Windows)
linux
(Linux)
all
(default)
walletSource
With the walletSource
you can specify the branch to use, default ist master
:
$ gulp mist --walletSource develop
Options are:
master
develop
local
Will try to build the wallet from [mist/]../meteor-dapp-wallet/app
mist-checksums | wallet-checksums
Spits out the SHA256 checksums of distributables.
It expects installer/zip files to be in the generated folders e.g. dist_mist/release
$ gulp mist-checksums3f726fff186b85c600ea2459413d0bf5ada2dbc98877764efbefa545f96eb975 ./dist_mist/release/Mist-0.8.1-ia32.exeab4d26d5ebc66e9aba0fa610071266bacbb83faacbb7ed0dd2acb24386190bdb ./dist_mist/release/Mist-0.8.1.exe909b0fb4c7b09b731b2a442c457747e04ffdd9c03b6edc06079ae05a46200d13 ./dist_mist/release/Mist-0.8.1-ia32.debe114d6188963dfdae0489abf4e8923da58b39ff9cdbaad26e803af27c7ce55d1 ./dist_mist/release/Mist-0.8.1.deb930787dd2f5ed6931068bff9244bccc01f397f552c48ded0f08e515e276dd080 ./dist_mist/release/Mist-0.8.1.dmg
As of #972 we've updated the build process and thus need to redo code-signing.
First make sure to build Mist with: gulp mist --platform [mac,linux]
or gulp wallet --platform [mac,linux]
.
Then run gulp test-mist
or gulp test-wallet
, accordingly.