From d3ffb0bde1a8c7a7eff43d1e32a38d314c5adc8a Mon Sep 17 00:00:00 2001 From: Max Gautier Date: Tue, 14 Feb 2023 09:49:32 +0100 Subject: [PATCH] Ties systemd units to graphical-session.target - wayland-instance template target was a mistake. Systemd does not support simultaneous same user session, so stop trying to go against that. - Only start systemd units in Wayland environments. --- foot-server@.service.in => foot-server.service.in | 6 +++--- foot-server.socket | 9 +++++++++ foot-server@.socket | 5 ----- meson.build | 4 ++-- 4 files changed, 14 insertions(+), 10 deletions(-) rename foot-server@.service.in => foot-server.service.in (58%) create mode 100644 foot-server.socket delete mode 100644 foot-server@.socket diff --git a/foot-server@.service.in b/foot-server.service.in similarity index 58% rename from foot-server@.service.in rename to foot-server.service.in index c40bb454..47b81267 100644 --- a/foot-server@.service.in +++ b/foot-server.service.in @@ -1,13 +1,13 @@ [Service] ExecStart=@bindir@/foot --server=3 -Environment=WAYLAND_DISPLAY=%i UnsetEnvironment=LISTEN_PID LISTEN_FDS LISTEN_FDNAMES NonBlocking=true [Unit] Requires=%N.socket -Description=Foot terminal server mode for WAYLAND_DISPLAY=%i +Description=Foot terminal server mode Documentation=man:foot(1) +PartOf=graphical-session.target [Install] -WantedBy=wayland-instance@.target +WantedBy=graphical-session.target diff --git a/foot-server.socket b/foot-server.socket new file mode 100644 index 00000000..997e4363 --- /dev/null +++ b/foot-server.socket @@ -0,0 +1,9 @@ +[Socket] +ListenStream=%t/foot.sock + +[Unit] +PartOf=graphical-session.target +ConditionEnvironment=WAYLAND_DISPLAY + +[Install] +WantedBy=graphical-session.target diff --git a/foot-server@.socket b/foot-server@.socket deleted file mode 100644 index 71db51cb..00000000 --- a/foot-server@.socket +++ /dev/null @@ -1,5 +0,0 @@ -[Socket] -ListenStream=%t/foot-%i.sock - -[Install] -WantedBy=wayland-instance@.target diff --git a/meson.build b/meson.build index 1a00153c..cdccfa7e 100644 --- a/meson.build +++ b/meson.build @@ -329,13 +329,13 @@ if systemd.found() or custom_systemd_units_dir != '' configure_file( configuration: configuration, - input: 'foot-server@.service.in', + input: 'foot-server.service.in', output: '@BASENAME@', install_dir: systemd_units_dir ) install_data( - 'foot-server@.socket', + 'foot-server.socket', install_dir: systemd_units_dir) endif