[mythtv-theming] MythTV-Themes project and old myththemes repo

Michael T. Dean mtdean at thirdcontact.com
Tue Feb 28 03:26:27 UTC 2012

On 02/27/2012 10:21 PM, Michael T. Dean wrote:
> The ... themes in MythTV/myththemes repository
> ... have ... been moved to a new github project,
> MythTV-Themes ( https://github.com/MythTV-Themes )

> The project is available for use by any themer who wants to use it.  If
> you're interested in moving your existing repository to the
> MythTV-Themes project, please let me know and I'll set up a new
> repository for you and provide you with the permissions you'll need on
> that repository.

The fine details (split into a separate e-mail so my first e-mail wasn't 
so long that it scared people into deleting without reading) :

Each theme in the MythTV-Themes project is a separate git repository.  
This has several benefits:  a) it allows us to grant fine-grained 
control over permissions, b) it allows theme authors/maintainers to 
simply clone the repo into their ~/.mythtv/themes/ directory and work on 
the theme in the same location where MythTV is using the theme (meaning 
no required configure/make/make install type approach), c) it makes each 
theme repository nice and small (generally taking only a small amount 
more space than the theme itself), and ...

As far as permissions, we have created a <themename>-Admin "team" 
(basically a "group" of users or "role") that has push/pull/admin 
privileges on the repo, and a <themename>-Commit team that has push and 
pull privileges.  Currently, theme authors are assigned to the -Admin 
team, meaning they are allowed to administer the theme--including adding 
additional maintainers to either the -Admin or -Commit team.

Eventually, I hope to move Terra and MythCenter-wide and MythCenter from 
MythTV/mythtv repository's mythtv/themes directory into separate 
repositories on MythTV-Themes, and open them up for maintenance by the 
community.  While they are still used as "default" themes for MythTV, 
they would be pulled in by mythtv's build, so that they're installed on 
all systems.  Once we create new default and default-wide themes--that 
would be fully-usable themes, rather than "fallback-only" shell 
themes--Terra and MythCenter* would exist only within the MythTV-Themes 
project, and would not be installed by default (would only be installed 
if selected for use in the Theme Chooser).  However, even then, default 
and default-wide would exist within MythTV-Themes and be pulled in by 
the mythtv build for installation.

Since all themes will become "external" themes, that means that 
developers will no longer be able to just go in and change "all" the 
themes when adding new features to MythTV.  This has several benefits.  
First, it prevents users from seeing any theme as special or "officially 
approved" or whatever.  Second, it keeps us MythTV developers--who may 
not understand or, at least, may not share the theme designer's creative 
vision--from going in and "breaking" the style/consistency/look/feel of 
the theme.  And, third, because MythTV/myththemes did not actually 
contain /all/ the themes, we developers tended to forget about themes we 
didn't see in our repo, so we generally failed to provide good 
information to themers about the changes to the MythTV code and what it 
meant to themers (forcing you all to try to keep up based on -commits 
messages or wiki documentation change history).  Now, however, since all 
themes will be external, we'll be forced to better share information 
with all the themers about code changes.  I'm hoping to set up some 
process by which a MythTV developer who makes changes that affect 
theming will inform themers (likely with an e-mail to this list) of the 
changes, what it means for theming, and an example of how to use the 
feature in themes (which you all can choose to use to update your 
themes, or as a basis for designing the feature into your themes, or, if 
not mandatory changes, leave out of your theme if it doesn't fit the 
vision).  More on this after 0.25 release, and--especially--if I can get 
permission to move Terra and MythCenter* into MythTV-Themes project.

If anyone has any questions about the project or getting it to do what 
they need (or if git or github causes any problems), please let me know 
and I'll do what I can to help.  Or, if anyone has any suggestions for 
things we can do to make it easier for you all to create and maintain 
your MythTV themes, please let us know.

Thanks(, again),

More information about the mythtv-theming mailing list