rebuilderd
git2-rs
rebuilderd | git2-rs | |
---|---|---|
6 | 8 | |
344 | 1,600 | |
- | 0.7% | |
5.3 | 8.0 | |
6 months ago | 7 days ago | |
Rust | Rust | |
GNU General Public License v3.0 only | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
rebuilderd
-
Towards a Reproducible F-Droid
Arch Linux is heavily invested into it:
- https://reproducible.archlinux.org/ - Attempts to reproduce the distributed binary packages from source using reproducible builds tooling. This already works for a big chunk of packages.
- https://github.com/archlinux/archlinux-repro - This is a wrapper for Arch Linux build tooling that creates a build environment in a container that has the same packages installed as the original build environment back then. Software is expected to build reproducible in this environment and many ecosystems already do by default (Rust for example, to name one).
- https://github.com/kpcyrd/rebuilderd - This monitors the packages in Arch Linux, runs archlinux-repro on all of them and hosts the results. There are other projects supported but Arch Linux works best at the moment, and archlinux-repro offers the best integration I'm currently aware of.
There are surprisingly few people interested in running this stack on their own for verification purpose though.
-
Paranoia About Everything
Independent rebuilders can mitigate this to some degree, unless you can compromise all of them in some way. Some are listed on https://rebuilderd.com/, this is based on reproducible builds and only works for reproducible packages/software though.
-
Debian's rebuilds going up in Purdue's rebuilderd instance!
As many of you may know, one of Debian's most pressing issues for a long time has been working towards bit-for-bit reproducibility of its binary packages. Part of this initiative led to the Reproducible Builds project, in which other projects have joined with the goal of having reproducible builds of their instances. Until now, Debian's reproducibility was theoretical, as there was no proper rebuilding tool to verify its binary package reproducibility empirically. Recently, Arch Linux (and specifically one of its Trusted Users, who goes by 'kpcyrd' online, who in addition maintains packages for Debian and Alpine) produced an independent tool for verifying the reproducibility of binary packages called rebuilderd and has had its own instance running for quite some time. Apparently, collaboration between Arch Linux and Debian (and probably many other programmers and projects) lead to Debian's own instance of rebuilderd hosted by the Purdue University. You can see at Debian's reproducibility progress at:
- rebuilderd 0.9.0: reproducible builds verification system used by Arch Linux
- rebuilderd 0.9.0 has been released
git2-rs
-
Downloadig files or git repositories from the web
There are clone methods that do all that. The clone example shows how to use it with status callbacks. Remove all the callbacks, and it is just Repository::clone("url", "destination")
-
Gex: Git CLI inspired by Emac's Magit built in Rust
The correct way of going about this would be to use only the low-level "plumbing" commands of git and not the porcelain. Or you can get even better performance by using https://github.com/rust-lang/git2-rs, which basically reimplements git as a library.
-
[Media] My first rust app, git smart checkout, fuzzy search that branch, I kinda like this language ❤️🦀
You may want into look into this crate: https://github.com/rust-lang/git2-rs
- `Cargo install --git` -- received unexpected content-type
-
Hey Rustaceans! Got an easy question? Ask here (32/2021)!
I want to get the output of git log --follow --format=%aD | tail -1 by using git2-rs. I found git2-rs/examples/log.rs, but I still confused on how to use it.
-
Question about libgit2, working with index does not show on cli `git status`
I am trying to use libgit2 through the rust library git2. I open the default index for the repository, equivalent to git_repository_index. When verifying it's path, it does point to .git/index.
-
Looking for a version control crate
https://github.com/rust-lang/git2-rs uses libgit2-sys which I believe can install git into your finally binary statically.
-
rebuilderd 0.9.0: reproducible builds verification system used by Arch Linux
Yes! We have multiple rust projects in Arch Linux that we've successfully rebuilt, for example rebuilderd or rustc/cargo itself. We occasionally run into projects that aren't reproducible, this is usually due to issues in build.rs. One of the issues I fixed is this one: https://github.com/rust-lang/git2-rs/pull/619
What are some alternatives?
libfaketime - libfaketime modifies the system time for a single application
git-smart-checkout - 🧠 A command-line utility for switching git branches more easily. Switch branches interactively or use a fuzzy search to find that long-forgotten branch name.
pacman-bintrans - Experimental binary transparency for pacman with sigstore and rekor
libgit2 - A cross-platform, linkable library implementation of Git that you can use in your application.
modus - A language for building Docker/OCI container images
rust - Empowering everyone to build reliable and efficient software.
picosnitch - Monitor Network Traffic Per Executable, Beautifully Visualized
Nova - Implementation of "Ray Tracing in One Weekend": https://raytracing.github.io/books/RayTracingInOneWeekend.html
ismyarchverifiedyet - :construction: Experimental script to query rebuilderd for results :construction:
autovet - Automated security testing for open source libraries and applications.
gitoxide - An idiomatic, lean, fast & safe pure Rust implementation of Git