Description of problem: I am installing pyobjc using easy_install so I can use webkit2png (search it on Google) How to produce: - Open terminal - Change to root permission using 'su' - 'easy_install -U pyobjc' Version-Release number of selected component: python-setuptools-0.6.36-1.fc19 Additional info: reporter: libreport-2.1.9 cmdline: /usr/bin/python /usr/bin/easy_install -U pyobjc dso_list: python-libs-2.7.5-8.fc19.x86_64 executable: /usr/bin/easy_install kernel: 3.11.7-200.fc19.x86_64 runlevel: N 5 type: Python uid: 0 Truncated backtrace: #1 <module> in setup.py:90 #2 <lambda> in /usr/lib/python2.7/site-packages/setuptools/sandbox.py:35 #3 run in /usr/lib/python2.7/site-packages/setuptools/sandbox.py:81 #4 run_setup in /usr/lib/python2.7/site-packages/setuptools/sandbox.py:33 #5 run_setup in /usr/lib/python2.7/site-packages/setuptools/command/easy_install.py:1093 #6 build_and_install in /usr/lib/python2.7/site-packages/setuptools/command/easy_install.py:1107 #7 install_eggs in /usr/lib/python2.7/site-packages/setuptools/command/easy_install.py:827 #8 install_item in /usr/lib/python2.7/site-packages/setuptools/command/easy_install.py:632 #9 easy_install in /usr/lib/python2.7/site-packages/setuptools/command/easy_install.py:602 #10 run in /usr/lib/python2.7/site-packages/setuptools/command/easy_install.py:358
Created attachment 826512 [details] File: backtrace
Created attachment 826513 [details] File: environ
This is a bug in pyobjc. # /usr/bin/easy_install -U pyobjc Searching for pyobjc Reading http://pypi.python.org/simple/pyobjc/ Best match: pyobjc 2.5.1 Downloading https://pypi.python.org/packages/source/p/pyobjc/pyobjc-2.5.1.tar.gz#md5=f242cff4a25ce397bb381c21a35db885 Processing pyobjc-2.5.1.tar.gz Writing /tmp/easy_install-Tg8Zyu/pyobjc-2.5.1/setup.cfg Running pyobjc-2.5.1/setup.py -q bdist_egg --dist-dir /tmp/easy_install-Tg8Zyu/pyobjc-2.5.1/egg-dist-tmp-zti4aw Traceback (most recent call last): File "/usr/bin/easy_install", line 9, in <module> load_entry_point('distribute==0.6.36', 'console_scripts', 'easy_install')() File "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 1941, in main with_ei_usage(lambda: File "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 1922, in with_ei_usage return f() File "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 1945, in <lambda> distclass=DistributionWithoutHelpCommands, **kw File "/usr/lib64/python2.7/distutils/core.py", line 152, in setup dist.run_commands() File "/usr/lib64/python2.7/distutils/dist.py", line 953, in run_commands self.run_command(cmd) File "/usr/lib64/python2.7/distutils/dist.py", line 972, in run_command cmd_obj.run() File "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 358, in run self.easy_install(spec, not self.no_deps) File "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 602, in easy_install return self.install_item(spec, dist.location, tmpdir, deps) File "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 632, in install_item dists = self.install_eggs(spec, download, tmpdir) File "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 827, in install_eggs return self.build_and_install(setup_script, setup_base) File "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 1107, in build_and_install self.run_setup(setup_script, setup_base, args) File "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 1093, in run_setup run_setup(setup_script, args) File "/usr/lib/python2.7/site-packages/setuptools/sandbox.py", line 33, in run_setup lambda: execfile( File "/usr/lib/python2.7/site-packages/setuptools/sandbox.py", line 81, in run return func() File "/usr/lib/python2.7/site-packages/setuptools/sandbox.py", line 35, in <lambda> {'__file__':setup_script, '__name__':'__main__'} File "setup.py", line 90, in <module> ValueError: invalid literal for int() with base 10: '' The error is coming from pyobjc's setup.py, line 90. What's happening there is: import platform rel = tuple(map(int, platform.mac_ver()[0].split('.')[:2])) mac_ver() attempts to retrieve the MacOS version of the OS. Since Linux is not MacOS, this is returning invalid data. That line in pyobjc's setup.py is non-portable. they need to fix it.