Hacker News new | past | comments | ask | show | jobs | submit | infinisil's comments login

> And if that's not already bad, I found this section of the docs recently and it said "This section has been moved to pkgs/README.md.", but when I read the README file, it doesn't have what the test package example I was looking for! This is... annoying

That's on me, sorry! Ironically this was the artifact of a pretty large effort to _improve_ documentation [1]! This evidently wasn't executed perfectly, but I was also able to make many desperately needed cleanups in turn.

[1]: https://github.com/NixOS/nixpkgs/pull/245243


I'm afraid the letter spread some misinformation: The meson RFC has in fact not been approved: https://github.com/NixOS/rfcs/pull/132

For a discussion on this, see https://github.com/KFearsoff/nix-drama-explained/issues/1


Doesn't that get the timeline backwards? I thought the RFC was opened in response to inaction on the part of switching to Meson, which had been informally agreed-on.


I'm going to quote https://save-nix-together.org/:

> Single-handedly blocking Meson, which has a passed RFC, for five years because he doesn’t know meson but knows his own build system

I don't know about exact timelines, but the letter is definitely wrong about this part.


This is a great post, very well said!

Over the weekend I’ve been working with NixOS foundation members and other community members to address what you’re describing, and I’m happy to say that the foundation is very willing to delegate governance to the community!

This kind of thing takes time to erect, but I’m doing my best to push this swiftly while trying to limit burnout. Stay tuned for a statement from the NixOS foundation this week!


Maybe if you're up to speed with the internal politics of the nix project. If you're not it reads like a lot of grandstanding, and asking people to resign, without giving concrete examples of what has gone wrong.


Flakes has an unfortunate past [1]. The fact that so many people are using Flakes now and treating them as stable makes it effectively impossible to make drastic changes, even though the design is flawed in many ways [2]. Nevertheless, the Nix team is discussing the stabilisation in recent weeks, with the tendency to not make breaking changes, but improving the design in the long term.

[1]: https://nix.dev/concepts/faq#why-are-flakes-controversial

[2]: https://discourse.nixos.org/t/experimental-does-not-mean-uns...


For some more context: Flawed as they are, Flakes solve a large number of problems Nix experiences without them. This is why I, and presumably many others, use them even in their current experimental state.

An RFC was recently accepted to commit to forming a plan towards stabilization of Flakes: https://github.com/NixOS/rfcs/pull/136

Personally, I don't believe there won't be any breaking changes, but I also believe that the stabilization of Flakes is still a ways away and hope that there will be a reasonable migration path.


I sometimes just hope a new Nix but rewritten from scratch according to 2020s best practices instead of 2000s comes before too long.

With a transpiler to convert Nix to whatever it uses. Nickel?


I spent half of last week trying to make productive use of Nickel, and it's just... not a very fun experience.

Maybe it'll be better someday? We can hope. It's certainly incomplete right now, and the documentation is mostly nonexistent, but I don't think my use-case (incrementally replacing Nix) is supported at all.


At some point, my developer intuition says we'll get something with the core good ideas of Nix, but simplified.

The problem is that implementation of these ideas is fairly hideously complex for the intelligences of most current humans, and that simplifying that complexity requires even MORE intelligence (or more years of more people staring at the problem until the simpler picture becomes clearer).


That's half the argument for Guix, and the same train of thought that led me to Mercurial back in the 2000's.

For better or worse, Nix has owned the zeitgeist for several years now, and I'd be surprised to see it dethroned before the next paradigm shift.


All I really want is the Guix api ontop of nixpkgs packages.


And here I want GNU Guix but with an ML language instead of LISP :)


I find Guix to be much easier to use. Simpler syntax, and it feels like there's more emphasis on being user-friendly. If enough people switched and helped with packaging, there would be basically no downsides. (a big "if", of course)


Maybe I'm dreaming, but a nix-alike built on CUE would be fire.


What I heard Eelco say in a recent conference is that 'nix build' will work with 'old flakes' but as soon as you do a 'nix flake update ' you might have to adapt your flake to the new conventions.


> flake.nix is not written in Nix

Well, how did I not even realize that until now? Wow. An out-loud "holy shit" was hearable over here as I learned THAT one.


Hello, the person you're speaking about here. I appreciate all the concern but I'm actually doing very good! While working on Nix was originally a hobby for me, I am now getting paid to do it, so it doesn't have to eat up any of my free time. I have healthy relationships with my family and friends, seeing people every weekend. And even if I'm not very good at it, I practice playing an instrument for about an hour every day and take lessons weekly!

I also want to mention that I usually don't argue much about issues. Most of my time is spent on making concrete improvements to the ecosystem :)


Hello Infinisil! Your contributions to Nix are very appreciated. I am sorry you had to defend yourself against baseless speculation like above.


I apologize that I overestimated how much time/effort it would take to contribute at the level you do to the point where I baselessly assumed other elements of your life were out of whack as a sacrifice. Thank you for all you do for the open source community.


I think https://lobste.rs/ is pretty good at staying focused on programming


Will check, thanks!


I've got a similar setup myself, check out https://lobste.rs/s/yppnts/tailscale_on_nixos_new_minecraft_... where I describe how I did it. It's quite custom but all open source. https://github.com/infinisil/on-demand-minecraft is the main part


Fancy! At first look it’s a no-brainer to go with, so either our setup existed before yours was public or I did a shoddy job at researching options.

Part of my idea was an actual web home for the server (leaderboard, map, etc.) so if we play MC again I will see if that is possible with your project.


It's referring to the ncurses library: https://en.wikipedia.org/wiki/Ncurses


It would even suffice to just swap two random elements every iteration!


My gut says that combining that with other sort cycles in some magic ratio could do magical things. I'm quite wrong quite often ofc but the adventure is out there!


Fun fact: Fisher-Yates samples a uniform distribution over permutations and is therefor capable of producing any permutation, so you can sort any array in linear time using Fisher-Yates with its RNG replaced by a appropriate oracle. (So the complexity of sorting a array mostly reduces to the complexity of determining which permutation it's in relative to a sorted version.)


I think most C++ implementation of bogosort use std::next_permutation


Scion is such an effort: https://www.scion-architecture.net/


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

Search: