はじめに
ビジュアルプログラミングIoTLT vol.7でラズパイ版のenebular editorがリリースされたことを知ったのをきっかけに、さっそくインストールして動作を試してみました。
enebular editorの公式ドキュメントはこちらです。
pi@raspberrypi:~ $ wget -qO- https://enebular.com/editor-install | sudo -u "$USER" -E bash -s -- --arch=arm
==== Installing arm version ====
enebular editor install location: /home/pi/Applications/enebular-editor
==== Downloading enebular editor ====
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 394 100 394 0 0 2774 0 --:--:-- --:--:-- --:--:-- 2774
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 394 100 394 0 0 4020 0 --:--:-- --:--:-- --:--:-- 4020
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 87.5M 100 87.5M 0 0 2693k 0 0:00:33 0:00:33 --:--:-- 2846k
Checksum matched
==== Downloading icon ====
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 39035 100 39035 0 0 245k 0 --:--:-- --:--:-- --:--:-- 245k
==== Creating desktop entry ====
==== Starting post install ====
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下の追加パッケージがインストールされます:
libwnck-3-0 libwnck-3-common mate-notification-daemon-common
以下のパッケージが新たにインストールされます:
libwnck-3-0 libwnck-3-common mate-notification-daemon mate-notification-daemon-common
アップグレード: 0 個、新規インストール: 4 個、削除: 0 個、保留: 190 個。
434 kB のアーカイブを取得する必要があります。
この操作後に追加で 3,038 kB のディスク容量が消費されます。
取得:1 http://ftp.tsukuba.wide.ad.jp/Linux/raspbian/raspbian buster/main armhf libwnck-3-common all 3.30.0-2 [234 kB]
取得:2 http://ftp.tsukuba.wide.ad.jp/Linux/raspbian/raspbian buster/main armhf libwnck-3-0 armhf 3.30.0-2 [97.5 kB]
取得:3 http://ftp.tsukuba.wide.ad.jp/Linux/raspbian/raspbian buster/main armhf mate-notification-daemon-common all 1.20.2-1 [58.6 kB]
取得:4 http://ftp.tsukuba.wide.ad.jp/Linux/raspbian/raspbian buster/main armhf mate-notification-daemon armhf 1.20.2-1 [44.1 kB]
434 kB を 3秒 で取得しました (156 kB/s)
以前に未選択のパッケージ libwnck-3-common を選択しています。
(データベースを読み込んでいます ... 現在 94409 個のファイルとディレクトリがインストールされています。)
.../libwnck-3-common_3.30.0-2_all.deb を展開する準備をしています ...
libwnck-3-common (3.30.0-2) を展開しています...
以前に未選択のパッケージ libwnck-3-0:armhf を選択しています。
.../libwnck-3-0_3.30.0-2_armhf.deb を展開する準備をしています ...
libwnck-3-0:armhf (3.30.0-2) を展開しています...
以前に未選択のパッケージ mate-notification-daemon-common を選択しています。
.../mate-notification-daemon-common_1.20.2-1_all.deb を展開する準備をしています ...
mate-notification-daemon-common (1.20.2-1) を展開しています...
以前に未選択のパッケージ mate-notification-daemon を選択しています。
.../mate-notification-daemon_1.20.2-1_armhf.deb を展開する準備をしています ...
mate-notification-daemon (1.20.2-1) を展開しています...
libwnck-3-common (3.30.0-2) を設定しています ...
mate-notification-daemon-common (1.20.2-1) を設定しています ...
libwnck-3-0:armhf (3.30.0-2) を設定しています ...
desktop-file-utils (0.23-4) のトリガを処理しています ...
mime-support (3.62) のトリガを処理しています ...
hicolor-icon-theme (0.17-2) のトリガを処理しています ...
gnome-menus (3.31.4-3) のトリガを処理しています ...
libglib2.0-0:armhf (2.58.3-2+deb10u2) のトリガを処理しています ...
libc-bin (2.28-10+rpi1) のトリガを処理しています ...
man-db (2.8.5-2) のトリガを処理しています ...
mate-notification-daemon (1.20.2-1) を設定しています ...
Post install finished
======================================================================================================================================================================================
enebular editor has been successfully installed ✔
- Version: 1.1.4
- Location: /home/pi/Applications/enebular-editor
======================================================================================================================================================================================
See details in full install log file: /tmp/enebular-editor-install-log.d59e0R
パレットの管理メニューが表示されない問題
enebular editorは問題なくインストールでき正常に起動しましたが、パレットの管理メニューが表示されない問題に遭遇しました。
Linux版の仕様かな?!と思っていたところ、enebular developer meetupでNode.jsのバージョンが問題かも(v10→v12へバージョンアップしてみてはどうか)、というヒントをいただきました。
ターミナル(CLI)からenebular editorの実行ファイル(AppRun.AppImage)を実行してデバッグログを表示させたところ、「パレットエディタを無効化 : npmコマンドが見つかりません」というログが出力されていました。
実行ログ
$ cd ~/Applications/enebular-editor/
$ sudo ./AppRun.AppImage
[2021-06-04 10:16:42.837] [info] Disabling sandbox
[2021-06-04 10:16:42.847] [info] ==========================================
[2021-06-04 10:16:42.848] [info] Running on linux
[2021-06-04 10:16:42.848] [info] Architecture arm
[2021-06-04 10:16:42.849] [info] Base dir /root/.config/enebular-editor
[2021-06-04 10:16:42.849] [info] Base url https://enebular.com/
[2021-06-04 10:16:42.849] [info] Base dir was cleaned
[2021-06-04 10:16:42.850] [info] ==========================================
[2021-06-04 10:16:43.951] [info] Checking for update
[2021-06-04 10:16:45.477] [info] Generated new staging user ID: 955ba6cb-ace2-5d60-bcec-478ba85908b0
[2021-06-04 10:16:45.901] [info] Update for version 1.1.4 is not available (latest version: 1.1.4, downgrade is allowed).
[2021-06-04 10:17:45.181] [info] Connected to socket true
[2021-06-04 10:17:45.533] [info] Received response from the socket
[2021-06-04 10:17:45.534] [info] Desktop editor loading is allowed.
[2021-06-04 10:17:49.421] [error] ai nodes installation error Error: Command failed: npm uninstall "@uhuru/enebular-ai-contrib"
/bin/bash: npm: コマンドが見つかりません
at ChildProcess.exithandler (child_process.js:312:12)
at ChildProcess.emit (events.js:315:20)
at maybeClose (internal/child_process.js:1021:16)
at Socket.<anonymous> (internal/child_process.js:443:11)
at Socket.emit (events.js:315:20)
at Pipe.<anonymous> (net.js:674:12)
[2021-06-04 10:17:49.532] [info] 4 Jun 10:17:49 - [info]
Welcome to Node-RED
===================
[2021-06-04 10:17:49.535] [info] 4 Jun 10:17:49 - [info] Node-RED バージョン: v1.0.5-alpha.15
[2021-06-04 10:17:49.536] [info] 4 Jun 10:17:49 - [info] Node.js バージョン: v12.18.3
[2021-06-04 10:17:49.538] [info] 4 Jun 10:17:49 - [info] Linux 5.4.51-v7l-enable-DDR-mode arm LE
[2021-06-04 10:17:49.575] [info] 4 Jun 10:17:49 - [info] パレットエディタを無効化 : npmコマンドが見つかりません
[2021-06-04 10:17:49.581] [info] 4 Jun 10:17:49 - [info] パレットノードのロード
[2021-06-04 10:17:50.906] [info] [DEBUG] getModuleInfo():
[2021-06-04 10:17:50.907] [info] [DEBUG] moduleNodes: {}
[2021-06-04 10:17:50.913] [info] [DEBUG] getModuleInfo():
[2021-06-04 10:17:50.914] [info] [DEBUG] moduleNodes: {}
[2021-06-04 10:17:50.916] [info] [DEBUG] getModuleInfo():
[2021-06-04 10:17:50.917] [info] [DEBUG] moduleNodes: {}
[2021-06-04 10:17:50.928] [info] [DEBUG] getModuleInfo():
[2021-06-04 10:17:50.930] [info] [DEBUG] moduleNodes: {}
[2021-06-04 10:17:50.945] [info] [DEBUG] getModuleInfo():
[2021-06-04 10:17:50.946] [info] [DEBUG] moduleNodes: {}
[2021-06-04 10:17:50.948] [info] [DEBUG] getModuleInfo():
[2021-06-04 10:17:50.949] [info] [DEBUG] moduleNodes: {}
[2021-06-04 10:17:50.951] [info] [DEBUG] getModuleInfo():
[2021-06-04 10:17:50.952] [info] [DEBUG] moduleNodes: {}
[2021-06-04 10:17:50.954] [info] [DEBUG] getModuleInfo():
[2021-06-04 10:17:50.955] [info] [DEBUG] moduleNodes: {}
[2021-06-04 10:17:58.817] [info] ##### enebular deploy ####
[2021-06-04 10:17:58.837] [info] ##### reload flows ####
[2021-06-04 10:17:59.034] [info] 4 Jun 10:17:59 - [info] Dashboard version 2.26.1 started at /ui
[2021-06-04 10:17:59.635] [info] 4 Jun 10:17:59 - [info] コンテキストストア : 'default' [module=memory]
[2021-06-04 10:17:59.718] [info] 4 Jun 10:17:59 - [info] フローを開始します
[2021-06-04 10:17:59.746] [info] 4 Jun 10:17:59 - [info] フローを開始しまし
原因と対策
原因:
npmコマンドが見つからない。
対策:
Node.js v12.xの最新版をインストールする。(npmコマンドも合わせてインストールされる。)
$ curl -fsSL https://deb.nodesource.com/setup_12.x | sudo -E bash -
$ sudo apt-get install -y nodejs
実行ログ
[2021-06-04 11:19:33.523] [info] Disabling sandbox
[2021-06-04 11:19:33.533] [info] ==========================================
[2021-06-04 11:19:33.534] [info] Running on linux
[2021-06-04 11:19:33.535] [info] Architecture arm
[2021-06-04 11:19:33.535] [info] Base dir /root/.config/enebular-editor
[2021-06-04 11:19:33.536] [info] Base url https://enebular.com/
[2021-06-04 11:19:33.536] [info] Base dir was cleaned
[2021-06-04 11:19:33.536] [info] ==========================================
[2021-06-04 11:19:34.633] [info] Checking for update
[2021-06-04 11:19:36.365] [info] Update for version 1.1.4 is not available (latest version: 1.1.4, downgrade is allowed).
[2021-06-04 11:19:54.254] [info] Connected to socket true
[2021-06-04 11:19:54.627] [info] Received response from the socket
[2021-06-04 11:19:54.628] [info] Desktop editor loading is allowed.
[2021-06-04 11:20:12.965] [info] ai nodes installed!
[2021-06-04 11:20:13.076] [info] 4 Jun 11:20:13 - [info]
Welcome to Node-RED
===================
[2021-06-04 11:20:13.079] [info] 4 Jun 11:20:13 - [info] Node-RED バージョン: v1.0.5-alpha.15
[2021-06-04 11:20:13.081] [info] 4 Jun 11:20:13 - [info] Node.js バージョン: v12.18.3
[2021-06-04 11:20:13.082] [info] 4 Jun 11:20:13 - [info] Linux 5.4.51-v7l-enable-DDR-mode arm LE
[2021-06-04 11:20:13.914] [info] 4 Jun 11:20:13 - [info] パレットノードのロード
[2021-06-04 11:20:15.371] [info] [DEBUG] getModuleInfo():
[2021-06-04 11:20:15.372] [info] [DEBUG] moduleNodes: {}
[2021-06-04 11:20:15.377] [info] [DEBUG] getModuleInfo():
[2021-06-04 11:20:15.378] [info] [DEBUG] moduleNodes: {}
[2021-06-04 11:20:15.381] [info] [DEBUG] getModuleInfo():
[2021-06-04 11:20:15.382] [info] [DEBUG] moduleNodes: {}
[2021-06-04 11:20:15.383] [info] [DEBUG] getModuleInfo():
[2021-06-04 11:20:15.384] [info] [DEBUG] moduleNodes: {}
[2021-06-04 11:20:15.391] [info] [DEBUG] getModuleInfo():
[2021-06-04 11:20:15.392] [info] [DEBUG] moduleNodes: {}
[2021-06-04 11:20:15.401] [info] [DEBUG] getModuleInfo():
[2021-06-04 11:20:15.403] [info] [DEBUG] moduleNodes: {}
[2021-06-04 11:20:15.405] [info] [DEBUG] getModuleInfo():
[2021-06-04 11:20:15.407] [info] [DEBUG] moduleNodes: {}
[2021-06-04 11:20:15.409] [info] [DEBUG] getModuleInfo():
[2021-06-04 11:20:15.410] [info] [DEBUG] moduleNodes: {}
[2021-06-04 11:20:15.411] [info] [DEBUG] getModuleInfo():
[2021-06-04 11:20:15.412] [info] [DEBUG] moduleNodes: {}
[2021-06-04 11:20:23.085] [info] ##### enebular deploy ####
[2021-06-04 11:20:23.088] [info] ##### reload flows ####
[2021-06-04 11:20:23.271] [info] 4 Jun 11:20:23 - [info] Dashboard version 2.26.1 started at /ui
[2021-06-04 11:20:23.818] [info] 4 Jun 11:20:23 - [info] コンテキストストア : 'default' [module=memory]
[2021-06-04 11:20:23.978] [info] 4 Jun 11:20:23 - [info] フローを開始します
[2021-06-04 11:20:24.005] [info] 4 Jun 11:20:24 - [info] フローを開始しました
無事にパレット管理メニューが表示されました!