はじめに
もともとChromeBookに興味があったことに加えて、新しいMacノートが発売されるまでの繋ぎも兼ねて購入してみました。
(ノートが必要だったのですが購入当時新製品の発売間近との噂もあったので)
あわよくば開発できればというのがありましたが、最低限勉強会などでのメモ取りやウェブサイトの閲覧ができれば元は取れるのでダメ元だったのですが。。。
結果はいろいろハマったりもありましたが
- vim, ssh, gitが使える(vim上での日本語は使えていないですが)
- Node.jsとMongoDBも使えた
- さらにherokuのToolbeltも利用できる
- Node.jsで書いたコードをheroku localで実行できる
- もちろんデプロイもできた
JS系の勉強会であればハンズオンもいけるのではないかという大満足の結果となりました。
端末スペック
購入したのは
Dell Chromebook 11 (Cel2955U/2GB/16GB/11.6インチ/ChromeOS) 15Q31
Amazonにて新古品を22,800円で入手しました。
作りがおもちゃのような心許なさですが、、、値段を考えれば十分。
重さも1.3kgで十分持ち運べます。
バッテリーも10時間可能なので
土日勉強会に持っていく程度ならバッテリーを安心して置いていけます。
#セットアップ
詳細な手順については既に多くのサイトでまとめられているので流れ以外は省略します。
固有の事象に絞って記述をしようと思います。
私が行った作業はだいたい末尾の参考サイトに記載されています。
** これからインストールしようとされている方は、先に末尾の参考サイトを参考にしていただいた方が良いと思います。 **
開発者モード
最初から開発用に使いたいと思っていたので購入後にすぐやりました。
後で切り替えるとデータが消えるらしいのでエンジニアなら迷わずやってしまいましょう。
crewのインストール
必要に応じてパッケージを入れます。
なお、nodeはcrewでinstallできませんでした。
パッケージは存在するようなのですが。。。
※後述する /home/chronos/user/ の再マウント(実行権限付与)をやっていなかったからのような気がします。
参考までに出力されたエラーはこちら
sh: npm: not found chown: cannot access ‘/{lib/node_modules,bin,share}’: No such file or directory node failed to install: `sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}` exited with 1
nvmでNode.jsインストール
1点ハマったのは
NVM_DIRが /home/chronos以下になったいたのでnmv install がこけました
export NVM_DIR="/usr/local/bin/.nvm" && nvm install v6.x.x
(xは任意の番号)
で解決
※こちらも /home/chronos/user/ の再マウント(実行権限付与)をしていれば発生していなかったと思います。
heroku Toolbelt
インストール自体は成功したのですがheroku loginしようとすると
以下のようなエラーが。
/home/chronos/user/.local/share/heroku/cli/bin/heroku: Permission denied ! Heroku client internal error. ! Search for help at: https://help.heroku.com ! Or report a bug at: https://github.com/heroku/heroku/issues/new
Error: Permission denied - /home/chronos/user/.local/share/heroku/cli/bin/heroku (Errno::EACCES)
Command: heroku
結局末尾の参考サイトに助けられ
sudo mount -i -o remount,exec /home/chronos/user/
これでherokuがinstallされたディレクトリに実行権限を与えて解決しました。
MongoDB
crewであっさりinstallできたのですが
ディスク容量の問題で
journal機能をoffにしました。
mongod.conf
storage:
dbPath: .db
journal:
enabled: false
最後に
上記でサンプルコードを動かしたり、既存のPJは上手く動いてくれていますが、ゴリゴリ実装に利用しているわけではないので、また何か不具合に遭遇したら追記していければと思っています。
参考
作業時に参考にさせていただいたページです
Chromebookで開発環境を整えるためにしたこと
chromebookにnode.jsを入れる