Opened 9 years ago

Closed 6 years ago

#1748 closed defect (fixed)

Can't open library bundles (.xol) from USB stick

Reported by: ruben Owned by: sayamindu
Priority: Unspecified by Maintainer Milestone: Unspecified
Component: Sugar Version: 0.84.x
Severity: Unspecified Keywords: r+
Cc: bernie, rgs, sridhar, erikos Distribution/OS: OLPC
Bug Status: New

Description

How to reproduce:

  1. Insert a USB stick containing a .xol bundle
  2. Go to the journal
  3. Click on the USB stick icon in the bottom toolbar
  4. Nothing happens!

If you first drag the bundle to the journal, it will open normally.

Tested in Sugar 0.84.9 on F11-XO1.5 build 63.

This appears in shell.log:

Traceback (most recent call last):
  File "/usr/lib/python2.6/site-packages/jarabe/journal/collapsedentry.py", line 363, in __icon_button_release_event_cb
    misc.resume(self.metadata)
  File "/usr/lib/python2.6/site-packages/jarabe/journal/misc.py", line 184, in resume
    bundle.install()
TypeError: install() takes exactly 2 arguments (1 given)

Attachments (1)

0001-Add-default-value-a-parameter-in-contentbundle.insta.patch (973 bytes) - added by godiard 8 years ago.

Download all attachments as: .zip

Change History (7)

comment:1 Changed 9 years ago by skierpage

This also happens in OLPC build os852 (10.1.2 that incorporates Sugar 0.84.16) on an XO-1.

Indeed, resume() in journal misc.py does not pass a path to install() in sugar/bundle/contentbundle.py
The latter has the comment "# TODO ignore passed install_path argument" and it looks as if it does ignore it. I tried removing the parameter altogether:

def install(self):

and I could install .xol from the journal, but that's an API change that might affect callers. Another fix might be to give it a default value.

def install(self, install_path=None):

this is similar to sugar/bundle/activitybundle.py's install().

The next glitch after fixing this is that the content bundle does not appear in the Journal, so there's no way to remove it from ~/Library and the expandable library navigation on the OLPC's home page.

Another workaround that addresses both problems is to install the bundle from Browse using a local file:/// URL, as if you're downloading from an http address.

  • Insert the USB flash drive
  • Visit Journal to get the OS to mount it
  • Start Browse, navigate to file:///media , click on the USB flash drive's volume name.
  • Navigate to the .xol file and click it.

Just as when browsing a content site, you get a download dialog. If you later erase the .xol from the Journal this will remove it from ~/Library and the OLPC home page.

There are other bugs with .xol content: bug #470 (no .xol icon), bug #1354 (no metadata), etc. It might be easier to rethink .xol content bundles and/or unify content and activities than fix them. ;-)

comment:2 Changed 9 years ago by sridhar

  • Cc sridhar added

comment:3 Changed 8 years ago by godiard

  • Cc erikos added

comment:4 Changed 8 years ago by godiard

  • Bug Status changed from Unconfirmed to New
  • Keywords r+ added

comment:5 Changed 8 years ago by godiard

I don't know if this have high priority, but would be good include it before 10.1.3

comment:6 Changed 6 years ago by dnarvaez

  • Resolution set to fixed
  • Status changed from new to closed
Note: See TracTickets for help on using tickets.