1 unstable release
new 0.1.0 | Nov 21, 2024 |
---|
#41 in #split
14KB
296 lines
range-split
A subset of the UNIX split
command built with a PRNG for creating files of differening and deterministic sizes, seeded from the input.
Quick start
Use cases
Hosting large files in a repository
There's a bit of fluffling around but this can be used to host large files in GitHub without them knowing.
# archive, compress, split
INPUT_DIR="path/to/big/directory"
PREFIX=".parts/"
RANGE="(0KB,50MB)" # 50MB is GitHub recommended max size.
tar cf - "$INPUT_DIR" | xz -9 -c | range-split -vvvv --factor 16 --prefix "$PREFIX" "$RANGE"
# concatenate, uncompress, unarchive
cat "$@" | xz -d -c | tar xf -
Nix (Flakes)
This library is available as a flake.
{
inputs = {
range-split.url = "github:waynevanson/elevated-cycling";
};
outputs = {}: {
};
}
Dependencies
~2.1–2.9MB
~57K SLoC