Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I've whitelisted some indicators for apps that don't yet have Unity-compliant appindicators. Is there any way to blacklist appindicators for apps that are Unity-compliant (not old-style indicators) but don't provide a "Don't show in the system tray" option?

  • Any working solutions to ban an appindicator from being displayed, GUI- or CLI-based, are welcome.
  • A valid alternative would be a way to hide the indicator in a similar fashion to how you can show/hide system tray icons in Windows 7. According to the answer to this closed question this is not currently possible in Ubuntu.
  • Techniques that cover old indicators as well as new indicators are also valid. (Removing items from the systray-whitelist only works for old indicators.)
share|improve this question
    
Could you provide the name of an app or two that you wish to "blacklist" –  doug Nov 9 '11 at 15:56
    
@doug stackapplet, wakoopa, possibly others but they aren't open right now :) –  d3vid Nov 9 '11 at 16:21
    
Skype also comes to mind. You could remove sni-qt, but that would also remove the indicators of all other qt apps. –  mniess Nov 10 '11 at 15:39
    
@mniess yes, skype too - I hadn't realised how similar the questions are :) my rationale for keeping them apart: question 61514: includes non-appindicators, was looking for a UI-based option, and was looking for a temporary "hide"; this one is specific to appindicators, looking for anything including cli and obscure file tweaks, and a permanent "blacklisting" - I'm happy to clarify my wording in each if necessary, but if they're still considered too similar, so be it –  d3vid Nov 10 '11 at 15:55
1  
I am confused on how the most accepted answer in this question is one that says that if there are no applets running they should be left that way. I'm sure you are trying to prevent something from running, not to activate something you should not see to start with. –  Bruno Pereira Nov 15 '11 at 23:19
show 2 more comments

3 Answers 3

up vote 7 down vote accepted
+100

To not load an applet just prevent it from running.

If the indicator is coded in to the application and the application does not give you an option to remove the indicator from the panel you wont be able to omit it, you cannot omit an application indicator that is build in to the code and has no option to disable it, for that you need source code changes either made by you or you can suggest them to the app developer, which is the last case will be depend on which applications your are referring to.

There are no specific guidelines explaining if and application should or should not have an inductor applet, only what an indicator applet should do.

You can still remove the system applets made by gnome for you system or if the application it self uses an external applet to be used as a indicator.


To remove one of the gnome / unity indicators that are visible by default open the terminal and run this command to show all the applications that can be loaded at start up

cd /etc/xdg/autostart/ && ls

Identify the applet that you want to prevent from loading and edit it with your favorite text editor, ie:

sudo nano nm-applet.desktop

Locate the line with these contents

NoDisplay=true

and change it to

NoDisplay=false

Save and close the terminal.

Click the cog weel in the top right corner of the screen next to your username and select Startup Applications..., now you will see the application that you just edited the .desktop file and you can disable it.

The applet wont load on next boot

After enabling or disabling and applet following the steps above you will see that each .desktop that you modify will create it's own .desktop file in your ~/.config/autostart folder.

If an applet indicator that you want to disable does not show on your startup list you need to use the method above, else there will be a .desktop file inside ~/.config/autostart that can be edited with the described method and will then be possible to enabled/disabled in the startup applications.

share|improve this answer
1  
Bruno - nice answer +1 –  fossfreedom Nov 15 '11 at 23:18
    
@bruno thanks your answer is helpful for the case where the application can run independently of the indicator applet; this doesn't suit my case but maybe someone else will benefit –  d3vid Nov 16 '11 at 6:38
    
The difference between what you want and what you can do is explained on the 2 first sentences. You cannot omit an application indicator that is build in to the code and has no option to disable it, for that you need source code changes either made by you or you can suggest them to the app developer. –  Bruno Pereira Nov 16 '11 at 10:07
    
thanks for the additions to your answer bruno; I think I've seen unity/ubuntu-specific indicator guidelines, if I find them again I'll post the link here –  d3vid Nov 16 '11 at 13:57
    
I have found @sokai answer really useful, for the applications I tried to hide it worked, and at least one has the tray hard-coded in core. –  Radu Maris Mar 23 '13 at 21:19
add comment

Most probably indicators you don't want to see, shouldn't be there in the first place according to the design guidelines. So the right course of action (right now) should be to contact the author.

share|improve this answer
    
I'm hoping someone has a reliable hack or I will have no choice but to accept your answer :) –  d3vid Nov 10 '11 at 16:13
    
am I correct that according to the design guidelines the developer ought to provide such an option? if so do you have a recommendation on how to suggest this to the developer? could you provide a link to the latest guidelines/any relevant discussion? and while you're at it, a pony, thanks –  d3vid Nov 16 '11 at 8:51
    
I added the documentation for appindicators to the post. I'd just write an email to the developer asking him to either remove the icon or provide an option to hide it (at least a cmd-line parameter). –  mniess Nov 17 '11 at 16:23
add comment

Does your app (that is missing the option) appear in the global panel? - I think, if yes, it is whitelisted and you have to take it out of the systray-whitelist = blacklisting... ;)

So if app "appMissing" resists in the panel your systray-whitelist is (something like)

    #~> gsettings get com.canonical.Unity.Panel systray-whitelist
    ['appA', 'appB', 'appMissing']

and you have to blacklist "appMissing" by doing

    #~> gsettings set com.canonical.Unity.Panel systray-whitelist "['appA', 'appB']"
share|improve this answer
    
If you are interested in a GUI method for changing systray-whitelist see this post: askubuntu.com/questions/39843/application-indicator-for-shutter/… –  sokai Aug 6 '11 at 8:30
    
unfortunately the apps don't appear in systray-whitelist - I'm guessing because they have correctly configured appindicators - I'm updating the question to reflect this –  d3vid Nov 9 '11 at 15:36
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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