Order it now! Amazon prioritizes orders on a first come, first served basis.


View Full Version : Calibre won't start: Linux


JeffElkins
08-29-2008, 11:01 AM
Running from the command line I get: Couldn't resolve property: linearGradient5167 - AFAIK I'm running the most current version, my linux is Kubuntu 8.04.

kovidgoyal
08-29-2008, 11:21 AM
How did you install calibre?

JeffElkins
08-29-2008, 11:31 AM
How did you install calibre?

Via the directions on your web site:


sudo apt-get install python-setuptools python-imaging libqt4-core libqt4-gui \
python-qt4 python-mechanize imagemagick \
xdg-utils python-dbus python-lxml help2man
sudo easy_install -U calibre
sudo calibre_postinstall

kovidgoyal
08-29-2008, 11:34 AM
there are actually several sets of directions :)

Well the linearGradient maessage is just a warning about a malformed SVG file and can be ignored. When you launch calibre is there any CPU/disk activity ?

Can you run calibre-debug and other command line tools?

JeffElkins
08-29-2008, 11:41 AM
there are actually several sets of directions :)

Well the linearGradient maessage is just a warning about a malformed SVG file and can be ignored. When you launch calibre is there any CPU/disk activity ?

Can you run calibre-debug and other command line tools?


Traceback (most recent call last):
File "/usr/bin/calibre-debug", line 8, in <module>
load_entry_point('calibre==0.4.83', 'console_scripts', 'calibre-debug')()
File "build/bdist.linux-i686/egg/calibre/debug.py", line 58, in main
ImportError: No module named IPython.Shell


The console tools seem to run fine and calibre itself was running fine as of yesterday. I did have a power failure that rebooted my network, but nothing else was effected.

btw: .calibre_calibre GUI.lock is created.

kovidgoyal
08-29-2008, 12:08 PM
install ipython as well

JeffElkins
08-29-2008, 12:13 PM
install ipython as well

I did so. running calibre-debug now drops me to a debug console.


In [1]:

kovidgoyal
08-29-2008, 12:20 PM
What does

calibre-debug -c "from calibre.gui2.main import main; main()"


do?

JeffElkins
08-29-2008, 12:35 PM
What does

calibre-debug -c "from calibre.gui2.main import main; main()"


do?

Nothing. I see the
"Couldn't resolve property: linearGradient5167" message, but calibre never starts. I gave it about 5 minutes. Top doesn't reveal anything especially interesting. Just for chuckles I did a calibre reinstall w/o effect.

kovidgoyal
08-29-2008, 01:21 PM
Hmm weird. Uninstall calibre and try the binary install.

JeffElkins
08-29-2008, 01:27 PM
Hmm weird. Uninstall calibre and try the binary install.

Well, I'm not thrilled with that answer (installation via the command line is so durn convenient) but I'll do it. what's the uninstall procedure for a easy_install installation?

JeffElkins
08-29-2008, 01:59 PM
Never mind, it's sorted out. After about 15 minutes, calibre returned the message "sqlite3.OperationalError: database is locked" My database in ~/library1.db is a symlink to the 'real' db on an nfs volume. Apparently my power failure left a lock file existing somewhere that I need to find and nuke. I copied the actual library1.db file to my home directory and calibre started fine.

kovidgoyal
08-29-2008, 03:15 PM
Well, I'm not thrilled with that answer (installation via the command line is so durn convenient) but I'll do it. what's the uninstall procedure for a easy_install installation?

The other installation method is also via the commandline :)

JeffElkins
08-29-2008, 03:34 PM
The other installation method is also via the commandline :)

Well, yes :)


sudo python -c "import urllib2; exec urllib2.urlopen('http://calibre.kovidgoyal.net/download_linux_binary_installer').read(); main()"
is command line , but


sudo easy_install -U calibre
sudo calibre_postinstall


after checking for new dependencies is very convenient. I keep it in a /usr/local/bin/ script for easy upgrades. Anyway, this sqlite locked database is a real bore. Apparently, sqlite uses fcntl() to lock databases and nfs has problems with this. The database remains locked no matter what I do. I have been able to copy it so another location and access it, so my data is safe, but when calibre attempts to access it from it's original location on the nfs drive it's no go.

kovidgoyal
08-29-2008, 05:25 PM
yeah nfs and sqlite dont go well together. You can change the location calibre looks for the database file by editing calibre2.ini

JeffElkins
08-30-2008, 11:01 AM
yeah nfs and sqlite dont go well together. You can change the location calibre looks for the database file by editing calibre2.ini


Couldn't resolve property: linearGradient5167
Traceback (most recent call last):
File "/usr/bin/calibre", line 8, in <module>
load_entry_point('calibre==0.4.83', 'gui_scripts', 'calibre')()
File "build/bdist.linux-i686/egg/calibre/gui2/main.py", line 1346, in main
File "build/bdist.linux-i686/egg/calibre/gui2/main.py", line 72, in __init__
File "build/bdist.linux-i686/egg/calibre/gui2/main.py", line 1254, in read_settings
File "/usr/lib/python2.5/posixpath.py", line 119, in dirname
return split(p)[0]
File "/usr/lib/python2.5/posixpath.py", line 77, in split
i = p.rfind('/') + 1
AttributeError: 'NoneType' object has no attribute 'rfind'


That doesn't work for me. If I hand edit the ini I get the message above. If I locate library1.db anywhere outside the root of my home directory I get other artifacts:

Snapshot1.png: library1.db is located in /home/jeff/Documents - the various db fields are misaligned. Resizing calibre does not affect this.

Snapshot2.png: library1.db lives in the root of my home directory, and all is well. Note that library1.db can be a symlink to another location and all is still well.

kovidgoyal
08-30-2008, 12:33 PM
Not sure what's what's wrong with snaphot1.png apart from the columns needing to be resized. Instead of habd editing the config file, use the config dialog to change the location of library1.db.