Статья

Установка ioBroker на ОС Linux

ioBroker - ВведениеУстановка ioBroker на ОС LinuxioBroker - админкаioBroker - устанавливаем первый драйверioBroker - ВизуализацияioBroker - уведомленияioBroker - управлениeioBroker - Собрать всех вместе и завести в Apple HomeKit

ioBroker - ham - HomeKitioBroker - Inline меню для Telegram бота

Всем привет!

У многих возникает проблема с первой установкой ioBroker на ПК/Одноплатник (она-же Raspberry/Малина к ним-же относятся оранджы, бананы и т.д.))) под операционной системой Linux. В этой статье пройдём по основным пунктам которые будут актуальны практически в любой сборке Линукс

Установку из под Windows в этой статье рассматривать не буду так-как Windows операционка сама по себе очень прожорливая, а нам дороги каждый МБ оперативной памяти, конечно ioBroker на Windows имеет место быть если у вас позволяет железо, а с Linux ну прям совсем туго.

И так, устанавливаем на ПК/Лаптоп/Малинку понравившуюся сборку Линукс или используем уже имеющуюся. Для ПК/Лаптоп я бы посоветовал (и дальше в статье её буду использовать) сборку Linux Mint 19

Для Малинки (или другого одноплатника) DietPi  но это не принципиально :)

Саму установку ОС опустим, она расписана уже сотни раз

Начнём :)

У НАС УСТАНОВЛЕН ЛИНУКС И ИМЕЕТСЯ ДОСТУП К СИСТЕМЕ ПО SSH

Первым делом приведём нашу ОС в актуальное состояние

sudo apt-get update sudo apt-get upgrade

Ожидаем завершения, на одноплатниках это может занять определённое колличество времени.

Удаляем если уже была в системе установленна ранее или прилагалась в сборке ОС ноду. Просто строку за строкой отрабатываем следующие команды

Входим с правами root (или перед всеми командами добавляем команду sudo)

sudo su apt-get --purge remove node apt-get --purge remove nodejs apt-get autoremove reboot

Устанавливаем ноду 8 и несколько необходимых пакетов

sudo su apt-get install curl curl -sL https://deb.nodesource.com/setup_10.x | bash - apt-get install -y nodejs apt-get install git-core libnss-mdns libavahi-compat-libdnssd-dev -y apt-get install -y libudev-dev libpam0g-dev apt-get install build-essential libpcap-dev -y npm install -g node-gyp npm install -g npm@latest

Проверяем всё ли правильно установилось командами

node -v npm -v

должны увидеть вывод примерно как на скрине ниже (версии актуальны на 20.11.2019)

Выходим из root командой exit

Подготовка к установке ioBroker закончена, переходим непосредственно к самой установке ioBroker (все команды отрабатываем построчно)

curl -sL https://iobroker.net/install.sh | bash -

ждём завершения процесса установки.

После удачной установки iobroker должен будет доступен по адресу в браузере

http://ип_вашей_системы:8081

Запоминаем что всё что делаем с ioBroker делаем из директории /opt/iobroker

Соответственно переход у нас такой

cd /opt/iobroker

Базовые команды

iobroker start iobroker stop iobroker restart

Больше узнать о доступных командах можем командой

iobroker -h

На случай если по каким-то причинам "побились" права или нарушился автозапуск то можем всё поправить командой 

curl -sL https://iobroker.net/fix.sh | bash -

Небольшой обзор админки мы проведём в следующей статье.

Удачи!


👍

понятно и доходчиво, ждем продолжения

Подскажите. А iobroker сам после перезагрузки стартует? Или каждый раз ручками надо запускать?

Должен сам. Если у вас после ребута сам не стартует то встало криво и файл автостарта не закинулся в службу. Просто сделайте поверх ещё раз (из под юзера)


cd /opt/iobroker
sudo npm install iobroker --unsafe-perm

Огромное спасибо. Помогло. На Ubuntu server 16 04 ставил. Все отлично по вашей инструкции установилось, только автостарт не взлетел сразу. 

А как, просто взять и закинуть файл автостарта в службу? Поставить поверх от имени юзера - я не смог...

 Не помогло не стартует сам. что еще можно сделать

  1. Это устаревший способ. Установка самого ioBroker теперь делается скриптом:
  2. curl -sL https://raw.githubusercontent.com/ioBroker/ioBroker/stable-installer/installer.sh">https://raw.githubusercontent.... | bash -

Ничего он не устаревший, в скрипте те-же команды на установку с NPM ;) разве-что папки создаёт автоматом

Отлично! По статье не заработало, а этим способом завелось с пол пинка!

Добрый день. Подскажите, нужно ли перед установкой iobroker на 

OS Linux Mint 19.1 ставить какие нить пакеты. делал все как описано у вас в описании... но iobroker не стартует. У меня есть опыт работы с iobroker  только на Raspberry pi. Проблем с установкой вообще не было. а тут просто ступор уже. 


повторите

cd /opt/iobroker
sudo npm install iobroker --unsafe-perm

Повторял и ситуация не меняется... пробовал и с правами root и без... в чем может быть еще проблема?

а вот если через скрипт устанавливать, повторять ничего не надо

это полный скрипт? 

просто в терминале набери, скрипт скачается и запустится

информация из этого источника? http://www.iobroker.net/docu/?page_id=8323&lang=de">http://www.iobroker.net/docu/?...

да вроде оттуда

Все отлично.. скрипт работает. всем советую.

Я конечно понимаю, что "установка ОС расписана много раз", но добавьте пожалуйста, хотя бы раздел про права. После установки с нуля на debian очень много ошибок с ними имею.

При установке скриптом не нужно заморачиваться с правами, установку можно запустить и от юзера и от рута, скрипт при необходимости запросит разрешения. Он теперь создает юзера iobroker и устанавливает в его домашнюю папку

Поставил с помощью скрипта. Теперь он стартует с правами пользователя "ioBroker". Из-за этого не хватает прав, например, на запуск HAM в глобальном режиме. Раньше, когда запускал его с правами root (sudo iobroker start), такой проблемы не было. Как это поправить?

добавить пользователя ioBroker в группу HAM

Нет такой группы.

А вот это реакция на попытку обновить hombridge из web-морды:

USER: iobroker 

DIR: /usr/lib/node_modules 

CMD: sudo -E -n npm --no-update-notifier install --unsafe-perm homebridge@latest 


sudo: a password is required

Command failed. Please review log for details

добавь в /etc/sudoers.d/iobroker строчку: 

 iobroker ALL=(ALL) NOPASSWD: ALL

Добавил. Ничего не изменилось.

USER: iobroker
DIR: /usr/lib/node_modules


CMD: sudo -E -n npm --no-update-notifier install --unsafe-perm homebridge@latest



sudo: a password is required

Command failed. Please review log for details

Официально этот способ не поддерживается и, http://www.iobroker.net/docu/?page_id=8323&lang=de#Installation_ioBroker_alter_Weg_optional">как заверяют разработчики, уже не работает, только скрипт!

Кому сложно понять по-немецки, https://iobox.poohnet.mykeenetic.net/install_iobroker/">есть перевод

Здравствуйте, у меня на малинке после команды появляются ошибки, причем даже после автоматического скрипта не работает, как это исправить?

npm install -g node-gyp

npm ERR! code EAI_AGAIN
npm ERR! errno EAI_AGAIN
npm ERR! request to <a href="https://registry.npmjs.org/node-gyp" class="redactor-autoparser-object">https://registry.npmjs.org/nod...</a>; failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443

npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2019-02-04T20_22_55_702Z-debug.log

Попробуй устаноку скрипта из под root

sudo su

Попробовал, во время установки вылезли эти ошибки, но брокер завелся, спасибо!

ImportError: No module named compiler.ast


gyp ERR! configure error


gyp ERR! stack Error: `gyp` failed with exit code: 1


gyp ERR! stack at ChildProcess.onCpExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:345:16)


gyp ERR! stack at emitTwo (events.js:126:13)


gyp ERR! stack at ChildProcess.emit (events.js:214:7)


gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)


gyp ERR! System Linux 4.14.79-v7+


gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"


gyp ERR! cwd /opt/iobroker/node_modules/serialport


gyp ERR! node -v v8.15.0


gyp ERR! node-gyp -v v3.8.0


gyp ERR! not ok

sudo npm install -g node-gyp --unsafe-perm
sudo npm install -g serialport --unsafe-perm

первая команда отработала без ошибок, при выполнении 
sudo npm install -g serialport --unsafe-perm

выдал ощибки

ImportError: No module named compiler.ast

gyp ERR! configure error

gyp ERR! stack Error: `gyp` failed with exit code: 1

gyp ERR! stack at ChildProcess.onCpExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:345:16)

gyp ERR! stack at emitTwo (events.js:126:13)

gyp ERR! stack at ChildProcess.emit (events.js:214:7)

gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)

gyp ERR! System Linux 4.14.79-v7+

gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"

gyp ERR! cwd /usr/lib/node_modules/serialport/node_modules/@serialport/bindings

gyp ERR! node -v v8.15.0
gyp ERR! node-gyp -v v3.8.0

gyp ERR! not ok
npm ERR! code ELIFECYCLE

npm ERR! errno 1

npm ERR! @serialport/bindings@2.0.7 install: `prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild`

npm ERR! Exit status 1

npm ERR!

npm ERR! Failed at the @serialport/bindings@2.0.7 install script.

npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:

npm ERR! /root/.npm/_logs/2019-02-06T07_59_03_649Z-debug.log

При попытке установки в брокере homekit выдает ошибку, и вот такой лог файл:

0 info it worked if it ends with ok


1 verbose cli [ '/usr/bin/node',


1 verbose cli '/usr/bin/npm',


1 verbose cli 'install',


1 verbose cli 'iobroker.yahka',


1 verbose cli '--production',


1 verbose cli '--save',


1 verbose cli '--prefix',


1 verbose cli '/opt/iobroker' ]


2 info using npm@6.4.1


3 info using node@v8.15.0


4 verbose npm-session c98e29a62c3c3991


5 silly install loadCurrentTree


6 silly install readLocalPackageData


7 http fetch GET 200 https://registry.npmjs.org/iobroker.yahka">https://registry.npmjs.org/iob... 154ms (from cache)


8 silly pacote tag manifest for iobroker.yahka@latest fetched in 251ms


9 timing stage:loadCurrentTree Completed in 18446ms


10 silly install loadIdealTree


11 silly install cloneCurrentTreeToIdealTree


12 timing stage:loadIdealTree:cloneCurrentTree Completed in 139ms


13 silly install loadShrinkwrap


14 timing stage:loadIdealTree:loadShrinkwrap Completed in 4302ms


15 silly install loadAllDepsIntoIdealTree


16 silly resolveWithNewModule iobroker.yahka@0.9.1 checking installable status


17 http fetch GET 200 https://registry.npmjs.org/hap-nodejs">https://registry.npmjs.org/hap... 49ms (from cache)


18 silly pacote range manifest for hap-nodejs@^0.4.48 fetched in 74ms


19 silly resolveWithNewModule hap-nodejs@0.4.48 checking installable status


20 http fetch GET 200 https://registry.npmjs.org/curve25519-n">https://registry.npmjs.org/cur... 31ms (from cache)


21 silly pacote range manifest for curve25519-n@^1.2.0 fetched in 39ms


22 silly resolveWithNewModule curve25519-n@1.4.0 checking installable status


23 timing stage:loadIdealTree:loadAllDepsIntoIdealTree Completed in 10692ms


24 timing stage:loadIdealTree Completed in 19381ms


25 silly currentTree iobroker.inst@2.0.2


25 silly currentTree ├── @coolaj86/urequest@1.3.6


25 silly currentTree ├── @serialport/parser-byte-length@1.0.5


25 silly currentTree ├── @serialport/parser-cctalk@1.0.5


25 silly currentTree ├── @serialport/parser-delimiter@1.0.5


25 silly currentTree ├── @serialport/parser-readline@1.0.5


25 silly currentTree ├── @serialport/parser-ready@1.0.5


25 silly currentTree ├── @serialport/parser-regex@1.0.5


25 silly currentTree ├── accepts@1.3.5


25 silly currentTree ├── acme-v2@1.5.2


25 silly currentTree ├── acme@1.2.0


25 silly currentTree ├── after@0.8.2


25 silly currentTree ├── ajv@6.8.1


25 silly currentTree ├── ansi-bgblack@0.1.1


25 silly currentTree ├── ansi-bgblue@0.1.1


25 silly currentTree ├── ansi-bgcyan@0.1.1


25 silly currentTree ├── ansi-bggreen@0.1.1


25 silly currentTree ├── ansi-bgmagenta@0.1.1


25 silly currentTree ├── ansi-bgred@0.1.1


25 silly currentTree ├── ansi-bgwhite@0.1.1


25 silly currentTree ├── ansi-bgyellow@0.1.1


25 silly currentTree ├── ansi-black@0.1.1


25 silly currentTree ├── ansi-blue@0.1.1


25 silly currentTree ├── ansi-bold@0.1.1


25 silly currentTree ├── ansi-colors@0.2.0


25 silly currentTree ├── ansi-cyan@0.1.1


25 silly currentTree ├── ansi-dim@0.1.1


25 silly currentTree ├── ansi-gray@0.1.1


25 silly currentTree ├── ansi-green@0.1.1


25 silly currentTree ├── ansi-grey@0.1.1


25 silly currentTree ├── ansi-hidden@0.1.1


25 silly currentTree ├── ansi-inverse@0.1.1


25 silly currentTree ├── ansi-italic@0.1.1


25 silly currentTree ├── ansi-magenta@0.1.1


25 silly currentTree ├── ansi-red@0.1.1


25 silly currentTree ├── ansi-regex@2.1.1


25 silly currentTree ├── ansi-reset@0.1.1


25 silly currentTree ├── ansi-strikethrough@0.1.1


25 silly currentTree ├── ansi-styles@2.2.1


25 silly currentTree ├── ansi-underline@0.1.1


25 silly currentTree ├── ansi-white@0.1.1


25 silly currentTree ├── ansi-wrap@0.1.0


25 silly currentTree ├── ansi-yellow@0.1.1


25 silly currentTree ├── aproba@1.2.0


25 silly currentTree ├─┬ are-we-there-yet@1.1.5


25 silly currentTree │ ├── isarray@1.0.0


25 silly currentTree │ ├── readable-stream@2.3.6


25 silly currentTree │ └── string_decoder@1.1.1


25 silly currentTree ├── arr-flatten@1.1.0


25 silly currentTree ├─┬ arr-swap@1.0.1


25 silly currentTree │ └── is-number@3.0.0


25 silly currentTree ├── array-flatten@1.1.1


25 silly currentTree ├── arraybuffer.slice@0.0.6


25 silly currentTree ├── asn1@0.2.4


25 silly currentTree ├── assert-plus@1.0.0


25 silly currentTree ├── async-limiter@1.0.0


25 silly currentTree ├── async@2.6.1


25 silly currentTree ├── asynckit@0.4.0


25 silly currentTree ├── aws-sign2@0.7.0


25 silly currentTree ├── aws4@1.8.0


25 silly currentTree ├── backo2@1.0.2


25 silly currentTree ├── balanced-match@1.0.0


25 silly currentTree ├── base64-arraybuffer@0.1.5


25 silly currentTree ├── base64id@1.0.0


25 silly currentTree ├── bcrypt-pbkdf@1.0.2


25 silly currentTree ├── better-assert@1.0.2


25 silly currentTree ├── bindings@1.3.0


25 silly currentTree ├─┬ bl@1.2.2


25 silly currentTree │ ├── isarray@1.0.0


25 silly currentTree │ ├── readable-stream@2.3.6


25 silly currentTree │ └── string_decoder@1.1.1


25 silly currentTree ├── blob@0.0.4


25 silly currentTree ├── bluebird@3.5.3


25 silly currentTree ├── body-parser@1.18.3


25 silly currentTree ├─┬ bonjour-hap@3.5.1


25 silly currentTree │ ├── array-flatten@2.1.2


25 silly currentTree │ └── deep-equal@1.0.1


25 silly currentTree ├── brace-expansion@1.1.11


25 silly currentTree ├── buffer-alloc-unsafe@1.1.0


25 silly currentTree ├── buffer-alloc@1.2.0


25 silly currentTree ├── buffer-equal-constant-time@1.0.1


25 silly currentTree ├── buffer-fill@1.0.0


25 silly currentTree ├── buffer-indexof@1.1.1


25 silly currentTree ├── buffer-shims@1.0.0


25 silly currentTree ├── busboy@0.2.14


25 silly currentTree ├── bytes@3.0.0


25 silly currentTree ├── callsite@1.0.0


25 silly currentTree ├── camelcase@3.0.0


25 silly currentTree ├── caseless@0.12.0


25 silly currentTree ├── cert-info@1.5.0


25 silly currentTree ├── chalk@1.1.3


25 silly currentTree ├── charenc@0.0.2


25 silly currentTree ├── choices-separator@2.0.0


25 silly currentTree ├── chownr@1.1.1


25 silly currentTree ├── cliui@3.2.0


25 silly currentTree ├─┬ clone-deep@1.0.0


25 silly currentTree │ └── kind-of@5.1.0


25 silly currentTree ├── code-point-at@1.1.0


25 silly currentTree ├── collection-visit@1.0.0


25 silly currentTree ├── colors@1.3.3


25 silly currentTree ├── combined-stream@1.0.7


25 silly currentTree ├── commander@2.19.0


25 silly currentTree ├── component-bind@1.0.0


25 silly currentTree ├── component-emitter@1.1.2


25 silly currentTree ├── component-inherit@0.0.3


25 silly currentTree ├── concat-map@0.0.1


25 silly currentTree ├── connect-flash@0.1.1


25 silly currentTree ├── console-control-strings@1.1.0


25 silly currentTree ├── content-disposition@0.5.2


25 silly currentTree ├── content-type@1.0.4


25 silly currentTree ├── cookie-parser@1.4.3


25 silly currentTree ├── cookie-signature@1.0.6


25 silly currentTree ├── cookie@0.3.1


25 silly currentTree ├── copy-descriptor@0.1.1


25 silly currentTree ├── core-js@2.3.0


25 silly currentTree ├── core-util-is@1.0.2


25 silly currentTree ├── crc@3.4.4


25 silly currentTree ├── cron-parser@2.7.3


25 silly currentTree ├── cross-spawn@5.1.0


25 silly currentTree ├── crypt@0.0.2


25 silly currentTree ├── cycle@1.0.3


25 silly currentTree ├── daemonize2@0.4.2


25 silly currentTree ├── dashdash@1.14.1


25 silly currentTree ├── debug@2.6.9


25 silly currentTree ├── decamelize@1.2.0


25 silly currentTree ├── decimal.js@7.5.1


25 silly currentTree ├── decompress-response@3.3.0


25 silly currentTree ├── deep-equal@0.2.2


25 silly currentTree ├── deep-extend@0.6.0


25 silly currentTree ├── define-properties@1.1.3


25 silly currentTree ├── define-property@1.0.0


25 silly currentTree ├── delayed-stream@1.0.0


25 silly currentTree ├── delegates@1.0.0


25 silly currentTree ├── depd@1.1.2


25 silly currentTree ├── destroy@1.0.4


25 silly currentTree ├── detect-libc@1.0.3


25 silly currentTree ├── dev-null@0.1.1


25 silly currentTree ├── dgram@1.0.1


25 silly currentTree ├── dicer@0.2.5


25 silly currentTree ├── dns-equal@1.0.0


25 silly currentTree ├── dns-packet@1.3.1


25 silly currentTree ├── dns-txt@2.0.2


25 silly currentTree ├── double-ended-queue@2.1.0-0


25 silly currentTree ├── ecc-jsbn@0.1.2


25 silly currentTree ├── ecdsa-sig-formatter@1.0.10


25 silly currentTree ├── ed25519-hap@0.0.5


25 silly currentTree ├── ee-first@1.1.1


25 silly currentTree ├── encodeurl@1.0.2


25 silly currentTree ├── end-of-stream@1.4.1


25 silly currentTree ├─┬ engine.io-client@1.8.2


25 silly currentTree │ ├── component-emitter@1.2.1


25 silly currentTree │ ├── debug@2.3.3


25 silly currentTree │ └── ms@0.7.2


25 silly currentTree ├── engine.io-parser@1.3.2


25 silly currentTree ├─┬ engine.io@1.8.2


25 silly currentTree │ ├── accepts@1.3.3


25 silly currentTree │ ├── debug@2.3.3


25 silly currentTree │ └── ms@0.7.2


25 silly currentTree ├── error-ex@1.3.2


25 silly currentTree ├── error-symbol@0.1.0


25 silly currentTree ├── es6-promise@3.0.2


25 silly currentTree ├── escape-html@1.0.3


25 silly currentTree ├── escape-string-regexp@1.0.5


25 silly currentTree ├── etag@1.8.1


25 silly currentTree ├── execa@0.7.0


25 silly currentTree ├── expand-template@1.1.1


25 silly currentTree ├─┬ express-fileupload@0.4.1


25 silly currentTree │ └── fs-extra@4.0.3


25 silly currentTree ├── express-session@1.15.6


25 silly currentTree ├─┬ express@4.16.4


25 silly currentTree │ └── statuses@1.4.0


25 silly currentTree ├── extend-shallow@2.0.1


25 silly currentTree ├── extend@3.0.2


25 silly currentTree ├── extsprintf@1.3.0


25 silly currentTree ├── eyes@0.1.8


25 silly currentTree ├── fast-deep-equal@2.0.1


25 silly currentTree ├── fast-json-stable-stringify@2.0.0


25 silly currentTree ├── fast-srp-hap@1.0.1


25 silly currentTree ├─┬ finalhandler@1.1.1


25 silly currentTree │ └── statuses@1.4.0


25 silly currentTree ├── find-up@1.1.2


25 silly currentTree ├── for-in@1.0.2


25 silly currentTree ├── for-own@1.0.0


25 silly currentTree ├── forever-agent@0.6.1


25 silly currentTree ├── form-data@2.3.3


25 silly currentTree ├── forwarded@0.1.2


25 silly currentTree ├── fresh@0.5.2


25 silly currentTree ├── fs-constants@1.0.0


25 silly currentTree ├── fs-extra@7.0.1


25 silly currentTree ├── fs-minipass@1.2.5


25 silly currentTree ├── fs.realpath@1.0.0


25 silly currentTree ├── function-bind@1.1.1


25 silly currentTree ├── gauge@2.7.4


25 silly currentTree ├── get-caller-file@1.0.3


25 silly currentTree ├── get-stream@3.0.0


25 silly currentTree ├── getpass@0.1.7


25 silly currentTree ├── github-from-package@0.0.0


25 silly currentTree ├── glob@7.1.3


25 silly currentTree ├── glossy@0.1.7


25 silly currentTree ├── graceful-fs@4.1.15


25 silly currentTree ├── greenlock@2.6.7


25 silly currentTree ├── hap-nodejs-community-types@0.2.1


25 silly currentTree ├── har-schema@2.0.0


25 silly currentTree ├── har-validator@5.1.3


25 silly currentTree ├── has-ansi@2.0.0


25 silly currentTree ├── has-binary@0.1.7


25 silly currentTree ├─┬ has-binary2@1.0.3


25 silly currentTree │ └── isarray@2.0.1


25 silly currentTree ├── has-cors@1.1.0


25 silly currentTree ├── has-unicode@2.0.1


25 silly currentTree ├── has@1.0.3


25 silly currentTree ├─┬ homebridge-plugin-wrapper@1.0.0


25 silly currentTree │ └── semver@5.0.3


25 silly currentTree ├── hosted-git-info@2.7.1


25 silly currentTree ├── http-errors@1.6.3


25 silly currentTree ├── http-signature@1.2.0


25 silly currentTree ├── i@0.3.6


25 silly currentTree ├── iconv-lite@0.4.23


25 silly currentTree ├── immediate@3.0.6


25 silly currentTree ├── indexof@0.0.1


25 silly currentTree ├── inflight@1.0.6


25 silly currentTree ├── info-symbol@0.1.0


25 silly currentTree ├── inherits@2.0.3


25 silly currentTree ├── ini@1.3.5


25 silly currentTree ├── invert-kv@1.0.0


25 silly currentTree ├─┬ iobroker.admin@3.5.10


25 silly currentTree │ ├── accepts@1.3.5


25 silly currentTree │ ├── after@0.8.2


25 silly currentTree │ ├── ajv@6.8.1


25 silly currentTree │ ├── array-flatten@1.1.1


25 silly currentTree │ ├── arraybuffer.slice@0.0.6


25 silly currentTree │ ├── asn1@0.2.4


25 silly currentTree │ ├── assert-plus@1.0.0


25 silly currentTree │ ├── asynckit@0.4.0


25 silly currentTree │ ├── aws-sign2@0.7.0


25 silly currentTree │ ├── aws4@1.8.0


25 silly currentTree │ ├── backo2@1.0.2


25 silly currentTree │ ├── base64-arraybuffer@0.1.5


25 silly currentTree │ ├── base64id@1.0.0


25 silly currentTree │ ├── bcrypt-pbkdf@1.0.2


25 silly currentTree │ ├── better-assert@1.0.2


25 silly currentTree │ ├── blob@0.0.4


25 silly currentTree │ ├── body-parser@1.18.3


25 silly currentTree │ ├── busboy@0.2.14


25 silly currentTree │ ├── bytes@3.0.0


25 silly currentTree │ ├── callsite@1.0.0


25 silly currentTree │ ├── caseless@0.12.0


25 silly currentTree │ ├── charenc@0.0.2


25 silly currentTree │ ├── combined-stream@1.0.7


25 silly currentTree │ ├── component-bind@1.0.0


25 silly currentTree │ ├── component-emitter@1.1.2


25 silly currentTree │ ├── component-inherit@0.0.3


25 silly currentTree │ ├── connect-flash@0.1.1


25 silly currentTree │ ├── content-disposition@0.5.2


25 silly currentTree │ ├── content-type@1.0.4


25 silly currentTree │ ├── cookie-parser@1.4.3


25 silly currentTree │ ├── cookie-signature@1.0.6


25 silly currentTree │ ├── cookie@0.3.1


25 silly currentTree │ ├── core-util-is@1.0.2


25 silly currentTree │ ├── crc@3.4.4


25 silly currentTree │ ├── crypt@0.0.2


25 silly currentTree │ ├── dashdash@1.14.1


25 silly currentTree │ ├── debug@2.6.9


25 silly currentTree │ ├── delayed-stream@1.0.0


25 silly currentTree │ ├── depd@1.1.2


25 silly currentTree │ ├── destroy@1.0.4


25 silly currentTree │ ├── dicer@0.2.5


25 silly currentTree │ ├── ecc-jsbn@0.1.2


25 silly currentTree │ ├── ee-first@1.1.1


25 silly currentTree │ ├── encodeurl@1.0.2


25 silly currentTree │ ├─┬ engine.io-client@1.8.2


25 silly currentTree │ │ ├── component-emitter@1.2.1


25 silly currentTree │ │ ├── debug@2.3.3


25 silly currentTree │ │ └── ms@0.7.2


25 silly currentTree │ ├── engine.io-parser@1.3.2


25 silly currentTree │ ├─┬ engine.io@1.8.2


25 silly currentTree │ │ ├── accepts@1.3.3


25 silly currentTree │ │ ├── debug@2.3.3


25 silly currentTree │ │ └── ms@0.7.2


25 silly currentTree │ ├── escape-html@1.0.3


25 silly currentTree │ ├── etag@1.8.1


25 silly currentTree │ ├── express-fileupload@0.4.1


25 silly currentTree │ ├── express-session@1.15.6


25 silly currentTree │ ├─┬ express@4.16.4


25 silly currentTree │ │ └── statuses@1.4.0


25 silly currentTree │ ├── extend@3.0.2


25 silly currentTree │ ├── extsprintf@1.3.0


25 silly currentTree │ ├── fast-deep-equal@2.0.1


25 silly currentTree │ ├── fast-json-stable-stringify@2.0.0


25 silly currentTree │ ├─┬ finalhandler@1.1.1


25 silly currentTree │ │ └── statuses@1.4.0


25 silly currentTree │ ├── forever-agent@0.6.1


25 silly currentTree │ ├── form-data@2.3.3


25 silly currentTree │ ├── forwarded@0.1.2


25 silly currentTree │ ├── fresh@0.5.2


25 silly currentTree │ ├── fs-extra@4.0.3


25 silly currentTree │ ├── getpass@0.1.7


25 silly currentTree │ ├── graceful-fs@4.1.15


25 silly currentTree │ ├── har-schema@2.0.0


25 silly currentTree │ ├── har-validator@5.1.3


25 silly currentTree │ ├── has-binary@0.1.7


25 silly currentTree │ ├── has-cors@1.1.0


25 silly currentTree │ ├── http-errors@1.6.3


25 silly currentTree │ ├── http-signature@1.2.0


25 silly currentTree │ ├── iconv-lite@0.4.23


25 silly currentTree │ ├── indexof@0.0.1


25 silly currentTree │ ├── inherits@2.0.3


25 silly currentTree │ ├── ipaddr.js@1.8.0


25 silly currentTree │ ├── is-buffer@1.1.6


25 silly currentTree │ ├── is-typedarray@1.0.0


25 silly currentTree │ ├── isarray@0.0.1


25 silly currentTree │ ├── isstream@0.1.2


25 silly currentTree │ ├── jsbn@0.1.1


25 silly currentTree │ ├── json-schema-traverse@0.4.1


25 silly currentTree │ ├── json-schema@0.2.3


25 silly currentTree │ ├── json-stringify-safe@5.0.1


25 silly currentTree │ ├── json3@3.3.2


25 silly currentTree │ ├── jsonfile@4.0.0


25 silly currentTree │ ├── jsprim@1.4.1


25 silly currentTree │ ├── md5@2.2.1


25 silly currentTree │ ├── media-typer@0.3.0


25 silly currentTree │ ├── merge-descriptors@1.0.1


25 silly currentTree │ ├── methods@1.1.2


25 silly currentTree │ ├── mime-db@1.37.0


25 silly currentTree │ ├── mime-types@2.1.21


25 silly currentTree │ ├── mime@1.4.1


25 silly currentTree │ ├── ms@2.0.0


25 silly currentTree │ ├── negotiator@0.6.1


25 silly currentTree │ ├── oauth-sign@0.9.0


25 silly currentTree │ ├── object-assign@4.1.0


25 silly currentTree │ ├── object-component@0.0.3


25 silly currentTree │ ├── on-finished@2.3.0


25 silly currentTree │ ├── on-headers@1.0.1


25 silly currentTree │ ├── options@0.0.6


25 silly currentTree │ ├── parsejson@0.0.3


25 silly currentTree │ ├── parseqs@0.0.5


25 silly currentTree │ ├── parseuri@0.0.5


25 silly currentTree │ ├── parseurl@1.3.2


25 silly currentTree │ ├── passport-local@1.0.0


25 silly currentTree │ ├── passport-strategy@1.0.0


25 silly currentTree │ ├── passport.socketio@3.7.0


25 silly currentTree │ ├── passport@0.4.0


25 silly currentTree │ ├── path-to-regexp@0.1.7


25 silly currentTree │ ├── pause@0.0.1


25 silly currentTree │ ├── performance-now@2.1.0


25 silly currentTree │ ├── proxy-addr@2.0.4


25 silly currentTree │ ├── psl@1.1.31


25 silly currentTree │ ├── punycode@2.1.1


25 silly currentTree │ ├── qs@6.5.2


25 silly currentTree │ ├── random-bytes@1.0.0


25 silly currentTree │ ├── range-parser@1.2.0


25 silly currentTree │ ├── raw-body@2.3.3


25 silly currentTree │ ├── readable-stream@1.1.14


25 silly currentTree │ ├── request@2.88.0


25 silly currentTree │ ├── safe-buffer@5.1.2


25 silly currentTree │ ├── safer-buffer@2.1.2


25 silly currentTree │ ├─┬ send@0.16.2


25 silly currentTree │ │ └── statuses@1.4.0


25 silly currentTree │ ├── serve-static@1.13.2


25 silly currentTree │ ├── setprototypeof@1.1.0


25 silly currentTree │ ├─┬ socket.io-adapter@0.5.0


25 silly currentTree │ │ ├── debug@2.3.3


25 silly currentTree │ │ └── ms@0.7.2


25 silly currentTree │ ├─┬ socket.io-client@1.7.2


25 silly currentTree │ │ ├── component-emitter@1.2.1


25 silly currentTree │ │ ├── debug@2.3.3


25 silly currentTree │ │ └── ms@0.7.2


25 silly currentTree │ ├─┬ socket.io-parser@2.3.1


25 silly currentTree │ │ ├── debug@2.2.0


25 silly currentTree │ │ └── ms@0.7.1


25 silly currentTree │ ├─┬ socket.io@1.7.2


25 silly currentTree │ │ ├── debug@2.3.3


25 silly currentTree │ │ └── ms@0.7.2


25 silly currentTree │ ├── sshpk@1.16.1


25 silly currentTree │ ├── statuses@1.5.0


25 silly currentTree │ ├── streamifier@0.1.1


25 silly currentTree │ ├── streamsearch@0.1.2


25 silly currentTree │ ├── string_decoder@0.10.31


25 silly currentTree │ ├── to-array@0.1.4


25 silly currentTree │ ├─┬ tough-cookie@2.4.3


25 silly currentTree │ │ └── punycode@1.4.1


25 silly currentTree │ ├── tunnel-agent@0.6.0


25 silly currentTree │ ├── tweetnacl@0.14.5


25 silly currentTree │ ├── type-is@1.6.16


25 silly currentTree │ ├── uid-safe@2.1.5


25 silly currentTree │ ├── ultron@1.0.2


25 silly currentTree │ ├── universalify@0.1.2


25 silly currentTree │ ├── unpipe@1.0.0


25 silly currentTree │ ├── uri-js@4.2.2


25 silly currentTree │ ├── utils-merge@1.0.1


25 silly currentTree │ ├── uuid@3.3.2


25 silly currentTree │ ├── vary@1.1.2


25 silly currentTree │ ├── verror@1.10.0


25 silly currentTree │ ├── ws@1.1.1


25 silly currentTree │ ├── wtf-8@1.0.0


25 silly currentTree │ ├── xmlhttprequest-ssl@1.5.3


25 silly currentTree │ ├── xtend@4.0.1


25 silly currentTree │ └── yeast@0.1.2


25 silly currentTree ├─┬ iobroker.discovery@1.2.4


25 silly currentTree │ ├── ansi-gray@0.1.1


25 silly currentTree │ ├── ansi-regex@2.1.1


25 silly currentTree │ ├── ansi-wrap@0.1.0


25 silly currentTree │ ├── arr-flatten@1.1.0


25 silly currentTree │ ├── async@2.6.1


25 silly currentTree │ ├── bluebird@3.5.3


25 silly currentTree │ ├── collection-visit@1.0.0


25 silly currentTree │ ├── component-emitter@1.2.1


25 silly currentTree │ ├── copy-descriptor@0.1.1


25 silly currentTree │ ├── core-util-is@1.0.2


25 silly currentTree │ ├── debug@2.2.0


25 silly currentTree │ ├── define-property@1.0.0


25 silly currentTree │ ├── dgram@1.0.1


25 silly currentTree │ ├── dns-packet@1.3.1


25 silly currentTree │ ├── extend-shallow@2.0.1


25 silly currentTree │ ├── extend@3.0.2


25 silly currentTree │ ├── for-in@1.0.2


25 silly currentTree │ ├── for-own@1.0.0


25 silly currentTree │ ├── inherits@2.0.3


25 silly currentTree │ ├── ini@1.3.5


25 silly currentTree │ ├── ip@1.1.5


25 silly currentTree │ ├─┬ is-accessor-descriptor@1.0.0


25 silly currentTree │ │ └── kind-of@6.0.2


25 silly currentTree │ ├── is-buffer@1.1.6


25 silly currentTree │ ├─┬ is-data-descriptor@1.0.0


25 silly currentTree │ │ └── kind-of@6.0.2


25 silly currentTree │ ├─┬ is-descriptor@1.0.2


25 silly currentTree │ │ └── kind-of@6.0.2


25 silly currentTree │ ├── is-extendable@0.1.1


25 silly currentTree │ ├── is-plain-object@2.0.4


25 silly currentTree │ ├── is-windows@1.0.2


25 silly currentTree │ ├── isarray@1.0.0


25 silly currentTree │ ├── isobject@3.0.1


25 silly currentTree │ ├── kind-of@3.2.2


25 silly currentTree │ ├── lodash@4.17.11


25 silly currentTree │ ├── map-visit@1.0.0


25 silly currentTree │ ├── mdns-discovery@0.2.6


25 silly currentTree │ ├── minimist@1.2.0


25 silly currentTree │ ├─┬ mkdirp@0.5.1


25 silly currentTree │ │ └── minimist@0.0.8


25 silly currentTree │ ├── ms@0.7.1


25 silly currentTree │ ├── netmask@1.0.6


25 silly currentTree │ ├─┬ node-ssdp@3.3.0


25 silly currentTree │ │ ├── debug@3.2.6


25 silly currentTree │ │ └── ms@2.1.1


25 silly currentTree │ ├─┬ object-copy@0.1.0


25 silly currentTree │ │ ├── define-property@0.2.5


25 silly currentTree │ │ ├── is-accessor-descriptor@0.1.6


25 silly currentTree │ │ ├── is-data-descriptor@0.1.4


25 silly currentTree │ │ └─┬ is-descriptor@0.1.6


25 silly currentTree │ │ └── kind-of@5.1.0


25 silly currentTree │ ├── object-visit@1.0.1


25 silly currentTree │ ├── once@1.4.0


25 silly currentTree │ ├── os-homedir@1.0.2


25 silly currentTree │ ├── process-nextick-args@2.0.0


25 silly currentTree │ ├── readable-stream@2.3.6


25 silly currentTree │ ├── safe-buffer@5.1.2


25 silly currentTree │ ├─┬ static-extend@0.1.2


25 silly currentTree │ │ ├── define-property@0.2.5


25 silly currentTree │ │ ├─┬ is-accessor-descriptor@0.1.6


25 silly currentTree │ │ │ └── kind-of@3.2.2


25 silly currentTree │ │ ├─┬ is-data-descriptor@0.1.4


25 silly currentTree │ │ │ └── kind-of@3.2.2


25 silly currentTree │ │ ├── is-descriptor@0.1.6


25 silly currentTree │ │ └── kind-of@5.1.0


25 silly currentTree │ ├── string_decoder@1.1.1


25 silly currentTree │ ├── strip-ansi@3.0.1


25 silly currentTree │ ├── time-stamp@1.1.0


25 silly currentTree │ ├── to-object-path@0.3.0


25 silly currentTree │ ├── util-deprecate@1.0.2


25 silly currentTree │ ├── wrappy@1.0.2


25 silly currentTree │ └── xtend@4.0.1


25 silly currentTree ├── iobroker.ham@1.0.0


25 silly currentTree ├─┬ iobroker.js-controller@1.4.2


25 silly currentTree │ ├── ansi-regex@3.0.0


25 silly currentTree │ ├── arraybuffer.slice@0.0.7


25 silly currentTree │ ├── blob@0.0.5


25 silly currentTree │ ├── camelcase@4.1.0


25 silly currentTree │ ├── cliui@4.1.0


25 silly currentTree │ ├── component-emitter@1.2.1


25 silly currentTree │ ├── debug@3.1.0


25 silly currentTree │ ├── engine.io-client@3.2.1


25 silly currentTree │ ├── engine.io-parser@2.1.3


25 silly currentTree │ ├── engine.io@3.2.1


25 silly currentTree │ ├── find-up@2.1.0


25 silly currentTree │ ├── is-fullwidth-code-point@2.0.0


25 silly currentTree │ ├── isarray@2.0.1


25 silly currentTree │ ├── os-locale@2.1.0


25 silly currentTree │ ├── socket.io-adapter@1.1.1


25 silly currentTree │ ├── socket.io-client@2.1.1


25 silly currentTree │ ├── socket.io-parser@3.2.0


25 silly currentTree │ ├── socket.io@2.1.1


25 silly currentTree │ ├── string-width@2.1.1


25 silly currentTree │ ├── strip-ansi@4.0.0


25 silly currentTree │ ├── ultron@1.1.1


25 silly currentTree │ ├── which-module@2.0.0


25 silly currentTree │ ├── ws@3.3.3


25 silly currentTree │ ├── xmlhttprequest-ssl@1.5.5


25 silly currentTree │ ├── yargs-parser@9.0.2


25 silly currentTree │ └── yargs@11.1.0


25 silly currentTree ├── iobroker.megad@1.2.1


25 silly currentTree ├── iobroker@2.0.2


25 silly currentTree ├── ip@1.1.5


25 silly currentTree ├── ipaddr.js@1.8.0


25 silly currentTree ├─┬ is-accessor-descriptor@1.0.0


25 silly currentTree │ └── kind-of@6.0.2


25 silly currentTree ├── is-arrayish@0.2.1


25 silly currentTree ├── is-buffer@1.1.6


25 silly currentTree ├─┬ is-data-descriptor@1.0.0


25 silly currentTree │ └── kind-of@6.0.2


25 silly currentTree ├─┬ is-descriptor@1.0.2


25 silly currentTree │ └── kind-of@6.0.2


25 silly currentTree ├── is-extendable@0.1.1


25 silly currentTree ├── is-fullwidth-code-point@1.0.0


25 silly currentTree ├── is-nan@1.2.1


25 silly currentTree ├── is-number@6.0.0


25 silly currentTree ├── is-plain-object@2.0.4


25 silly currentTree ├── is-stream@1.1.0


25 silly currentTree ├── is-typedarray@1.0.0


25 silly currentTree ├── is-utf8@0.2.1


25 silly currentTree ├── is-windows@1.0.2


25 silly currentTree ├── is@3.3.0


25 silly currentTree ├── isarray@0.0.1


25 silly currentTree ├── isexe@2.0.0


25 silly currentTree ├── isobject@3.0.1


25 silly currentTree ├── isstream@0.1.2


25 silly currentTree ├── jsbn@0.1.1


25 silly currentTree ├── json-schema-traverse@0.4.1


25 silly currentTree ├── json-schema@0.2.3


25 silly currentTree ├── json-stringify-safe@5.0.1


25 silly currentTree ├── json3@3.3.2


25 silly currentTree ├── jsonfile@4.0.0


25 silly currentTree ├─┬ jsonwebtoken@8.4.0


25 silly currentTree │ └── ms@2.1.1


25 silly currentTree ├── jsprim@1.4.1


25 silly currentTree ├─┬ jszip@3.1.5


25 silly currentTree │ ├── isarray@1.0.0


25 silly currentTree │ ├── process-nextick-args@1.0.7


25 silly currentTree │ └── readable-stream@2.0.6


25 silly currentTree ├── jwa@1.2.0


25 silly currentTree ├── jws@3.2.1


25 silly currentTree ├── kind-of@3.2.2


25 silly currentTree ├── koalas@1.0.2


25 silly currentTree ├── lazy-cache@2.0.2


25 silly currentTree ├── lcid@1.0.0


25 silly currentTree ├── le-challenge-fs@2.0.8


25 silly currentTree ├── le-sni-auto@2.1.6


25 silly currentTree ├── le-store-certbot@2.2.1


25 silly currentTree ├── lie@3.1.1


25 silly currentTree ├── load-json-file@1.1.0


25 silly currentTree ├─┬ locate-path@2.0.0


25 silly currentTree │ └── path-exists@3.0.0


25 silly currentTree ├── lodash.includes@4.3.0


25 silly currentTree ├── lodash.isboolean@3.0.3


25 silly currentTree ├── lodash.isinteger@4.0.4


25 silly currentTree ├── lodash.isnumber@3.0.3


25 silly currentTree ├── lodash.isplainobject@4.0.6


25 silly currentTree ├── lodash.isstring@4.0.1


25 silly currentTree ├── lodash.once@4.1.1


25 silly currentTree ├── lodash@4.17.11


25 silly currentTree ├── log-ok@0.1.1


25 silly currentTree ├── log-utils@0.2.1


25 silly currentTree ├── long-timeout@0.1.1


25 silly currentTree ├─┬ lru-cache@4.1.5


25 silly currentTree │ └── yallist@2.1.2


25 silly currentTree ├── macaddress@0.2.9


25 silly currentTree ├── map-visit@1.0.0


25 silly currentTree ├── md5@2.2.1


25 silly currentTree ├─┬ mdns-discovery@0.2.6


25 silly currentTree │ ├── debug@2.2.0


25 silly currentTree │ └── ms@0.7.1


25 silly currentTree ├── media-typer@0.3.0


25 silly currentTree ├── mem@1.1.0


25 silly currentTree ├── merge-descriptors@1.0.1


25 silly currentTree ├── methods@1.1.2


25 silly currentTree ├── mime-db@1.37.0


25 silly currentTree ├── mime-types@2.1.21


25 silly currentTree ├── mime@1.4.1


25 silly currentTree ├── mimic-fn@1.2.0


25 silly currentTree ├── mimic-response@1.0.1


25 silly currentTree ├── minimatch@3.0.4


25 silly currentTree ├── minimist@1.2.0


25 silly currentTree ├── minipass@2.3.5


25 silly currentTree ├── minizlib@1.2.1


25 silly currentTree ├─┬ mixin-object@2.0.1


25 silly currentTree │ └── for-in@0.1.8


25 silly currentTree ├─┬ mkdirp@0.5.1


25 silly currentTree │ └── minimist@0.0.8


25 silly currentTree ├── mock-require@3.0.3


25 silly currentTree ├── moment-timezone@0.5.23


25 silly currentTree ├── moment@2.24.0


25 silly currentTree ├── ms@2.0.0


25 silly currentTree ├── multicast-dns-service-types@1.1.0


25 silly currentTree ├── multicast-dns@6.2.3


25 silly currentTree ├── mute-stream@0.0.7


25 silly currentTree ├── nan@2.12.1


25 silly currentTree ├── ncp@2.0.0


25 silly currentTree ├── negotiator@0.6.1


25 silly currentTree ├── netmask@1.0.6


25 silly currentTree ├── node-abi@2.7.0


25 silly currentTree ├── node-forge@0.7.6


25 silly currentTree ├── node-persist@0.0.11


25 silly currentTree ├── node-schedule@1.3.1


25 silly currentTree ├─┬ node-ssdp@3.3.0


25 silly currentTree │ ├── debug@3.2.6


25 silly currentTree │ └── ms@2.1.1


25 silly currentTree ├── node.extend@2.0.2


25 silly currentTree ├── noop-logger@0.1.1


25 silly currentTree ├── normalize-package-data@2.5.0


25 silly currentTree ├── normalize-path@2.1.1


25 silly currentTree ├── npm-run-path@2.0.2


25 silly currentTree ├── npmlog@4.1.2


25 silly currentTree ├── number-is-nan@1.0.1


25 silly currentTree ├── oauth-sign@0.9.0


25 silly currentTree ├── object-assign@4.1.0


25 silly currentTree ├── object-component@0.0.3


25 silly currentTree ├─┬ object-copy@0.1.0


25 silly currentTree │ ├── define-property@0.2.5


25 silly currentTree │ ├── is-accessor-descriptor@0.1.6


25 silly currentTree │ ├── is-data-descriptor@0.1.4


25 silly currentTree │ └─┬ is-descriptor@0.1.6


25 silly currentTree │ └── kind-of@5.1.0


25 silly currentTree ├── object-keys@1.0.12


25 silly currentTree ├── object-visit@1.0.1


25 silly currentTree ├── on-finished@2.3.0


25 silly currentTree ├── on-headers@1.0.1


25 silly currentTree ├── once@1.4.0


25 silly currentTree ├── options@0.0.6


25 silly currentTree ├── os-homedir@1.0.2


25 silly currentTree ├── os-locale@1.4.0


25 silly currentTree ├── p-finally@1.0.0


25 silly currentTree ├── p-limit@1.3.0


25 silly currentTree ├── p-locate@2.0.0


25 silly currentTree ├── p-try@1.0.0


25 silly currentTree ├── pako@1.0.8


25 silly currentTree ├── parse-json@2.2.0


25 silly currentTree ├── parsejson@0.0.3


25 silly currentTree ├── parseqs@0.0.5


25 silly currentTree ├── parseuri@0.0.5


25 silly currentTree ├── parseurl@1.3.2


25 silly currentTree ├── passport-local@1.0.0


25 silly currentTree ├── passport-strategy@1.0.0


25 silly currentTree ├── passport.socketio@3.7.0


25 silly currentTree ├── passport@0.4.0


25 silly currentTree ├── path-exists@2.1.0


25 silly currentTree ├── path-is-absolute@1.0.1


25 silly currentTree ├── path-key@2.0.1


25 silly currentTree ├── path-parse@1.0.6


25 silly currentTree ├── path-to-regexp@0.1.7


25 silly currentTree ├── path-type@1.1.0


25 silly currentTree ├── pause@0.0.1


25 silly currentTree ├── performance-now@2.1.0


25 silly currentTree ├── pify@2.3.0


25 silly currentTree ├── pinkie-promise@2.0.1


25 silly currentTree ├── pinkie@2.0.4


25 silly currentTree ├── pkginfo@0.4.1


25 silly currentTree ├── pointer-symbol@1.0.0


25 silly currentTree ├── prebuild-install@4.0.0


25 silly currentTree ├── process-nextick-args@2.0.0


25 silly currentTree ├── promirepl@1.0.1


25 silly currentTree ├── prompt-actions@3.0.2


25 silly currentTree ├─┬ prompt-base@4.1.0


25 silly currentTree │ ├── component-emitter@1.2.1


25 silly currentTree │ ├── debug@3.2.6


25 silly currentTree │ └── ms@2.1.1


25 silly currentTree ├── prompt-checkbox@2.2.0


25 silly currentTree ├─┬ prompt-choices@4.1.0


25 silly currentTree │ ├── clone-deep@4.0.1


25 silly currentTree │ ├── define-property@2.0.2


25 silly currentTree │ ├── kind-of@6.0.2


25 silly currentTree │ └── shallow-clone@3.0.0


25 silly currentTree ├── prompt-list@3.2.0


25 silly currentTree ├─┬ prompt-question@5.0.2


25 silly currentTree │ ├── debug@3.2.6


25 silly currentTree │ ├── kind-of@5.1.0


25 silly currentTree │ └── ms@2.1.1


25 silly currentTree ├── prompt-radio@1.2.1


25 silly currentTree ├─┬ prompt@1.0.0


25 silly currentTree │ ├── async@1.0.0


25 silly currentTree │ └─┬ winston@2.1.1


25 silly currentTree │ ├── colors@1.0.3


25 silly currentTree │ └── pkginfo@0.3.1


25 silly currentTree ├── proxy-addr@2.0.4


25 silly currentTree ├── pseudomap@1.0.2


25 silly currentTree ├── psl@1.1.31


25 silly currentTree ├── pump@2.0.1


25 silly currentTree ├── punycode@2.1.1


25 silly currentTree ├── pyconf@1.1.6


25 silly currentTree ├── q@1.1.2


25 silly currentTree ├── qs@6.5.2


25 silly currentTree ├── radio-symbol@2.0.0


25 silly currentTree ├── random-bytes@1.0.0


25 silly currentTree ├── range-parser@1.2.0


25 silly currentTree ├── raw-body@2.3.3


25 silly currentTree ├── rc@1.2.8


25 silly currentTree ├── read-pkg-up@1.0.1


25 silly currentTree ├── read-pkg@1.1.0


25 silly currentTree ├── read@1.0.7


25 silly currentTree ├── readable-stream@1.1.14


25 silly currentTree ├─┬ readline-ui@2.2.3


25 silly currentTree │ ├── ansi-regex@3.0.0


25 silly currentTree │ ├── component-emitter@1.2.1


25 silly currentTree │ ├── is-fullwidth-code-point@2.0.0


25 silly currentTree │ ├── string-width@2.1.1


25 silly currentTree │ └── strip-ansi@4.0.0


25 silly currentTree ├─┬ readline-utils@2.2.3


25 silly currentTree │ └── is-number@3.0.0


25 silly currentTree ├── redis-commands@1.4.0


25 silly currentTree ├── redis-parser@2.6.0


25 silly currentTree ├── redis@2.8.0


25 silly currentTree ├── remove-trailing-separator@1.1.0


25 silly currentTree ├── request@2.88.0


25 silly currentTree ├── require-directory@2.1.1


25 silly currentTree ├── require-main-filename@1.0.1


25 silly currentTree ├── resolve@1.10.0


25 silly currentTree ├── revalidator@0.1.8


25 silly currentTree ├── rimraf@2.6.3


25 silly currentTree ├── rsa-compat@1.9.2


25 silly currentTree ├── safe-buffer@5.1.2


25 silly currentTree ├── safe-replace@1.1.0


25 silly currentTree ├── safer-buffer@2.1.2


25 silly currentTree ├── semver@5.6.0


25 silly currentTree ├─┬ send@0.16.2


25 silly currentTree │ └── statuses@1.4.0


25 silly currentTree ├─┬ serialport@6.2.2


25 silly currentTree │ ├── debug@3.2.6


25 silly currentTree │ └── ms@2.1.1


25 silly currentTree ├── serve-static@1.13.2


25 silly currentTree ├── set-blocking@2.0.0


25 silly currentTree ├── set-getter@0.1.0


25 silly currentTree ├── set-value@3.0.0


25 silly currentTree ├── setprototypeof@1.1.0


25 silly currentTree ├─┬ shallow-clone@1.0.0


25 silly currentTree │ └── kind-of@5.1.0


25 silly currentTree ├── shebang-command@1.2.0


25 silly currentTree ├── shebang-regex@1.0.0


25 silly currentTree ├── signal-exit@3.0.2


25 silly currentTree ├── simple-concat@1.0.0


25 silly currentTree ├── simple-get@2.8.1


25 silly currentTree ├─┬ socket.io-adapter@0.5.0


25 silly currentTree │ ├── debug@2.3.3


25 silly currentTree │ └── ms@0.7.2


25 silly currentTree ├─┬ socket.io-client@1.7.2


25 silly currentTree │ ├── component-emitter@1.2.1


25 silly currentTree │ ├── debug@2.3.3


25 silly currentTree │ └── ms@0.7.2


25 silly currentTree ├─┬ socket.io-parser@2.3.1


25 silly currentTree │ ├── debug@2.2.0


25 silly currentTree │ └── ms@0.7.1


25 silly currentTree ├─┬ socket.io@1.7.2


25 silly currentTree │ ├── debug@2.3.3


25 silly currentTree │ └── ms@0.7.2


25 silly currentTree ├── sorted-array-functions@1.2.0


25 silly currentTree ├── spdx-correct@3.1.0


25 silly currentTree ├── spdx-exceptions@2.2.0


25 silly currentTree ├── spdx-expression-parse@3.0.0


25 silly currentTree ├── spdx-license-ids@3.0.3


25 silly currentTree ├── sshpk@1.16.1


25 silly currentTree ├── stack-trace@0.0.10


25 silly currentTree ├─┬ static-extend@0.1.2


25 silly currentTree │ ├── define-property@0.2.5


25 silly currentTree │ ├─┬ is-accessor-descriptor@0.1.6


25 silly currentTree │ │ └── kind-of@3.2.2


25 silly currentTree │ ├─┬ is-data-descriptor@0.1.4


25 silly currentTree │ │ └── kind-of@3.2.2


25 silly currentTree │ ├── is-descriptor@0.1.6


25 silly currentTree │ └── kind-of@5.1.0


25 silly currentTree ├── statuses@1.5.0


25 silly currentTree ├── streamifier@0.1.1


25 silly currentTree ├── streamsearch@0.1.2


25 silly currentTree ├── string_decoder@0.10.31


25 silly currentTree ├── string-width@1.0.2


25 silly currentTree ├── strip-ansi@3.0.1


25 silly currentTree ├── strip-bom@2.0.0


25 silly currentTree ├── strip-color@0.1.0


25 silly currentTree ├── strip-eof@1.0.0


25 silly currentTree ├── strip-json-comments@2.0.1


25 silly currentTree ├── success-symbol@0.1.0


25 silly currentTree ├── supports-color@2.0.0


25 silly currentTree ├─┬ tar-fs@1.16.3


25 silly currentTree │ └── pump@1.0.3


25 silly currentTree ├─┬ tar-stream@1.6.2


25 silly currentTree │ ├── isarray@1.0.0


25 silly currentTree │ ├── readable-stream@2.3.6


25 silly currentTree │ └── string_decoder@1.1.1


25 silly currentTree ├── tar@4.4.8


25 silly currentTree ├── terminal-paginator@2.0.2


25 silly currentTree ├── thunky@1.0.3


25 silly currentTree ├── time-stamp@1.1.0


25 silly currentTree ├── to-array@0.1.4


25 silly currentTree ├── to-buffer@1.1.1


25 silly currentTree ├── to-object-path@0.3.0


25 silly currentTree ├── toggle-array@1.0.1


25 silly currentTree ├─┬ tough-cookie@2.4.3


25 silly currentTree │ └── punycode@1.4.1


25 silly currentTree ├── tunnel-agent@0.6.0


25 silly currentTree ├── tweetnacl@0.14.5


25 silly currentTree ├── type-is@1.6.16


25 silly currentTree ├── uid-safe@2.1.5


25 silly currentTree ├── ultron@1.0.2


25 silly currentTree ├── universalify@0.1.2


25 silly currentTree ├─┬ unix-dgram@0.2.3


25 silly currentTree │ ├── bindings@1.1.1


25 silly currentTree │ └── nan@2.3.5


25 silly currentTree ├── unpipe@1.0.0


25 silly currentTree ├── uri-js@4.2.2


25 silly currentTree ├── ursa-optional@0.9.10


25 silly currentTree ├── util-deprecate@1.0.2


25 silly currentTree ├── util@0.10.4


25 silly currentTree ├─┬ utile@0.3.0


25 silly currentTree │ ├── async@0.9.2


25 silly currentTree │ └── ncp@1.0.1


25 silly currentTree ├── utils-merge@1.0.1


25 silly currentTree ├── uuid@3.3.2


25 silly currentTree ├── validate-npm-package-license@3.0.4


25 silly currentTree ├── vary@1.1.2


25 silly currentTree ├── verror@1.10.0


25 silly currentTree ├── warning-symbol@0.1.0


25 silly currentTree ├── which-module@1.0.0


25 silly currentTree ├── which-pm-runs@1.0.0


25 silly currentTree ├── which@1.3.1


25 silly currentTree ├── wide-align@1.1.3


25 silly currentTree ├─┬ window-size@1.1.1


25 silly currentTree │ └── is-number@3.0.0


25 silly currentTree ├── winston-daily-rotate-file@1.7.2


25 silly currentTree ├── winston-syslog@1.2.6


25 silly currentTree ├─┬ winston@2.4.4


25 silly currentTree │ ├── async@1.0.0


25 silly currentTree │ └── colors@1.0.3


25 silly currentTree ├── wrap-ansi@2.1.0


25 silly currentTree ├── wrappy@1.0.2


25 silly currentTree ├── ws@1.1.1


25 silly currentTree ├── wtf-8@1.0.0


25 silly currentTree ├── xmlhttprequest-ssl@1.5.3


25 silly currentTree ├── xtend@4.0.1


25 silly currentTree ├── y18n@3.2.1


25 silly currentTree ├── yallist@3.0.3


25 silly currentTree ├── yargs-parser@5.0.0


25 silly currentTree ├── yargs@7.1.0


25 silly currentTree └── yeast@0.1.2


26 silly idealTree iobroker.inst@2.0.2


26 silly idealTree ├── @coolaj86/urequest@1.3.6


26 silly idealTree ├── @serialport/parser-byte-length@1.0.5


26 silly idealTree ├── @serialport/parser-cctalk@1.0.5


26 silly idealTree ├── @serialport/parser-delimiter@1.0.5


26 silly idealTree ├── @serialport/parser-readline@1.0.5


26 silly idealTree ├── @serialport/parser-ready@1.0.5


26 silly idealTree ├── @serialport/parser-regex@1.0.5


26 silly idealTree ├── accepts@1.3.5


26 silly idealTree ├── acme-v2@1.5.2


26 silly idealTree ├── acme@1.2.0


26 silly idealTree ├── after@0.8.2


26 silly idealTree ├── ajv@6.8.1


26 silly idealTree ├── ansi-bgblack@0.1.1


26 silly idealTree ├── ansi-bgblue@0.1.1


26 silly idealTree ├── ansi-bgcyan@0.1.1


26 silly idealTree ├── ansi-bggreen@0.1.1


26 silly idealTree ├── ansi-bgmagenta@0.1.1


26 silly idealTree ├── ansi-bgred@0.1.1


26 silly idealTree ├── ansi-bgwhite@0.1.1


26 silly idealTree ├── ansi-bgyellow@0.1.1


26 silly idealTree ├── ansi-black@0.1.1


26 silly idealTree ├── ansi-blue@0.1.1


26 silly idealTree ├── ansi-bold@0.1.1


26 silly idealTree ├── ansi-colors@0.2.0


26 silly idealTree ├── ansi-cyan@0.1.1


26 silly idealTree ├── ansi-dim@0.1.1


26 silly idealTree ├── ansi-gray@0.1.1


26 silly idealTree ├── ansi-green@0.1.1


26 silly idealTree ├── ansi-grey@0.1.1


26 silly idealTree ├── ansi-hidden@0.1.1


26 silly idealTree ├── ansi-inverse@0.1.1


26 silly idealTree ├── ansi-italic@0.1.1


26 silly idealTree ├── ansi-magenta@0.1.1


26 silly idealTree ├── ansi-red@0.1.1


26 silly idealTree ├── ansi-regex@2.1.1


26 silly idealTree ├── ansi-reset@0.1.1


26 silly idealTree ├── ansi-strikethrough@0.1.1


26 silly idealTree ├── ansi-styles@2.2.1


26 silly idealTree ├── ansi-underline@0.1.1


26 silly idealTree ├── ansi-white@0.1.1


26 silly idealTree ├── ansi-wrap@0.1.0


26 silly idealTree ├── ansi-yellow@0.1.1


26 silly idealTree ├── aproba@1.2.0


26 silly idealTree ├─┬ are-we-there-yet@1.1.5


26 silly idealTree │ ├── isarray@1.0.0


26 silly idealTree │ ├── readable-stream@2.3.6


26 silly idealTree │ └── string_decoder@1.1.1


26 silly idealTree ├── arr-flatten@1.1.0


26 silly idealTree ├─┬ arr-swap@1.0.1


26 silly idealTree │ └── is-number@3.0.0


26 silly idealTree ├── array-flatten@1.1.1


26 silly idealTree ├── arraybuffer.slice@0.0.6


26 silly idealTree ├── asn1@0.2.4


26 silly idealTree ├── assert-plus@1.0.0


26 silly idealTree ├── async-limiter@1.0.0


26 silly idealTree ├── async@2.6.1


26 silly idealTree ├── asynckit@0.4.0


26 silly idealTree ├── aws-sign2@0.7.0


26 silly idealTree ├── aws4@1.8.0


26 silly idealTree ├── backo2@1.0.2


26 silly idealTree ├── balanced-match@1.0.0


26 silly idealTree ├── base64-arraybuffer@0.1.5


26 silly idealTree ├── base64id@1.0.0


26 silly idealTree ├── bcrypt-pbkdf@1.0.2


26 silly idealTree ├── better-assert@1.0.2


26 silly idealTree ├── bindings@1.3.0


26 silly idealTree ├─┬ bl@1.2.2


26 silly idealTree │ ├── isarray@1.0.0


26 silly idealTree │ ├── readable-stream@2.3.6


26 silly idealTree │ └── string_decoder@1.1.1


26 silly idealTree ├── blob@0.0.4


26 silly idealTree ├── bluebird@3.5.3


26 silly idealTree ├── body-parser@1.18.3


26 silly idealTree ├─┬ bonjour-hap@3.5.1


26 silly idealTree │ ├── array-flatten@2.1.2


26 silly idealTree │ └── deep-equal@1.0.1


26 silly idealTree ├── brace-expansion@1.1.11


26 silly idealTree ├── buffer-alloc-unsafe@1.1.0


26 silly idealTree ├── buffer-alloc@1.2.0


26 silly idealTree ├── buffer-equal-constant-time@1.0.1


26 silly idealTree ├── buffer-fill@1.0.0


26 silly idealTree ├── buffer-indexof@1.1.1


26 silly idealTree ├── buffer-shims@1.0.0


26 silly idealTree ├── busboy@0.2.14


26 silly idealTree ├── bytes@3.0.0


26 silly idealTree ├── callsite@1.0.0


26 silly idealTree ├── camelcase@3.0.0


26 silly idealTree ├── caseless@0.12.0


26 silly idealTree ├── cert-info@1.5.0


26 silly idealTree ├── chalk@1.1.3


26 silly idealTree ├── charenc@0.0.2


26 silly idealTree ├── choices-separator@2.0.0


26 silly idealTree ├── chownr@1.1.1


26 silly idealTree ├── cliui@3.2.0


26 silly idealTree ├─┬ clone-deep@1.0.0


26 silly idealTree │ └── kind-of@5.1.0


26 silly idealTree ├── code-point-at@1.1.0


26 silly idealTree ├── collection-visit@1.0.0


26 silly idealTree ├── colors@1.3.3


26 silly idealTree ├── combined-stream@1.0.7


26 silly idealTree ├── commander@2.19.0


26 silly idealTree ├── component-bind@1.0.0


26 silly idealTree ├── component-emitter@1.1.2


26 silly idealTree ├── component-inherit@0.0.3


26 silly idealTree ├── concat-map@0.0.1


26 silly idealTree ├── connect-flash@0.1.1


26 silly idealTree ├── console-control-strings@1.1.0


26 silly idealTree ├── content-disposition@0.5.2


26 silly idealTree ├── content-type@1.0.4


26 silly idealTree ├── cookie-parser@1.4.3


26 silly idealTree ├── cookie-signature@1.0.6


26 silly idealTree ├── cookie@0.3.1


26 silly idealTree ├── copy-descriptor@0.1.1


26 silly idealTree ├── core-js@2.3.0


26 silly idealTree ├── core-util-is@1.0.2


26 silly idealTree ├── crc@3.4.4


26 silly idealTree ├── cron-parser@2.7.3


26 silly idealTree ├── cross-spawn@5.1.0


26 silly idealTree ├── crypt@0.0.2


26 silly idealTree ├── curve25519-n@1.4.0


26 silly idealTree ├── cycle@1.0.3


26 silly idealTree ├── daemonize2@0.4.2


26 silly idealTree ├── dashdash@1.14.1


26 silly idealTree ├── debug@2.6.9


26 silly idealTree ├── decamelize@1.2.0


26 silly idealTree ├── decimal.js@7.5.1


26 silly idealTree ├── decompress-response@3.3.0


26 silly idealTree ├── deep-equal@0.2.2


26 silly idealTree ├── deep-extend@0.6.0


26 silly idealTree ├── define-properties@1.1.3


26 silly idealTree ├── define-property@1.0.0


26 silly idealTree ├── delayed-stream@1.0.0


26 silly idealTree ├── delegates@1.0.0


26 silly idealTree ├── depd@1.1.2


26 silly idealTree ├── destroy@1.0.4


26 silly idealTree ├── detect-libc@1.0.3


26 silly idealTree ├── dev-null@0.1.1


26 silly idealTree ├── dgram@1.0.1


26 silly idealTree ├── dicer@0.2.5


26 silly idealTree ├── dns-equal@1.0.0


26 silly idealTree ├── dns-packet@1.3.1


26 silly idealTree ├── dns-txt@2.0.2


26 silly idealTree ├── double-ended-queue@2.1.0-0


26 silly idealTree ├── ecc-jsbn@0.1.2


26 silly idealTree ├── ecdsa-sig-formatter@1.0.10


26 silly idealTree ├── ed25519-hap@0.0.5


26 silly idealTree ├── ee-first@1.1.1


26 silly idealTree ├── encodeurl@1.0.2


26 silly idealTree ├── end-of-stream@1.4.1


26 silly idealTree ├─┬ engine.io-client@1.8.2


26 silly idealTree │ ├── component-emitter@1.2.1


26 silly idealTree │ ├── debug@2.3.3


26 silly idealTree │ └── ms@0.7.2


26 silly idealTree ├── engine.io-parser@1.3.2


26 silly idealTree ├─┬ engine.io@1.8.2


26 silly idealTree │ ├── accepts@1.3.3


26 silly idealTree │ ├── debug@2.3.3


26 silly idealTree │ └── ms@0.7.2


26 silly idealTree ├── error-ex@1.3.2


26 silly idealTree ├── error-symbol@0.1.0


26 silly idealTree ├── es6-promise@3.0.2


26 silly idealTree ├── escape-html@1.0.3


26 silly idealTree ├── escape-string-regexp@1.0.5


26 silly idealTree ├── etag@1.8.1


26 silly idealTree ├── execa@0.7.0


26 silly idealTree ├── expand-template@1.1.1


26 silly idealTree ├─┬ express-fileupload@0.4.1


26 silly idealTree │ └── fs-extra@4.0.3


26 silly idealTree ├── express-session@1.15.6


26 silly idealTree ├─┬ express@4.16.4


26 silly idealTree │ └── statuses@1.4.0


26 silly idealTree ├── extend-shallow@2.0.1


26 silly idealTree ├── extend@3.0.2


26 silly idealTree ├── extsprintf@1.3.0


26 silly idealTree ├── eyes@0.1.8


26 silly idealTree ├── fast-deep-equal@2.0.1


26 silly idealTree ├── fast-json-stable-stringify@2.0.0


26 silly idealTree ├── fast-srp-hap@1.0.1


26 silly idealTree ├─┬ finalhandler@1.1.1


26 silly idealTree │ └── statuses@1.4.0


26 silly idealTree ├── find-up@1.1.2


26 silly idealTree ├── for-in@1.0.2


26 silly idealTree ├── for-own@1.0.0


26 silly idealTree ├── forever-agent@0.6.1


26 silly idealTree ├── form-data@2.3.3


26 silly idealTree ├── forwarded@0.1.2


26 silly idealTree ├── fresh@0.5.2


26 silly idealTree ├── fs-constants@1.0.0


26 silly idealTree ├── fs-extra@7.0.1


26 silly idealTree ├── fs-minipass@1.2.5


26 silly idealTree ├── fs.realpath@1.0.0


26 silly idealTree ├── function-bind@1.1.1


26 silly idealTree ├── gauge@2.7.4


26 silly idealTree ├── get-caller-file@1.0.3


26 silly idealTree ├── get-stream@3.0.0


26 silly idealTree ├── getpass@0.1.7


26 silly idealTree ├── github-from-package@0.0.0


26 silly idealTree ├── glob@7.1.3


26 silly idealTree ├── glossy@0.1.7


26 silly idealTree ├── graceful-fs@4.1.15


26 silly idealTree ├── greenlock@2.6.7


26 silly idealTree ├── hap-nodejs-community-types@0.2.1


26 silly idealTree ├── hap-nodejs@0.4.48


26 silly idealTree ├── har-schema@2.0.0


26 silly idealTree ├── har-validator@5.1.3


26 silly idealTree ├── has-ansi@2.0.0


26 silly idealTree ├── has-binary@0.1.7


26 silly idealTree ├─┬ has-binary2@1.0.3


26 silly idealTree │ └── isarray@2.0.1


26 silly idealTree ├── has-cors@1.1.0


26 silly idealTree ├── has-unicode@2.0.1


26 silly idealTree ├── has@1.0.3


26 silly idealTree ├─┬ homebridge-plugin-wrapper@1.0.0


26 silly idealTree │ └── semver@5.0.3


26 silly idealTree ├── hosted-git-info@2.7.1


26 silly idealTree ├── http-errors@1.6.3


26 silly idealTree ├── http-signature@1.2.0


26 silly idealTree ├── i@0.3.6


26 silly idealTree ├── iconv-lite@0.4.23


26 silly idealTree ├── immediate@3.0.6


26 silly idealTree ├── indexof@0.0.1


26 silly idealTree ├── inflight@1.0.6


26 silly idealTree ├── info-symbol@0.1.0


26 silly idealTree ├── inherits@2.0.3


26 silly idealTree ├── ini@1.3.5


26 silly idealTree ├── invert-kv@1.0.0


26 silly idealTree ├─┬ iobroker.admin@3.5.10


26 silly idealTree │ ├── accepts@1.3.5


26 silly idealTree │ ├── after@0.8.2


26 silly idealTree │ ├── ajv@6.8.1


26 silly idealTree │ ├── array-flatten@1.1.1


26 silly idealTree │ ├── arraybuffer.slice@0.0.6


26 silly idealTree │ ├── asn1@0.2.4


26 silly idealTree │ ├── assert-plus@1.0.0


26 silly idealTree │ ├── asynckit@0.4.0


26 silly idealTree │ ├── aws-sign2@0.7.0


26 silly idealTree │ ├── aws4@1.8.0


26 silly idealTree │ ├── backo2@1.0.2


26 silly idealTree │ ├── base64-arraybuffer@0.1.5


26 silly idealTree │ ├── base64id@1.0.0


26 silly idealTree │ ├── bcrypt-pbkdf@1.0.2


26 silly idealTree │ ├── better-assert@1.0.2


26 silly idealTree │ ├── blob@0.0.4


26 silly idealTree │ ├── body-parser@1.18.3


26 silly idealTree │ ├── busboy@0.2.14


26 silly idealTree │ ├── bytes@3.0.0


26 silly idealTree │ ├── callsite@1.0.0


26 silly idealTree │ ├── caseless@0.12.0


26 silly idealTree │ ├── charenc@0.0.2


26 silly idealTree │ ├── combined-stream@1.0.7


26 silly idealTree │ ├── component-bind@1.0.0


26 silly idealTree │ ├── component-emitter@1.1.2


26 silly idealTree │ ├── component-inherit@0.0.3


26 silly idealTree │ ├── connect-flash@0.1.1


26 silly idealTree │ ├── content-disposition@0.5.2


26 silly idealTree │ ├── content-type@1.0.4


26 silly idealTree │ ├── cookie-parser@1.4.3


26 silly idealTree │ ├── cookie-signature@1.0.6


26 silly idealTree │ ├── cookie@0.3.1


26 silly idealTree │ ├── core-util-is@1.0.2


26 silly idealTree │ ├── crc@3.4.4


26 silly idealTree │ ├── crypt@0.0.2


26 silly idealTree │ ├── dashdash@1.14.1


26 silly idealTree │ ├── debug@2.6.9


26 silly idealTree │ ├── delayed-stream@1.0.0


26 silly idealTree │ ├── depd@1.1.2


26 silly idealTree │ ├── destroy@1.0.4


26 silly idealTree │ ├── dicer@0.2.5


26 silly idealTree │ ├── ecc-jsbn@0.1.2


26 silly idealTree │ ├── ee-first@1.1.1


26 silly idealTree │ ├── encodeurl@1.0.2


26 silly idealTree │ ├─┬ engine.io-client@1.8.2


26 silly idealTree │ │ ├── component-emitter@1.2.1


26 silly idealTree │ │ ├── debug@2.3.3


26 silly idealTree │ │ └── ms@0.7.2


26 silly idealTree │ ├── engine.io-parser@1.3.2


26 silly idealTree │ ├─┬ engine.io@1.8.2


26 silly idealTree │ │ ├── accepts@1.3.3


26 silly idealTree │ │ ├── debug@2.3.3


26 silly idealTree │ │ └── ms@0.7.2


26 silly idealTree │ ├── escape-html@1.0.3


2

Попробовал, во время установки вылезли эти ошибки, но брокер завелся, спасибо!


ImportError: No module named compiler.ast


gyp ERR! configure error


gyp ERR! stack Error: `gyp` failed with exit code: 1


gyp ERR! stack at ChildProcess.onCpExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:345:16)


gyp ERR! stack at emitTwo (events.js:126:13)


gyp ERR! stack at ChildProcess.emit (events.js:214:7)


gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)


gyp ERR! System Linux 4.14.79-v7+


gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"


gyp ERR! cwd /opt/iobroker/node_modules/serialport


gyp ERR! node -v v8.15.0


gyp ERR! node-gyp -v v3.8.0


gyp ERR! not ok


Но возникла другая проблема, из за которой я и решил переставить брокер с винды на малинку,

при попытке установить в брокере драйвер Homekit онже яшка вываливаются следующие ошибки, они же не давали поставить этот драйвер в виндовс

  • $ ./iobroker add yahka --host DietPi
  • NPM version: 6.4.1
  • npm install iobroker.yahka --production --save --prefix "/opt/iobroker" (System call)
    Traceback (most recent call last): File "/usr/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py", line 13, in
    import gyp

    File "/usr/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/__init__.py", line 8, in import gyp.input
    File "/usr/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/input.py", line 5, in
    from compiler.ast import Const
    ImportError: No module named compiler.ast

    gyp
    ERR! configure error

    gyp ERR! stack Error: `gyp` failed with exit code: 1gyp ERR!
    stack at ChildProcess.onCpExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:345:16)gyp ERR! stack at emitTwo (events.js:126:13)
    gyp ERR! stack at ChildProcess.emit (events.js:214:7)
    gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)

    gyp ERR! System Linux 4.14.79-v7+gyp
    ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"gyp ERR! cwd /opt/iobroker/node_modules/curve25519-n
    gyp ERR! node -v v8.15.0
    gyp
    ERR! node-gyp -v v3.8.0gyp ERR! not ok

    npm
    ERR!
    code ELIFECYCLEnpm
    ERR! errno 1
    npm ERR! curve25519-n@1.4.0 install: `node-gyp rebuild`
    npm ERR! Exit status 1npm ERR!
    npm
    ERR! Failed at the curve25519-n@1.4.0 install script.npm ERR! This is probably not a problem with npm. There is likely additional logging output above.


    npm ERR! A complete log of this run can be found in:npm ERR! /home/iobroker/.npm/_logs/2019-02-06T07_28_04_623Z-debug.log

    host.DietPi install adapter yahka
    NPM version: 6.4.1
    npm install iobroker.yahka --production --save --prefix "/opt/iobroker" (System call)
    Traceback (most recent call last): File "/usr/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py", line 13, in

    import gyp File "/usr/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/__init__.py", line 8, in
    import gyp.input
    File "/usr/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/input.py", line 5, in
    from compiler.ast import Const
    ImportError: No module named compiler.ast

    gyp
    ERR! configure error
    gyp
    ERR!
    stack Error: `gyp` failed with exit code: 1
    gyp ERR!
    stack at ChildProcess.onCpExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:345:16)gyp ERR! stack at emitTwo (events.js:126:13)
    gyp ERR! stack at ChildProcess.emit (events.js:214:7)
    gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)
    gyp ERR! System Linux 4.14.79-v7+
    gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
    gyp ERR! cwd /opt/iobroker/node_modules/curve25519-n
    gyp ERR! node -v v8.15.0
    gyp ERR! node-gyp -v v3.8.0
    gyp ERR! not ok

    npm
    ERR! code ELIFECYCLEnpm ERR! errno 1

    npm ERR! curve25519-n@1.4.0 install: `node-gyp rebuild`npm ERR! Exit status 1
    npm ERR!
    npm ERR! Failed at the curve25519-n@1.4.0 install script.
    npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

    npm ERR! A complete log of this run can be found in:
    npm ERR! /home/iobroker/.npm/_logs/2019-02-06T07_28_59_033Z-debug.log

    host.DietPi install adapter yahka
    NPM version: 6.4.1
    npm install iobroker.yahka --production --save --prefix "/opt/iobroker" (System call)
    Traceback (most recent call last):
    File "/usr/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py", line 13, in import gyp
    File "/usr/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/__init__.py", line 8, in
    import gyp.input
    File "/usr/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/input.py", line 5, in

    from compiler.ast import ConstImportError: No module named compiler.ast

    gyp
    ERR! configure error

    gyp ERR! stack Error: `gyp` failed with exit code: 1gyp ERR!
    stack at ChildProcess.onCpExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:345:16)gyp ERR! stack at emitTwo (events.js:126:13)
    gyp ERR! stack at ChildProcess.emit (events.js:214:7)
    gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)

    gyp ERR! System Linux 4.14.79-v7+gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
    gyp ERR! cwd /opt/iobroker/node_modules/curve25519-n
    gyp ERR! node -v v8.15.0
    gyp ERR! node-gyp -v v3.8.0
    gyp ERR! not ok

    npm ERR! code ELIFECYCLE
    npm ERR! errno 1
    npm ERR! curve25519-n@1.4.0 install: `node-gyp rebuild`npm ERR! Exit status 1
    npm ERR!
    npm ERR! Failed at the curve25519-n@1.4.0 install script.
    npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

    npm ERR! A complete log of this run can be found in:
    npm ERR! /home/iobroker/.npm/_logs/2019-02-06T07_29_54_210Z-debug.log
    host.DietPi install adapter yahka

    ERROR: host.DietPi Cannot install yahka
    ERROR: process exited with code 13

А это в логе

0 info it worked if it ends with ok

1 verbose cli [ '/usr/bin/node', '/usr/bin/npm', 'install', '-g', 'node-gyp' ]

2 info using npm@6.4.1

3 info using node@v8.15.0

4 verbose npm-session 7c0076654c52b3df

5 silly install loadCurrentTree

6 silly install readGlobalPackageData

7 silly fetchPackageMetaData error for node-gyp@latest request to https://registry.npmjs.org/node-gyp">https://registry.npmjs.org/nod... failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443

8 timing stage:rollbackFailedOptional Completed in 23ms

9 timing stage:runTopLevelLifecycles Completed in 1917ms

10 verbose type system

11 verbose stack FetchError: request to https://registry.npmjs.org/node-gyp">https://registry.npmjs.org/nod... failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443

11 verbose stack at ClientRequest.req.on.err (/usr/lib/node_modules/npm/node_modules/node-fetch-npm/src/index.js:68:14)

11 verbose stack at emitOne (events.js:116:13)

11 verbose stack at ClientRequest.emit (events.js:211:7)

11 verbose stack at TLSSocket.socketErrorListener (_http_client.js:401:9)

11 verbose stack at emitOne (events.js:116:13)

11 verbose stack at TLSSocket.emit (events.js:211:7)

11 verbose stack at emitErrorNT (internal/streams/destroy.js:66:8)

11 verbose stack at _combinedTickCallback (internal/process/next_tick.js:139:11)

11 verbose stack at process._tickCallback (internal/process/next_tick.js:181:9)

12 verbose cwd /root

13 verbose Linux 4.14.79-v7+

14 verbose argv "/usr/bin/node" "/usr/bin/npm" "install" "-g" "node-gyp"

15 verbose node v8.15.0

16 verbose npm v6.4.1

17 error code EAI_AGAIN

18 error errno EAI_AGAIN

19 error request to https://registry.npmjs.org/node-gyp">https://registry.npmjs.org/nod... failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443

20 verbose exit [ 1, true ]

Хотел еще логи приложить, но такую портянку сайт не смог переварить.

Чудесным образом, после переустановки питона все заработало, спасибо за помощь!

Здравствуйте, у меня такая же ошибка, как у (avtomat78). Пробовал все ваши подсказки(

sudo npm install -g node-gyp --unsafe-perm, sudo npm install -g serialport --unsafe-perm

). Результат такой же:

ImportError: No module named compiler.ast
gyp ERR! configure error
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack at ChildProcess.onCpExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:345:16)
gyp ERR! stack at emitTwo (events.js:126:13)
gyp ERR! stack at ChildProcess.emit (events.js:214:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)
gyp ERR! System Linux 4.14.79-v7+
gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/lib/node_modules/serialport/node_modules/@serialport/bindings
gyp ERR! node -v v8.15.0
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! @serialport/bindings@2.0.7 install: `prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the @serialport/bindings@2.0.7 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2019-02-15T12_55_02_028Z-debug.log
root@DietPi:~# serialport-list
bash: serialport-list: command not found

Не устанавливается serialport на Debian. Команда sudo npm install -g serialport --unsafe-perm вроде выполнятеся. Но потом при попытке просмотра портов получаю:

roman@iobroker:~$ serialport-list

-bash: serialport-list: команда не найдена


Здравствуйте, поправьте пожалуйста команды в статье

Вернуться назад

Устройства


Raspberry Pi

Raspberry Pi 4

(16 отзывов)

Вернуться назад