ethereum / mist Archiviert
Mist und Ethereum Wallet sind veraltet. Lesen Sie die Ankündigung und den Migrationshandbuch.
Der Mist Browser ist das Tool der Wahl, um Webapps zu durchsuchen und zu verwenden.
Für die Mist API siehe MISTAPI.md.
Dieses Repository ist auch der Elektronenhost für die Meteor-basierte Wallet Dapp.
Hilfe und Fehlerbehebung
Um Hilfe zu Mist oder Ethereum Wallet zu erhalten:
- Bitte lesen Sie die Anleitung zur Fehlerbehebung bei Nebel.
- Besuchen Sie unseren Gitter-Kanal, um sich mit der Community zu verbinden und sofortige Hilfe zu erhalten.
- Suche nach ähnlichen Problemen und möglicher Hilfe.
- Oder erstellen Sie ein neues Problem und geben Sie so viele Informationen wie möglich an, um Ihr Problem neu zu erstellen.
Beitrag leisten
Beiträge über Pull Requests sind willkommen. Sie können sehen, wo Sie nach Problemen mit den Verbesserungs- oder Fehlerbeschriftungen suchen können. Wir können Ihnen helfen, die Lösung zu finden.
Sie können auch helfen, indem Sie auf Probleme reagieren. Melden Sie sich bei CodeTriage an und Sie erhalten Push-Benachrichtigungen mit einer konfigurierbaren Häufigkeit. Es ist eine schöne Möglichkeit, beim Lernen zu helfen.
Installation
Wenn Sie die App von einer vorgefertigten Version auf der Release-Seite installieren möchten, können Sie die ausführbare Datei nach dem Download einfach ausführen.
Laden Sie zum Aktualisieren einfach die neue Version herunter und kopieren Sie sie über die alte (bewahren Sie eine Sicherungskopie der alten auf, wenn Sie sicher sein möchten).
Linux .zip installiert
, um von zu installieren.zip-Dateien, bitte zuerst libgconf2-4
installieren:
apt-get install libgconf2-4
Konfigurationsordner
Der Datenordner für Mist hängt von Ihrem Betriebssystem ab:
- Fenster
%APPDATA%\Mist
- macOS
~/Library/Application\ Support/Mist
- Linux
~/.config/Mist
Entwicklung
Für die Entwicklung unterstützt ein Meteor-Server das Live-Reload und die CSS-Injektion.
Sobald eine Mist-Version veröffentlicht wurde, wird der Meteor-Frontend-Teil mit dem meteor-build-client
npm-Paket gebündelt, um reine statische Dateien zu erstellen.
Abhängigkeiten
Um mist in der Entwicklung auszuführen, benötigen Sie:
- Knoten.js
v7.x
(verwenden Sie die bevorzugte Installationsmethode für Ihr Betriebssystem) - Meteor javascript App Framework
- Yarn Package Manager
Installieren Sie die letzteren über:
$ curl https://install.meteor.com/ | sh$ curl -o- -L https://yarnpkg.com/install.sh | bash
Initialisierung
Jetzt können Sie Mist für die Entwicklung initialisieren:
$ git clone https://github.com/ethereum/mist.git$ cd mist$ git submodule update --init --recursive$ yarn
Run Mist
Für die Entwicklung starten wir die Schnittstelle mit einem Meteor-Server zum automatischen Neuladen usw.
Starten Sie die Schnittstelle in einem separaten Terminalfenster:
$ yarn dev:meteor
Im Originalfenster können Sie dann mit Mist starten:
$ cd mist$ yarn dev:electron
HINWEIS: In clientBinaries angegebene Client-Binärdateien (z. B. geth).json wird bei jedem Start überprüft und heruntergeladen, wenn veraltet, Binärdateien werden im Konfigurationsordner gespeichert.
HINWEIS: Verwenden Sie --help
, um verfügbare Optionen anzuzeigen, z. --loglevel debug
(oder trace
) für ausführliche Ausgabe
Führen Sie die Brieftasche aus
Starten Sie die Wallet-App für die Entwicklung in einem separaten Terminalfenster:
$ yarn dev:meteor
In einem anderen Terminal:
$ cd my/path/meteor-dapp-wallet/app && meteor --port 3050
Im ursprünglichen Fenster können Sie dann Mist im Wallet-Modus starten:
$ cd mist$ yarn dev:electron --mode wallet
Verbinden Sie Ihren eigenen Knoten
Dies ist nützlich, wenn Sie bereits einen eigenen Knoten betreiben oder sich mit einem privaten oder Entwicklungsnetzwerk verbinden möchten.
$ yarn dev:electron --rpc path/to/geth.ipc
Übergeben von Optionen an Geth
Sie können Befehlszeilenoptionen direkt an Geth übergeben, indem Sie ihnen im Befehlszeilenaufruf --node-
voranstellen:
$ yarn dev:electron --mode mist --node-rpcport 19343 --node-networkid 2
Die --rpc
Mist-Option ist ein Sonderfall. Wenn Sie dies auf einen IPC-Socket-Dateipfad setzen, wird automatisch die Option --ipcpath
gesetzt, d. h.:
$ yarn dev:electron --rpc path/to/geth.ipc
… ist das gleiche wie zu tun…
$ yarn dev:electron --rpc /my/geth.ipc --node-ipcpath /path/to/geth.ipc
Erstellen eines lokalen privaten Netzes
Wenn Sie schnell ein lokales privates Netzwerk auf Ihrem Computer einrichten möchten, führen Sie:
geth --dev
Suchen Sie in der resultierenden geth-Ausgabe nach dem IPC-Pfad und beginnen Sie mit Mist:
$ yarn dev:electron --rpc path/to/geth.ipc
Deployment
Unser Build-System basiert auf gulp und electron-builder.
Abhängigkeiten
Plattformübergreifende Builds erfordern zusätzliche Abhängigkeiten, die von Electron Builder benötigt werden. Bitte folgen Sie den Anweisungen für aktuelle Abhängigkeitsinformationen.
Pakete generieren
Um die Binärdateien für die Ausführung zu generieren:
$ yarn build:mist
So generieren Sie die Ethereum-Brieftasche:
$ yarn build:wallet
Die generierten Binärdateien befinden sich unter dist_mist/release
oder dist_wallet/release
. Ab 0.11.0 werden sowohl Ethereum Wallet als auch Mist mit einer meteor-dapp-wallet Instanz (https://github.com/ethereum/meteor-dapp-wallet) ausgeliefert.
Optionen
Plattform
Verwenden Sie die folgenden Flags, um Binärdateien für bestimmte Plattformen zu erstellen (Standard: alle verfügbar):
$ yarn build:mist --mac # mac$ yarn build:mist --linux # linux$ yarn build:mist --win # windows
skipTasks
Beim Erstellen einer Binärdatei können Sie optional einige Aufgaben überspringen — im Allgemeinen zu Testzwecken.
$ yarn build:mist --mac --skipTasks=build-interface,release-dist
Prüfsummen
Gibt die SHA-256-Prüfsummen der verteilbaren Dateien aus.
Es erwartet Installer- /Zip-Dateien in den generierten Ordnern, z. dist_mist/release
$ yarn task checksums
Aufgaben in gulpfile gefunden.js und gulpTasks/
Jede andere Gulp-Aufgabe kann mit yarn task
ausgeführt werden.
$ yarn task clean-dist
Testen
Tests mit Spectron, a webdriver.io läufer für Elektron gebaut.
Stellen Sie zuerst sicher, dass Nebel mit:
$ yarn build:mist
Führen Sie dann die Tests aus:
$ yarn test:unit:once$ yarn test:e2e
Hinweis: Integrationstests werden unter Windows noch nicht unterstützt.