-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 14/12/11 19:24, Evan Martin wrote:
Hello,
I'm a recent Arch user, a refugee from Ubuntu. I was attracted to Arch because I was tired of Ubuntu forcing their new software on me -- it seemed the Arch way was to allow you to use bleeding edge if you wanted it, but to not fork upstream.
So it was with some surprise that I discovered that Arch made /usr/bin/python point to something other than Python 2. This differs from every other system (not only other Linuxes, but also [as I learned from bug reports I received] OS X and even python.exe on Windows).
Hi Evan, Welcome to Arch Linux, I don't know why many Ubuntu users are coming here just directly, makes me wonder what we can be a "solution" for "problems" for Ubuntu users.
I appreciate that y'all want to use the bleeding edge, and it completely consistent with my understanding of Arch that you would only provide Python 3 by default as well as write your system scripts use Python 3. (I write this mail with some trepidation as I fear a response like "STFU noob Arch is bleeding edge", which is emphatically not a response to the issue I'm actually raising.)
Well in the FOSS World that kind of responses are known, but your mail seems decent to reply you that.
What I don't understand is why you're manually patching upstream software to rewrite references from /usr/bin/python to /usr/bin/python2. This sort of forking is exactly the sort of divergence (like how Ubuntu modified their GTK to add their own specific hooks) that I was fleeing from when I came to Arch. :( You can see in the references below that it appears this is contrary to how upstream thinks it should work.
Not necessary, you will see some people posting you some pep links about python and pytho3
It means that I can't download any random project (such as Chromium) and build it without first applying Arch-specific patches. And upstreams like Chromium can't change to support Arch's divergence without breaking their code on non-Arch systems.
There are some apps that you will have to patch in order to work with any distro non-specified by them, I can remember patching oracle-xe like 4 or 6 years ago, cheating the installer with some Red Hat path in order to install. That is not our fault obviously.
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.
So my questions for you are
1) Is it intentional that I am unable to use software from upstream like Django unmodified? Am I expected to only install software from the Arch repositories, where it has been patched by Arch devs to work on Arch? (See below for more on Django.)
As a python developer i wonder why you don't use virtualenv [1]? virtualenv will solve you many problems, not only in Arch, for your development work with out-of-date or too updated python and libraries, after do the hello world, and run the pep8 the next step for a python developer should be to use virtualenv, in order to have best practices.
2) Should I change the software I write to attempt to detect when I'm on an Arch system and adjust scripts/etc. accordingly? (I can't just "fix it" because there is no /usr/bin/python2 on existing systems like Macs.)
Again use virtualenvs [1] for your python development [1] http://pypi.python.org/pypi/virtualenv - -- Angel Velásquez angvp @ irc.freenode.net Arch Linux Developer / Trusted User Linux Counter: #359909 http://www.angvp.com -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iQEcBAEBAgAGBQJO6X4pAAoJEEKh2xXsEzutHVcH/iO1wrXDb+SBJbJvc21pb6Zy 3VjEwps9aKpJknesLB6cR6S5TlBWpU+XgJMvPQXIObduN4Ejj3/8N1xbMmktCwZC YqzFMI1kXrchyUrSztN5tm8LhDf19ZgaazJziiqoc/uw4BxueT0FEQTO3LEK3cLy NUhCKl4Tvt2sDPcizAGh8FDDgsoSGs2jpEyWQ+MI+5cOpXj5Ry0TE1EZQuznCV+k PaN/bnDrItTQnay+bV/RB6yDdn34zGCjAnx3+bgd7fN8XdfpIyPCuu9WDjlRIq2J fvzXgqhjRP3O6lblBwoCGi1lV0mMav5q7PLsalz5g+6UOdXLYKnKOw6cfvamGfY= =aohR -----END PGP SIGNATURE-----