So Ollama are basically forking a little bit of everything to try and achieve vendor lock-in. Some examples:
The Ollama transport protocol, it just a slightly forked version of the OCI protocol (they are ex-Docker guys). Just forked enough so one can't use dockerhub, quay.io, helm, etc. (so people will have to buy Ollama Enterprise servers or whatever).
They have forked llama.cpp (I would much rather we upstreamed to llama.cpp than forked, like upstreamining to Linus's kernel tree).
They don't use jinja like everyone else, they use this:
The first 2 points do point to Ollama neglecting the community and not contributing to upstream. For the lack of Jinja templates I would have thought that's just from it being written in Go and using the Go templating engine instead.
https://news.ycombinator.com/item?id=42886680