From: nikstur Date: Tue, 10 Feb 2026 11:53:40 +0000 (+0100) Subject: meson: read more progs from PATH X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5b193a8e233fecd6af00d5aa6a781a5ef3dd8571;p=thirdparty%2Fsystemd.git meson: read more progs from PATH Find more progs on PATH instead of hardcoding them. --- diff --git a/meson.build b/meson.build index f562754c19b..ee96fcb21f7 100644 --- a/meson.build +++ b/meson.build @@ -256,7 +256,6 @@ conf.set_quoted('KERNEL_INSTALL_DIR', kernelinstalldir) conf.set_quoted('MODPROBE_DIR', modprobedir) conf.set_quoted('MODULESLOAD_DIR', modulesloaddir) conf.set_quoted('PKGSYSCONFDIR', pkgsysconfdir) -conf.set_quoted('POLKIT_AGENT_BINARY_PATH', bindir / 'pkttyagent') conf.set_quoted('POLKIT_RULES_DIR', polkitrulesdir) conf.set_quoted('PREFIX', prefixdir) conf.set_quoted('PREFIX_NOSLASH', prefixdir_noslash) diff --git a/src/journal/cat.c b/src/journal/cat.c index d1f4db80308..76d36fce7e4 100644 --- a/src/journal/cat.c +++ b/src/journal/cat.c @@ -158,7 +158,7 @@ static int run(int argc, char *argv[]) { return log_error_errno(r, "Failed to rearrange stdout/stderr: %m"); if (argc <= optind) - (void) execl("/bin/cat", "/bin/cat", NULL); + (void) execlp("cat", "cat", NULL); else { struct stat st; diff --git a/src/nspawn/nspawn-setuid.c b/src/nspawn/nspawn-setuid.c index 1c167ebc029..d2db37b4387 100644 --- a/src/nspawn/nspawn-setuid.c +++ b/src/nspawn/nspawn-setuid.c @@ -38,8 +38,7 @@ static int spawn_getent(const char *database, const char *key, PidRef *ret) { return r; } if (r == 0) { - execle("/usr/bin/getent", "getent", database, key, NULL, &(char*[1]){}); - execle("/bin/getent", "getent", database, key, NULL, &(char*[1]){}); + execlp("getent", "getent", database, key, NULL); _exit(EXIT_FAILURE); } diff --git a/src/shared/polkit-agent.c b/src/shared/polkit-agent.c index 5b4e5db819e..0718c72ac43 100644 --- a/src/shared/polkit-agent.c +++ b/src/shared/polkit-agent.c @@ -3,11 +3,13 @@ #include #include +#include "alloc-util.h" #include "bus-util.h" #include "exec-util.h" #include "fd-util.h" #include "io-util.h" #include "log.h" +#include "path-util.h" #include "pidref.h" #include "polkit-agent.h" #include "stdio-util.h" @@ -31,6 +33,15 @@ int polkit_agent_open(void) { if (r <= 0) return r; + _cleanup_free_ char *pkttyagent = NULL; + r = find_executable("pkttyagent", &pkttyagent); + if (r == -ENOENT) { + log_debug("pkttyagent binary not available, ignoring."); + return 0; + } + if (r < 0) + return log_error_errno(r, "Failed to determine whether pkttyagent binary exists: %m"); + if (pipe2(pipe_fd, 0) < 0) return -errno; @@ -40,7 +51,7 @@ int polkit_agent_open(void) { &pipe_fd[1], 1, &agent_pidref, - POLKIT_AGENT_BINARY_PATH, + pkttyagent, "--notify-fd", notify_fd, "--fallback"); if (r < 0) diff --git a/units/ldconfig.service b/units/ldconfig.service index 404fa011d5a..8199416b162 100644 --- a/units/ldconfig.service +++ b/units/ldconfig.service @@ -25,4 +25,4 @@ Before=shutdown.target initrd-switch-root.target [Service] Type=oneshot RemainAfterExit=yes -ExecStart=/sbin/ldconfig -X +ExecStart=ldconfig -X diff --git a/units/modprobe@.service b/units/modprobe@.service index b099b90ebab..58b911d0a3a 100644 --- a/units/modprobe@.service +++ b/units/modprobe@.service @@ -32,4 +32,4 @@ StartLimitIntervalSec=0 [Service] Type=oneshot -ExecStart=-/sbin/modprobe -abq %i +ExecStart=-modprobe -abq %i