Top
Best
New

Posted by birdculture 12/26/2025

Package managers keep using Git as a database, it never works out(nesbitt.io)
784 points | 465 commentspage 8
pxc 12/26/2025|
Loved this article. Just enough detail to make the broad scope compatible with a reasonable length, and well-argued.

I feel sometimes like package management is a relatively second-class topic in computer science (or at least among many working programmers). But a package manager's behavior can be the difference between a grotesque, repulsive experience and a delightful, beautiful one. And there aren't quite yet any package managers that do well everything that we collectively have learned how to do well, which makes it an interesting space imo.

Re: Nixpkgs, interestingly, pre-flakes Nix distributes all of the needed Nix expressions as tarballs, which does play nice with CDNs. It also distributes an index of the tree as a SQLite database to obviate some of the "too many files/directories" problem with enumerating files. (In the meantime, Nixpkgs has also started bucketing package directories by name prefix, too.) So maybe there was a lesson learned here that would be useful to re-learn.

On the other hand, IIRC if you use the GitHub fetcher rather than the Git one, including for fetching flakes, Nix will download tarballs from GitHub instead of doing clones. Regardless, downloading and unpacking Nixpkgs has become kinda slow. :-\

BlueTemplar 12/26/2025||
Wait, isn't fossil based on sqlite ?

Or does fossil itself still have the same issues ?

juped 12/26/2025||
These are actually all problems with using Github as an ersatz CDN.
venturecruelty 12/26/2025||
This is why I don't use programming languages that do that.
0xbadcafebee 12/26/2025||
YOLO software engineering, the hallmark of the 21st century
gjvc 12/26/2025||
sqlite seems to be ideal for a package manager
sigwinch 12/26/2025||
I feel like the rqlite people would have a lot to say about how to coordinate your installations, especially for the high-bandwidth non-desktop installs.

https://news.ycombinator.com/item?id=45257349

mirekrusin 12/26/2025||
...or scm [0]

[0] https://fossil-scm.org

khc 12/26/2025||
seems like the issue isn't with using git as a database, but using github as a distribution mechanism?
tarun_anand 12/27/2025||
why dont we have a P2P transfer platform for this (modulo security)
notorandit 12/26/2025||
Repsy
stephenlf 12/26/2025|
Omarchy
More comments...