工具

在处理可复制构建时,有几种工具可以让您的生活变得更轻松。

差速器

差速器会试图弄清真相使文件或目录不同。它将递归地解压缩多种格式,并将各种二进制格式转换为更易于阅读的格式用于比较的表格。它可以比较两个tarball、ISO图像或PDF同样容易。查看示例HTML格式文本输出。

主页 吉特 问题 合并请求 Debian包 PyPI公司 Arch Linux包

重建者

重建者监视包linux发行版的存储库,并使用rebuilder后端,如archlinux-repro验证提供的二进制包是否可以复制来自已发布的源代码。

主页 问题 Arch Linux文档 Arch Linux结果

archlinux-repro公司

复制是重建程序后端验证给定Arch Linux包的。它使用嵌入式.建筑文件重新构建相同的构建环境并重复构建然后将输入包与生成的包进行比较在验证构建期间。

主页 问题 Arch Linux包

试镜

如果你想尝试差速器在不安装大量运行时依赖项的情况下,可以使用try.diffoscope.org网站直接从您的web浏览器。轻量级客户端也可用作试镜命令行实用程序。

主页 吉特 合并请求 Debian包 PyPI公司

无序

存在的问题输入顺序不稳定或其他文件系统引入的变体有时很难跟踪。disordfs是一个覆盖FUSE文件系统,它故意引入文件系统元数据的非确定性。例如,它可以随机化读取目录项的顺序。

吉特 合并请求 Debian包 Arch Linux软件包

条带非决定论

构建系统中使用的一些工具可能会以某种方式引入非确定性很难在源代码处修复,这需要后期处理。条带非决定论知道如何规范各种文件格式,例如gzipped文件、ZIP存档和Jar文件。它是用Perl编写的考虑到可扩展性。

吉特 问题 合并请求 Debian包 Arch Linux包

重新测试

repretest在不同的环境中构建相同的源代码,然后检查生成的二进制文件,以查看是否更改环境,在不更改源代码的情况下,更改了生成的二进制文件。

吉特 合并请求 Debian包 Arch Linux包

其他工具

其他

签名的tarballs是可获得的我们的工具。