HNHacker News
TopNewBestAskShowJobs

infinisil

198 karma · joined January 27, 2017

submissionscomments
infinisil··on Interactive NixOS Tests
> 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

infinisil··on Lix is a modern, delicious implementation of the Nix package manager
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.

infinisil··on Lix is a modern, delicious implementation of the Nix package manager
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

infinisil··on Nix: The Breaking Point
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!

infinisil··on NixOS and Flakes Book: An unofficial book for beginners (free)
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...

infinisil··on Show HN: FlakeHub – Discover and publish Nix flakes
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 :)

infinisil··on Build Your Own X
I think https://lobste.rs/ is pretty good at staying focused on programming
infinisil··on A Census of Minecraft Servers
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
infinisil··on AsciiMol: Curses based ASCII molecule viewer for Linux terminals
It's referring to the ncurses library: https://en.wikipedia.org/wiki/Ncurses
infinisil··on Is this the simplest (and most surprising) sorting algorithm?
It would even suffice to just swap two random elements every iteration!
infinisil··on Cloudflare outage on July 17, 2020
Scion is such an effort: https://www.scion-architecture.net/
infinisil··on I Was Wrong about Nix
- /nix has been the (default) location for at least 15 years without problems, changing this now just because Apple messed with this would be very strange

- With Nix, every path in /nix/store has its own ./bin, ./share, ./lib, etc. As such, putting /nix anywhere but in / doesn't make much sense

- And honestly, it's just short, fresh and distinctly different. The path symbolizes that Nix isn't bound by the conventions of other distro's

And problems with changing this now:

- It would be a huge amount of effort, there's many places where this location is assumed, not only in code, but also by people

- Finding the workforce to actually do this change will be near impossible, as the only benefit is a slightly easier installation for the latest macOS version, which is not Nix's main platform

infinisil··on I Was Wrong about Nix
They are using a Docker multi-stage build in the very Dockerfile they showed..
infinisil··on End-of-Life Announcement for CoreOS Container Linux
As choward already mentioned, I think NixOS is a very good choice: aarch64 is decently well supported with a bunch of people running NixOS on their Raspbys, and cross compilation support is really good too if needed. See https://nixos.wiki/wiki/NixOS_on_ARM/Raspberry_Pi for more info, or hop into #nixos and/or #nixos-aarch64 on Freenode for help
infinisil··on Show HN: Hacker News Trends
You should be able to make the webserver reverse proxy from https://eliot-jones.com/hntrends to http://localhost:5690, e.g. with nginx [0] and httpd [1]

[0]: https://docs.nginx.com/nginx/admin-guide/web-server/reverse-... [1]: https://httpd.apache.org/docs/2.4/howto/reverse_proxy.html

infinisil··on Opensourcing the Universal Package Manager
Yes Nix has been around for a while and is a very good package manager. But please don't be disrespectful to everybody who doesn't know about it, it's still rather unknown in general.
infinisil··on Show HN: Duple – Private cloud at home
From what I can gather from the FAQ, this won't work for routers behind a NAT, which is the case for me and I assume many others too, this should probably be mentioned somewhere.

A bit worrying that it'll be forever closed source, especially since it needs to expose your router to the internet and that it's written in C and also this sentence from the FAQ:

> Everything was built from scratch

infinisil··on Google Starts Selling Its Titan Security Key in Canada, Japan, the UK and France
Not sure how I feel about Google entrenching itself in yet another part of the technology stack
infinisil··on A man who ran out of air at the bottom of the ocean
However, this won't bring you back, it will just bring back a clone that is exactly like you.
infinisil··on Google Fights Back
> already available in 44 states

I'm a bit disappointed by all big companies focusing on the states. Fact is, over 95% of people don't live in the US. Every time I see some fancy new technology, chances are I'll never get to use it in my country.

infinisil··on What's Going Down at the Tiobe Index? Swift, Surprisingly
> The first two years it was pretty upfront about being a work-in-progress that wasn't for people who wanted something stable

I've been very much on the Swift train in its first 2 years, but I've never heard of anything like that. Do you have a source?

infinisil··on What's Going Down at the Tiobe Index? Swift, Surprisingly
If you're doing so much casting you're doing something wrong. Swift's power comes from the type system, which alleviates the need for all casting in general. Instead of using a [String: Any] dictionary which bears no meaning at all, consider converting it to a struct with accessors of the right types. If you work with the type system, Swift will be a joy to use, because that's where it shines.
infinisil··on Firefox Experiments I Would Have Liked to Try
Was the snooze time exponential? If it would e.g. double every time it might just work
infinisil··on Marker: A terminal command palette
It's a bit messy, but everything related to zsh should be in here [1]. Apparently the vim command editor thing comes at least partly from prezto [2]

[1]: https://github.com/Infinisil/system/blob/master/config/new-m...

[2]: https://github.com/sorin-ionescu/prezto

infinisil··on Marker: A terminal command palette
I'm personally achieving something like this with a combination of binding Ctrl-R to fzf's history search and using zsh's vim command edit mode: https://asciinema.org/a/fELHDWUytNGMBEFBGEjo5jJO7
infinisil··on Ask HN: What's your favorite elegant/beautiful algorithm?
> Eller's algorithm creates 'perfect' mazes, having only a single path between any two cells, one row at a time. The algorithm itself is incredibly fast, and far more memory efficient than other popular algorithms (such as Prim's and Kruskal's) requiring storage proportional to only a single row. This makes it possible to create mazes of indefinite length on systems with limited memory.

http://www.neocomputer.org/projects/eller.html

infinisil··on Hacking around with a RealSense depth camera and Python
I almost couldn't watch the videos on this website because of their size, 50MB each! Just a simple `ffmpeg -i in.mp4 -crf 23 out.mp4` reduces the size by a factor of 10 without noticeable difference. If the blog author is reading this, please consider using video compression, not everybody has super fast internet.
infinisil··on NixOS 18.03 Released
There are ways to get around the immutability, but they are very highly discouraged and I haven't seen anybody use them other than newcomers. Think of it like `unsafePerformIO :: IO a -> a` in Haskell.

Namely there is:

- Making the Nix store writable. Normally it's mounted read-only, and only the Nix daemon can write finished deterministic builds there. Often wanted by users who haven't learned how to handle Nix packages, as they just want to change some file in the store.

- Disabling the sandbox. Usually all builds are done in a sandbox which doesn't have network access, read access only to the Nix store and write access only to only the destination directory in the Nix store (with some exceptions), which gives strong reproducability guarantees.

infinisil··on 1.1.1.1: Fast, privacy-first consumer DNS service
9.9.9.9 [1] has been praised by a bunch of people in the thread from a couple days ago [2]. How do those two compare?

[1] https://www.quad9.net/

[2] https://news.ycombinator.com/item?id=16716606

infinisil··on Looking Forward to 2018
NixOS [1] actually has really great nginx integration with just a single line [2]:

    enableACME = true;
This automatically does the ACME thing and sets up systemd units to renew the certificate. Have been using it a while for my (sub)domains and it's worked really well.

[1]: https://nixos.org/

[2]: https://nixos.org/nixos/options.html#%3Cname%3E.enableacme

Page 1 of 3Next →