今回は、Nodeの勉強がてら開発環境を構築していきます。
Nodeとは
Ryan Dahlという開発者が作った、サーバサイドのプラットフォーム。プログラミング言語でも、ライブラリでも、フレームワークでもない。
現在のstatableはv0.10.0
http://nodejs.org
経緯
アイディアは元からあったのですが、一人だと怠けてしまいますよね。なので、出来る先輩と、出来る後輩が興味があるとわかったので巻き込んでみました。サーバの手配は言い出しっぺの自分がやって、ユーザの登録とか、GitLabのリポジトリの登録とかしました。
折角なので、継続的デリバリーを盛り込んで、Jenkins,TDD,BDD,を組み合わせみたいと思ってます。
って、まずはJavaScriptから勉強しないとなぁ。
その前に、nodeのバージョン管理マネージャであるnodebrewをインストールしたいと思います。
$ curl https://raw.github.com/hokaccha/nodebrew/master/nodebrew | perl - setup プログラム 'curl' はまだインストールされていません。 次のように入力することでインストールできます: sudo apt-get install curl $ sudo apt-get install curl [sudo] password for typosterr: パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています 状態情報を読み取っています... 完了 以下のパッケージが自動でインストールされましたが、もう必要とされていません: linux-headers-3.2.0-36-generic-pae linux-headers-3.2.0-30 linux-headers-3.2.0-30-generic-pae linux-headers-3.2.0-36 これらを削除するには 'apt-get autoremove' を利用してください。 以下のパッケージが新たにインストールされます: curl アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 0 個。 137 kB のアーカイブを取得する必要があります。 この操作後に追加で 346 kB のディスク容量が消費されます。 警告: 以下のパッケージは認証されていません! curl 検証なしにこれらのパッケージをインストールしますか [y/N]? y 取得:1 http://jp.archive.ubuntu.com/ubuntu/ precise/main curl i386 7.22.0-3ubuntu4 [137 kB] 137 kB を 0秒 で取得しました (425 kB/s) 以前に未選択のパッケージ curl を選択しています。 (データベースを読み込んでいます ... 現在 206702 個のファイルとディレクトリがインストールされています。) (.../curl_7.22.0-3ubuntu4_i386.deb から) curl を展開しています... man-db のトリガを処理しています ... curl (7.22.0-3ubuntu4) を設定しています ... typosterr@Ptolemaios:~$ curl https://raw.github.com/hokaccha/nodebrew/master/nodebrew | perl - setup % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 18289 100 18289 0 0 21188 0 --:--:-- --:--:-- --:--:-- 26015 fetching nodebrew... install nodebrew in $HOME/.nodebrew ======================================== Add path: export PATH=$HOME/.nodebrew/current/bin:$PATH ======================================== $あと、お好きなリソースファイルにパスを通すだけです。
$ vim .bashrc $ source .bashrc簡単ですね。
では、実際に使ってみましょう。
$ nodebrew ls-remote # インストールできるバージョンを表示 v0.0.1 v0.0.2 v0.0.3 v0.0.4 v0.0.5 v0.0.6 v0.1.0 v0.1.1 v0.1.2 v0.1.3 v0.1.4 v0.1.5 v0.1.6 v0.1.7 v0.1.8 v0.1.9 v0.1.10 v0.1.11 v0.1.12 v0.1.13 v0.1.14 v0.1.15 v0.1.16 v0.1.17 v0.1.18 v0.1.19 v0.1.20 v0.1.21 v0.1.22 v0.1.23 v0.1.24 v0.1.25 v0.1.26 v0.1.27 v0.1.28 v0.1.29 v0.1.30 v0.1.31 v0.1.32 v0.1.33 v0.1.90 v0.1.91 v0.1.92 v0.1.93 v0.1.94 v0.1.95 v0.1.96 v0.1.97 v0.1.98 v0.1.99 v0.1.100 v0.1.101 v0.1.102 v0.1.103 v0.1.104 v0.2.0 v0.2.1 v0.2.2 v0.2.3 v0.2.4 v0.2.5 v0.2.6 v0.3.0 v0.3.1 v0.3.2 v0.3.3 v0.3.4 v0.3.5 v0.3.6 v0.3.7 v0.3.8 v0.4.0 v0.4.1 v0.4.2 v0.4.3 v0.4.4 v0.4.5 v0.4.6 v0.4.7 v0.4.8 v0.4.9 v0.4.10 v0.4.11 v0.4.12 v0.5.0 v0.5.1 v0.5.2 v0.5.3 v0.5.4 v0.5.5 v0.5.6 v0.5.7 v0.5.8 v0.5.9 v0.5.10 v0.6.0 v0.6.1 v0.6.2 v0.6.3 v0.6.4 v0.6.5 v0.6.6 v0.6.7 v0.6.8 v0.6.9 v0.6.10 v0.6.11 v0.6.12 v0.6.13 v0.6.14 v0.6.15 v0.6.16 v0.6.17 v0.6.18 v0.6.19 v0.6.20 v0.6.21 v0.7.0 v0.7.1 v0.7.2 v0.7.3 v0.7.4 v0.7.5 v0.7.6 v0.7.7 v0.7.8 v0.7.9 v0.7.10 v0.7.11 v0.7.12 v0.8.0 v0.8.1 v0.8.2 v0.8.3 v0.8.4 v0.8.5 v0.8.6 v0.8.7 v0.8.8 v0.8.9 v0.8.10 v0.8.11 v0.8.12 v0.8.13 v0.8.14 v0.8.15 v0.8.16 v0.8.17 v0.8.18 v0.8.19 v0.8.20 v0.8.21 v0.8.22 v0.9.0 v0.9.1 v0.9.2 v0.9.3 v0.9.4 v0.9.5 v0.9.6 v0.9.7 v0.9.8 v0.9.9 v0.9.10 v0.9.11 v0.9.12 v0.10.0 $ nodebrew install 0.8.22 0.10.0コンパイラが無いのをおもいだしたので、、
$ sudo apt-get install build-essential パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています 状態情報を読み取っています... 完了 以下のパッケージが自動でインストールされましたが、もう必要とされていません: linux-headers-3.2.0-36-generic-pae linux-headers-3.2.0-30 linux-headers-3.2.0-30-generic-pae linux-headers-3.2.0-36 これらを削除するには 'apt-get autoremove' を利用してください。 以下の特別パッケージがインストールされます: dpkg-dev fakeroot g++ g++-4.6 libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl libdpkg-perl libstdc++6-4.6-dev libtimedate-perl 提案パッケージ: debian-keyring g++-multilib g++-4.6-multilib gcc-4.6-doc libstdc++6-4.6-dbg libstdc++6-4.6-doc 以下のパッケージが新たにインストールされます: build-essential dpkg-dev fakeroot g++ g++-4.6 libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl libdpkg-perl libstdc++6-4.6-dev libtimedate-perl アップグレード: 0 個、新規インストール: 11 個、削除: 0 個、保留: 0 個。 9,250 kB のアーカイブを取得する必要があります。 この操作後に追加で 27.4 MB のディスク容量が消費されます。 続行しますか [Y/n]? y 警告: 以下のパッケージは認証されていません! libstdc++6-4.6-dev g++-4.6 g++ libtimedate-perl libdpkg-perl dpkg-dev build-essential fakeroot libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl 検証なしにこれらのパッケージをインストールしますか [y/N]? y 取得:1 http://jp.archive.ubuntu.com/ubuntu/ precise/main libstdc++6-4.6-dev i386 4.6.3-1ubuntu5 [1,643 kB] 取得:2 http://jp.archive.ubuntu.com/ubuntu/ precise/main g++-4.6 i386 4.6.3-1ubuntu5 [6,745 kB] 取得:3 http://jp.archive.ubuntu.com/ubuntu/ precise/main g++ i386 4:4.6.3-1ubuntu5 [1,444 B] 取得:4 http://jp.archive.ubuntu.com/ubuntu/ precise/main libtimedate-perl all 1.2000-1 [41.6 kB] 取得:5 http://jp.archive.ubuntu.com/ubuntu/ precise-updates/main libdpkg-perl all 1.16.1.2ubuntu7.1 [180 kB] 取得:6 http://jp.archive.ubuntu.com/ubuntu/ precise-updates/main dpkg-dev all 1.16.1.2ubuntu7.1 [469 kB] 取得:7 http://jp.archive.ubuntu.com/ubuntu/ precise-updates/main build-essential i386 11.5ubuntu2.1 [5,796 B] 取得:8 http://jp.archive.ubuntu.com/ubuntu/ precise/main fakeroot i386 1.18.2-1 [87.9 kB] 取得:9 http://jp.archive.ubuntu.com/ubuntu/ precise/main libalgorithm-diff-perl all 1.19.02-2 [50.7 kB] 取得:10 http://jp.archive.ubuntu.com/ubuntu/ precise/main libalgorithm-diff-xs-perl i386 0.04-2build2 [12.9 kB] 取得:11 http://jp.archive.ubuntu.com/ubuntu/ precise/main libalgorithm-merge-perl all 0.08-2 [12.7 kB] 9,250 kB を 5秒 で取得しました (1,699 kB/s) 以前に未選択のパッケージ libstdc++6-4.6-dev を選択しています。 (データベースを読み込んでいます ... 現在 206718 個のファイルとディレクトリがインストールされています。) (.../libstdc++6-4.6-dev_4.6.3-1ubuntu5_i386.deb から) libstdc++6-4.6-dev を展開しています... 以前に未選択のパッケージ g++-4.6 を選択しています。 (.../g++-4.6_4.6.3-1ubuntu5_i386.deb から) g++-4.6 を展開しています... 以前に未選択のパッケージ g++ を選択しています。 (.../g++_4%3a4.6.3-1ubuntu5_i386.deb から) g++ を展開しています... 以前に未選択のパッケージ libtimedate-perl を選択しています。 (.../libtimedate-perl_1.2000-1_all.deb から) libtimedate-perl を展開しています... 以前に未選択のパッケージ libdpkg-perl を選択しています。 (.../libdpkg-perl_1.16.1.2ubuntu7.1_all.deb から) libdpkg-perl を展開しています... 以前に未選択のパッケージ dpkg-dev を選択しています。 (.../dpkg-dev_1.16.1.2ubuntu7.1_all.deb から) dpkg-dev を展開しています... 以前に未選択のパッケージ build-essential を選択しています。 (.../build-essential_11.5ubuntu2.1_i386.deb から) build-essential を展開しています... 以前に未選択のパッケージ fakeroot を選択しています。 (.../fakeroot_1.18.2-1_i386.deb から) fakeroot を展開しています... 以前に未選択のパッケージ libalgorithm-diff-perl を選択しています。 (.../libalgorithm-diff-perl_1.19.02-2_all.deb から) libalgorithm-diff-perl を展開しています... 以前に未選択のパッケージ libalgorithm-diff-xs-perl を選択しています。 (.../libalgorithm-diff-xs-perl_0.04-2build2_i386.deb から) libalgorithm-diff-xs-perl を展開しています... 以前に未選択のパッケージ libalgorithm-merge-perl を選択しています。 (.../libalgorithm-merge-perl_0.08-2_all.deb から) libalgorithm-merge-perl を展開しています... man-db のトリガを処理しています ... libtimedate-perl (1.2000-1) を設定しています ... libdpkg-perl (1.16.1.2ubuntu7.1) を設定しています ... dpkg-dev (1.16.1.2ubuntu7.1) を設定しています ... fakeroot (1.18.2-1) を設定しています ... update-alternatives: /usr/bin/fakeroot (fakeroot) を提供するために 自動モード で /usr/bin/fakeroot-sysv を使います。 libalgorithm-diff-perl (1.19.02-2) を設定しています ... libalgorithm-diff-xs-perl (0.04-2build2) を設定しています ... libalgorithm-merge-perl (0.08-2) を設定しています ... libstdc++6-4.6-dev (4.6.3-1ubuntu5) を設定しています ... g++-4.6 (4.6.3-1ubuntu5) を設定しています ... g++ (4:4.6.3-1ubuntu5) を設定しています ... update-alternatives: /usr/bin/c++ (c++) を提供するために 自動モード で /usr/bin/g++ を使います。 build-essential (11.5ubuntu2.1) を設定しています ...いよいよ、インストールしていきます。
$ nodebrew install 0.8.22 0.10.0 #引数は1つまでらしいです。なので、再度0.10.0をインストール $ nodebrew list #nodebrewでインストール済みのnodeのバージョンを表示 v0.8.22 v0.10.0 current: none $ nodebrew use 0.8.22 #採用するnodeのバージョンを指定 use v0.8.22 $ npm --version #npmはnodeのパッケージ管理マネージャ 1.2.14簡単ですね。
2013/03/16 追記
TODO
Better JavaScript Indentation
jsl.vim ->書きました
quickrun
これら3つのvimのプラグインの導入をする。
最後までお読みいただきありがとうございました。
0 件のコメント:
コメントを投稿