9 个不稳定版本 (3 个破坏性更新)
0.5.3 | 2023年12月19日 |
---|---|
0.5.2 | 2023年11月29日 |
0.5.0 | 2023年6月23日 |
0.4.1 | 2023年4月20日 |
0.2.0 | 2023年2月10日 |
#434 in GUI
每月 37 次下载
170KB
3.5K SLoC
MARSWM 项目
marswm
旨在成为 moonwm 的 Rust 后继者。除了窗口管理器外,该仓库还包含它所基于的库 libmars,一个伴随的 状态栏 以及一个 ipc 客户端,用于从外部脚本控制窗口管理器。
您可以在 crates.io 或在 Github 仓库 中找到如何配置窗口管理器的文档
免责声明:尽管已经可以使用,但这仍在开发中。库 API 以及窗口管理器本身可能经常发生变化。
组件
marswm
marswm
的目标是拥有一个简单的层叠窗口管理器,具有层叠和工作空间,仅用于我自己。
特性
- dwm 风格布局
- 工作空间(类似于 i3 或 bspwm)
- 使用 X11 原子进行 IPC(
mars-relay
) - YAML 用于配置和键绑定
libmars
libmars
旨在通过一个简洁的 Rust 界面展示 xlib 的丑陋之处,使得实现自定义窗口管理器更加容易。它还不够成熟,主要针对满足 marswm
的需求,但一旦 API 稳定并得到文档化,它应该非常适合编写简单的、个人的窗口管理器。虽然目前没有计划,但由于库的模块化概念,可以实现一个 wayland 后端(以及其他后端)。
mars-relay
mars-relay
允许您控制符合 EWMH 的 X11 窗口管理器,并可以作为 marswm
以及许多其他窗口管理器的 IPC 客户端使用。
安装(使用软件包管理器)
请参阅 installation.md。
有关如何以 marswm 为基础设置工作桌面环境的指南,请查看 快速入门指南。
从源代码构建
您必须本地安装以下库:libX11
,libXft
,libXinerama
,libXrandr
。
然后您可以使用 cargo 构建二进制文件。
# development build
cargo build
# release build
cargo build --release
二进制文件将位于 target/debug
或 target/release
,具体取决于您的构建类型。
依赖项
~1.6–2.2MB
~44K SLoC