SDDM是一个显示管理器,一般与kde plasma 和lxqt搭配使用,这个显示管理器支持Wayland,但是单启用wayland时,sddm不能在空闲一段时间后自动熄屏或睡眠,只会让显示屏一直亮着,由于kwin不带电源管理器,不会自动熄屏和睡眠/挂起(suspend),所以需要配合swayidle实现在空闲一段时间后关闭显示屏/睡眠
先在目录/var/lib/sddm/创建一个叫compositor的文件,里面的内容是这样的
`````
#!/bin/sh
kwin_wayland --drm --no-lockscreen --no-global-shortcuts --locale1 &
sleep 5
swayidle -w \
timeout 595 'kscreen-doctor --dpms off' \
timeout 1795 'systemctl suspend' \
resume 'kscreen-doctor --dpms on' \
`````
然后执行命令以给予文件运行权限
sudo chmod +x /var/lib/sddm/compositor
在ssdm的配置文件/etc/sddm.conf.d/10-wayland.conf里:
`````
[General]
DisplayServer=wayland
GreeterEnvironment=QT_WAYLAND_SHELL_INTEGRATION=layer-shell
[Wayland]
CompositorCommand=./compositor
`````
这样在处于空闲状态10分钟后会关闭显示屏,30分钟后自动挂起,如果解除空闲状态则会重新打开显示屏,kwin的命令行来源于arch linux wiki的ssdm页面,这个方法来源与gihub上ssdm的issue下的解决方法






