Due to an influx of spam, we have had to temporarily disable account registrations. Please write an email to accountsupport@archlinux.org, with your desired username, if you want to get access. Sorry for the inconvenience.
sudo: sorry, you are not allowed to set the following environment variables
<heftig> i can't use makechrootpkg on build.archlinux.org anymore<heftig> makechrootpkg -r /var/lib/archbuild/extra-x86_64<heftig> sudo: sorry, you are not allowed to set the following environment variables: BUILDTOOL, BUILDTOOLVER<heftig> i don't think BUILDTOOL and BUILDTOOLVER should be passed to check_root<heftig> they'll get reset when the tool gets reexecuted, anyway
This is true, but mostly just because there isn't really a difference with the current implementation for BUILDTOOL as we forcefully set it via common.sh. Theoretically it may be set conditionally in the future to allow wrapper overrides.
All the env variables that may be passed along can lead to this error, if you start exporting used variables like GNUPGHOME,SRCDEST,SRCPKGDEST,PKGDEST,LOGDEST etc you will face the same issue. Otherwise, when not checking, they are unexpectedly overwritten (not preserved).
If you want to run makechrootpkg like this from a sudoers context, one needs to preserve the env variables that are implemented as a feature in the sudoers file via env_keep+=
If you want to run makechrootpkg like this from a sudoers context, one needs to preserve the env variables that are implemented as a feature in the sudoers file via env_keep+=
But if you don't set any environment variables, you shouldn't need to modify sudoers, either.
Theoretically it may be set conditionally in the future to allow wrapper overrides.
Can't we remove them from preservation now? We can still preserve them when that future happens. That the tool now sets its own variables it expects to get preserved needlessly makes this a regression.
We should rather adjust BUILDTOOL to be set conditionally instead of
force overwrite as we would need that anyway if we support downstream
tooling overrides. This environment variable would be set by default
similar to how SOURCE_DATE_EPOCH is set by default in archbuild and also
handled by our infrastructure deployment exactly out of the same reason:
Does not seem to generate buildtool = itsover and buildtoolver = 9000 in .BUILDINFO? archbuild does not pass BUILDTOOL and BUILDTOOLVER via check_root, so I need to use sudo BUILDTOOL=itsover BUILDTOOLVER=9000 extra-x86_64-build.
It works in combination with sudo's env_keep. We can probably add it to the check_root call so it errors out without BUILDTOOL{,VER} in env_keep instead of being ignored.