From 5acb8b8ff4e7e0381efe11908cb349c90c038b21 Mon Sep 17 00:00:00 2001
From: j1nx
Date: Fri, 14 Oct 2022 09:57:19 +0200
Subject: [PATCH] Changes to systemd services and targets
---
.../rootfs-overlay/etc/systemd/system/default.target | 1 +
.../user/gui.target.wants/mycroft-enclosure-gui.service | 1 +
.../systemd/user/gui.target.wants/mycroft-gui.service | 1 +
.../kdeconnectd.service | 0
.../mycroft.service | 0
.../rootfs-overlay/usr/lib/systemd/system/gui.target | 8 ++++++++
.../usr/lib/systemd/user/kdeconnectd.service | 2 +-
.../usr/lib/systemd/user/mycroft-enclosure-gui.service | 3 +--
.../usr/lib/systemd/user/mycroft-gui.service | 4 +++-
9 files changed, 16 insertions(+), 4 deletions(-)
create mode 120000 buildroot-external/rootfs-overlay/etc/systemd/system/default.target
create mode 120000 buildroot-external/rootfs-overlay/home/mycroft/.config/systemd/user/gui.target.wants/mycroft-enclosure-gui.service
create mode 120000 buildroot-external/rootfs-overlay/home/mycroft/.config/systemd/user/gui.target.wants/mycroft-gui.service
rename buildroot-external/rootfs-overlay/home/mycroft/.config/systemd/user/{default.target.wants => multi-user.target.wants}/kdeconnectd.service (100%)
rename buildroot-external/rootfs-overlay/home/mycroft/.config/systemd/user/{default.target.wants => multi-user.target.wants}/mycroft.service (100%)
create mode 100644 buildroot-external/rootfs-overlay/usr/lib/systemd/system/gui.target
diff --git a/buildroot-external/rootfs-overlay/etc/systemd/system/default.target b/buildroot-external/rootfs-overlay/etc/systemd/system/default.target
new file mode 120000
index 00000000..61256a99
--- /dev/null
+++ b/buildroot-external/rootfs-overlay/etc/systemd/system/default.target
@@ -0,0 +1 @@
+../../../usr/lib/systemd/system/gui.target
\ No newline at end of file
diff --git a/buildroot-external/rootfs-overlay/home/mycroft/.config/systemd/user/gui.target.wants/mycroft-enclosure-gui.service b/buildroot-external/rootfs-overlay/home/mycroft/.config/systemd/user/gui.target.wants/mycroft-enclosure-gui.service
new file mode 120000
index 00000000..82f52b11
--- /dev/null
+++ b/buildroot-external/rootfs-overlay/home/mycroft/.config/systemd/user/gui.target.wants/mycroft-enclosure-gui.service
@@ -0,0 +1 @@
+../../../../../../usr/lib/systemd/user/mycroft-enclosure-gui.service
\ No newline at end of file
diff --git a/buildroot-external/rootfs-overlay/home/mycroft/.config/systemd/user/gui.target.wants/mycroft-gui.service b/buildroot-external/rootfs-overlay/home/mycroft/.config/systemd/user/gui.target.wants/mycroft-gui.service
new file mode 120000
index 00000000..3e375eda
--- /dev/null
+++ b/buildroot-external/rootfs-overlay/home/mycroft/.config/systemd/user/gui.target.wants/mycroft-gui.service
@@ -0,0 +1 @@
+../../../../../../usr/lib/systemd/user/mycroft-gui.service
\ No newline at end of file
diff --git a/buildroot-external/rootfs-overlay/home/mycroft/.config/systemd/user/default.target.wants/kdeconnectd.service b/buildroot-external/rootfs-overlay/home/mycroft/.config/systemd/user/multi-user.target.wants/kdeconnectd.service
similarity index 100%
rename from buildroot-external/rootfs-overlay/home/mycroft/.config/systemd/user/default.target.wants/kdeconnectd.service
rename to buildroot-external/rootfs-overlay/home/mycroft/.config/systemd/user/multi-user.target.wants/kdeconnectd.service
diff --git a/buildroot-external/rootfs-overlay/home/mycroft/.config/systemd/user/default.target.wants/mycroft.service b/buildroot-external/rootfs-overlay/home/mycroft/.config/systemd/user/multi-user.target.wants/mycroft.service
similarity index 100%
rename from buildroot-external/rootfs-overlay/home/mycroft/.config/systemd/user/default.target.wants/mycroft.service
rename to buildroot-external/rootfs-overlay/home/mycroft/.config/systemd/user/multi-user.target.wants/mycroft.service
diff --git a/buildroot-external/rootfs-overlay/usr/lib/systemd/system/gui.target b/buildroot-external/rootfs-overlay/usr/lib/systemd/system/gui.target
new file mode 100644
index 00000000..e8931a36
--- /dev/null
+++ b/buildroot-external/rootfs-overlay/usr/lib/systemd/system/gui.target
@@ -0,0 +1,8 @@
+[Unit]
+Description=OpenVoiceOS - Mycroft GUI Interface
+Documentation=man:systemd.special(7)
+Requires=multi-user.target
+Wants=mycroft-gui.service
+Conflicts=rescue.service rescue.target
+After=multi-user.target rescue.service rescue.target display-manager.service
+AllowIsolate=yes
diff --git a/buildroot-external/rootfs-overlay/usr/lib/systemd/user/kdeconnectd.service b/buildroot-external/rootfs-overlay/usr/lib/systemd/user/kdeconnectd.service
index 6347587d..2fe81f28 100644
--- a/buildroot-external/rootfs-overlay/usr/lib/systemd/user/kdeconnectd.service
+++ b/buildroot-external/rootfs-overlay/usr/lib/systemd/user/kdeconnectd.service
@@ -6,4 +6,4 @@ ExecStart=/usr/lib/libexec/kdeconnectd -platform offscreen
BusName=org.kde.kdeconnect
[Install]
-WantedBy=default.target
+WantedBy=multi-user.target
diff --git a/buildroot-external/rootfs-overlay/usr/lib/systemd/user/mycroft-enclosure-gui.service b/buildroot-external/rootfs-overlay/usr/lib/systemd/user/mycroft-enclosure-gui.service
index 27d83013..6e51fcba 100644
--- a/buildroot-external/rootfs-overlay/usr/lib/systemd/user/mycroft-enclosure-gui.service
+++ b/buildroot-external/rootfs-overlay/usr/lib/systemd/user/mycroft-enclosure-gui.service
@@ -1,6 +1,5 @@
[Unit]
Description=Mycroft Enclosure
-PartOf=mycroft.service
After=mycroft.service
After=mycroft-messagebus.service
@@ -18,4 +17,4 @@ StartLimitBurst=4
#WatchdogSec=30s
[Install]
-WantedBy=mycroft.service
+WantedBy=gui.target
diff --git a/buildroot-external/rootfs-overlay/usr/lib/systemd/user/mycroft-gui.service b/buildroot-external/rootfs-overlay/usr/lib/systemd/user/mycroft-gui.service
index 1c923afc..28b63aac 100644
--- a/buildroot-external/rootfs-overlay/usr/lib/systemd/user/mycroft-gui.service
+++ b/buildroot-external/rootfs-overlay/usr/lib/systemd/user/mycroft-gui.service
@@ -1,5 +1,7 @@
[Unit]
Description=Mycroft GUI
+After=mycroft-enclosure-gui.service
+Requires=mycroft-enclosure-gui.service
[Service]
ExecStartPre=-/usr/bin/kbuildsycoca5
@@ -8,4 +10,4 @@ StandardOutput=null
Restart=on-failure
[Install]
-WantedBy=mycroft.service
+WantedBy=gui.target