On Wed, Dec 14, 2011 at 7:53 PM, Qadri <Muhammad.A.Qadri@gmail.com> wrote:
On Wed, Dec 14, 2011 at 5:24 PM, Evan Martin <martine@danga.com> wrote:
As a software developer, I am now getting contacted by users where my software doesn't work on Arch. I even applied a patch submitted by an Arch user to make my code use "python2" only to discover it broke my software on Mac and Windows.
To give an alternate to the already present "Code-correctness" answers, I might suggest A) contacting those distributing Windows and Mac binaries to include the appropriate support for python2, or B) Accept doing it wrong (sticking to python, not python2) and forcing Arch users to patch as needed. I might suggest B since Arch users likely won't be afraid to patch your program (or others' programs), and your program will probably be installed via the AUR using a PKGBUILD that patches it (hopefully well).
Thanks. Python is included on OS X, so I doubt A will work. B does seem to be my only option. (What you call "doing it wrong" is what I call "what everyone except Arch does".)
- Here's a project of mine where on AUR they've attempted to patch around the python/python2 thing in the PKGBUILD: http://aur.archlinux.org/packages/ni/ninja-git/PKGBUILD However, the patch is not sufficient, which lead to another bug report.
I don't do much python and I know nothing about your project specifically, but it seems to me like a find and sed. Something like find . -type f 'sed' '-e' '"1s/python[^23]/python2/"' '{}' \; But I could just be ignorant about some subtleties. Regardless, just give it time. Some Archer will either fix it eventually or complain so another Archer fixes it. Or suggest a better fix for your software yourself. The need to patch this one line should not make or break your software in terms of use. Though, again, I could just be spouting ignorance.
Yes, a find and a sed would probably fix the problem. (The existing AUR script fixes a compile-time dependency on python=python2, but doesn't fix the run-time one.) I just wanted to be certain that you all think the proper fix is for me to put in the docs something like "on Arch systems you need to do [x] before building", whether [x] is "get the PKGBUILD with the patch from AUR" or even "run the sed-python-with-python2.sh included in the distribution". It seems a little silly to me (breaking software mostly inconveniences users, and in this particular case doesn't gain you anything, as anyone who adds support for Python 3 could just as well make their shebang mention it while they're changing other things) but it's not my place to tell you what to do.