huntedbytheirs d7d0d2ec6d feat(fetch): download ZUUR recipe directories to cache
Implements tofu.fetch module with fetchRecipe() that downloads
ZUUR recipe directories using a known-file strategy (no directory
listing assumed). Downloads .recipe (required), package.lua (optional),
build.sh (optional), and custom build_script references.

Key features:
- Light recipe scanning for build_system/build_script discovery
- 404 on .recipe → 'package not found' user-friendly error
- 404 on optional files → logged and skipped
- 404 on referenced build_script → real error
- Partial file cleanup on failure
- 5 unittests using python3 http.server for multi-file scenarios

8/8 modules pass, dub build succeeds with warnings-as-errors.
2026-08-08 17:38:41 -04:00
2026-08-08 16:11:02 -04:00

tofu

A package manager for the ZereneOS Unofficial User Repository

What it is

A Dlang wrapper around zeta-toolchain and ZETA for the ZUUR recipe repository, in the style of yay/paru for the ZereneOS ecosystem.

Requirements

  • dub
  • a D compiler (dmd or ldc2)
  • lua
  • curl
  • zeta-toolchain
  • Zeta

Build

dub build

Produces the ./tofu binary.

S
Description
A package manager for the ZereneOS Unofficial User Repository
Readme BSD-3-Clause
241 KiB
Languages
D 97.3%
Shell 2.7%