ethereum / mist Archiviert

Github Alle VeröffentlichungenBuild-Status EntwicklungszweigBuild-StatusTreten Sie dem Chat bei Code Triagers Abzeichen

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:

  1. Bitte lesen Sie die Anleitung zur Fehlerbehebung bei Nebel.
  2. Besuchen Sie unseren Gitter-Kanal, um sich mit der Community zu verbinden und sofortige Hilfe zu erhalten.
  3. Suche nach ähnlichen Problemen und möglicher Hilfe.
  4. 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.