mirror of
https://github.com/hyprwm/Hyprland
synced 2024-12-22 22:09:49 +01:00
Build with hyprland-session.service (#8251)
Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
This commit is contained in:
parent
c356e42500
commit
f3f7d3629a
5 changed files with 31 additions and 3 deletions
|
@ -15,7 +15,9 @@ include(GNUInstallDirs)
|
|||
set(HYPRLAND_VERSION ${VER})
|
||||
set(PREFIX ${CMAKE_INSTALL_PREFIX})
|
||||
set(INCLUDEDIR ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
set(BINDIR ${CMAKE_INSTALL_BINDIR})
|
||||
configure_file(hyprland.pc.in hyprland.pc @ONLY)
|
||||
configure_file(systemd/hyprland-session.service.in systemd/hyprland-session.service @ONLY)
|
||||
|
||||
set(CMAKE_MESSAGE_LOG_LEVEL "STATUS")
|
||||
|
||||
|
@ -357,6 +359,11 @@ install(
|
|||
install(FILES ${CMAKE_SOURCE_DIR}/example/hyprland.desktop
|
||||
DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/wayland-sessions)
|
||||
|
||||
|
||||
# session file -systemd
|
||||
install(FILES ${CMAKE_SOURCE_DIR}/systemd/hyprland-systemd.desktop
|
||||
DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/wayland-sessions)
|
||||
|
||||
# allow Hyprland to find assets
|
||||
add_compile_definitions(DATAROOTDIR="${CMAKE_INSTALL_FULL_DATAROOTDIR}")
|
||||
|
||||
|
@ -397,3 +404,6 @@ install(
|
|||
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/hyprland
|
||||
FILES_MATCHING
|
||||
PATTERN "*.h*")
|
||||
|
||||
#install systemd service
|
||||
install(FILES ${CMAKE_BINARY_DIR}/systemd/hyprland-session.service DESTINATION ${CMAKE_INSTALL_LIBDIR}/systemd/user)
|
||||
|
|
|
@ -80,6 +80,8 @@ if get_option('tracy_enable') and get_option('buildtype') != 'debugoptimized'
|
|||
warning('Profiling builds should set -- buildtype = debugoptimized')
|
||||
endif
|
||||
|
||||
|
||||
|
||||
subdir('protocols')
|
||||
subdir('src')
|
||||
subdir('hyprctl')
|
||||
|
@ -87,6 +89,7 @@ subdir('hyprpm/src')
|
|||
subdir('assets')
|
||||
subdir('example')
|
||||
subdir('docs')
|
||||
subdir('systemd')
|
||||
|
||||
# Generate hyprland.pc
|
||||
pkg_install_dir = join_paths(get_option('datadir'), 'pkgconfig')
|
||||
|
|
|
@ -9,8 +9,8 @@ After=graphical-session-pre.target
|
|||
|
||||
[Service]
|
||||
Type=notify
|
||||
ExecStart=/usr/bin/Hyprland
|
||||
ExecStop=/usr/bin/hyprctl dispatch exit
|
||||
ExecStopPost=/usr/bin/systemctl --user unset-environment DISPLAY WAYLAND_DISPLAY HYPRLAND_INSTANCE_SIGNATURE XDG_CURRENT_DESKTOP
|
||||
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
|
15
systemd/meson.build
Normal file
15
systemd/meson.build
Normal file
|
@ -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') )
|
Loading…
Reference in a new issue