113

I want to change an icon of a specific theme. Where do themes save their icons?

Ingo
  • 6,258
  • 6
  • 51
  • 72
  • possible duplicate of [Where are the Unity Launcher .desktop files?](http://askubuntu.com/questions/40931/where-are-the-unity-launcher-desktop-files) – Lucio Apr 21 '14 at 14:11
  • 6
    @Lucio no, it's not. That Q is about `.desktop` files and location is not the same. – Danatela Apr 21 '14 at 14:17
  • 1
    You're right, I totally confused it. – Lucio Apr 21 '14 at 14:24
  • The link I was hunting for when I found this question was https://specifications.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html#install_icons ; I hope it helps someone else. – Wildcard Jun 03 '20 at 23:29

5 Answers5

142

Globally: /usr/share/icons/ or in your home folder : ~/.local/share/icons

skoal
  • 1,500
  • 1
  • 10
  • 5
  • Here's some other locations apparently, too: https://askubuntu.com/questions/476233/how-to-include-environment-variable-in-launcher-for-icon/476710#476710. – Gabriel Staples Feb 11 '20 at 04:40
27

There are several places: (in bracets some examples)

  • /usr/share/pixmaps/ ( chromium-browser.png display-im6.q16.xpm firefox.png flash-player-properties.png gimp.xpm gvim.svg texstudio.xpm )
  • /usr/share/app-install/icons/ ( adobeflashplugin.png julia.svg texmaker.png thunderbird.png vim.svg vlc.png wine.svg grace.svg)
  • ~/.local/share/icons/ ( soffice.png java-lang-thread.png org-jabref-jabrefmain.png) one of the places where Ubuntu searches for icons, if you use relative path
  • /usr/share/icons/... and subfolders ( matlab.png .../hicolor/scalable/apps/chromium-browser.svg .../hicolor/scalable/apps/geany.svg .../hicolor/scalable/apps/okular.svgz .../default.kde4/48x48/apps/acroread.png)
  • /usr/share/... just subfolders ( .../vlc/vlc.ico .../gimp/2.0/images/gimp-logo.png ) but this one is more for icons used in the program that the logo of the program
  • /snap/... just subfolders ( .../inkscape/3080/meta/gui/inkscape.svg .../languagetool/10/snap/gui/icon.png )
  • ~/.icons related to freedesktop.org (source1, source2 )

Most of the folders are already announced here, all sources I used:

JoKalliauer
  • 1,457
  • 2
  • 16
  • 26
27

/usr/share/icons/ typically contains pre-installed themes (shared by all users) ~/.icons/ typically contains folders with the themes installed by the user.

Also, many applications have their icons in /usr/share/pixmaps/ or in the folder with the same name as the application under /usr/share/...

v2r
  • 9,367
  • 11
  • 49
  • 52
Vadim
  • 1,358
  • 12
  • 16
  • 1
    I appreciate the mention of `/usr/share/pixmaps/`, that's more generic if you're copying icons for a specific application. – ryanpcmcquen Dec 29 '16 at 14:44
  • @ryanpcmcquen Thanks, and yes, the accepted answer is quite limited, especially mentioning non-standard locations while missing standard ones. – Vadim Jan 10 '17 at 08:35
  • @Vadim Are you shure that you did not create `~/.icons/ ` yourself? I never heard about that folder before. – JoKalliauer Jun 28 '21 at 16:53
  • 1
    @JoKalliauer, check https://askubuntu.com/a/476710/879600, looks like it comes from freedesktop – manus Mar 31 '22 at 03:21
5

As a supplementary for the accepted answer: If you don't find the ~/.icons directory, there may be a ~/.local/share/icons directory instead (PS: My distro is Ubuntu 16.10).

artificerpi
  • 259
  • 4
  • 13
4

To add to some of the answers here:

The freedesktop.org standard requires programs to look for icons in multiple folders in this order:

  1. $HOME/.icons (for backwards compatibility)
  2. $XDG_DATA_DIRS/icons, which typically just means ~/.local/share/icons.
  3. /usr/share/pixmaps

So if you want a custom icon, your best bet is to find the icon name in /usr/share/pixmaps, and then create an image with that same file name in ~/.local/share/icons.