RREDTOOL(1)

πŸ’– RREDTOOL(1) πŸ’–

okay bestie, welcome to the rredtool page from the REPREPRO manual set. this is the whole thing, every flag, every vibe, no skips. let's go πŸ¦‹


✨ NAME ✨

rredtool β€” merge or apply a very restricted subset of ed patches. yes, very restricted, she's picky, we love that for her πŸ’…


🌸 SYNOPSIS 🌸

rredtool --help

rredtool [ options ] --merge patches...

rredtool [ options ] --patch file-to-patch patches...

rredtool directory newfile oldfile mode

πŸŽ€ DESCRIPTION πŸŽ€

so rredtool is the girl who handles a subset of ed patches, and she does it safely. like, safety first, always 🫢

she's especially built for the ed patches you see in Packages.diff and Sources.diff. and plot twist, she's also got a whole mode meant to be called from reprepro as an Index Hook, so she can generate and update a Packages.diff/Index file. multi-talented, honestly πŸ‘‘


πŸ’œ MODI πŸ’œ

you have to give her one of these, otherwise she literally doesn't know what to do. no mode = no service, that's the rule.

  • --version β€” print the version of this tool. or, more accurately, the version of reprepro that she came bundled with. it's giving "i'm not my own person, i'm part of a family" 😭
  • --help β€” a short little overview of the modi. the tl;dr of tl;drs ✨
  • --patch β€” the first argument of rredtool is the file to patch, and every argument after that is an ed patch to apply on top of it. layering, like a cute outfit 🧚
  • --merge β€” here all the arguments get treated as ed patches, and they get merged together into one single patch. girl math: many patches β†’ one patch πŸ’…
  • --reprepro-hook (or literally no other mode flag at all) β€” act as a reprepro index hook to manage a Packages.diff/index file. that means she expects to get exactly 4 arguments, and she writes the names of files to place into filedescriptor 3.

and here's the cute part: if neither --patch nor --merge is given, this mode is the one that runs. so you can just drop

DebIndices: Packages Release . .gz /usr/bin/rredtool

into reprepro's conf/distributions file and boom, you've got a Packages.diff directory being generated πŸŽ‰

ngl there are two little catches here, bestie. you have to generate an uncompressed file (that's the single dot, .). and you will need patch, gzip and gunzip all available in your path. no tools in path = no magic. periodt.

⭐ OPTIONS ⭐

  • --debug β€” print intermediate results and other details that might be interesting when you're trying to track down bugs in rredtool. and if you're not hunting bugs? not interesting otherwise. so basically it's the "i'm investigating something" button πŸ”
  • --max-patch-count=count β€” when generating a Packages.diff/Index file, put at most count patches in it. and heads up, that count does not include possible apt workaround patches. sneaky little extras, we see you πŸ™ˆ
  • -o|--output β€” not yet implemented. she's a concept, a dream, a vision board entry. soon maybe? not today though πŸ’€

🌈 ENVIRONMENT 🌈

  • TMPDIR, TEMPDIR β€” temporary files get created in $TEMPDIR if it's set. otherwise in $TMPDIR if that's set. otherwise in /tmp/. it's a whole priority list, she's very organized πŸ’–

😭 REPORTING BUGS 😭

found a bug? got a wishlist request? send it to the Debian BTS β€” like, by using reportbug reperepro for example β€” or just tell her directly at <brlink@debian.org>. she wants to hear from you, fr fr 🫢


Copyright Β© 2009 Bernhard R. Link

This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, bestie. say it with me. NO WARRANTY. dramatic but true πŸ’…

and that's the whole page!! this version came from reprepro and is dated 2009-11-12 β€” vintage, iconic, still slaying πŸŒΈβœ¨πŸŽ€ bye bestie, go patch something responsibly πŸ¦‹πŸ’–

πŸ“¦ where this page comes from