Closed kousu closed 1 year ago
it depends on what happens when you running manually smth like:
/usr/sbin/systemd-run --service-type=oneshot --pipe --wait --pty -p DynamicUser=yes -p CacheDirectory=pikaur -E HOME=/tmp -p WorkingDirectory=/var/cache/pikaur/build/firefox-clearurls makepkg --force
it's either wrong args of systemd used by pikaur or some bug in systemd. if you have any suggestions feel free to investigate further - i'm not using dynamic users myself
Description:
If I edit
~/.config/pikaur.conf
to set[build].alwaysusedynamicusers = yes
, or runpikaur
as root (which forces that setting on), then builds using build deps outside ofPATH=/usr/local/sbin:/usr/local/bin:/usr/bin
fail.Attached log:
If I run it as my normal user with that setting turned on it behaves the same:
But with that setting off, as my normal user, the build succeeds:
The problem is that
strip-nondetermism
is/usr/bin/vendor_perl/strip-nondeterminism
, in a folder added to my PATH by/etc/profile.d/perlbin.sh
, but DynamicUsers ignores that and just setsPATH=/usr/local/sbin:/usr/local/bin:/usr/bin
.I can't tell who needs to change here. Should all packages using unusual paths like that start adding the full path to those tools? But they build fine with
yay
andyaourt
, so they aren't going to be super motivated to do that. Should systemd change so it loads /etc/profile even in DynamicUsers? Shouldpikaur
add a--preserve-env
likesudo
has?Thanks for your time! Hope you're having a good season.