buzz / volctl

Per-application volume control and OSD for Linux desktops.
https://buzz.github.io/volctl/
GNU General Public License v2.0
132 stars 19 forks source link

Fails to launch, error involving gdk and freeze count #62

Closed chrisRidgers closed 2 years ago

chrisRidgers commented 2 years ago

Not really sure how to describe this or where to look for more information.

Environment: Arch Linux Window Manager: bspwm System tray: polybar

Installed via AUR

can see in the video that on launch, the tray area does update, however no icon is displayed and no interface appears to be present.

https://user-images.githubusercontent.com/5954265/144630626-5ec137fb-c596-48a7-9d2e-1b1447642b1c.mp4

There's some error output from the command, but I've not seen much online and I don't think anything relating to volctl directly.

Any ideas on where to begin looking or what the message even means?

chrisRidgers commented 2 years ago

Subsequent tracebacks may or may not be relevant. I hit the app with multiple interrupts.

raven2cz commented 2 years ago

It is inside Gtk lib which is used with volctl. Missing some required parameters, null vals for applying volctl to systray. Polybar is special, do you have activated systray in the polybar? The volctl tries to add icon to systray.

chrisRidgers commented 2 years ago

Errr… as far as I’m aware.

I’m still learning polybar - I have config that looks correct.

Visibly, the tray area at the right of the bar does update so i presume there is in fact a tray. I’ve never seen anything in it yet.

I’ve not done much in regards to GTK as part of this environment. Done some Qt stuff for dolphin file manager, but that’s about it.

What gtk setup is required and is a there a missing dependency I need to install?

raven2cz commented 2 years ago

I checked polybar systray and the bug is thrown. It seems that the problem is between API of polybar systray and Gtk library which is used in the python lib of volctl.

Volctl works in all others VMs, awesome, qtile, xmonad, so I expect that the API is not correctly or fully implemented in polybar. Maybe you can try to write bug to polybar.

From my side, the systray in polybar is very badly implemented, in addition, it is not part of polybar itself but some kind of top of window up to polybar. Systray is one reason why I stop to use the polybar and prefer bars which are fully integrated with appropriate VM.

There is my polybar configuration: https://github.com/raven2cz/polybar-config

chrisRidgers commented 2 years ago

I’ll raise a ticket over there, I’m not aware of the internals or standards are for systrays. I is there a specific api call or interface you’d expect to see implemented as part of polybar that would make volctl work?

buzz commented 2 years ago

can see in the video that on launch, the tray area does update, however no icon is displayed and no interface appears to be present.

I also assume the problem is with your tray icon implementation, try a different tray icon host like trayer or Peksystray to rule out an issue in volctl.

chrisRidgers commented 2 years ago

can see in the video that on launch, the tray area does update, however no icon is displayed and no interface appears to be present.

I also assume the problem is with your tray icon implementation, try a different tray icon host like trayer or Peksystray to rule out an issue in volctl.

I’ll give that a go once I’m back at the pc, later this week.

chrisRidgers commented 2 years ago

I am perhaps the worlds greatest idiot.

tray-offset-x = 50%
tray-offset-y = 50%

Where did my icons render, somewhere offscreen probably.

buzz commented 2 years ago

I assume this issue to be resolved.