Hey Evan! I love this and am working on getting a hold set up in my homelab.
This got me thinking. Before I knew atcr existed I registered registries.social with the same basic idea, but also to eventually take on NPM, PyPI, RubyGems, etc. kinda like GitHub Packages. I think hold could be an excellent starting point, and I may fork this to do a POC with NPM. If it bears fruit, would you be interested in an upstream contribution?
I don't plan on supporting other packages or repositories outside of the OCI standard. But if you find any bugs or have suggestions on how to improve it for my specific usecase, PRs/Issues are welcome.
But I think you are better off taking the concepts of PDS + S3 api, etc and building something custom.
Holds (name tbd) are essentially a PDS with a single account backed by S3 storage. Similar approaches to this are Streamplace and Tangleds Knots. While I think its the current best approached to shared semi-private/protected data, I don't think its novel.
This using a lot of naming that is very thematic to my project, but not practical in other projects, and much of the custom work is niched specifically to OCI containers and my io.atcr.* lexicons.