Maybe a bit offtopic, but...
If you want to set env variables, probably you also want to spawn
sub-process, and maybe read/write its output/input. Luachild [1]
module can do all of this for you, and nothing else. It is "Minimal"
code extracted from the Ex module of LuaDist. It uses setenv for
setting variables, or SetEnvironmentVariable on windows.
Moreover, there are some alternatives listed in the readme.
[1] https://github.com/pocomane/luachild - MIT license - Credit to the
original author, Mark Edgar.