1diff --git a/daemon/gdm-local-display-factory.c b/daemon/gdm-local-display-factory.c
2--- a/daemon/gdm-local-display-factory.c
3+++ b/daemon/gdm-local-display-factory.c
4@@ -245,9 +245,9 @@ struct GdmDisplayServerConfiguration {
5 const char *session_type;
6 } display_server_configuration[] = {
7 #ifdef ENABLE_WAYLAND_SUPPORT
8- { "wayland", GDM_KEY_WAYLAND_ENABLE, "/usr/bin/Xwayland", "wayland" },
9+ { "wayland", GDM_KEY_WAYLAND_ENABLE, "@xwayland@/bin/Xwayland", "wayland" },
10 #endif
11 #ifdef ENABLE_X11_SUPPORT
12- { "xorg", GDM_KEY_XORG_ENABLE, "/usr/bin/Xorg", "x11" },
13+ { "xorg", GDM_KEY_XORG_ENABLE, "@xorgserver@/bin/Xorg", "x11" },
14 #endif
15 { NULL, NULL, NULL },
16 };
17diff --git a/daemon/gdm-manager.c b/daemon/gdm-manager.c
18index fc5aef6ac..c61e0046b 100644
19--- a/daemon/gdm-manager.c
20+++ b/daemon/gdm-manager.c
21@@ -151,7 +151,7 @@ plymouth_is_running (void)
22 GError *error;
23
24 error = NULL;
25- res = g_spawn_command_line_sync ("plymouth --ping",
26+ res = g_spawn_command_line_sync ("@plymouth@/bin/plymouth --ping",
27 NULL, NULL, &status, &error);
28 if (! res) {
29 g_debug ("Could not ping plymouth: %s", error->message);
30@@ -169,7 +169,7 @@ plymouth_prepare_for_transition (void)
31 GError *error;
32
33 error = NULL;
34- res = g_spawn_command_line_sync ("plymouth deactivate",
35+ res = g_spawn_command_line_sync ("@plymouth@/bin/plymouth deactivate",
36 NULL, NULL, NULL, &error);
37 if (! res) {
38 g_warning ("Could not deactivate plymouth: %s", error->message);
39@@ -184,7 +184,7 @@ plymouth_quit_with_transition (void)
40 GError *error;
41
42 error = NULL;
43- res = g_spawn_command_line_async ("plymouth quit --retain-splash", &error);
44+ res = g_spawn_command_line_async ("@plymouth@/bin/plymouth quit --retain-splash", &error);
45 if (! res) {
46 g_warning ("Could not quit plymouth: %s", error->message);
47 g_error_free (error);
48@@ -200,7 +200,7 @@ plymouth_quit_without_transition (void)
49 GError *error;
50
51 error = NULL;
52- res = g_spawn_command_line_async ("plymouth quit", &error);
53+ res = g_spawn_command_line_async ("@plymouth@/bin/plymouth quit", &error);
54 if (! res) {
55 g_warning ("Could not quit plymouth: %s", error->message);
56 g_error_free (error);
57diff --git a/daemon/gdm-session.c b/daemon/gdm-session.c
58index a4c4b2dcf..67416b204 100644
59--- a/daemon/gdm-session.c
60+++ b/daemon/gdm-session.c
61@@ -3193,16 +3193,16 @@ gdm_session_start_session (GdmSession *self,
62 */
63 if (run_launcher) {
64 if (is_x11) {
65- program = g_strdup_printf (LIBEXECDIR "/gdm-x-session %s\"dbus-run-session -- %s\"",
66+ program = g_strdup_printf (LIBEXECDIR "/gdm-x-session %s\"@dbus@/bin/dbus-run-session --dbus-daemon=@dbus@/bin/dbus-daemon -- %s\"",
67 register_session ? "--register-session " : "",
68 self->selected_program);
69 } else {
70- program = g_strdup_printf (LIBEXECDIR "/gdm-wayland-session %s\"dbus-run-session -- %s\"",
71+ program = g_strdup_printf (LIBEXECDIR "/gdm-wayland-session %s\"@dbus@/bin/dbus-run-session --dbus-daemon=@dbus@/bin/dbus-daemon -- %s\"",
72 register_session ? "--register-session " : "",
73 self->selected_program);
74 }
75 } else {
76- program = g_strdup_printf ("dbus-run-session -- %s",
77+ program = g_strdup_printf ("@dbus@/bin/dbus-run-session --dbus-daemon=@dbus@/bin/dbus-daemon -- %s",
78 self->selected_program);
79 }
80 }
81diff --git a/data/gdm.service.in b/data/gdm.service.in
82index 17e8a8de8..afc709778 100644
83--- a/data/gdm.service.in
84+++ b/data/gdm.service.in
85@@ -26,7 +26,7 @@ Restart=always
86 IgnoreSIGPIPE=no
87 BusName=org.gnome.DisplayManager
88 EnvironmentFile=-${LANG_CONFIG_FILE}
89-ExecReload=/bin/kill -SIGHUP $MAINPID
90+ExecReload=@coreutils@/bin/kill -SIGHUP $MAINPID
91 KeyringMode=shared
92
93 [Install]