What is the preferred way of distributing (large) package assets?

I have done a slides template for the touying-package that mimics an official template of my university. I have gotten some requests for it and are considering if it should be on the Typst universe.

Now, associated with the template there are a number of title backgrounds, in total 13 backgrounds of 1-2 MB each. Looking at other packages, it seems that such large files are not normally distributed with the package.

  1. is this correct?
  2. if so, is there a preferred, canonical way, to distribute such files? One way I guess would be to just put a link in the corresponding README.md where they can be downloaded.

The most concrete precedent for package size that I know of is here: matryoshka:0.1.0 by freundTech · Pull Request #780 · typst/packages · GitHub. 11MB is at the very far end to what can, in theory, be accepted.

For your use case, I’d go with option 2: separately distribute these large assets and provide setup instructions. A package that uses this approach is fontawesome – Typst Universe; in that case, one reason for it is that fonts can’t reside in packages, but I think it still provides a template for cases like yours.

Perfect, I’ll do that then to keep the package small.

Incorrect. Just by searching the repository with something like dust quickly reveals that auto-jrubby far exceeds this amount. auto-jrubby:0.3.4 got merged with total size of ~55.87 MiB, while the largest file is ~43.74 MiB. Some other packages also have a total size of over 20 MiB.

This actually means that matryoshka should now be allowed, the way I see it.

whoa, interesting. I wonder if that was a conscious decision or an oversight – I’m leaning towards thinking the latter.

I don’t know how this can be a 7th oversight if since the first version there was an 11.4 MiB Wasm file, and they were reviewed by 2 people.