christophgysin / pasystray

PulseAudio system tray
GNU Lesser General Public License v2.1
444 stars 43 forks source link

Feature request: Add notifications #146

Closed root2185 closed 3 years ago

root2185 commented 3 years ago

Can you add notifications? For example when changing the volume with a shortcut.

christophgysin commented 3 years ago

Have you tried --notify=all?


$ pasystray --notify help
Notification options:
  all                     Notify for all detected changes
  none                    Never notify, except for options set after this one
  new                     Notify when new sinks/sources are added
  sink                    Notify for changes to all sinks
  sink_default            Notify for changes to the default sink
  source                  Notify for changes to all sources
  source_default          Notify for changes to the default source
  stream                  Notify for all streams
  stream_output           Notify for output (playback) streams
  stream_input            Notify for input (recording) streams
  systray_action          Notify for changes made through pasystray
  help                    List possible options and exit
root2185 commented 3 years ago

I didn't know about CLI options, I only checked the GUI. Nice! Is there a setting to prevent pasystray to start automatically so I can launch it with the --notify=all option? If I add pasystray --notify=all to autostart I end with 2 pasystray.

Do I have to manually remove /etc/xdg/autostart/pasystray.desktop?

christophgysin commented 3 years ago

You can just edit pasystray.desktop:


Exec=pasystray --notify=all
root2185 commented 3 years ago

Right I didn't think about it. I think that pasystray should have an option to avoid autostart so users can disable it without editing files in the /, needing admin rights. Something that you can change in dconf for your user, to also add possible extra options like --notify=all.

christophgysin commented 3 years ago

This is all specified by the XDG autostart specification

System-wide desktop entries can be overridden by user-specific entries with the same filename. To disable a system-wide entry, create an overriding entry containing Hidden=true.

root2185 commented 3 years ago

I can't add that to the Openbox autostart though. And if you want that the app doesn't start automatically, can you do it with a user-specific entry?

A nice feature could be an option in the GUI to add/remove some or all the notifications.

christophgysin commented 3 years ago

I can't add that to the Openbox autostart though. And if you want that the app doesn't start automatically, can you do it with a user-specific entry?

Exactly. You use a user-specific entry to either change the CLI options pasystray is started with, or completely disable it with the above exanple.

What's your usecase for changing notification options at runtime? If you create a PR I will consider applying it.

root2185 commented 3 years ago

I would have avoided to make a custom entry to add the --notify=all option. If you get tired of some notifications or you want to add some to check something you can do it on the fly without using the entries.