[arch-general] shebang for python scripts

Allan McRae allan at archlinux.org
Mon Apr 16 02:59:22 EDT 2012


On 16/04/12 16:41, Ralf Schmitt wrote:
> Martti Kühne <mysatyre at gmail.com> writes:
> 
>> On Mon, Apr 16, 2012 at 12:25:39AM +0200, Ralf Schmitt wrote:
>>>
>>> that's what I think. upstream in this case is archlinux.
>> no. [1] is upstream.
> 
> ok. I have something like 20 broken shebangs in /usr/bin. I won't
> contact the authors of those packages but just fix them locally instead
> if archlinux ships them this way. I still think archlinux should fix
> that.
> 
>>
>>>
>>> distutils installs executable scripts with the full path to the python
>>> interpreter. 
>> no again.
> 
> sure it does.
> 
>>
>> meld's source package is built with make, see [2]. not with distutils.
>> at least, that's how the meld devs tell you to install it in their INSTALL
>> file.
>>
>> archlinux is indeed modifying the shebang because they/we use python3
>> as default python. the source package contains the line
>> "#! /usr/bin/env python", which arch has no further reason to modify.
>>
>> so, if we now have sorted everything out correctly, you best ask the meld devs
>> why they do it this way. oh and here's a list of python scripts in my /usr/bin
>> who's devs would also have to update their shebangs. [3]
> 
> that's just ridiculous. Just because upstream ships broken packages,
> archlinux doesn't have to ship them in the same broken way.
> 


I'd consider using "#!/usr/bin/evn python" over "#!/usr/bin/python" a
feature and not a bug as it allows me to put a local version of python
earlier in my path to test bugfixes etc.  So I would actually vote to
switch all the #! to using /usr/bin/env...

Allan


More information about the arch-general mailing list