BeagleBone Green/PocketBeagleのOS、bone-debianには、Node-REDがプレインストールされています。
このプレインストールされているNode-REDのアップグレードは、パッケージbb-node-red-installerをアップグレードするように案内されていますが、あまりメンテナンスされていないようで、本家のNode-REDと比べてバージョンが古いままになっています。
Node-REDを最新バージョンにするために、bb-node-red-installerを使わずにNode-REDをアップグレードしてみましょう。
PocketBeagleの場合:インターネットに接続する
PocketBeagleは、以下のいずれかの方法でインターネットに接続してください。
インストール済みパッケージを更新
念のため、リポジトリ一覧とパッケージを更新します。
debian@beaglebone:~$ sudo apt update
debian@beaglebone:~$ sudo apt upgrade
Node.jsを更新
Node.jsを更新します。
現在、最新LTSはv12ですが、諸般の事情があり、ここではNode.jsをv10にします。
debian@beaglebone:~$ node -v
v6.17.0
debian@beaglebone:~$ sudo sh -c 'curl -sL https://deb.nodesource.com/setup_10.x | bash -'
debian@beaglebone:~$ sudo apt-get install -y nodejs
debian@beaglebone:~$ node -v
v10.17.0
node-red.socketを停止
node-red.socketがポート1880を監視していて、アクセスがあるとnode-red.serviceを起動する仕組みになっていますが、無い方がスッキリするのでnode-red.socketを停止します。
debian@beaglebone:~$ sudo systemctl stop node-red.socket
debian@beaglebone:~$ sudo systemctl disable node-red.socket
node-red.serviceを停止
ポート1880にアクセスしていなければnode-red.serviceは停止していますが、念のため、node-red.serviceを停止します。
debian@beaglebone:~$ sudo systemctl stop node-red
Node-REDをアップグレード
npmコマンドで、Node-REDをアップグレードします。
debian@beaglebone:~$ cd /usr/local/lib
debian@beaglebone:~$ sudo npm install --unsafe-perm node-red
Node-REDのバージョンを確認
node-red.serviceを起動して、ポート1880にアクセスしてNode-REDのバージョンを確認します。
debian@beaglebone:~$ sudo systemctl start node-red