#15640 (Bug) launch of 0install’d DisplayCAL 3.7x fails on linux/64, @ “NameError: name ‘execfile’ is not defined”

+1 0

Closed as Fixed
Component: DisplayCAL
Created by PGNd

Last modified


On linux64, I've 0install'd displaycal:
` which 0install
/usr/bin/0install
rpm -q --whatprovides `which 0install`
zeroinstall-injector-2.3.3-lp150.1.6.noarch
0install -V
0install (zero-install) 2.3.3
0install list
http://dispcalgui.hoech.net/0install/numpy.xml
http://dispcalgui.hoech.net/0install/pygame.xml
http://dispcalgui.hoech.net/0install/python.xml
http://dispcalgui.hoech.net/0install/wxpython.xml
http://displaycal.net/0install/DisplayCAL-linux.xml
http://displaycal.net/0install/DisplayCAL.xml
http://displaycal.net/0install/SDL.xml
http://displaycal.net/0install/enum34.xml
http://displaycal.net/0install/netifaces.xml
http://displaycal.net/0install/protobuf.xml
http://displaycal.net/0install/pychromecast.xml
http://displaycal.net/0install/requests.xml
http://displaycal.net/0install/six.xml
http://displaycal.net/0install/zeroconf.xml
rpm -qa | Grep -i argyll
argyllcms-1.9.2-lp150.47.1.x86_64

locate -i displaycal dispcal
/home/pgnd/.cache/0install.net/injector/last-check-attempt/distribution:http:##dispcalgui.hoech.net#0install#numpy.xml
/home/pgnd/.cache/0install.net/injector/last-check-attempt/distribution:http:##dispcalgui.hoech.net#0install#pygame.xml
/home/pgnd/.cache/0install.net/injector/last-check-attempt/distribution:http:##dispcalgui.hoech.net#0install#python.xml
/home/pgnd/.cache/0install.net/injector/last-check-attempt/distribution:http:##dispcalgui.hoech.net#0install#wxpython.xml
/home/pgnd/.cache/0install.net/injector/last-check-attempt/distribution:http:##displaycal.net#0install#SDL.xml
/home/pgnd/.cache/0install.net/injector/last-check-attempt/distribution:http:##displaycal.net#0install#enum34.xml
/home/pgnd/.cache/0install.net/injector/last-check-attempt/distribution:http:##displaycal.net#0install#netifaces.xml
/home/pgnd/.cache/0install.net/injector/last-check-attempt/distribution:http:##displaycal.net#0install#pychromecast.xml
/home/pgnd/.cache/0install.net/injector/last-check-attempt/distribution:http:##displaycal.net#0install#requests.xml
/home/pgnd/.cache/0install.net/injector/last-check-attempt/distribution:http:##displaycal.net#0install#six.xml
/home/pgnd/.cache/0install.net/injector/last-check-attempt/distribution:http:##displaycal.net#0install#zeroconf.xml
/home/pgnd/.cache/0install.net/injector/last-check-attempt/http:##dispcalgui.hoech.net#0install#numpy.xml
/home/pgnd/.cache/0install.net/injector/last-check-attempt/http:##dispcalgui.hoech.net#0install#pygame.xml
/home/pgnd/.cache/0install.net/injector/last-check-attempt/http:##dispcalgui.hoech.net#0install#python.xml
/home/pgnd/.cache/0install.net/injector/last-check-attempt/http:##dispcalgui.hoech.net#0install#wxpython.xml
/home/pgnd/.cache/0install.net/injector/last-check-attempt/http:##displaycal.net#0install#DisplayCAL-linux.xml
/home/pgnd/.cache/0install.net/injector/last-check-attempt/http:##displaycal.net#0install#DisplayCAL.xml
/home/pgnd/.cache/0install.net/injector/last-check-attempt/http:##displaycal.net#0install#SDL.xml
/home/pgnd/.cache/0install.net/injector/last-check-attempt/http:##displaycal.net#0install#enum34.xml
/home/pgnd/.cache/0install.net/injector/last-check-attempt/http:##displaycal.net#0install#netifaces.xml
/home/pgnd/.cache/0install.net/injector/last-check-attempt/http:##displaycal.net#0install#protobuf.xml
/home/pgnd/.cache/0install.net/injector/last-check-attempt/http:##displaycal.net#0install#pychromecast.xml
/home/pgnd/.cache/0install.net/injector/last-check-attempt/http:##displaycal.net#0install#requests.xml
/home/pgnd/.cache/0install.net/injector/last-check-attempt/http:##displaycal.net#0install#six.xml
/home/pgnd/.cache/0install.net/injector/last-check-attempt/http:##displaycal.net#0install#zeroconf.xml
/home/pgnd/.cache/0install.net/interface_icons/http%3a%2f%2fdispcalgui.hoech.net%2f0install%2fpython.xml
/home/pgnd/.cache/0install.net/interface_icons/http%3a%2f%2fdisplaycal.net%2f0install%2fDisplayCAL.xml
/home/pgnd/.cache/0install.net/interfaces/http%3a%2f%2fdispcalgui.hoech.net%2f0install%2fnumpy.xml
/home/pgnd/.cache/0install.net/interfaces/http%3a%2f%2fdispcalgui.hoech.net%2f0install%2fpygame.xml
/home/pgnd/.cache/0install.net/interfaces/http%3a%2f%2fdispcalgui.hoech.net%2f0install%2fpython.xml
/home/pgnd/.cache/0install.net/interfaces/http%3a%2f%2fdispcalgui.hoech.net%2f0install%2fwxpython.xml
/home/pgnd/.cache/0install.net/interfaces/http%3a%2f%2fdisplaycal.net%2f0install%2fDisplayCAL-linux.xml
/home/pgnd/.cache/0install.net/interfaces/http%3a%2f%2fdisplaycal.net%2f0install%2fDisplayCAL.xml
/home/pgnd/.cache/0install.net/interfaces/http%3a%2f%2fdisplaycal.net%2f0install%2fSDL.xml
/home/pgnd/.cache/0install.net/interfaces/http%3a%2f%2fdisplaycal.net%2f0install%2fenum34.xml
/home/pgnd/.cache/0install.net/interfaces/http%3a%2f%2fdisplaycal.net%2f0install%2fnetifaces.xml
/home/pgnd/.cache/0install.net/interfaces/http%3a%2f%2fdisplaycal.net%2f0install%2fprotobuf.xml
/home/pgnd/.cache/0install.net/interfaces/http%3a%2f%2fdisplaycal.net%2f0install%2fpychromecast.xml
/home/pgnd/.cache/0install.net/interfaces/http%3a%2f%2fdisplaycal.net%2f0install%2frequests.xml
/home/pgnd/.cache/0install.net/interfaces/http%3a%2f%2fdisplaycal.net%2f0install%2fsix.xml
/home/pgnd/.cache/0install.net/interfaces/http%3a%2f%2fdisplaycal.net%2f0install%2fzeroconf.xml
/home/pgnd/.config/0install.net/injector/feeds/http:##dispcalgui.hoech.net#0install#numpy.xml
/home/pgnd/.config/0install.net/injector/feeds/http:##dispcalgui.hoech.net#0install#pygame.xml
/home/pgnd/.config/0install.net/injector/feeds/http:##dispcalgui.hoech.net#0install#python.xml
/home/pgnd/.config/0install.net/injector/feeds/http:##dispcalgui.hoech.net#0install#wxpython.xml
/home/pgnd/.config/0install.net/injector/feeds/http:##displaycal.net#0install#DisplayCAL-linux.xml
/home/pgnd/.config/0install.net/injector/feeds/http:##displaycal.net#0install#DisplayCAL.xml
/home/pgnd/.config/0install.net/injector/feeds/http:##displaycal.net#0install#SDL.xml
/home/pgnd/.config/0install.net/injector/feeds/http:##displaycal.net#0install#enum34.xml
/home/pgnd/.config/0install.net/injector/feeds/http:##displaycal.net#0install#netifaces.xml
/home/pgnd/.config/0install.net/injector/feeds/http:##displaycal.net#0install#protobuf.xml
/home/pgnd/.config/0install.net/injector/feeds/http:##displaycal.net#0install#pychromecast.xml
/home/pgnd/.config/0install.net/injector/feeds/http:##displaycal.net#0install#requests.xml
/home/pgnd/.config/0install.net/injector/feeds/http:##displaycal.net#0install#six.xml
/home/pgnd/.config/0install.net/injector/feeds/http:##displaycal.net#0install#zeroconf.xml
/home/pgnd/.gnome/apps/zeroinstall-displaycal.desktop
/home/pgnd/.local/share/applications/zeroinstall-displaycal.desktop`

If I launch 0install, I see

https://i.imgur.com/cyQsQw4.png

If I click 'run', simply nothing happens.

DisplayCAL does not launch.

There's no related log output in journalctl, or /var/log/messages.

If I manually

` sudo rm -rf /home/pgnd/.cache/0install.net
0launch -- http://displaycal.net/0install/DisplayCAL.xml

Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.
WARNING:0install:Can't parse distribution version 'B.02.18+git.20190104-lp150.23.2' for package 'lshw'
WARNING:0install:Can't parse distribution version 'B.8.8-lp150.1.12' for package 'saxon8'
WARNING:0install:Can't parse distribution version 'A0.99-lp150.112.4' for package 'as10k1'`

I see this

https://i.imgur.com/vPeohKX.png

If I click "Run", nothing launches, and in console only:

` Traceback (most recent call last):
File "/home/pgnd/.cache/0install.net/implementations/sha1new=c25a172dbd2e5063a350bf11accf2efc655746aa/DisplayCAL.pyw", line 6, in
execfile(os.path.join(os.path.dirname(__file__), "scripts",
NameError: name 'execfile' is not defined`


12 thoughts on “launch of 0install’d DisplayCAL 3.7x fails on linux/64, @ “NameError: name ‘execfile’ is not defined””

  1. It seems 0install is not working correctly on your system. Also, it seems your system may have symlinked python 3.x to 2.x – that is a big no-no since the two are not compatible (python 3.x has no execfile, thus the error message). You need a true python 2.7 install.

  2. `cat /usr/bin/displaycal
    #!/usr/bin/python`

    That’s not the shebang that is used in the official sources – it has been python2 since the very beginning, since it cannot be guaranteed that `python` links to `python2` on any given system. What distribution are you using? Where did the RPMs you installed originate?

  3. (any ideas why I can’t manage to paste here?  no other site I use has any issues … )

    Interesting.  The rpm’s come from here: https://is.gd/mlVTGm

    Wouldn’t be the 1st time I’ve seen sloppy version mgmt.  Need to stare at that a bit …

    Not yet clear to me, then, why the 0install’d version has the issue … unless it *does* reference just ‘python’ …. somewhere.

  4. (any ideas why I can’t manage to paste here?  no other site I use has any issues … )

    What do you mean by “paste”? Ctrl+V? Works for me atleast (I don’t think this is site-related)

    Interesting.  The rpm’s come from here: https://is.gd/mlVTGm

    Hmm. So something in the build process at opensuse overwrites the good shebang from source with a bad one? That’s certainly unexpected. I’ll have to investigate.

  5. By ‘paste’ I mean -> create/edit my reply in any external text editor, copy text to clipboard, and paste it into THIS editor — by any means.  NONE of the usual always-works-elsewhere keycmd, mouse-cmd, menu-cmd or drag-n-drop works “in here”.  Simply, nothing gets pasted.  Same behavior in either Firefox or Chrome.

    May be related (?), that by ‘code block’ formatting (above) doesn’t seem to work, either … ( any Markdown support option? )

    As for the shebang — let me know if you need add’l info from an Opensuse-based system here.

  6. By ‘paste’ I mean -> create/edit my reply in any external text editor, copy text to clipboard, and paste it into THIS editor — by any means.

    May be related (?), that by ‘code block’ formatting (above) doesn’t seem to work, either … ( any Markdown support option? )

    Both work fine for me (any browser/any system), so it’s likely something related to your specific system. This site does not use any custom keyboard shortcuts, so maybe an extension you’re using is messing things up?

  7. Not an extension — both Firefox & Chrome in ‘vanilla’ installs have the same behavior.

    And it’s the case from multiple machines here — although all same OS, and likely _similarly_ configured, in not exactly.

    So, sure — *could* be unique to my system.  Odd that it’d be unique to my system AND this site.  Pastebin’s good enuf as an occassional workaround here!

  8. The problem at https://build.opensuse.org/package/show/multimedia:color_management/DisplayCAL should be fixed, I’m now overriding the RPM macro for the system python by explicitly hard-coding it to python2. This means the shebang is still overridden, but atleast with something sane.

    The 0install problem is probably related to 0install itself, it should select python2 because that’s what’s specified in the dependencies in http://displaycal.net/0install/DisplayCAL-linux.xml, but maybe the satsolver fails in this specific instance. Anyway, I doubt I can do anything in that case.

  9. Actually, I may have spoken too soon – I can influence what the satsolver picks more than I thought. You have to “refresh all now” on the ZeroInstall window (once) before clicking “run” so it’ll download the newest version of the python XML feed.

  10. Verifying that for a clean pkg-install from distro repo, the shebang in /usr/bin/displaycal points, now, to: /usr/bin/python2

    And, as expected, DisplayCAL now launches without error.  Calibrating now …

Leave a Reply