sway icon indicating copy to clipboard operation
sway copied to clipboard

Gamma control not working with sway and wlsunset

Open werdahias opened this issue 1 year ago • 6 comments

wlsunset debug log:

WAYLAND_DEBUG=1 wlsunset 
[  95875.065]  -> [email protected]_registry(new id wl_registry@2)
[  95875.077]  -> [email protected](new id wl_callback@3)
[  95875.214] [email protected]_id(3)
[  95875.226] [email protected](1, "wl_shm", 1)
[  95875.232] [email protected](2, "wl_drm", 2)
[  95875.235] [email protected](3, "zwp_linux_dmabuf_v1", 4)
[  95875.238] [email protected](4, "wl_compositor", 6)
[  95875.245] [email protected](5, "wl_subcompositor", 1)
[  95875.251] [email protected](6, "wl_data_device_manager", 3)
[  95875.254] [email protected](7, "zwlr_gamma_control_manager_v1", 1)
[  95875.259]  -> [email protected](7, "zwlr_gamma_control_manager_v1", 1, new id [unknown]@4)
[  95875.264] [email protected](8, "zxdg_output_manager_v1", 3)
[  95875.268] [email protected](9, "ext_idle_notifier_v1", 1)
[  95875.272] [email protected](10, "zwp_idle_inhibit_manager_v1", 1)
[  95875.277] [email protected](11, "zwlr_layer_shell_v1", 4)
[  95875.281] [email protected](12, "xdg_wm_base", 2)
[  95875.284] [email protected](13, "zwp_tablet_manager_v2", 1)
[  95875.288] [email protected](14, "org_kde_kwin_server_decoration_manager", 1)
[  95875.292] [email protected](15, "zxdg_decoration_manager_v1", 1)
[  95875.295] [email protected](16, "zwp_relative_pointer_manager_v1", 1)
[  95875.299] [email protected](17, "zwp_pointer_constraints_v1", 1)
[  95875.303] [email protected](18, "wp_presentation", 1)
[  95875.306] [email protected](19, "zwlr_output_manager_v1", 4)
[  95875.311] [email protected](20, "zwlr_output_power_manager_v1", 1)
[  95875.314] [email protected](21, "zwp_input_method_manager_v2", 1)
[  95875.318] [email protected](22, "zwp_text_input_manager_v3", 1)
[  95875.321] [email protected](23, "zwlr_foreign_toplevel_manager_v1", 3)
[  95875.325] [email protected](24, "ext_session_lock_manager_v1", 1)
[  95875.328] [email protected](25, "wp_drm_lease_device_v1", 1)
[  95875.332] [email protected](26, "zwlr_export_dmabuf_manager_v1", 1)
[  95875.335] [email protected](27, "zwlr_screencopy_manager_v1", 3)
[  95875.339] [email protected](28, "zwlr_data_control_manager_v1", 2)
[  95875.342] [email protected](29, "wp_security_context_manager_v1", 1)
[  95875.346] [email protected](30, "wp_viewporter", 1)
[  95875.349] [email protected](31, "wp_single_pixel_buffer_manager_v1", 1)
[  95875.353] [email protected](32, "wp_content_type_manager_v1", 1)
[  95875.357] [email protected](33, "wp_fractional_scale_manager_v1", 1)
[  95875.362] [email protected](34, "zxdg_exporter_v1", 1)
[  95875.365] [email protected](35, "zxdg_importer_v1", 1)
[  95875.369] [email protected](36, "zxdg_exporter_v2", 1)
[  95875.372] [email protected](37, "zxdg_importer_v2", 1)
[  95875.376] [email protected](38, "xdg_activation_v1", 1)
[  95875.380] [email protected](39, "wp_cursor_shape_manager_v1", 1)
[  95875.383] [email protected](40, "zwp_virtual_keyboard_manager_v1", 1)
[  95875.387] [email protected](41, "zwlr_virtual_pointer_manager_v1", 2)
[  95875.390] [email protected](42, "zwlr_input_inhibit_manager_v1", 1)
[  95875.394] [email protected](43, "zwp_keyboard_shortcuts_inhibit_manager_v1", 1)
[  95875.397] [email protected](44, "zwp_pointer_gestures_v1", 3)
[  95875.401] [email protected](45, "wl_seat", 8)
[  95875.404] [email protected](47, "zwp_primary_selection_device_manager_v1", 1)
[  95875.408] [email protected](48, "wl_output", 4)
registry: adding output 48
[  95875.414]  -> [email protected](48, "wl_output", 1, new id [unknown]@5)
[  95875.419]  -> [email protected]_gamma_control(new id zwlr_gamma_control_v1@6, wl_output@5)
[  95875.423] [email protected](1756)
[  95875.427]  -> [email protected](new id wl_callback@3)
[  95875.533] [email protected]_id(3)
[  95875.542] [email protected]()
gamma control of output 48 failed
[  95875.549]  -> [email protected]()
[  95875.553] [email protected](1756)
calculated sun trajectory: midnight sun
setting temperature on output '48' to 6500 K
  • Description: I set up sway on my StarBook (AMD Ryzen 7 5800U with Radeon Graphics). Everything works fine except wlsunset; it just fails with "gamma control of output 48 failed". Attached sway + wlsunset log, lmk if you need more info.

werdahias avatar Jun 11 '24 14:06 werdahias

The logs seem to have been collected from a nested Sway instance. Gamma LUTs are not supported there.

emersion avatar Jun 12 '24 08:06 emersion

Same problem here with pretty much identical log, upgrading from (arch) 1.8.1-5 to 1.9-3. No nested sway versions were used.

rossmeier avatar Jun 27 '24 20:06 rossmeier

Same problem with me with almost identical log. The thing is that it used to work perfectly earlier. I have not used Hyprland for sometime and recently reverted back. Now it does not work anymore.

debasish-raychawdhuri avatar Jul 08 '24 17:07 debasish-raychawdhuri

It seems to be working again for me, though manually calling wlsunset claims "gamma control of output 48 failed"

werdahias avatar Jul 13 '24 10:07 werdahias

same uhh i hate this

sachinchaudhary1808 avatar Sep 25 '24 13:09 sachinchaudhary1808

gammastep is not working too

sachinchaudhary1808 avatar Sep 25 '24 13:09 sachinchaudhary1808

❯ gammastep
Warning: Zero outputs support gamma adjustment.
Warning: 1/1 output(s) do not support gamma adjustment.
Warning: Zero outputs support gamma adjustment.
Warning: 1/1 output(s) do not support gamma adjustment.
Warning: Zero outputs support gamma adjustment.
Warning: 1/1 output(s) do not support gamma adjustment.
Warning: Zero outputs support gamma adjustment.
Warning: 1/1 output(s) do not support gamma adjustment.
Warning: Zero outputs support gamma adjustment.
Warning: 1/1 output(s) do not support gamma adjustment.
Warning: Zero outputs support gamma adjustment.
Warning: 1/1 output(s) do not support gamma adjustment.
Warning: Zero outputs support gamma adjustment.
Warning: 1/1 output(s) do not support gamma adjustment.
Warning: Zero outputs support gamma adjustment.

i get this on sway 1.9 running gammastep command

sachinchaudhary1808 avatar Oct 25 '24 14:10 sachinchaudhary1808

okay idk but it's so random sometimes it works or sometimes its not, for today it's working

sachinchaudhary1808 avatar Oct 25 '24 14:10 sachinchaudhary1808

From Rocknix dev build and gammastep from master as of this morning ;

RK3566:~ # WAYLAND_DEBUG=1 gammastep -O 4000K                   
[2930537.698] {Default Queue}  -> wl_display#1.get_registry(new id wl_registry#2)
[2930537.792] {Default Queue}  -> wl_display#1.sync(new id wl_callback#3)
[2930538.159] {Display Queue} wl_display#1.delete_id(3)
[2930538.193] {Default Queue} wl_registry#2.global(1, "mali_buffer_sharing", 5)
[2930538.215] {Default Queue} wl_registry#2.global(2, "wl_shm", 2)
[2930538.231] {Default Queue} wl_registry#2.global(3, "zwp_linux_dmabuf_v1", 4)
[2930538.248] {Default Queue} wl_registry#2.global(4, "wl_compositor", 6)
[2930538.264] {Default Queue} wl_registry#2.global(5, "wl_subcompositor", 1)
[2930538.279] {Default Queue} wl_registry#2.global(6, "wl_data_device_manager", 3)
[2930538.295] {Default Queue} wl_registry#2.global(7, "zwlr_gamma_control_manager_v1", 1)
[2930538.322] {Default Queue}  -> wl_registry#2.bind(7, "zwlr_gamma_control_manager_v1", 1, new id [unknown]#4)
[2930538.346] {Default Queue} wl_registry#2.global(8, "zxdg_output_manager_v1", 3)
[2930538.360] {Default Queue} wl_registry#2.global(9, "ext_idle_notifier_v1", 1)
[2930538.375] {Default Queue} wl_registry#2.global(10, "zwp_idle_inhibit_manager_v1", 1)
[2930538.393] {Default Queue} wl_registry#2.global(11, "zwlr_layer_shell_v1", 4)
[2930538.410] {Default Queue} wl_registry#2.global(12, "xdg_wm_base", 5)
[2930538.426] {Default Queue} wl_registry#2.global(13, "zwp_tablet_manager_v2", 1)
[2930538.442] {Default Queue} wl_registry#2.global(14, "org_kde_kwin_server_decoration_manager", 1)
[2930538.455] {Default Queue} wl_registry#2.global(15, "zxdg_decoration_manager_v1", 1)
[2930538.467] {Default Queue} wl_registry#2.global(16, "zwp_relative_pointer_manager_v1", 1)
[2930538.481] {Default Queue} wl_registry#2.global(17, "zwp_pointer_constraints_v1", 1)
[2930538.509] {Default Queue} wl_registry#2.global(18, "wp_presentation", 1)
[2930538.528] {Default Queue} wl_registry#2.global(19, "zwlr_output_manager_v1", 4)
[2930538.546] {Default Queue} wl_registry#2.global(20, "zwlr_output_power_manager_v1", 1)
[2930538.563] {Default Queue} wl_registry#2.global(21, "zwp_input_method_manager_v2", 1)
[2930538.579] {Default Queue} wl_registry#2.global(22, "zwp_text_input_manager_v3", 1)
[2930538.591] {Default Queue} wl_registry#2.global(23, "ext_foreign_toplevel_list_v1", 1)
[2930538.604] {Default Queue} wl_registry#2.global(24, "zwlr_foreign_toplevel_manager_v1", 3)
[2930538.619] {Default Queue} wl_registry#2.global(25, "ext_session_lock_manager_v1", 1)
[2930538.636] {Default Queue} wl_registry#2.global(26, "wp_drm_lease_device_v1", 1)
[2930538.651] {Default Queue} wl_registry#2.global(27, "zwlr_export_dmabuf_manager_v1", 1)
[2930538.667] {Default Queue} wl_registry#2.global(28, "zwlr_screencopy_manager_v1", 3)
[2930538.683] {Default Queue} wl_registry#2.global(29, "zwlr_data_control_manager_v1", 2)
[2930538.699] {Default Queue} wl_registry#2.global(30, "wp_security_context_manager_v1", 1)
[2930538.715] {Default Queue} wl_registry#2.global(31, "wp_viewporter", 1)
[2930538.734] {Default Queue} wl_registry#2.global(32, "wp_single_pixel_buffer_manager_v1", 1)
[2930538.747] {Default Queue} wl_registry#2.global(33, "wp_content_type_manager_v1", 1)
[2930538.759] {Default Queue} wl_registry#2.global(34, "wp_fractional_scale_manager_v1", 1)
[2930538.772] {Default Queue} wl_registry#2.global(35, "zxdg_exporter_v1", 1)
[2930538.784] {Default Queue} wl_registry#2.global(36, "zxdg_importer_v1", 1)
[2930538.796] {Default Queue} wl_registry#2.global(37, "zxdg_exporter_v2", 1)
[2930538.808] {Default Queue} wl_registry#2.global(38, "zxdg_importer_v2", 1)
[2930538.819] {Default Queue} wl_registry#2.global(39, "xdg_activation_v1", 1)
[2930539.214] {Default Queue} wl_registry#2.global(40, "wp_cursor_shape_manager_v1", 1)
[2930539.247] {Default Queue} wl_registry#2.global(41, "zwp_virtual_keyboard_manager_v1", 1)
[2930539.265] {Default Queue} wl_registry#2.global(42, "zwlr_virtual_pointer_manager_v1", 2)
[2930539.281] {Default Queue} wl_registry#2.global(43, "zwp_keyboard_shortcuts_inhibit_manager_v1", 1)
[2930539.298] {Default Queue} wl_registry#2.global(44, "zwp_pointer_gestures_v1", 3)
[2930539.315] {Default Queue} wl_registry#2.global(45, "ext_transient_seat_manager_v1", 1)
[2930539.331] {Default Queue} wl_registry#2.global(46, "wl_seat", 9)
[2930539.347] {Default Queue} wl_registry#2.global(48, "zwp_primary_selection_device_manager_v1", 1)
[2930539.363] {Default Queue} wl_registry#2.global(49, "wl_output", 4)
[2930539.407] {Default Queue}  -> wl_registry#2.bind(49, "wl_output", 1, new id [unknown]#5)
[2930539.431] {Default Queue} wl_callback#3.done(125)
[2930539.460] {Default Queue}  -> zwlr_gamma_control_manager_v1#4.get_gamma_control(new id zwlr_gamma_control_v1#3, wl_output#5)
[2930539.488] {Default Queue}  -> wl_display#1.sync(new id wl_callback#6)
[2930539.814] {Display Queue} wl_display#1.delete_id(6)
[2930539.871] {Default Queue} discarded wl_output#5.geometry(0, 0, 76, 76, 0, "Unknown", "Unknown", 0)
[2930539.895] {Default Queue} discarded wl_output#5.mode(1, 720, 720, 60687)
[2930539.911] {Default Queue} zwlr_gamma_control_v1#3.failed()
[2930539.926] {Default Queue} wl_callback#6.done(125)
Warning: Zero outputs support gamma adjustment.
Warning: 1/1 output(s) do not support gamma adjustment.
[2930540.007] {Default Queue}  -> wl_display#1.sync(new id wl_callback#6)
^C
RK3566:~ # sway --version
sway version 1.10-dev-b822f7a2a (Sep 30 2024, branch 'dev')
RK3566:~ # uname -a
Linux RK3566 6.11.5 #1 SMP PREEMPT Sat Oct 26 04:12:17 UTC 2024 aarch64 GNU/Linux

aenertia avatar Oct 26 '24 10:10 aenertia

Same issue on sway 1.10

SeungheonOh avatar Dec 16 '24 13:12 SeungheonOh

The issue still exists. It is the main reason stopping me switching from i3.

parz3val avatar Dec 31 '24 09:12 parz3val

Still missing proper debug logs.

emersion avatar Dec 31 '24 19:12 emersion

Similar issue, I put exec gammastep -P -O 1000 in my config. Running gammastep again after startup returns:

Warning: Zero outputs support gamma adjustment.
Warning: 1/1 output(s) do not support gamma adjustment.

sway.log

tangyboi3 avatar Jan 28 '25 15:01 tangyboi3

I figured out this issue for myself last night. Turns out I just had wl-gammarelay-rs running in the background and forgot about it when I tried to use gammastep. I traced it down to https://gitlab.freedesktop.org/wlroots/wlroots/-/blob/master/types/wlr_gamma_control_v1.c#L169

At some point, running multiple gamma-adjustment apps simultaneously stopped working. Not like they historically behaved well together, though.

njdom24 avatar Nov 06 '25 21:11 njdom24

Just want to add that I got this warning when gammastep was already running in the background and I ran it again wondering why it was failing:

Warning: Zero outputs support gamma adjustment.

Here's a quick way to find all running display changing thigies:

pgrep -afl "redshift|wlsunset|clight|gammastep"

Belkata avatar Nov 07 '25 17:11 Belkata