0

I found here :), I can set a particular GTK3 theme per-application basis : GTK - Enable/set dark theme on a per-application basis

Now I want to force :

  • A particular icon theme per-application basis
  • A particular window decorator per-application basis

The point is having a completely darked application (theme + icon special dark + window decoration)

Thanks for your help

edit:

For information I use cinnamon in linux mint 18.2

Further step about icon theme, i can fake it with the env variable XDG_DATA_DIRS :

  • First create dir icons,
  • Put your desired icon pack
  • Rename icon pack as current system icon pack
  • Add parent path of your freshly created icons dir into XDG_DATA_DIRS XDG_DATA_DIRS=/parent/of/iconsdir/:$XDG_DATA_DIRS

2 Answers 2

1

edit/ After searching and experimenting a bit, I found a way to partially do that, so i created an account here, to answer to my guest account question /edit


For particular icon set per-application basis :

Derived from Except some applications (like VLC) from using the current gtk3 theme

  • create any folder path/to/FOLDER
  • create a icons/ folder inside it
  • put your desired icon set folder in it and rename that folder with the name of current icon set

After that you can force the use of this icon set with :

XDG_DATA_DIRS=/path/to/FOLDER/:$XDG_DATA_DIRS <application>

For dark theme you can use breeze-dark icon set


Cinnamon use metacity border-decoration, this is in themes/metacity-1/ folder. I don't know how to customize it for a specific application. The XDG_DATA_DIRS hack above won't work.


So if you want custom theme and icons, you can write in a terminal :

GTK_THEME=Adwaita:dark XDG_DATA_DIRS=/path/to/FOLDER/:$XDG_DATA_DIRS <application>

And for launching app with these settings in application .desktop file :

Exec=sh -c "GTK_THEME=Adwaita:dark XDG_DATA_DIRS=/path/to/FOLDER/:$XDG_DATA_DIRS <application> %F"

3
  • An ugly way of doing it and not really a single override.
    – Bachsau
    Oct 21, 2018 at 12:59
  • 1
    Yes I know, please show me the beautiful way to do this ;)
    – brouillon
    Oct 22, 2018 at 13:14
  • @brouillon Awesome, working for me under i3. Thank you very much! Oct 24, 2021 at 18:13
0

there is a simple way of doing this. take the icon theme that has the most icons that you would use in your final set of icons. copy it and name it as you like (eg:- my-icons). after that change the name property in the file index.theme to your icon theme name. and then find the icons that you would want to change. I recommend finding SVG versions of icons because it can be used in every resolution since it is scalable. then put the x.svg file inside app/scalable directory inside your icon theme. or if you have a png file put it in the closest resolution (eg:- if you have a 38x38 icon 36x36 folder). if you can't find a folder to put it in create a folder because I think the location doesn't that matter that much you can put you files anywhere as long as it is inside the your icon folder. now, follow the below steps to help the system find correct icon for the correct app.

  1. find the specific .desktop file for a application in /usr/share/applications
  2. then, copy the value of the Icon= property and set it as the name for the icon name or copy the icon name (just the name, not path nor extention) and set it as the value for the Icon property (need sudo privileges). example icon name, icon-file: Viber.png icon-name: Viber.

after that, put the icon folder inside ~/.local/share/icons or ~/.icons (recommend the first one). finally, use system settings to set the icon theme if you use something like gnome or kde or else follow the below steps.

open ~/.config/gtk-3.0/settings.ini and add the line gtk-icon-theme-name=my-icons. if that property already exists change the name of the icon theme according to your theme name.

Extra tips:

  1. if you have trouble finding the exact file to use in your own icon theme, cd to the location of that specific icon theme and use a utility like fzf to find the files
  2. change ~/.gtkrc-2.0 file if you want gtk2 support.
  3. if you have trouble finding SVG icons goto a website like icons8 to find them. but there's a danger, after visiting that you might not use your own icons.
  4. sometimes the files will be in scalable/apps but as I said, directory doesn't matter if we forget about organizing.

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.