如何从 udev 进行 gdbus 调用?

如何从 udev 进行 gdbus 调用?

我正在尝试通过 udev 设置显示亮度,以便我可以在电池和主电源上有不同的亮度级别。以下 gdbus 调用可从命令行运行:-

gdbus call --session --dest org.gnome.SettingsDaemon.Power --object-path /org/gnome/SettingsDaemon/Power --method org.freedesktop.DBus.Properties.Set org.gnome.SettingsDaemon.Power.Screen Brightness '<int32 65>'

但是,如果我在 udev 规则文件中有相同的内容:-

SUBSYSTEM=="power_supply", ENV{POWER_SUPPLY_ONLINE}=="0", RUN+="gdbus call --session --dest org.gnome.SettingsDaemon.Power --object-path /org/gnome/SettingsDaemon/Power --method org.freedesktop.DBus.Properties.Set org.gnome.SettingsDaemon.Power.Screen Brightness '<int32 65>'"
SUBSYSTEM=="power_supply", ENV{POWER_SUPPLY_ONLINE}=="1", RUN+="gdbus call --session --dest org.gnome.SettingsDaemon.Power --object-path /org/gnome/SettingsDaemon/Power --method org.freedesktop.DBus.Properties.Set org.gnome.SettingsDaemon.Power.Screen Brightness '<int32 100>'"

然后触发 udev 规则udevadm trigger --subsystem-match=power_supply什么都不做。我怎样才能让这个 gdbus 调用通过 udev 工作?

相关内容