Raspberry Pi にNode.jsを(zeroでも3でも)

  • 2019.07.27 Saturday
  • 13:33
似たようなタイトルの記事が散見されますが、なんとなくnとかnvmとか入れずにやりたくて。
2019-07-10-raspbian-buster-lite合わせです。zeroでも3でも同じになるようです。

いつもの呪文。
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install nodejs npm

どういう訳か、nodejsとnpmのバージョンが不一致。
$ node -v
v10.15.2
$ npm -v
5.8.0
npmでなにかするとこうなります。
npm WARN npm npm does not support Node.js v10.15.2
npm WARN npm You should probably upgrade to a newer version of node as we
npm WARN npm can't make any promises that npm will work with this version.
npm WARN npm Supported releases of Node.js are the latest release of 4, 6, 7, 8, 9.
npm WARN npm You can find the latest version at https://nodejs.org/
なのでアップデート。ちょっとつまずきました。
$ sudo npm update -g npm
これだと何故か上手くいきません。さっきのエラーが出るだけでした。
なのでこうしました。
$ sudo sudo npm install -g npm
再起動してから確認すると
$ npm -v
6.10.2

なんとなく上手くいった感じ。終わりよければ...

【旧】Raspberry Pi ZeroにNode.jsを

  • 2019.07.11 Thursday
  • 00:43
2019-07-10-raspbian-buster-liteだと内容が変わったので【旧】としました。 一年近く放置して今更なネタを…
似たようなタイトルの記事が散見されますが、なんとなくnとかnvmとか入れずにやりたくて。
Raspberry Pi Zeroは標準?の方法だとCPUがARMv6なんでアカンとなるんですね。
$ curl -sL https://deb.nodesource.com/setup_8.x | bash -

なんと、2019-04-08-raspbian-stretch-liteだと8.11.1がapt-getでインストールできるんですね(liteでなければそもそもインストールされている?)。
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install nodejs npm

ここで問題となるのがnpmのバージョンが古い(1.4.21)うえに警告が毎回出ること。
(node:26348) [DEP0022] DeprecationWarning: os.tmpDir() is deprecated. Use os.tmpdir() instead.

ですが、sudo npm install -g npmではバージョンが上手く上がらない様子。
で、調べてみるとこのページを発見。

npmのバージョンが2.6.0以下ならこうしろってことみたい。
$ sudo npm install npm@latest -g

なんとなく上手くいった感じ。

Watchdogをインストール【暫定版】

  • 2018.08.25 Saturday
  • 19:18
これまた先人ネタの集約、自分への覚書。


インストール
$ sudo apt-get install watchdog

サービスの設定

/lib/systemd/system/watchdog.service
$ sudo vim /lib/systemd/system/watchdog.service
最下行にWantedBy=multi-user.targetを追加します。
[Install]
WantedBy=multi-user.target

ロード
$ sudo update-rc.d watchdog enable
$ sudo modprobe bcm2835_wdt


設定

/etc/watchdog.conf
$ sudo vim /etc/watchdog.conf
max-load-1 = 24 先頭の#を外します(アンコメント)。
watchdog-device = /dev/watchdog アンコメント。
watchdog-timeout = 10 直下に追加します。

再起動
$ reboot

HomebridgeをVolumi2にインストール【改訂】

  • 2018.08.16 Thursday
  • 12:03
現時点(2018/8/16)の最新バージョンに合わせて改訂版を作成しました。過去記事は覚書として修正予定。
Volumio2限定のHomebridgeインストールです。
基本はここです。

なにはともあれ
$ sudo apt-get update
$ sudo apt-get upgrade

gcc,g++
gccのバージョンとインストールに関して色々な記事があったのですが、結局シンプルに。
$ sudo apt-get install gcc g++
以下のような結果となれば大丈夫らしいです。
$ g++ -v
...
gcc version 4.9.2 (Raspbian 4.9.2-10+deb8u1)

git,make
参考ページと順番が前後してますが問題ありませんでした。
$ sudo apt-get install git make

Node
Volumioにはシステム(apt-getの管理外)としてNode.jsが組み込まれていました(長いこと気が付きませんでした ^^;)。/bin/、/lib/にインストールされていて、コマンドラインで呼び出されるのは/usr/local/にあるシンボリックリンクです。
2018/6/16リリースのVolumio 2.411より8.11となり、最近のプラグインでも問題ないバージョンとなりました。
$ node -v
v.8.11.1

Avahi
Volumioであればインストール済みなので不要(こちらはapt-getの管理下)です。

Homebridge
nodeと同じ(シンボリックリンクではなく実体のある)ディレクトリにインストールされますので、Volumioだと/usr/bin/にインストールされます。
$ sudo npm install -g --unsafe-perm homebridge

後はお好みのプラグインをインストールします。
$ sudo npm install -g プラグイン

私がインストールしたプラグイン。設定は省略。
  • homebridge-irkit
  • homebridge-netatmo
  • homebridge-cmd
  • homebridge-platform-wemo
  • homebridge-sonybraviatv

常駐化は別記事で。

Volumio2(Raspberry Pi)の基本設定【改】

  • 2017.08.24 Thursday
  • 21:15
Volumio2は自体のインストールは本家のページを参考に。
VolumioはWebブラウザから利用することを前提としたミュージックプレイヤーに特化されています。このため、それ以外の環境はほぼ何も装備されていません。homebridgeを入れるまでに試行錯誤したので、homebridgeに限らず何か手を加えようとする際はやっておいた方がいいかと思うことをまとめ直しました。

ssh接続有効化
http://volumio.local/dev/
 ブラウザからアクセスしてssh接続を有効(enable)にします。

ロケールの設定
$ sudo dpkg-reconfigure locales
  • en_US.UTF-8 UTF-8
  • ja_JP.EUC-JP EUC-JP
  • ja_JP.UTF-8 UTF-8
※ja_xxにチェックを入れて追加します。

タイムゾーンの変更
$ sudo dpkg-reconfigure tzdata
 「アジア」から「東京」を選びます。

基本的?環境

なにはともあれ
$ sudo apt-get update
$ sudo apt-get upgrade

フォント
とりあえず入れておきます。
$ sudo apt-get install fonts-migmix

man
いくつかのインストールでメッセージがウザいから。あって困るものでもないし。
$ sudo apt-get install man-db manpages manpages-dev
$ sudo apt-get install manpages-ja manpages-ja-dev

vim
使い慣れたものの方がいいですよね。
$ sudo apt-get install vim

Volumio2でRaspberry Pi 公式ディスプレイを【改】

  • 2017.08.19 Saturday
  • 11:02
2017/8/16現在、Volumioの最新バージョンではプラグインのインストールが途中で止まることもなく、スクリーンセーバーも設定されます。

Raspberry Pi 3に公式の7インチ タッチ・スクリーン ディスプレイを接続してVolumio2を動かす場合の覚書です。
接続については本家のページを参考に。ジャンパー線の接続も写真付きで解説されていますが、Raspberry Pi 2、3では電源だけ繋げばいいらしいです。(実際に試してみましたが、接続しなくてもタッチ機能は動作しました。)
電源をラズパイと共有するための接続なので、microUSBで双方に給電する場合はジャンパー線の接続は不要です。

ディスプレイの表示方向
公式ディスプレイは一般的なディスプレイやテレビ同様、各種端子が下を向くことを想定しているみたいですが、市販の大抵のフレームはスタンド等での底上げがないので端子は上向きになるように作られています。このため、表示を180度回転させる必要があります。

 /boot/config.txtに追記
lcd_rotate=2

日本語フォントのインストール(未実施であれば)
Raspberry Pi 3自体での表示となりますので、曲名等で対応した言語フォントのインストールが必要です。
$ sudo apt-get update
$ sudo apt-get install fonts-migmix

スクリーンセーバー(的動作)
本家サイトでのやりとりがプラグインに標準で採用されたようです。まだ不十分だと言う方もいるようで、私の環境ではそちらの設定の方がうまく動作しました。該当部分を表記しておきます。

 /opt/volumiokiosk.sh
xset +dmps
xset s blank
xset dpms 0 0 120 (dpmsを追記。120がブランクまでの秒数だと思います)
指定秒数で表示がブランクとなり、ディスプレイに触れば戻ります。

Mackerelで監視【随時更新】

  • 2017.05.21 Sunday
  • 20:18
MackerelでRaspberry Pi 3を監視するのも既に先人達が成し遂げられてますが、自分への覚書。
バージョンアップに気がついた都度、バージョン番号を更新します。

mackerel-agent
GitHubでreleaseされているlinux_armなものを使用します。
こまめにアップデートされています。2018/8/25現在はv0.56.0です。

ダウンロード
適当なディレクトリを作って作業します。
$ mkdir work
$ cd work
$ curl -LO https://github.com/mackerelio/mackerel-agent/releases/download/v0.56.0/mackerel-agent_linux_arm.tar.gz
$ tar zxf mackerel-agent_linux_arm.tar.gz

配置と初期設定
$ sudo mkdir -p /etc/mackerel-agent
$ sudo cp mackerel-agent_linux_arm/mackerel-agent /usr/local/bin
$ sudo cp mackerel-agent_linux_arm/mackerel-agent.conf /etc/mackerel-agent

自分のAPI KEYを使って初期化します。
$ sudo mackerel-agent init -apikey="API KEY"

サービスとして登録
systemdへ登録します。
/lib/systemd/system/mackerel-agent.service
$ sudo vim /lib/systemd/system/mackerel-agent.service
[Unit]
Description=mackerel-agent
After=network.target network-online.target

[Service]
Type=simple
ExecStart=/usr/local/bin/mackerel-agent
ExecReload=/bin/kill -HUP $MAINPID
KillMode=control-group
Restart=on-failure

[Install]
WantedBy=multi-user.target
Alias=mackerel-agent.service

起動
$ sudo systemctl enable mackerel-agent
$ sudo systemctl start mackerel-agent

Raspberry Pi 覚書

  • 2017.02.01 Wednesday
  • 06:45
再設定のときに必要なことをメモ(適宜追記)

緑のLEDでシャットダウンを確認
緑のLEDをmicroSDへのアクセスランプではなく生存監視にする設定
シャットダウンするとLEDは消えます。

/boot/config.txt に追加
dtparam=act_led_trigger=heartbeat

calendar

S M T W T F S
 123456
78910111213
14151617181920
21222324252627
28293031   
<< July 2019 >>

selected entries

categories

archives

recent comment

recent trackback

links

profile

search this site.

others

mobile

qrcode

powered

無料ブログ作成サービス JUGEM