fontconfig-infinality breaks MDM

Bug #1323066 reported by BrenBarn
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Linux Mint
Fix Released
Undecided
Unassigned

Bug Description

Installing the fontconfig-infinality package from https://launchpad.net/~no1wantdthisname/+archive/ppa causes MDM to no longer start. Several posts about this can be found by googling "fontconfig-infinality MDM", for instance: http://forums.linuxmint.com/viewtopic.php?f=208&t=145854 , http://superuser.com/questions/558974/linux-mint-fails-to-start-x-automatically-after-update-but-x-still-works , http://www.infinality.net/forum/viewtopic.php?f=4&p=2148 . Apparently there is a problem with mdm.conf running profile.d scripts; see http://forums.linuxmint.com/viewtopic.php?f=206&t=141808 . Not clear if this is related to https://bugs.launchpad.net/linuxmint/+bug/1190538 . Whatever the case, it would be good to have a fix. Some of those posts give workarounds, but they are cumbersome.

Revision history for this message
Vlad Orlov (monsta) wrote :

Please specify the versions of Mint and MDM.

Revision history for this message
BrenBarn (brenbarn-c) wrote :

Those posts describe the problem happening on Mint 13, 14, and 15. I can also report it happening with Mint 16. I don't know what the version of MDM is. At least for me, it is whatever version of MDM was installed with Mint 16, and judging from those posts, they are referring the version installed with those Mint versions. The problem does not appear to be specific to a particular Mint version.

Revision history for this message
Vlad Orlov (monsta) wrote :

Ok, I reported this to Clem, and according to him, the issue should be fixed on infinality's side, not on the Mint side. Something to do either with their script or with its placement.

Changed in linuxmint:
status: New → Won't Fix
Revision history for this message
Clement Lefebvre (clementlefebvre) wrote :

https://github.com/linuxmint/mdm/commit/ee1a28b3c295c283aa94b890658d78be25e31bb7

Here's an explanation of why it was failing:

- infinality provides a script in /etc/profile.d/ which uses xrdb.
- xrdb fails if there's no DISPLAY
- In the case where we're launching MDM via upstart, /etc/profile sources all /etc/profile.d/*.sh (I'm not sure whether we're using sh instead of bash, or whether we're setting "set -e" upstream from that, but in any case.. any failure is fatal here, so any script failing to load would make upstart fail to launch MDM).
- At that stage, MDM isn't launched yet and there's no DISPLAY... so xrdb fails, and it makes the script fails, which makes /etc/profile fail, which makes the MDM upstart job fail.

With the new commit, we no longer fail.

That said, this should be reviewed by the infinality devs. First they should probably ignore errors (like we did) or test $DISPLAY before calling xrdb... this is MDM, but failures in /etc/profile can be pretty bad, and MDM isn't the only piece in the puzzle, so their script should NEVER fail. Second, I really don't think /etc/profile is the right place to do this. It's too early in the login process imo. They should use other means and assure themselves they're already in the display.

I was going to post that on their github project but their last commit was in January 2013. If you're subscribed to their forums or in touch with them, please don't hesitate to let them know about this.

Regarding our own fix it will be part of MDM 2.0 (in Betsy and Mint 17.2). If you don't want to wait, simply edit your /etc/init/mdm.conf and add the two "set" lines as done in https://github.com/linuxmint/mdm/commit/ee1a28b3c295c283aa94b890658d78be25e31bb7

Changed in linuxmint:
status: Won't Fix → Fix Committed
Revision history for this message
Vlad Orlov (monsta) wrote :

Fix released in MDM 2.0.0

Changed in linuxmint:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.