Can't start Entertainer

Asked by Richard Stone

The install of 0.4.2 seemed to go OK. Installed onto Kubuntu 9.04. I have copied the cfg folder to ~/.config/entertainer. Started Entertainer from the prompt and this is what I see?

richard@richard-desktop:/$ entertainer
Entertainer backend starting...
Traceback (most recent call last):
  File "/usr/local/bin/entertainer", line 12, in <module>
    main()
  File "/usr/local/lib/python2.6/dist-packages/entertainerlib/frontend/__init__.py", line 31, in main
    BackendServer()
  File "/usr/local/lib/python2.6/dist-packages/entertainerlib/backend/backend_server.py", line 64, in __init__
    self.initialize_feed_manager()
  File "/usr/local/lib/python2.6/dist-packages/entertainerlib/backend/backend_server.py", line 94, in initialize_feed_manager
    self.feed_manager = FeedManager(self.message_bus)
  File "/usr/local/lib/python2.6/dist-packages/entertainerlib/backend/components/feeds/feed_manager.py", line 32, in __init__
    self.createFeedCacheDatabase()
  File "/usr/local/lib/python2.6/dist-packages/entertainerlib/backend/components/feeds/feed_manager.py", line 47, in createFeedCacheDatabase
    db_conn = sqlite.connect(self.config.FEED_DB)
pysqlite2.dbapi2.OperationalError: unable to open database file

Can any one help?

Question information

Language:
English Edit question
Status:
Answered
For:
Entertainer Media Center Edit question
Assignee:
No assignee Edit question
Last query:
Last reply:
Revision history for this message
Matt Layman (mblayman) said :
#1

Richard, my guess is that FEED_DB doesn't exist. Because you did a manual copy of the cfg folder into .config/entertainer, you might have tricked the code (because it's supposed to do it automatically for you, plus a bunch of other stuff).

I would suggest the following:

1) Delete .config/entertainer
2) Run `./entertainer-content-manager` and set your media folders (note that during this step, the code will recreate .config/entertainer
3) Run `./entertainer`

From you output that your provided, it looks like you did the python setup.py install so you can drop the ./ from my sample commands above.

Revision history for this message
Richard Stone (bunkerbuster1968) said :
#2

Matt, thankyou very much for your advice. I have tried what you have suggested, now when I try and run entertainer-content-manager i see the messages:

Couldn't find configuration Data. Execution aborted.

I look forward to hearing from you.

Revision history for this message
Matt Layman (mblayman) said :
#3

        try:
            # Copy configuration data from a dev branch if we can
            if os.path.exists(SOURCE_CONFIG['branch']):
                shutil.copytree(SOURCE_CONFIG['branch'], config_dir)
                create_cache_hierarchy(config_dir)
            # Install configuration data from the hardcoded package path
            elif os.path.exists(SOURCE_CONFIG['package']):
                shutil.copytree(SOURCE_CONFIG['package'], config_dir)
                create_cache_hierarchy(config_dir)
            else:
                print "Couldn't find configuration data. Execution aborted."
                sys.exit(1)
        except OSError:
            print "Couldn't copy configuration data to %s. Execution aborted." \
                % config_dir
            sys.exit(1)

Richard, your error message most likely came from this section of code in the Configuration class. What it indicates (since I wrote it) is that it can't find the cfg directory from either a branch location or a package location.

Can you please tell me the procedure that you used to install Entertainer? Did you follow the procedures described on the wiki? Also, if you used `python setup.py install`, could you please verify for me that /usr/share/entertainer/cfg exists? Thanks.

Revision history for this message
Richard Stone (bunkerbuster1968) said :
#4

Yes, I did use the Wiki instructions after downloading the .tar.gz file.

I used sudo python setup.py install.

The foder /usr/share/entertainer doesn't exist at all.

Again thank you very musch for your help with all this.

Revision history for this message
Richard Stone (bunkerbuster1968) said :
#5

Can I also add, I was originally getting an error when trying to install I changed an entry in the seup.py as per one of your answers to a similar issue Bug #392934 reported by Keheliya Gallaba on 2009-06-27 (Activity log).

I changed;

line 28 of setup.py :
        target = os.path.join("/", "usr", "share", "icons", "hicolor")
instead of
        target = os.path.join(self.root, "usr", "share", "icons", "hicolor")

Revision history for this message
Matt Layman (mblayman) said :
#6

Richard, I did some research about the `python setup.py install` method for Python 2.6 (which is what 9.04 uses) and I have a pretty good theory about what happened. But before I go down that road, could you please run the install again and paste the output into this question page so I can examine it? (note that it may be quite long, so you might want to redirect the output to a file like `sudo python setup.py install &> ~/Desktop/install_out.txt`).

Thanks.

Revision history for this message
Richard Stone (bunkerbuster1968) said :
#7

Please see output below.

running install

gzip: docs/entertainer.1: No such file or directory

running build
running build_py
running
build_scripts
running
install_lib
running
install_scripts
changing mode of /usr/local/bin/entertainer-backend to 755
changing mode of /usr/local/bin/entertainer-preferences to 755
changing mode of /usr/local/bin/entertainer to 755
changing mode of /usr/local/bin/entertainer-content-manager to 755
running install_data
copying locale/hu/LC_MESSAGES/entertainer.mo -> /usr/local/share/locale/hu/LC_MESSAGES
copying locale/zh_CN/LC_MESSAGES/entertainer.mo -> /usr/local/share/locale/zh_CN/LC_MESSAGES
copying locale/de/LC_MESSAGES/entertainer.mo -> /usr/local/share/locale/de/LC_MESSAGES
copying locale/en_GB/LC_MESSAGES/entertainer.mo -> /usr/local/share/locale/en_GB/LC_MESSAGES
copying locale/sv/LC_MESSAGES/entertainer.mo -> /usr/local/share/locale/sv/LC_MESSAGES
copying locale/nl/LC_MESSAGES/entertainer.mo -> /usr/local/share/locale/nl/LC_MESSAGES
copying locale/fr_FR/LC_MESSAGES/entertainer.mo -> /usr/local/share/locale/fr_FR/LC_MESSAGES
copying locale/fr/LC_MESSAGES/entertainer.mo -> /usr/local/share/locale/fr/LC_MESSAGES
copying locale/fi/LC_MESSAGES/entertainer.mo -> /usr/local/share/locale/fi/LC_MESSAGES
copying locale/pt_BR/LC_MESSAGES/entertainer.mo -> /usr/local/share/locale/pt_BR/LC_MESSAGES
copying locale/pl/LC_MESSAGES/entertainer.mo -> /usr/local/share/locale/pl/LC_MESSAGES
copying locale/es_ES/LC_MESSAGES/entertainer.mo -> /usr/local/share/locale/es_ES/LC_MESSAGES
copying locale/pt/LC_MESSAGES/entertainer.mo -> /usr/local/share/locale/pt/LC_MESSAGES
copying locale/he/LC_MESSAGES/entertainer.mo -> /usr/local/share/locale/he/LC_MESSAGES
copying locale/it/LC_MESSAGES/entertainer.mo -> /usr/local/share/locale/it/LC_MESSAGES
copying locale/gl/LC_MESSAGES/entertainer.mo -> /usr/local/share/locale/gl/LC_MESSAGES
copying locale/sr/LC_MESSAGES/entertainer.mo -> /usr/local/share/locale/sr/LC_MESSAGES
copying locale/es/LC_MESSAGES/entertainer.mo -> /usr/local/share/locale/es/LC_MESSAGES
copying locale/da/LC_MESSAGES/entertainer.mo -> /usr/local/share/locale/da/LC_MESSAGES
running install_egg_info
Removing /usr/local/lib/python2.6/dist-packages/Entertainer-0.4.egg-info
Writing /usr/local/lib/python2.6/dist-packages/Entertainer-0.4.egg-info
Updating icon cache in /usr/share/icons/hicolor
gtk-update-icon-cache: Cache file created successfully.

Revision history for this message
Matt Layman (mblayman) said :
#8

Richard,

I think that the problem is that Python 2.6 behaves differently with the setup.py file than it did in 2.5. In 2.5, files would install into /usr/share, not /usr/local/share as your log has listed. The Configuration class in entertainerlib/utils/configuration.py uses a hardcode path to find the cfg directory so that it can copy the data. Since the installation location has changed, /usr/share/entertainer/cfg doesn't exist. The correct location would be /usr/local/share/entertainer/cfg.

I will file a bug about this. In the mean time, you could edit SOURCE_CONFIG dictionary in entertainerlib/utils/configuration.py (it's near the top of the file) so that 'package' is set to /usr/local/share/entertainer/cfg. Once you do that, then you could reinstall, and Entertainer should work at that point in time.

Thanks for reporting this problem. We haven't done a release in a while so it seems we have some work to do to fix our setup.py file.

Let me know if you have any further issues.

-Matt

Revision history for this message
Richard Stone (bunkerbuster1968) said :
#9

Matt, thanks for the info.

The install goes smoothly I can start the Backend and content manager.

When I then go to start Entertainer I see the following.

Entertainer backend starting...

(/usr/local/bin/entertainer:12159): Clutter-Gst-WARNING **: Unable to create playbin GST actor.

(/usr/local/bin/entertainer:12159): Clutter-Gst-WARNING **: Failed to initiate suitable playback pipeline.
Traceback (most recent call last):
  File "/usr/local/bin/entertainer", line 12, in <module>
    main()
  File "/usr/local/lib/python2.6/dist-packages/entertainerlib/frontend/__init__.py", line 33, in main
    frontend_client = FrontendClient()
  File "/usr/local/lib/python2.6/dist-packages/entertainerlib/frontend/frontend_client.py", line 47, in __init__
    self.quit_frontend)
  File "/usr/local/lib/python2.6/dist-packages/entertainerlib/frontend/gui/user_interface.py", line 95, in __init__
    self.config.get_stage_width(), self.config.get_stage_height())
  File "/usr/local/lib/python2.6/dist-packages/entertainerlib/frontend/media_player.py", line 66, in __init__
    self.bus = self.playbin.get_bus()
AttributeError: 'NoneType' object has no attribute 'get_bus'

At this point nothing else happens.

Richard

Revision history for this message
Matt Layman (mblayman) said :
#10

Richard,

The playbin is part of gstreamer. I guess there is a good chance that you are missing some of the gstreamer packages. Make sure you download the good, bad, and ugly gstreamer packages (the "ubuntu-restricted-extras" meta-package might contain everything, but keep in mind that it may pull in a bunch of unnecessary stuff too).

As a disclaimer, I think the ugly package might have codecs that are possibly controversial with patents. If your country has patent issues, I can take no responsibility for any patent violations.

Can you help with this problem?

Provide an answer of your own, or ask Richard Stone for more information if necessary.

To post a message you must log in.