Hacker Newsnew | past | comments | ask | show | jobs | submit | dnr's commentslogin

Everything you said "should" is exactly what Nix and NixOS is.


The problem is that "should" is papered over a system not designed that way from the start, and in a heterogeneous world which operates in its own way, not Nix's way.

So it's just an eternal battle between the real world and the fantasy Nix world, built on an army of thousands of volunteers writing up .nix files and contributing packages, and trying to tame the beast of Unix complexity.

Except most of us are just trying to get things done and now I work in a shop where I can't even run a development setup with my favoured IDE, or just "cargo run" my package, because Nix has been placed in the middle of everything.

Clearly in a sincere effort to tame complexity, but in the process creating a whole new world of it, with a lot of normative lifestyle assumptions.

To me... in my experience... Nix promises a lot more than it can realistically deliver, comes with a totalizing world view, and in practice ends up making life more complicated unless you completely and totally buy into its way of doing everything, and are willing to leave many of your old tools and practices behind.


The right way to tame complexity is not that much of a hassle. This is why virtualization and containers have been so successful. Make the OS immutable by converting into a nested Russian doll of OSes with specific instances being mutable but also disposable.

It’s ugly in its own way but it has the virtue of not exchanging one ugly complexity tax (OS rot and manual admin) with another (a complicated “manager” that wants to get in the way).


I kind of dig the idea of a unikernel world where there's just a hypervisor and applications running directly on top of it shipping only the bits of the OS they need.


Hey, I sorta did this. Lazy substitution, at least, not lazy build. Plus a bunch of tricks to speed up downloads.

https://github.com/dnr/styx/

Lazy build sounds tricky: you don't know the contents of the package before you build it, so you don't even know what to symlink into /run/current-system/sw. I guess you'd have to have some kind of wrapper. Maybe similar to comma.

I just solved that part by setting up CI for most of my system config (integrated with the above).


Temporal can also run on Cassandra, which scales much larger than Postgres (if you put in enough effort). It can also be replicated across regions for high availability. It's already running some pretty huge use cases.

(I work at Temporal)


Oh come on, when you click through the setup through to Cassandra the documentation states that cassandra support was deprecated in 1.21 and to migrate to a "supported" database: https://docs.temporal.io/self-hosted-guide/visibility#cassan...


You're looking at the docs for "visibility". Visibility is a separate eventually-consistent data store off to the side that's used for certain queries so it can be scaled independently of the main data store, and indexed in fancier ways. The main data store for all the stateful and transactional stuff has always, and probably will always, support Cassandra. For visibility, the recommendation for high scalability is currently Elasticsearch.

Temporal may have properties that make it not a good fit for a particular use case, but scalability is really not one.


I'm also using NixOS and working on Go projects, and had to deal with out-of-date Go releases. Nixpkgs generally does get the latest Go versions pretty quickly, but only in the unstable channels, they're not backported to NixOS releases. You can just grab that one package out of nixpkgs-unstable or nixos-unstable, like:

    (import (fetchTarball "https://github.com/NixOS/nixpkgs/archive/nixpkgs-unstable.tar.gz") {}).go_1_21
where you had `pkgs.go` before (in your shell.nix or wherever).


It wasn't quite immediately, it would take a few hours to detect+revert. And that was only the root fs, there were other places to hide things if you really wanted. But then there were other detection systems too. (Probably fairly different now, I left in '11 too)


turtles all the way down...


The idea that the capabilities of LLMs might not exceed humans by that much isn't that crazy: the ground truth they're trained on is still human-written text. Of course there are techniques to try to go past that but it's not clear how it will work yet.


> The idea that the capabilities of LLMs might not exceed humans by that much isn't that crazy: the ground truth they're trained on is still human-written text.

This is a non sequitur.

Even if the premise were meaningful (they're trained on human-written text), humans themselves aren't "trained on human-written texts", so the two things aren't comparable. If they aren't comparable, I'm not sure why the fact that they are trained on "human-written texts" is a limiting factor. Perhaps because they are trained on those instead of what human babies are trained on, that might make them more intelligent, not less. Humans end up the lesser intelligence because they are trained less perfectly on "human-written texts".

Besides which, no one with any sense is expecting that even the most advanced LLM possible becomes an AGI by itself, but only when coupled with some other mechanism that is either at this point uninvented or invented-but-currently-overlooked. In such a scenario, the LLM's most likely utility is in communicating with humans (to manipulate, if we're talking about a malevolent one).


Oh wow, that just jogged a really old memory. I'm pretty sure I had that one, but can hardly remember anything else. Could it have been Xenocide?

edit: Oh, or maybe Silpheed? This is the closest thing I found with some searching: https://youtu.be/o98xKZk5FOk?t=182


I don't think those are it at least I didn't hear the voice in those videos and I don't quite remember playing those.


Get a fresh cap! The caps only last about a year of heavy use. You can find replacements on amazon and elsewhere. It doesn't even matter if it's really oem, a fresh third party one will still be much better than a worn oem one.


If "two" is acceptable for "many", look at the ODROID-HC4? I made some home NASs out of them.


Actually a huge number of packages in nixpkgs are bit for bit reproducible: https://r13y.com/


That's not "a huge number of packages", that's just the 1500 from the minimal installation. nixpkgs has over 80000. And amusingly enough, Nix itself is one of the (two) non-reproducible packages from the minimal install.


That’s great! This is only testing about 2% of the packages in Nixpkgs, but I bet if you weighted by package use that number would look a lot more impressive. Good work, maintainers!

But I stand by: this is the product of a lot of hard work by dedicated people working towards perfect reproducibility and not (as I thought the original article implied) something that Nix gives you for free.


Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: