Mycroft on Raspberry Pi OS only works in debug mode

I tried ‘sudo apt update’ and ‘sudo apt upgrade’, then a reboot - same symptoms. :neutral_face:

-Mike M

Hi,

I added a line for mycroft to wait 30 seconds to the systemd file:

ExecStartPre=/bin/sleep 30

Then I rebooted and got an SSH session while mycroft was sleeping:

$ service mycroft status
● mycroft.service - Mycroft AI
   Loaded: loaded (/etc/systemd/system/mycroft.service; enabled; vendor preset: enabled)
   Active: activating (start-pre) since Sat 2021-01-30 06:50:34 EST; 16s ago
Cntrl PID: 788 (sleep)
    Tasks: 1 (limit: 2063)
   CGroup: /system.slice/mycroft.service
           └─788 /bin/sleep 30

The service failed again, but differently:

$ journalctl -xe | grep mycroft
-- Subject: A start job for unit mycroft.service has begun execution
-- A start job for unit mycroft.service has begun execution.
-- Subject: A start job for unit mycroft.service has finished successfully
-- A start job for unit mycroft.service has finished successfully.
Jan 30 06:51:17 raspberrypi mycroft-start[1192]: error: insufficient permission for adding an object to repository database .git/objects
...

What would cause this error message?

I can still start mycroft interactively with either ‘all’ or ‘debug’.

Thanks.

-Mike M

The mycroft start up scripts, to be clear.

Hello mycrofters,

I finally got back to mycroft (wow, 4 months went by), and am still trying to start mycroft as a systemd service. I go to /var/log/mycroft and look at log files:

$ grep tmp /var/log/mycroft/bus.log
PermissionError: [Errno 13] Permission denied: '/tmp/mycroft/service.pid'
... many dups of above ...

So I set the ownership of /tmp/mycroft to pi, then reboot.

$ sudo chown pi.pi /tmp/mycroft
$ sudo reboot

When the pi is back up, the mycroft service is still not running. I see the ownership of /tmp/mycroft is back to root:

$ ls -ld /tmp/mycroft
drwxr-xr-x 4 root root 4096 May 30 15:12 /tmp/mycroft

So this begs the question, “Is some code in the mycroft start process changing the ownership of that directory?”

Thanks.

-Mike M