Ticket #709 (closed defect: fixed)

Opened 11 years ago

Last modified 11 years ago

debathena-thunderbird-config is broken

Reported by: jdreed Owned by:
Priority: blocker Milestone: Fall 2010
Component: -- Keywords:
Cc: Fixed in version:
Upstream bug:  LP:638211

Description

Users are reporting (and I can reproduce) that starting Thunderbird results in a dialog box saying "Failed to read the configuration file. Please contact your system administrator."

Change History

comment:1 Changed 11 years ago by jdreed

Also, thunderbird config diverts icedove even if it doesn't exist. That seems.... suboptimal.

jdreed@INFINITE-LOOP:~$ icedove
exec: 18: /usr/bin/icedove.debathena-orig: not found

Even if there's some weird reason for this, the wrapper should fail gracefully.

comment:2 Changed 11 years ago by jdreed

Ah, this would be the problem:

open("/usr/lib/thunderbird-3.0.7/debathena.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)

comment:3 Changed 11 years ago by jdreed

  • Upstream bug set to LP:638211

comment:4 Changed 11 years ago by jdreed

I don't have the cycles to deal with this right now. Some things need to happen:

  • We need to stop diverting icedove when it doesn't exist. This may require the creation of a debathena-thunderbird package that can be build-depended on and that requires thunderbird | icedove
  • We need to figure out how config should work. At simplest, this can involve programmatically determining the name of /usr/lib/thunderbird-$version and throw debathena.cfg in there. But the right thing to do is to figure out how configuration is supposed to work in Thunderbird 3.x and do that.

comment:5 Changed 11 years ago by andersk

The only reason we need to know the name of /usr/lib/thunderbird-$version is that general.config.filename is a relative path based on it. We could try making that an absolute path instead, or a relative path like ../../share/debathena-thunderbird-config/debathena.cfg .

But if that doesn’t work out and we really do need to use the versioned path, we should also add an appropriately versioned dependency on thunderbird to prevent the version from changing out from underneath us.

(With icedove this isn’t a problem as the paths aren’t versioned.)

Also, it would be best if debathena.js didn’t modify anything when $DEBATHENA_HOME_TYPE != afs.

comment:6 follow-up: ↓ 7 Changed 11 years ago by jdreed

But if that doesn’t work out and we really do need to use the versioned path, we should also add an appropriately versioned dependency on thunderbird to prevent the version from changing out from underneath us.

I suppose it would be wrong to have the wrapper script deal with the version issues. Won't adding a versioned dependency suck? How will we keep track of upstream version changes?

Also, it would be best if debathena.js didn’t modify anything when $DEBATHENA_HOME_TYPE != afs.

Huh? Why don't local users want Thunderbird configured to talk to the MIT servers?

comment:7 in reply to: ↑ 6 Changed 11 years ago by andersk

Replying to jdreed:

I suppose it would be wrong to have the wrapper script deal with the version issues. Won't adding a versioned dependency suck? How will we keep track of upstream version changes?

It already sucks that we’ll need to have debian/rules compute the appropriate version in order to put the .cfg file in the right place. But _if_ we have to do that, then it’s just as easy to have debian/rules also write an automatically generated versioned dependency into a substvars file.

If we don’t do that, then the result of an Ubuntu version change will be that thunderbird-config silently breaks because the .cfg file is in the wrong path, which is worse than having an unsatisfied dependency for a little while until we do a binNMU.

Huh? Why don't local users want Thunderbird configured to talk to the MIT servers?

Maybe this is just the whole ${ATHENA_USER:-$USER} insanity for which we need a better solution everywhere else too, so let’s hold that thought for now.

comment:8 Changed 11 years ago by jdreed

Upstream confirms we shouldn't be mucking with /usr/lib/thunderbird anymore. See the LP bug for details.

comment:9 Changed 11 years ago by jdreed

  • Priority changed from major to critical

There's really no good way to do this. And apparently, in the new world order, we're supposed to be doing auto-configuration with an XML file hosted at Mozilla or at autoconfig.mit.edu (which requries coordination with network).

Unless a fix magically appears in -development by Tuesday morning, I'm going to push out a new thunderbird-config which essentially does nothing for thunderbird-3.x. We cannot reasonably prevent users from running Thunderbird while we figure out a way to fix this.

comment:10 Changed 11 years ago by jdreed

  • Status changed from new to development

comment:11 Changed 11 years ago by jdreed

Manual configuration documented:  http://kb.mit.edu/confluence/x/Uot_/

comment:12 Changed 11 years ago by jdreed

  • Status changed from development to proposed

comment:13 Changed 11 years ago by jdreed

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