Hacker News new | ask | show | jobs
by tikkabhuna 25 days ago
There’s no perfect solution here. Publishing to a separate registry can survive a Git repo rename, migration or deletion. Locking into a Git host seems undesirable. By separating VCS and registry they can offer different feature sets. There’s also nothing stopping someone from publishing to multiple registries.
2 comments

The almost perfect solution is Nix
if you mean nix the state declaration, it is a ilusion. when you have packge for debian 12... you just install it. when you have debian 13, you need the package for debian 13 and there's no way around it. nix lies that you don't have to worry about all that. which is only as true as is true with packages. if you can replace -12 with -13 in a non nix setup, your nix "package x" will still work. otherwise you will have to deal with it, just with more layers.

if you mean nixos, that's just starting yet another distro maintenance issue from scratch

I’m super interested in your comment about nix but am not following your example.

Would you mind elaborating why (presumably) nixos (since you gave a Debian example), doesn’t help with this.

it is a distro. it packages code from upstream. it have the same problems as other distros when it came from depencies and managing breaking changes.
Why almost?
FWIW, Go provides a mechanism to abstract the import source, so you can use a vanity domain under your control that resolves to your host of choice.