Darren:

> Hmm - the main issue that I'd have here how this would effect GDM? As I
> remember, GDM had issues before where the font-cache was broken/out of date 
> too.
> 
> Handling it post-login won't help if you can't get that far...

Note that the new GDM 2.22 rewrite uses gnome-settings-daemon, so any
fix that involves g-s-d being smarter about fonts would likely also
benefit GDM going forward.

Brian


> Alan Coopersmith wrote:
>> Just in case anyone here is interested in changes being proposed to the
>> font management systems we get from the open source community.
>>
>>      -Alan Coopersmith-           alan.coopersmith at sun.com
>>       Sun Microsystems, Inc. - X Window System Engineering
>>
>> -------- Original Message --------
>> Subject: [Fontconfig] Font autoinstallation meeting
>> Date: Fri, 06 Jun 2008 15:06:51 -0400
>> From: Behdad Esfahbod <behdad at behdad.org>
>> To: Richard Hughes <rhughes at redhat.com>, Nicolas Mailhot <nicolas.mailhot 
>> at gmail.com>
>> CC: fontconfig <fontconfig at lists.freedesktop.org>, fedora-fonts-list
>> <fedora-fonts-list at redhat.com>, gtk-i18n-list <gtk-i18n-list at gnome.org>
>>
>> Hi guys,
>>
>> Lets meet Monday June 9th 17:00 UTC in ##fonts on freenode to discuss
>> font autoinstallation in Fedora.
>>
>> I've recently committed patches to GTK+ and gnome-settings-daemon (the
>> latter not committed just yet, but expect to commit today or tomorrow)
>> to detect fontconfig configuration changes and react to it [1].  By
>> react, I mean:
>>
>>   - Make fontconfig reread its configuration, seeing newly installed
>> fonts, changed configs, etc,
>>   - Make Pango fontmap drop its fontset caches,
>>   - Redraw all widgets.
>>
>> With these in place, you can install a font rpm and all running
>> applications will pick it up withing 5 seconds.
>>
>> Next logical step is to detect when fonts are missing for some language,
>> and let PackageKit offer installing them.  That's what I want to discuss
>> at the meeting.
>>
>> To get us started, this is the very rough design I have in mind right
>> now:
>>
>>
>>   - Hook into PangoFcFontMap's load_fontset method, and if the font
>> pattern for the first font in the just-loaded fontset does not cover the
>> asked language, signal missing fonts for language.
>>
>>   - The signal will be propagated to PackageKit over D-BUS
>>
>>   - PackageKit will show a notification suggesting to install fonts for
>> langauge.  In a further dialog it will list all font packages covering
>> the missing language(s?) and let user choose which ones to install.
>>
>>
>> Discussion:
>>
>>   - I don't like making Pango do much.  My previous idea was to add a
>> missing-fonts hook in Pango that another module can hook into.  I don't
>> like that idea much now.  Hooks are in general very unscalable in the
>> long run.
>>
>>   - Here's another way to handle it:  I'm going to make some changes to
>> PangoFontMap handling.  The part relevant here is that one can call
>> pango_cairo_font_map_set_default() to change the default font map.
>> Then:
>>
>>   - PackageKit-gnome will install a gtk-module that upon loading, gets
>> the current pangocairo defaultfontmap, subclasses it anonymously (that's
>> perfectly possible), overrides the load_fontset method, creates an
>> instance of it, and sets it as the new default pangocairo fontmap.
>>
>>   - The hook then is responsible for using D-BUS or any other means
>> (xsettings?!) to notify PackageKit of missing fonts and at that point
>> I'm done :).
>>
>>
>>
>> For this to work, it's easiest if font packages provided names like
>> font-lang-fa, font-lang-fa_IR, font-lang-az_IR, etc.  We can develop a
>> script to automatically generate that at package build time.  Fontconfig
>> already has that list.
>>
>>
>> Anyway, further discussion during the meeting :).
>>
>>
>> Cheers,
>>
>> behdad
>>
>> [1] http://mces.blogspot.com/2008/06/online-font-installation.html
>>
>> _______________________________________________
>> Fontconfig mailing list
>> Fontconfig at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/fontconfig
>> _______________________________________________
>> desktop-discuss mailing list
>> desktop-discuss at opensolaris.org
> _______________________________________________
> desktop-discuss mailing list
> desktop-discuss at opensolaris.org


Reply via email to