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日 |
#777 in GUI
用于 3 crates
160KB
3.5K SLoC
MARSWM 项目
marswm
旨在成为 moonwm 的 Rusty 后继者。除了窗口管理器外,这个仓库还包括其构建的库,一个伴随的 库,一个伴随的 状态栏 和一个 ipc 客户端,用于从外部脚本控制窗口管理器。
您可以在 crates.io 或 Github 仓库 中找到如何配置窗口管理器的文档
免责声明:尽管已经可以使用,但这仍然处于开发中。库 API 以及窗口管理器本身可能会频繁更改。
组件
marswm
marswm
的目标是拥有一个简单的平铺窗口管理器,用于我的个人需求。
特性
- dwm 风格布局
- 工作区(类似于 i3 或 bspwm)
- 使用 X11 原子进行 IPC(
mars-relay
) - YAML 用于配置和键绑定
libmars
libmars
的目标是通过一个漂亮的 Rusty 接口来暴露 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
,具体取决于您的构建类型。
依赖关系
~0.4–1MB
~20K SLoC