That would be awesome!
Regarding the .theme I guess it's possible to gamble something up.
Looking at some examples may help:
Each theme has an ID: you would need to generate one; if two or more themes have the same ID, the last ones won't be allowed to install/run.
Computer / recycle bin / network stuff is indeed irrelevant since most themes uses the same dll resources as you can see.
[Control Panel\Desktop] holds the wallpaper path.
Most important after [Theme] which has the the ThemeId is [Control Panel\Colors] that the ColorChooser changes.
Cursors are not needed since a user can have their own installed packs, otherwise pick default Aero one or simply none, excluding the whole [Control Panel\Cursors] section.
[Control Panel\Desktop] and [VisualStyles] are important.
You can have:
If you don't use screenssaver:
No sounds in a theme means:
That is for English; For instance Dutch would say:
a slight diference but meaning that's a different theme in theory
This can be excluded as well.
I still don't see any differences at
But this part seems important.
Hmm.. I don't always see this part; and I don't use a desktop slideshow in the example... Not relevant to the core of the theme file.
All irrelevant parts can be defaulted; you can exclude whole parts altogether but you must include icon stuff and basics like:
Path to wallpaper begins usually with a folder in your themepack besides the theme file:
; Computer - SHIDI_SERVER
; UsersFiles - SHIDI_USERFILES
; Network - SHIDI_MYNETWORK
; Recycle Bin - SHIDI_RECYCLERFULL SHIDI_RECYCLER
I've included a sample .theme file below.