開発ツールのインストール
Holochainインストールガイドへようこそ!
このページはWindows用のインストールページになります。
さあ、前回に比べて大幅にインストール手順を簡単にするために、
ホロチェーンアプリやホロチェーン自体を開発するためにNixOS を使用することになりました!
動作環境
ハードウェア
- 8GB+ RAM (16GB推奨)
- 4+ CPU (6+ CPU推奨)
- 30GB+ 空きスペース
- インターネット接続
事前インストール必要なソフトウェア
- Windows 8+
- Powershell 2.0+
- git
- Vagrant
- VirtualBox
- Vagrant nixos plugin
重要事項
ホロチェーン開発ではWindowsにしろ、Macにしろ、Linuxにしろ同等のツールを使用しています。しかし、残念ながらNixOSツールは現在MacとLinuxでしかネイティブに稼働しません。
しかし、これはずっとこのままであるわけでもありません。
Windows用のNixOSは現在開発中です!
ですので、Windows用のNixOSが完成するまでの対処法として、仮想マシンを使っていくことになります。この一連のプロセスはローカルウェブサーバーを使用する方法と似ています。ホロチェーンに最適なオプションとしてDockerとVagrantがあります。
オフィシャルNixOSボックスでカスタムセットアップを作成するのはさほど難しいことではないので安心してください。
こちらのガイドではVagrant/VirtualBoxで NixOSを使用する手順を説明していきます。
注:これらのコマンドはすべて、Windows PowerShell 2.0以降を想定しています。
基本的なプロセスはすべてのシステム上で同じです。
まずは、新しいフォルダーを作成します。
mkdir holochain-vagrant
そして新しいフォルダーに移動します。
cd holochain-vagrant
次に、Holochain用に最適化された基本的なVagrantファイルをコピーします。
wget https://gist.githubusercontent.com/thedavidmeister/8e92696538fe04cf6b44552e14d29195/raw/4dcb83b983e8dcd2f5db213b0cde5a533af556a6/Vagrantfile -outfile Vagrantfile
ボックスをダウンロードし起動しましょう。
vagrant up
vagrantボックスをプロジェクト用にブートします。
vagrant halt
sshでボックス内に入りましょう。
vagrant ssh
現在のターミナルでプロジェクト用のvagrantボックスにログインします。
次に、共有フォルダーに移動ましょう。
cd /vagrant
正しくインストールされたことを以下のコマンドで確認しましょう。
nix-env --version
次のように表示されれば正常にインストールされたことになります。
nix-env (Nix) 2.2.2
NixOS及びHolochainがNixOSを使用している理由について詳しく知りたい場合は、こちらでNixに関する情報をご覧ください。
Windows / Vagrantのセットアップについて詳しく知りたい場合は、こちらで情報を見つけることができます。
ホロチェーンツールのインストール
Nixをインストールしたら、正しいRustバージョンとHolochainツールを含むすべての必要なツールを含んだ開発シェルを実行できます。このシェルは、現在の読者のRustインストールには干渉しないので安心してください。以下のコマンドを実行してみてください。
nix-shell https://holochain.love
このコマンドを初めて実行すると、ダウンロードとビルドに時間がかかりますが、次回に実行からはより早くなります。このコマンドが完了すると、以下の文字列で始まる新しいプロンプトが表示されるはずです。
[nix-shell:
以下の2つのコマンドを実行して、Holochainが正常に機能していることをテストしましょう。
[nix-shell:hc –version
[nix-shell:holochain –version
次のように表示されるはずです。
[nix-shell: hc 0.0.29-alpha2
[nix-shell: holochain 0.0.29-alpha2
更新/アンインストール
nix-shellを使用ているので、更新やアンインストールについて心配する必要はありません。nix-shellに入ると、すべてが最新リリースのツールに自動的にになり、シェルを終了すると使っていたツールがクリーンアップされます。
エディター
ほとんどの場合、通常どおり読者が使用しているエディターを使用できます。ただし、Holochainの依存関係(dependencies)と通信する必要がある統合開発環境(IDE)を使用している場合は、nix-shell内からそのIDEを起動する必要があります。
これを行うには、nix-shellで次のようにエディターを開きます。
[nix-shell:vim my_file.rs
最初のホロチェーンアプリ
hcツールを使用すれば、基本的なホロチェーンアプリの骨格が生成できるようになります。
hcはnix-shell及びnix-envでインストールできます。
新たなホロチェーンアプリを生成するコマンドは”hc init “です。
“my_first_app”の名前で新しいアプリを作りましょう。
以下のコマンドを実行してください。
hc init my_first_app
注: 次のエラーが出た場合Error: directory is not empty、my_first_appディレクトリが既に存在しているということなので、rm -fr my_first_appコマンドを実行して削除しましょう。
ホロチェーンアプリの基本的な骨格が”my_first_app”の中に格納されるはずです。
ファイルブラウザか好みのテキストエディタで内容を確認しましょう。
尚、内容が確認出来たら、ホロチェーンアプリの味噌である”zome”を生成してみましょう。
“zome”とは、俗に言うソースであり、読者が開発するホロチェーンアプリのソースコードに当たります。
まずは、読者のターミナルを”my_first_app”フォルダに移しましょう。
このために、以下のコマンドを実行してください。
cd my_first_app
次にZomeを生成するために以下のコマンドを実行してください。
hc generate zomes/my_zome
プロジェクトフォルダの中で、nix-shellに入っていることが確認できるはずです。
以下のようにターミナルのプロンプトが表示されるはずです。
このコマンドにより、”zomes/my_zome”に”zome”を開発するにあたっての実際のRustコードが生成されます。
これで好みのテキストエディタを使ってホロチェーンアプリの開発が可能になります。
生成された”zome”らには、シンプルな自動テストスイートが含まれています。
こちらは、”my_first_app/test/index.js”の中に格納されています。
これらのテストスイートは以下のコマンドで実行できます。
hc test
hcツールについてもっと学びたい場合は、以下のコマンドを実行してください。
hc help
Rustで開発するにあたって:
ホロチェーンアプリを開発するにあたって読者がrust言語のエキスパートになる必要は全くありません。
Rust言語の基本的な概念が理解できていれば、ホロチェーンアプリの開発には十分でしょう。
例えば、並行性やメモリ管理などの概念はほとんど理解できていなくても大丈夫です。
こちらのRust book (日本語版)は原本の翻訳版で初心者にも分かりやすく理解できるように書かれています。
しかし、そうは言ってもRustは低水準言語ですので、JavaScriptのようなスクリプ言語よりも冗長であることには変わりません。
次のステップ
さあ、どんどんP2Pアプリをホロチェーンで作っていきましょう!
ここから先は、弊社ウェブページのガイドブックやこちらのホロチェーン開発キットAPIリファレンス(ただ今翻訳中!)を参照にしてください。