[Nix-dev] Python bindings to librsvg or gnome-desktop
Alexander Foremny
alexanderforemny at googlemail.com
Tue Jun 19 10:51:07 CEST 2012
Hello,
I am trying to create a Nix expression for solfege [1] and got it
building fine using the Nix expression available as Gist [2].
However, running the application fails with the following error,
cryptographic hashes replaced by dots.
> Traceback (most recent call last):
> File "/nix/store/...-solfege-3.20.4/share/solfege/solfege/startup.py", line 159, in start_gui
> solfege.win = w = MainWin(options, datadir)
> File "/nix/store/...-solfege-3.20.4/share/solfege/solfege/mainwin.py", line 119, in __init__
> stock.SolfegeIconFactory(self, datadir)
> File "/nix/store/...-solfege-3.20.4/share/solfege/solfege/stock.py", line 71, in __init__
> self.add_icons(d)
> File "/nix/store/...-solfege-3.20.4/share/solfege/solfege/stock.py", line 33, in add_icons
> iconset = gtk.IconSet(gtk.gdk.pixbuf_new_from_file(os.path.join(self.datadir, filename)))
> glib.GError: Couldn't recognize the image file format for file '/nix/store/..-solfege-3.20.4/share/solfege/graphics/solfege.svg'
This issue has been addressed [3] and appears to be an issue not
caused by solfege but by a missing python dependency [4]. It is solved
by making solfege depend on python-rsvg. However, I cannot find this
package in Nixpkgs. Further research revealed that this binding is now
part of the Python bindings to Gnome [5]. As observable in the current
NIx expression I added the dependency gnome_python hoping this would
solve the problem. However, it does not.
Is it correct that gnome_python are the Python bindings to Gnome
Desktop which should contain pyrsvg? If not, is pyrsvg already
packaged? If not, where can I find the sources of python-gnome-desktop
and where would be a good place to place a Nix expression for this?
Or could it be the case that this functionality should be supplied by
pygtk, but this (optional?) feature is disabled due to missing
dependencies?
Since I am already at it, why are some packages referenced by
pythonPackages.{package} and some solely by {package}? For instance,
the python sqlite3 module appears to be pythonPackages.sqlite3 whereas
python bindings to GTK+ are not available as pythonPackages.gtk or
pythonPackages.pygtk but as pygtk.
When creating a Nix expression that depends on python packages, Is it
more desirable to depend on pythonPackages or the inherit the
pythonPackages.* subpackages as necessary?
Regards,
Alexander Foremny
[1] http://solfege.org
[2] https://gist.github.com/2953069
[3] http://code.google.com/p/solfege/issues/detail?id=255
[4] https://bugs.launchpad.net/ubuntu/+source/solfege/+bug/1004485
[5] http://www.rittau.org/blog/20060418-00
More information about the nix-dev
mailing list