genielabs / HomeGenie

HomeGenie, the programmable automation intelligence
https://homegenie.it
GNU General Public License v3.0
388 stars 154 forks source link

Stable v6 Package Installer Broken #402

Closed homeautomate8 closed 4 years ago

homeautomate8 commented 4 years ago

Successful Install

Installer crashes with errors

Steps to reproduce the problem starting from a fresh install

1. 2. 3.

Specifications

Additional configuration notes

Unfortunately the Deb package manager still appears to be broken.Output as follows

Processing triggers for mime-support (3.62) ... Processing triggers for libc-bin (2.28-10+rpi1) ... Errors were encountered while processing: lirc E:Sub-process /usr/bin/dpkg returned an error code (1) Error during install: 'installArchives() failed'

Unpacking homegenie (1.3-stable.6) ... dpkg: dependency problems prevent configuration of homegenie: homegenie depends on lirc; however: Package lirc is not configured yet.

dpkg: error processing package homegenie (--install): dependency problems - leaving unconfigured Errors were encountered while processing: homegenie

homeautomate8 commented 4 years ago

Further output after investigation

Job for lircd.service failed because the control process exited with error code. See "systemctl status lircd.service" and "journalctl -xe" for details. invoke-rc.d: initscript lircd, action "start" failed. ● lircd.service - Flexible IR remote input/output application support Loaded: loaded (/lib/systemd/system/lircd.service; disabled; vendor preset: enabled) Active: failed (Result: exit-code) since Mon 2020-04-27 18:15:44 IST; 40ms ago Docs: man:lircd(8) http://lirc.org/html/configure.html Process: 1674 ExecStart=/usr/sbin/lircd --nodaemon (code=exited, status=1/FAILURE) Main PID: 1674 (code=exited, status=1/FAILURE)

Apr 27 18:15:44 raspberrypi lircd-0.10.1[1674]: Info: lircd: Opening log, level: Info Apr 27 18:15:44 raspberrypi lircd-0.10.1[1674]: Notice: Version: lircd 0.10.1 Apr 27 18:15:44 raspberrypi lircd-0.10.1[1674]: Notice: System info: Linux raspberrypi 4.19.97-v7+ #1294 SMP Thu Jan 30 13:15:58 GMT 2020 armv7l GNU/Linux Apr 27 18:15:44 raspberrypi lircd-0.10.1[1674]: Info: Cannot open plugindir /usr/lib/x86_64-linux-gnu/lirc/plugins Apr 27 18:15:44 raspberrypi lircd[1674]: Driver `devinput' not found or not loadable (wrong or missing -U/--plugindir?). Apr 27 18:15:44 raspberrypi lircd[1674]: Available drivers: Apr 27 18:15:44 raspberrypi lircd-0.10.1[1674]: Info: Cannot open plugindir /usr/lib/x86_64-linux-gnu/lirc/plugins Apr 27 18:15:44 raspberrypi systemd[1]: lircd.service: Main process exited, code=exited, status=1/FAILURE Apr 27 18:15:44 raspberrypi systemd[1]: lircd.service: Failed with result 'exit-code'. Apr 27 18:15:44 raspberrypi systemd[1]: Failed to start Flexible IR remote input/output application support. dpkg: error processing package lirc (--configure): installed lirc package post-installation script subprocess returned error exit status 1 dpkg: dependency problems prevent configuration of homegenie: homegenie depends on lirc; however: Package lirc is not configured yet.

dpkg: error processing package homegenie (--configure): dependency problems - leaving unconfigured Errors were encountered while processing: lirc homegenie E: Sub-process /usr/bin/dpkg returned an error code (1)

genemars commented 4 years ago

hi @homeautomate8 can you please attach the following file: /etc/lirc/lirc_options.conf.dist Probably the lirc configuration that I included in homegenie is not suitable for Raspberry because of wrong plugin path: plugindir = /usr/lib/x86_64-linux-gnu/lirc/plugins

homeautomate8 commented 4 years ago

Before I delve any further into this could you clarify the following:

What changes were made between Stable 5 and Stable 6 releases

Was the latest release built and tested around x86 processor on something like Ubuntu Xenial

genemars commented 4 years ago

No changes, just trying to fix the debian package to make it work with latest distros. Tested on Ubuntu 19.

homeautomate8 commented 4 years ago

Ok.That explains a lot. I manually installed HG omitting Lirc and it worked fine.Here's the contents of that file.

These are the default options to lircd, if installed as

/etc/lirc/lirc_options.conf. See the lircd(8) and lircmd(8)

manpages for info on the different options.

#

Some tools including mode2 and irw uses values such as

driver, device, plugindir and loglevel as fallback values

in not defined elsewhere.

[lircd] nodaemon = False driver = devinput device = auto output = /var/run/lirc/lircd pidfile = /var/run/lirc/lircd.pid plugindir = /usr/lib/arm-linux-gnueabihf/lirc/plugins permission = 666 allow-simulate = No repeat-max = 600

effective-user =

homeautomate8 commented 4 years ago

Here's the contents of the /var/lib/dpkg/status file for HG

Package: homegenie Status: install ok unpacked Priority: optional Section: web Installed-Size: 27956 Maintainer: Generoso Martello gene@homegenie.it Architecture: all Version: 1.3-stable.6 Depends: mono-runtime, libmono-corlib4.5-cil, libmono-system-web4.0-cil, libmon$ Pre-Depends: mono-runtime Recommends: ca-certificates-mono Suggests: arduino-mk, empty-expect Description: HomeGenie - open source, programmable, home automation server for $ Homepage: http://www.homegenie.it

Finally this is the one for Lirc

Package: lirc Status: install ok half-configured Priority: optional Section: utils Installed-Size: 2040 Maintainer: Debian Lirc Team team+debian-lirc@tracker.debian.org Architecture: armhf Version: 0.10.1-5.2 Depends: liblirc0 (= 0.10.1-5.2), lsb-base (>= 3.0-6), python3, python3:any, li$ Recommends: gir1.2-vte, python3-yaml, python3-gi, systemd Suggests: lirc-compat-remotes, lirc-drv-irman, lirc-doc, lirc-x, setserial, ir-$ Breaks: inputlirc (<< 19), lirc-modules-source (<< 0.9~), lirc-svga (<< 0.9~) Conffiles: /etc/init.d/lircd d0d1bc5da43f9498fe57125b420b816d /etc/init.d/lircmd aa16dc35c6c6995f943bee970bfb16b6 /etc/lirc/irexec.lircrc.dist 92df549c82f58ea28b605e5045984e04 /etc/lirc/lirc_options.conf.dist 68536b61acd02abd6e364a3715e0831f /etc/lirc/lircd.conf.d/README.conf.d 0aadccc25e02180253878b9467b06f26 /etc/lirc/lircd.conf.d/devinput.lircd.conf dd1dcdfe3ceff0c75a1fea9f3ebb680b /etc/lirc/lircd.conf.dist 810233d6f1bb15b64468beb95e4c670e /etc/lirc/lircmd.conf.dist eca53bdc53bd5edc63cf06a4cff16b0d Description: Infra-red remote control support - daemons and utils LIRC stands for 'Linux Infra-red Remote Control'. . This package provides the daemons and some utilities to support infra-red remote controls under Linux.

genemars commented 4 years ago

I've removed `lirc' package from HomeGenie dependencies since the LIRC interface driver is to be installed from package manager. Let me now if HomeGenie now installs on Raspbian Buster.

homeautomate8 commented 4 years ago

Tried again from a fresh install and it's even worse. Your service daemon failed with the following results

homegenie.service Loaded: loaded (/etc/init.d/homegenie; generated) Active: failed (Result: exit-code) since Wed 2020-04-29 14:58:41 IST; 1h 0min ago Docs: man:systemd-sysv-generator(8)

Apr 29 14:58:40 raspberrypi systemd[1]: Starting homegenie.service... Apr 29 14:58:40 raspberrypi systemd[304]: homegenie.service: Failed to execute command: Exec format error Apr 29 14:58:40 raspberrypi systemd[304]: homegenie.service: Failed at step EXEC spawning /etc/init.d/homegenie: Exec format error Apr 29 14:58:41 raspberrypi systemd[1]: homegenie.service: Control process exited, code=exited, status=203/EXEC Apr 29 14:58:41 raspberrypi systemd[1]: homegenie.service: Failed with result 'exit-code'. Apr 29 14:58:41 raspberrypi systemd[1]: Failed to start homegenie.service.

On further investigation trying to run HG in debug mode as follows

cd /usr/local/bin/homegenie sudo mono HomeGenie.exe

justs returns a blank line and nothing starts.

Enabling/disabling the service gives the following error

pi@raspberrypi:~ $ sudo systemctl enable homegenie.service homegenie.service is not a native service, redirecting to systemd-sysv-install. Executing: /lib/systemd/systemd-sysv-install enable homegenie update-rc.d: error: cannot find a LSB script for homegenie

As I said previously, manually installing HG and installing optional packages minus Lirc works fine. I now see you've updated the optional packages minus Lirc, Libusb and CM15. How are these handled now.

Also I see you still employ SysV init scripts.Could this not be handled more efficiently with the more modern SystemD method

genemars commented 4 years ago

I'll check this out, but I only removed lirc.

homeautomate8 commented 4 years ago

It appears Github were having comms issues. I downloaded Stable 7 again.Looks like there was some file corruption downloading.I finally got the installer to work again. Just to confirm that the Deb package manager is working again.

Thanks Gene