15 个版本 (6 个稳定版本)

2.0.2 2024年4月27日
2.0.1 2024年4月13日
1.0.2 2024年3月8日
1.0.1 2024年2月25日
0.1.5 2024年2月15日

#340 in GUI

Download history 422/week @ 2024-04-28 2/week @ 2024-05-05 1/week @ 2024-06-02

1,453 每月下载量
ruin 中使用

MIT 许可证

34KB
834

WLRS /wɔːlrəs/ crate Build Status codecov docs

Rust 库,用于管理壁纸

支持的环境

  • 实现 layer-shell 的每个 Wayland 组件(例如 Hyprland、Sway、Wayfire 等)
  • 没有自己壁纸管理的 X11 环境(例如 dwm、i3、bspwm 等)

示例

从内存中设置

use wlrs::set_from_memory;

fn main() {
  // Set to first monitor
  let wallpaper = image::open("wallpaper.jpg").unwrap();
  set_from_memory(wallpaper, vec![0]).unwrap();

  // Set to multiple monitors
  let wallpaper = image::open("wallpaper.jpg").unwrap();
  set_from_memory(wallpaper, vec![0, 1]).unwrap();

  // Set to all monitors
  let wallpaper = image::open("wallpaper.jpg").unwrap();
  set_from_memory(wallpaper, Vec::new()).unwrap();
}

从文件路径设置

use wlrs::set_from_path;

fn main() {
  // Set to first monitor
  set_from_path("wallpaper.jpg", vec![0]).unwrap();

  // Set to multiple monitor
  set_from_path("wallpaper.jpg", vec![0, 1]).unwrap();
  
  // Set to all monitors
  set_from_path("wallpaper.jpg", Vec::new())unwrap();
}

TODO

  • 更好的错误处理
  • 添加不同的裁剪模式
  • 修复添加新输出时的崩溃问题

依赖

~19–29MB
~457K SLoC