1 diff --git a/src/daemon.c b/src/daemon.c
2 index aa9d050..861430f 100644
5 @@ -1319,7 +1319,7 @@ daemon_create_user_authorized_cb (Daemon *daemon,
7 sys_log (context, "create user '%s'", cd->user_name);
9 - argv[0] = "/usr/sbin/useradd";
10 + argv[0] = "@shadow@/bin/useradd";
13 argv[3] = cd->real_name;
14 @@ -1552,7 +1552,7 @@ daemon_delete_user_authorized_cb (Daemon *daemon,
16 free (resolved_homedir);
18 - argv[0] = "/usr/sbin/userdel";
19 + argv[0] = "@shadow@/bin/userdel";
20 if (ud->remove_files) {
23 diff --git a/src/user.c b/src/user.c
24 index 917d427..28170db 100644
27 @@ -1193,7 +1193,7 @@ user_change_real_name_authorized_cb (Daemon *daemon,
28 new_gecos = g_strdup (name);
31 - argv[0] = "/usr/sbin/usermod";
32 + argv[0] = "@shadow@/bin/usermod";
36 @@ -1267,7 +1267,7 @@ user_change_user_name_authorized_cb (Daemon *daemon,
37 accounts_user_get_uid (ACCOUNTS_USER (user)),
40 - argv[0] = "/usr/sbin/usermod";
41 + argv[0] = "@shadow@/bin/usermod";
45 @@ -1718,7 +1718,7 @@ user_set_password_expiration_policy_authorized_cb (Daemon *daemon
46 accounts_user_get_uid (ACCOUNTS_USER (user)));
48 g_object_freeze_notify (G_OBJECT (user));
49 - argv[0] = "/usr/bin/chage";
50 + argv[0] = "@shadow@/bin/chage";
52 argv[2] = pwd_expiration->min_days_between_changes;
54 @@ -1806,7 +1806,7 @@ user_set_user_expiration_policy_authorized_cb (Daemon *daemon,
56 expiration_time = g_strdup ("-1");
58 - argv[0] = "/usr/bin/chage";
59 + argv[0] = "@shadow@/bin/chage";
61 argv[2] = expiration_time;
62 argv[3] = accounts_user_get_user_name (ACCOUNTS_USER (user));
63 @@ -1919,7 +1919,7 @@ user_change_home_dir_authorized_cb (Daemon *daemon,
64 accounts_user_get_uid (ACCOUNTS_USER (user)),
67 - argv[0] = "/usr/sbin/usermod";
68 + argv[0] = "@shadow@/bin/usermod";
72 @@ -1977,7 +1977,7 @@ user_change_shell_authorized_cb (Daemon *daemon,
73 accounts_user_get_uid (ACCOUNTS_USER (user)),
76 - argv[0] = "/usr/sbin/usermod";
77 + argv[0] = "@shadow@/bin/usermod";
81 @@ -2120,7 +2120,7 @@ user_change_icon_file_authorized_cb (Daemon *daemon,
85 - argv[0] = "/bin/cat";
86 + argv[0] = "@coreutils@/bin/cat";
90 @@ -2201,7 +2201,7 @@ user_change_locked_authorized_cb (Daemon *daemon,
91 locked ? "locking" : "unlocking",
92 accounts_user_get_user_name (ACCOUNTS_USER (user)),
93 accounts_user_get_uid (ACCOUNTS_USER (user)));
94 - argv[0] = "/usr/sbin/usermod";
95 + argv[0] = "@shadow@/bin/usermod";
96 argv[1] = locked ? "-L" : "-U";
98 argv[3] = accounts_user_get_user_name (ACCOUNTS_USER (user));
99 @@ -2328,7 +2328,7 @@ user_change_account_type_authorized_cb (Daemon *daemon,
103 - argv[0] = "/usr/sbin/usermod";
104 + argv[0] = "@shadow@/bin/usermod";
108 @@ -2396,7 +2396,7 @@ user_change_password_mode_authorized_cb (Daemon *daemon,
110 if (mode == PASSWORD_MODE_SET_AT_LOGIN ||
111 mode == PASSWORD_MODE_NONE) {
112 - argv[0] = "/usr/bin/passwd";
113 + argv[0] = "/run/wrappers/bin/passwd";
116 argv[3] = accounts_user_get_user_name (ACCOUNTS_USER (user));
117 @@ -2408,7 +2408,7 @@ user_change_password_mode_authorized_cb (Daemon *daemon,
120 if (mode == PASSWORD_MODE_SET_AT_LOGIN) {
121 - argv[0] = "/usr/bin/chage";
122 + argv[0] = "@shadow@/bin/chage";
126 @@ -2428,7 +2428,7 @@ user_change_password_mode_authorized_cb (Daemon *daemon,
128 accounts_user_set_locked (ACCOUNTS_USER (user), FALSE);
129 } else if (accounts_user_get_locked (ACCOUNTS_USER (user))) {
130 - argv[0] = "/usr/sbin/usermod";
131 + argv[0] = "@shadow@/bin/usermod";
134 argv[3] = accounts_user_get_user_name (ACCOUNTS_USER (user));
135 @@ -2505,7 +2505,7 @@ user_change_password_authorized_cb (Daemon *daemon,
137 g_autoptr (GError) error = NULL;
138 g_autoptr (GSubprocess) process = NULL;
139 - const char *argv[] = { "/usr/sbin/chpasswd", "-e", NULL };
140 + const char *argv[] = { "@shadow@/bin/chpasswd", "-e", NULL };
143 "set password and hint of user '%s' (%" G_GUINT64_FORMAT ")",