diff --git a/panels/datetime/tz.h b/panels/datetime/tz.h
index b6b7ab9d0..31f268e91 100644
--- a/panels/datetime/tz.h
+++ b/panels/datetime/tz.h
@@ -4,7 +4,7 @@
  * Copyright (C) 2000-2001 Ximian, Inc.
  *
  * Authors: Hans Petter Jansson <hpj@ximian.com>
- * 
+ *
  * Largely based on Michael Fulbright's work on Anaconda.
  *
  * This program is free software; you can redistribute it and/or modify
@@ -27,11 +27,7 @@
 
 G_BEGIN_DECLS
 
-#ifndef __sun
-#  define TZ_DATA_FILE "/usr/share/zoneinfo/zone.tab"
-#else
-#  define TZ_DATA_FILE "/usr/share/lib/zoneinfo/tab/zone_sun.tab"
-#endif
+#define TZ_DATA_FILE "@tzdata@/share/zoneinfo/zone.tab"
 
 typedef struct _TzDB TzDB;
 typedef struct _TzLocation TzLocation;
diff --git a/panels/info-overview/cc-info-overview-panel.c b/panels/info-overview/cc-info-overview-panel.c
index 25cda02d3..db664bc56 100644
--- a/panels/info-overview/cc-info-overview-panel.c
+++ b/panels/info-overview/cc-info-overview-panel.c
@@ -156,7 +156,7 @@ load_budgie_version (char **version)
   gsize length;
   g_autoptr(VersionData) data = NULL;
 
-  if (!g_file_get_contents (DATADIR "/budgie/budgie-version.xml",
+  if (!g_file_get_contents ("@budgie_desktop@/share/budgie/budgie-version.xml",
                             &contents,
                             &length,
                             &error))
diff --git a/panels/network/connection-editor/net-connection-editor.c b/panels/network/connection-editor/net-connection-editor.c
index 505b8ee25..62e94009f 100644
--- a/panels/network/connection-editor/net-connection-editor.c
+++ b/panels/network/connection-editor/net-connection-editor.c
@@ -267,9 +267,9 @@ net_connection_editor_do_fallback (NetConnectionEditor *self, const gchar *type)
         g_autoptr(GError) error = NULL;
 
         if (self->is_new_connection) {
-                cmdline = g_strdup_printf ("nm-connection-editor --type='%s' --create", type);
+                cmdline = g_strdup_printf ("@networkmanagerapplet@/bin/nm-connection-editor --type='%s' --create", type);
         } else {
-                cmdline = g_strdup_printf ("nm-connection-editor --edit='%s'",
+                cmdline = g_strdup_printf ("@networkmanagerapplet@/bin/nm-connection-editor --edit='%s'",
                                            nm_connection_get_uuid (self->connection));
         }
 
diff --git a/panels/network/net-device-bluetooth.c b/panels/network/net-device-bluetooth.c
index 372c0c4f8..464f4b6a0 100644
--- a/panels/network/net-device-bluetooth.c
+++ b/panels/network/net-device-bluetooth.c
@@ -141,7 +141,7 @@ options_button_clicked_cb (NetDeviceBluetooth *self)
 
         connection = net_device_get_find_connection (self->client, self->device);
         uuid = nm_connection_get_uuid (connection);
-        cmdline = g_strdup_printf ("nm-connection-editor --edit %s", uuid);
+        cmdline = g_strdup_printf ("@networkmanagerapplet@/bin/nm-connection-editor --edit %s", uuid);
         g_debug ("Launching '%s'\n", cmdline);
         if (!g_spawn_command_line_async (cmdline, &error))
                 g_warning ("Failed to launch nm-connection-editor: %s", error->message);
diff --git a/panels/network/net-device-mobile.c b/panels/network/net-device-mobile.c
index f50fd5d07..c6f6f776e 100644
--- a/panels/network/net-device-mobile.c
+++ b/panels/network/net-device-mobile.c
@@ -522,7 +522,7 @@ options_button_clicked_cb (NetDeviceMobile *self)
 
         connection = net_device_get_find_connection (self->client, self->device);
         uuid = nm_connection_get_uuid (connection);
-        cmdline = g_strdup_printf ("nm-connection-editor --edit %s", uuid);
+        cmdline = g_strdup_printf ("@networkmanagerapplet@/bin/nm-connection-editor --edit %s", uuid);
         g_debug ("Launching '%s'\n", cmdline);
         if (!g_spawn_command_line_async (cmdline, &error))
                 g_warning ("Failed to launch nm-connection-editor: %s", error->message);
diff --git a/panels/printers/pp-host.c b/panels/printers/pp-host.c
index a31a606e3..ed5133d29 100644
--- a/panels/printers/pp-host.c
+++ b/panels/printers/pp-host.c
@@ -256,7 +256,7 @@ _pp_host_get_snmp_devices_thread (GTask        *task,
   devices = g_ptr_array_new_with_free_func (g_object_unref);
 
   argv = g_new0 (gchar *, 3);
-  argv[0] = g_strdup ("/usr/lib/cups/backend/snmp");
+  argv[0] = g_strdup ("@cups@/lib/cups/backend/snmp");
   argv[1] = g_strdup (priv->hostname);
 
   /* Use SNMP to get printer's informations */
diff --git a/panels/user-accounts/run-passwd.c b/panels/user-accounts/run-passwd.c
index 86f53d4fc..0b052856f 100644
--- a/panels/user-accounts/run-passwd.c
+++ b/panels/user-accounts/run-passwd.c
@@ -150,7 +150,7 @@ spawn_passwd (PasswdHandler *passwd_handler, GError **error)
         gchar  **envp;
         gint    my_stdin, my_stdout, my_stderr;
 
-        argv[0] = "/usr/bin/passwd";    /* Is it safe to rely on a hard-coded path? */
+        argv[0] = "/run/wrappers/bin/passwd";    /* Is it safe to rely on a hard-coded path? */
         argv[1] = NULL;
 
         envp = g_get_environ ();
diff --git a/panels/user-accounts/user-utils.c b/panels/user-accounts/user-utils.c
index 0de83479e..628e35247 100644
--- a/panels/user-accounts/user-utils.c
+++ b/panels/user-accounts/user-utils.c
@@ -497,7 +497,7 @@ is_valid_username_async (const gchar *username,
          * future, so it would be nice to have some official way for this
          * instead of relying on the current "--login" implementation.
          */
-        argv[0] = "/usr/sbin/usermod";
+        argv[0] = "@shadow@/bin/usermod";
         argv[1] = "--login";
         argv[2] = data->username;
         argv[3] = "--";
