1

I'm looking for information on the basic structure of a theme for MATE (in order to build my own).

I took an existing theme and renamed it, but I have been unable to get it to show up in Appearance Preferences. (It claimed to have imported but does not show in the theme chooser).

Is there some guide or documentation that covers the basic structure of a theme?

A. Can you edit it live in ~/.themes or do you have to repackage and import to test changes?

B. How does it get it's name?

C. What files are required for it to work?

D. How do you set a screen shot?

E. Many themes have gtk-2.0,gtk-3.0,metacity-1,xfwm4, etc subfolders. How do I know which one I'm using?

F. I'm not even sure what type of theme MATE uses. Is it metacity? GTK? It's own format?

Also, documentation on the structure of the file(s) would be good. It appears similar too, but not the same as, css.

It should go without saying, but I already tried Googleing for this, and found next to nothing in the way of a simple "My First MATE Theme" tutorial.

  • Which theme are you modifying? – Wilf Oct 29 '15 at 22:05
1

Unfortunately I don't have the answers to all of your questions. I did some testing on CentOS 7 with Mate 1.8.1, so here goes:

A. Yes, you can edit ~/.themes. I noticed that changes to (e.g.) buttons take effect when opening new windows. For instance, suppose you make changes by changing pictures in the gtk-2.0 and you open another filemanager window, that window would pick up your changes as opposed to windows that have already been openen.

B. I copied one of the existing themes. By editing the index.theme file in the root folder, I was able to edit the new theme name.

C. I'm not quite sure. I was able to manipulate the window contents by editing pictures in the various gtk-2.0/* folders. The metacity-1 folder seems to hold information with regards to the window borders.

D. Not sure what you mean here, do you mean how to add a thumbnail or preview for your theme?

E. As far as I can tell, gtk-2.0 and metacity-1 are used for sure. Not sure about the other folders though.

F. I'm not sure either, but I think that it might be 'Marco' which is a fork of Metacity.

I was as successful as you with regard to instructions about how to create a Mate theme. I did find some useful information on GTK widgets (especially regarding widget states) here: http://orford.org/gtk/

0

Note Above: If you modify a existing theme and release it, please link to the source of the existing theme to credit the people that made it and to make it easier for those who want to update it. Also, some themes may be under licenses that do not allow you to publicly release and/or modify the theme.

A. Can you edit it live in ~/.themes or do you have to repackage and import to test changes?

Yes you can. You can also use /usr/share/themes etc but this require setting the correct permissions (some setups seem to require the theme be in /usr/share/themes). You will likely need to restart the desktop or just logout and log back in again.

B. How does it get it's name?

By changing the folder name and/or the name in the index.theme file.

D. How do you set a screen shot?

You can use the mate screenshot app. You should be able to take a screenshot by pressing Print Screen, or you can set various effects etc by running mate-screenshot -i.

For a window layout to demonstrate the theme, try and open as many different apps (that people would likely use) to demonstrate the theme. Showing the compatible version may help as well.

C. What files are required for it to work? and E. Many themes have gtk-2.0,gtk-3.0,metacity-1,xfwm4, etc subfolders. How do I know which one I'm using?

Too see a existing full functioning theme, try examining a existing system theme in /usr/share/themes, you can see they have many files and folder to support varying things - e.g:

  • cinnamon - for Cinnamon
  • gnome-shell - for Gnome Shell
  • gtk-2.0 - GTK2 windows
  • gtk-3.0 - GTK3 windows
  • index.theme - describes what the theme is too things
  • metacity-X - window border theme for most desktops
  • unity - for the Unity desktop
  • xfce-notify-4.0 - for XFCE notifactions (probably)
  • xfwm4 - Equivalent of metacity for XFCE - themes Xfce windows.

At minimum you will need the gtk folders, the metacity folder(s) and probably the index.theme file. You will likely need both GTK2 and 3, as most linux systems I think need both GTK2 and GTK3 for most apps (a possible exception here are QT apps). MATE will likely mostly depend on GTK2, though I think support for GTK3 is/will be available.

F. I'm not even sure what type of theme MATE uses. Is it metacity? GTK? It's own format?

MATE is a fork of Gnome 2 (the version of Gnome previous the current GNOME 3 shell version), and uses GTK2 and metacity - it will likely use some other stuff like GTK3 as well. According to http://mate-desktop.org/themes/:

Most themes designed for GTK 2.x and GTK 3.x will work with MATE. Head over the GNOME-Look to see what you can find.

Themes that work with Mate may partially/fully work with many other desktops - e.g. Gnome (with relevant GTK3 version and perhaps gnome-shell), Xfce (xfwm needed for windows), etc

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.