ITADN
yshui/picom
yshui/picom · 文件 下载 ZIP
文件最后提交记录最后更新时间
README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈

picom

circleci codecov chat on discord

picom 是 X 的窗口合成器,也是 Compton 的分支

这是一个开发分支,预期会出现 bug

你可以在 讨论区 留下你的反馈或想法,或者在 discord 上与其他用户聊天!

变更日志

参见 Releases

构建

依赖项

假设你已经安装了所有常用的构建工具(例如 gcc、python、meson、ninja 等),你仍然需要:

  • libx11
  • libx11-xcb
  • xproto
  • xcb
  • xcb-util
  • xcb-damage
  • xcb-xfixes
  • xcb-shape
  • xcb-renderutil
  • xcb-render
  • xcb-randr
  • xcb-composite
  • xcb-image
  • xcb-present
  • xcb-glx
  • pixman
  • libconfig (>= 1.7)
  • libdbus(可选,可通过 -Ddbus=false meson 配置标志禁用)
  • libGL、libEGL、libepoxy(可选,可通过 -Dopengl=false meson 配置标志禁用)
  • libpcre2(可选,可通过 -Dregex=false meson 配置标志禁用)
  • libev
  • uthash

如果你的系统上没有 libconfig >= 1.7,meson 将尝试从 git 构建它。在这种情况下,你还需要 cmakegit

在基于 Debian 的发行版(例如 Ubuntu)上,所需的软件包是

libconfig-dev libdbus-1-dev libegl-dev libev-dev libgl-dev libepoxy-dev libpcre2-dev libpixman-1-dev libx11-xcb-dev libxcb1-dev libxcb-composite0-dev libxcb-damage0-dev libxcb-glx0-dev libxcb-image0-dev libxcb-present-dev libxcb-randr0-dev libxcb-render0-dev libxcb-render-util0-dev libxcb-shape0-dev libxcb-util-dev libxcb-xfixes0-dev meson ninja-build uthash-dev

在 Fedora 上,所需的软件包是

dbus-devel gcc git libconfig-devel libev-devel libX11-devel libX11-xcb libxcb-devel libGL-devel libEGL-devel libepoxy-devel meson pcre2-devel pixman-devel uthash-devel xcb-util-image-devel xcb-util-renderutil-devel xorg-x11-proto-devel xcb-util-devel

要构建文档,你需要 asciidoctor

构建

$ meson setup --buildtype=release build
$ ninja -C build

构建的二进制文件可在 build/src 中找到

如果库和/或头文件安装在非默认位置(例如在 /usr/local/ 下),你可能需要告知 meson 它们的位置,因为 meson 默认不会在这些位置查找依赖项。

你可以通过在运行 meson 时设置 CPPFLAGSLDFLAGS 环境变量来实现。如下所示:

$ LDFLAGS="-L/path/to/libraries" CPPFLAGS="-I/path/to/headers" meson setup --buildtype=release build

例如,在 FreeBSD 上,你可能需要使用以下方式运行 meson:

$ LDFLAGS="-L/usr/local/lib" CPPFLAGS="-I/usr/local/include" meson setup --buildtype=release build
$ ninja -C build

安装

$ ninja -C build install

默认安装前缀为 /usr/local,您可以通过 meson configure -Dprefix=<path> build 更改它

如何贡献

欢迎所有贡献!

您认为应该包含在 picom 中的新功能,或您发现的 bug 的修复——请提交一个 PR!

您可以查看 Issues

对文档和 wiki 的贡献也深表感谢。

即使您不想为 picom 添加任何内容,通过编译和运行此分支,并报告您发现的任何问题,您仍然在提供帮助。

成为协作者

成为 picom 的协作者需要大量的时间投入。您被期望回复问题报告、审查 PR,有时修复 bug 或实现新功能。您将无法直接推送到主分支,并且您的所有代码仍然必须经过代码审查。

如果这听起来不错,请随时联系我。

贡献者

参见 CONTRIBUTORS

原始 Compton 项目 的 README 可以在 这里 找到。

许可

picom 是自由软件,根据 MITMPL-2.0 软件 许可证提供。有关详细信息,请参见各个源文件。