One useful webpage this project provides is this godbolt for nix:
really useful.
Does not care about flakes and does not care about adding types, the most important omission in Nix. A minor performance bump seems unlikely to make me want to boil the ocean.
For somebody who hasn't used Nix yet, but heard good things about it, why use Tvix instead of Nix? The page didn't seem to mention the reason(s) behind the project.
Does tvix support targeting windows? And I do not mean WSL. iirc, the nix attempted a windows port but there were some hardcoded assumptions made about unix in the implementation that made it intractable, for example the location of the store. Do these issues also hold for tvix?
Looks like the dev team mosly speaks Russian? (Russian is native for me, but I've lived most of my life stateside.)
In Russian, "tvix" is pronounced, roughly, "tweaks" (but with a German - hard "v" - W sound), which to a Russian probably sounds super clever, given what Tvix is (Nix, tweaked).
In English though, how is it pronounced? I'd like to propose "t-f-icks", because it at least sounds like a candy we think the Lebowski nihilists might well have been ordering at a diner.
So, how ready is this for general use? Is there anything still missing in the implementation?
By the way, is there some way to specify dependencies in C? Like requirements.txt in Python, where you put libraries names and versions and the user has to run a single command to install them (and without requiring root privileges)? Is this nix/tvix/guix an equivalent of pip?
TVIX was a media player made by Dvico. I used to have one a few years ago. You may want to check on trademark issues around the name.
Do you put the hash at the end of the dirname in the store?
IIRC, Nix names things like "$unreadable_hash$pkg_name" which makes tab completion impossible in the case someone wants/needs to go spelunking in that directory.
Is the language statically-typed? If not, why not?
There's no need for more fragmentation in this ecosystem. Already package managers are heavily fragmented in the Linux world. This is making a bad problem worse.
It's worth noting that tvix explicitly[1] does not support flakes.
[1] https://lobste.rs/s/ypwgwp/tvix_we_are_rewriting_nix#c_zvtze...
[dead]
PS: TVL is international, but a lot of the development will take place in our office in Moscow. Say hi if you're around and interested!
That's going to be a no from me.
Said it downthread, but saying it again because it bears repeating:
This is a product whose major contributors live in a state prone to very persuasive forms of coercion. Worse, this is a _build system_. Moreover, it's one of the most reticulate build systems on the planet -- I doubt more than a few hundred senior engineers would be able to spot a Jia-Tan-style compromise in the Nix machinery, let alone a remix/workalike of it.
There is currently a war going on. Not a 'war on' drugs, or cancer, or a 'culture war', or any of the other phenomena that Americans routinely nowadays call a 'war', but an actually-actual conflagration involving grads, kinzhals, and, easily, the futures of a couple of well-intentioned engineers in Moscow.
I expect the creators of this product are sincere, serious, smart, kind, generous, funny, honorable people. Yet it is simply too plausible that the FSB could come by and lean on them (or their uncle, or mother, or sister, or...) and have a little something extra put at the very root of the tree, from where it could be folded into any (or every) part of the system.
Open source across international borders is a peacetime phenomenon, as we are all about to discover, methinks. I hope I'm wrong.
Maybe worth mentioning rust and performance more prominently as the motivations.
Is Nix eating the world? We have seen lots of unbelievable projects using it on HN recently. It feels like anyone serious about complex systems and building software are embracing it.
I use it extensively also via nixpkgs, though somehow I have yet to make the leap to full NixOS.
One consideration for anyone who hasn’t jumped in, is that I have nixpkgs on Linux, MacOS, and Win11 hosts. I’ve found that incredibly useful.