[mythtv] Re: On Themes & Theming

Robert S. Kerr rskerr at dsbox.com
Wed Feb 2 22:30:43 UTC 2005


 > Some parts of the themes already do this. I would like to see it
 > stabilize more, so there were less-frequent updates to the themes. Maybe
 > sometime after libmythui comes out that will happen. But yes, it is a
 > pain to merge changes to your own theme.

I'm not sure to what you are referring when you say that some parts of 
the themes already do defaulting. 

 From what I can tell, the theme.xml, ui.xml, and all the 
<module>-ui.xml files are taken as a whole or not at all.  If defauting 
is happening, I haven't been able to find it anywhere but at the file 
level.  The 'base' attibute for the <font> tag is a step in the right 
direction, but I still can't inherit fonts from the default directory.

There are default <module>-ui.xml files for the modules in the 
mythtv/themes/default directory, but they ONLY get looked at if your 
theme doesn't supply a <module>-ui.xml.  Not only is that at too high a 
level, there isn't a default ui.xml or theme.xml at all.  These are two 
of the largest theme files that are required and we require every theme 
to copy them wholesale.

My point is that if I want to change a font or a color, I should be able 
to do that by creating a file that just includes my desired changes.  
That way my 'theme' is more likely to stay current because the bulk of 
it remains defined in the default theme set.  If someone adds a new 
window type to the UI.XML, my theme would then just 'pick it up'.

For this to work though, we need the model to be one of reading the 
default xml, then applying overrides to it as opposed to the current 
model of choosing either one file or the other.  A good defaulting 
approach encourages a kind of exploratory theming that would foster 
contributions.

If you want to minimize the pain of merging changes back into existing 
themes, it seems to me like the best answer is to minimize the amount of 
content in those themes to only the things required to make the theme 
different.  I would bet that for the majority of the themes that have 
been developed for MythTv, at least 80% of the xml content is duplicated 
from the default files.

 > Use the wiki. The documentation is hard to update and no one ever feels
 > like writing stuff for it. That's why the wiki was created.

I'm there with you on the Wiki and that is probably a good place for the 
docs to evolve.  However, Isaac has on numerous occasions expressed a 
rather strong dislike for Wiki's which means that any docs in there will 
probably never make it into the main myth distribution and therefore are 
likely always going to be out of date and probably not kept current by 
those working with Isaac on the main distro.

I don't make the rules, but I still have to play by 'em.

My suggestion to get a theme section in the main mythtv-HOWTO files is 
to get that currency.  Right now the doc has about 2 paragraphs in 
section 11.2 that speak to how to install new themes, but not how to 
create them.

 > The wiki also contains a list of themes. Add yours.
 > 
<http://www.mythtv.info/moin.cgi/MythTvThemes>http://www.mythtv.info/moin.cgi/MythTvThemes 


<http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev>Better than 
nothing, but I don't think that gets us where we need to be.  To link a 
theme to the Wiki, one must have to have a place to host it.  Plus, if I 
host the theme myself, then any maintenance of the themes can't be 
community based.  If I create a theme and somebody else wants to update 
it for mythtv 0.17, I'd like that to happen without requiring my 
involvement as my muse may have moved on.  Requiring individual effort 
on an open source project like MythTv creates bottlenecks to the 
process.  And again, as I mentioned in my original e-mail, last time I 
checked, the artist types of the world aren't usually the kind to host 
their own web server (yes there are exceptions) and as such we don't get 
many contributed themes.

I suppose we could attach the theme files to the Wiki Pages, but the 
Wiki doesn't allow overwriting so you'd have to duplicate the entire 
theme file for a simple change.  Seems like a CVS would be a better 
approach.

My points are proven by the fact that on that page of the Wiki right now 
there are two dead links and two of the themes that are there are dated 
to the point that they don't provide the full functionality of the 
tool.  In an environment that encouraged communal ownership and updates, 
these themes would get current and stay there.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: rskerr.vcf
Type: text/x-vcard
Size: 335 bytes
Desc: not available
Url : http://mythtv.org/pipermail/mythtv-dev/attachments/20050202/19535870/rskerr.vcf


More information about the mythtv-dev mailing list