diff --git a/buildroot-external/rootfs-overlay/usr/lib/systemd/system-preset/10-ovos.preset b/buildroot-external/rootfs-overlay/usr/lib/systemd/system-preset/10-ovos.preset index fe7bf25f..b57c51a5 100644 --- a/buildroot-external/rootfs-overlay/usr/lib/systemd/system-preset/10-ovos.preset +++ b/buildroot-external/rootfs-overlay/usr/lib/systemd/system-preset/10-ovos.preset @@ -8,6 +8,7 @@ enable NetworkManager.service enable getty@tty1.service enable ovos-splash-start.service enable ovos-splash-systemd.service +enable mycroft-admin-phal.service disable pulseaudio.service disable getty@.service diff --git a/buildroot-external/rootfs-overlay/usr/lib/systemd/system/mycroft-admin-phal.service b/buildroot-external/rootfs-overlay/usr/lib/systemd/system/mycroft-admin-phal.service new file mode 100644 index 00000000..66d201c1 --- /dev/null +++ b/buildroot-external/rootfs-overlay/usr/lib/systemd/system/mycroft-admin-phal.service @@ -0,0 +1,16 @@ +[Unit] +Description=Admin PHAL + +[Service] +Type=notify +ExecStart=/usr/libexec/mycroft-systemd-admin-phal +TimeoutStartSec=1m +TimeoutStopSec=1m +Restart=on-failure +StartLimitInterval=5min +StartLimitBurst=4 +#StartLimitAction=reboot-force +#WatchdogSec=30s + +[Install] +WantedBy=multi-user.target diff --git a/buildroot-external/rootfs-overlay/usr/libexec/mycroft-systemd-admin-phal b/buildroot-external/rootfs-overlay/usr/libexec/mycroft-systemd-admin-phal new file mode 100755 index 00000000..a6513fd6 --- /dev/null +++ b/buildroot-external/rootfs-overlay/usr/libexec/mycroft-systemd-admin-phal @@ -0,0 +1,30 @@ +#!/usr/bin/env python +########################################################################## +# mycroft-systemd_enclosure.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +########################################################################## +import sdnotify +from ovos_PHAL.admin import main + +n = sdnotify.SystemdNotifier() + +def notify_ready(): + n.notify('READY=1') + print('Startup of admin PHAL service complete') + +def notify_stopping(): + n.notify('STOPPING=1') + print('Stopping the admin PHAL service') + +main(ready_hook=notify_ready, stopping_hook=notify_stopping)