aboutsummaryrefslogtreecommitdiffhomepage
path: root/systemd
diff options
context:
space:
mode:
authorizmyname <[email protected]>2024-10-27 00:49:00 +0500
committerGitHub <[email protected]>2024-10-26 22:49:00 +0300
commitf3f7d3629a632682b1b3acf800f0b5fb10cd48f4 (patch)
treedbcd7a8d7bf3fcf5e8f74e3fcc153888196d229d /systemd
parentc356e425008cba8bd0c87487a2c79b9be4eda2aa (diff)
downloadHyprland-f3f7d3629a632682b1b3acf800f0b5fb10cd48f4.tar.gz
Hyprland-f3f7d3629a632682b1b3acf800f0b5fb10cd48f4.zip
Build with hyprland-session.service (#8251)
Co-authored-by: Mihai Fufezan <[email protected]>
Diffstat (limited to 'systemd')
-rw-r--r--systemd/hyprland-session.service.in16
-rw-r--r--systemd/hyprland-systemd.desktop5
-rw-r--r--systemd/meson.build15
3 files changed, 36 insertions, 0 deletions
diff --git a/systemd/hyprland-session.service.in b/systemd/hyprland-session.service.in
new file mode 100644
index 00000000..dafdc141
--- /dev/null
+++ b/systemd/hyprland-session.service.in
@@ -0,0 +1,16 @@
+[Unit]
+Description=Hyprland - Tiling compositor with the looks
+Documentation=man:Hyprland(1)
+BindsTo=graphical-session.target
+Before=graphical-session.target
+Wants=xdg-desktop-autostart.target
+Wants=graphical-session-pre.target
+After=graphical-session-pre.target
+
+[Service]
+Type=notify
+ExecStart=@PREFIX@/@BINDIR@/Hyprland
+ExecStop=@PREFIX@/@BINDIR@/hyprctl dispatch exit
+ExecStopPost=systemctl --user unset-environment DISPLAY WAYLAND_DISPLAY HYPRLAND_INSTANCE_SIGNATURE XDG_CURRENT_DESKTOP
+Restart=on-failure
+Slice=session.slice
diff --git a/systemd/hyprland-systemd.desktop b/systemd/hyprland-systemd.desktop
new file mode 100644
index 00000000..b36a87b2
--- /dev/null
+++ b/systemd/hyprland-systemd.desktop
@@ -0,0 +1,5 @@
+[Desktop Entry]
+Name=Hyprland
+Comment=An intelligent dynamic tiling Wayland compositor
+Exec=systemctl --user start --wait hyprland-session
+Type=Application
diff --git a/systemd/meson.build b/systemd/meson.build
new file mode 100644
index 00000000..497e64f4
--- /dev/null
+++ b/systemd/meson.build
@@ -0,0 +1,15 @@
+install_data(
+ 'hyprland-systemd.desktop',
+ install_dir: join_paths(get_option('datadir'), 'wayland-sessions'),
+ install_tag: 'runtime',
+)
+
+conf_data = configuration_data()
+conf_data.set('PREFIX', get_option('prefix'))
+conf_data.set('BINDIR', get_option('bindir'))
+
+configure_file(
+ configuration: conf_data,
+ input: 'hyprland-session.service.in',
+ output: '@BASENAME@',
+ install_dir: join_paths(get_option('libdir'), 'systemd/user') )