[Python-Dev] Set program name through exec -a or environment variable (original) (raw)

Freddy Rietdijk freddyrietdijk at fridh.nl
Sat Mar 18 09:15:12 EDT 2017


Hi,

I would like to know if you're open to supporting exec -a or an environment variable for setting argv[0], and have some pointers as to where that should be implemented.

On Nixpkgs we typically use wrappers to set environment variables like PATH or PYTHONPATH for individual programs. Consider a program named prog. We move the original program prog to .prog-wrapped and then create a wrapper prog that does exec -a prog .prog-wrapped.

Unfortunately exec -a does not work with Python. The process is still named .prog-wrapped (although that's not really a problem) but worse, sys.argv[0] is also .prog-wrapped. Currently we inject some code in programs that sets `sys.argv=[0] = "prog" but this is fragile and I would prefer to get rid of this.

Kind regards,

Frederik -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.python.org/pipermail/python-dev/attachments/20170318/87a15dde/attachment.html>



More information about the Python-Dev mailing list