Friendly forks of upstream projects.
When an upstream project we depend on is unmaintained, slow to move, or simply missing something we need, we fork it here rather than vendoring a patch and forgetting about it. The fork stays honest about what it is: upstream keeps the credit, the licence stays upstream's, and every change is one we would happily see merged back.
If you can get a fix upstream, do that first. These forks exist because that was not possible or not timely — not because we think we own the code.
- xz — a fork of
ulikunitz/xz, in two passes. First decoding speed: the
per-operation allocations removed, a branchless range decoder, match copies by pattern
doubling, and a
ParallelReaderthat decodes the blocks of a multiblock archive concurrently. Then robustness against archives that were built to break a decoder — impossible sizes rejected, the stream index read incrementally and bounded so the backwards walk terminates, the dictionary grown on demand rather than up front, andCloseable to cancel a read already blocked in a worker. Upstream appears inactive; the changes are deliberately kept in a shape that could be carried over if anyone has the time. - erofs — a fork of
erofs/go-erofs: a pure-Go library for reading and
creating EROFS filesystem images through the
standard
fs.FSinterface, no CGO. The work here is mostly about surviving images we did not write — allocations bounded by what the image can physically hold, cyclic directory graphs and oversized directory and symlink sizes rejected — alongside correctness fixes (fs.FScontract conformance, chunk extents mapped at block granularity with holes preserved, setuid/setgid/sticky bits kept on both the read and write paths) and additions to the writer. - grid-clock-screensaver — a fork of chrstphrknwtn/grid-clock-screensaver, a word-clock screensaver for macOS, ported to modern macOS.
Projects here are provided as-is, best-effort, without warranty.
- Contributing guide — upstream first, then sign-off (DCO), commit signing and the pull request flow.
- Security policy — never report a vulnerability in a public issue, and note that a flaw in forked code is usually upstream's to fix.
- Bugs and ideas go to the issue tracker of the repository they concern.
The sibling organization farcloser holds the tooling and libraries these are built with.