local backlight = require("lib.lit").backlight.new("amdgpu_bl1", 5) local gobject = require "gears.object" local gtimer = require "gears.timer" local naughty = require "naughty" local phosphor = require "assets.phosphor" local qmath = require "quarrel.math" local qvars = require "quarrel.vars" local backlight_wrapper = gobject { class = { set = function(level, handler) backlight.set(level, handler) end, get = function() return backlight.get() end, }, } backlight:connect_signal("brightness", function(_, brightness) local icon_data = qmath.step_value(brightness, { { 0, "cloud_moon" }, { 51, "moon" }, { 102, "sun_horizon" }, { 153, "sun_dim" }, { 204, "sun" }, { 255 }, }) backlight_wrapper:emit_signal("icon", phosphor[icon_data .. "_fill"], qvars.colors.fg) backlight_wrapper:emit_signal("value", brightness) end) return backlight_wrapper