While trying to find out the icon used for a mimetype, I noticed that
oxygen icon themes on my Arch Linux and Ubuntu 14.04 had the following folder structures:
gnome/48x48: apps mimetypes gnome/32x32: apps mimetypes ... oxygen/128x128: actions apps categories devices emblems emotes mimetypes places status oxygen/16x16: actions animations apps categories devices emblems emotes mimetypes places special status ...
Sizes first, then types in them.
In Xubuntu's default themes (
elementary-xfce*), the ordering was reversed:
elementary-xfce/actions/: 128 16 22 24 32 48 64 96 symbolic elementary-xfce/animations/: 128 16 22 24 32 48 64 elementary-xfce/apps/: 128 16 22 24 32 48 64 96 symbolic elementary-xfce/categories/: 128 16 22 24 32 48 64 96 symbolic elementary-xfce-darker/actions/: 128 16 22 24 32 48 64 symbolic elementary-xfce-darkest/actions/: 128 16 22 24 32 48 64 symbolic
Presumably both work. Are there two standard ways to organise icon themes? If not, which is the standard way?
The specification on freedesktop.org only says:
In the theme directory are also a set of subdirectories containing image files. Each directory contains icons designed for a certain nominal icon size, as described by the index.theme file. The subdirectories are allowed to be several levels deep, e.g. the subdirectory "48x48/apps" in the theme "hicolor" would end up at $basedir/hicolor/48x48/apps.
The pseudocode given doesn't seem to make a distinction, unless I missed something. However, the part about applications adding their own icons favours one way:
So, you're an application author, and want to install application icons so that they work in the KDE and Gnome menus. Minimally you should install a 48x48 icon in the hicolor theme. This means installing a PNG file in
$prefix/share/icons/hicolor/48x48/apps. Optionally you can install icons in different sizes. For example, installing a svg icon in
$prefix/share/icons/hicolor/scalable/appsmeans most desktops will have one icon that works for all sizes. You might even want to install icons with a look that matches other well known themes so your application will fit in with some specific desktop environment.
Is it anything goes? Or are the Xubuntu icon themes buggy?