Learning From the RC Zulip – Nix


This week I am going to go through a make a post that is purely my favorited links/posts from zulip. But right now I am going to talk about what I learned from Zulip!

Vaibhav posted a video of a presentation he gave on Nix. I had never heard of Nix. So I figured I’d watch the video.

What is a package manager? Many of you who use Macs have probably used Brew  or MacPorts. There also used to be something called “Fink”, which apparently still exists, but no one talks about it any more.  On Linux/Unix we have apt-get, yum, and some others. A package manager just manages installs on your computer.

I have never actually packaged anything with any of these tools, although I plan to for the prayer-cli in the next month.

Nix is a functional based package manager. Everything is installed into /nix – rather than say in ../Cellar with Brew.  A cool thing about Nix is that you can create separate environments with separate packages.  This feature makes it really appealing to use nix.

There is an operating system built on top of Nix – NixOS .  The benefit seems to be the ability to control your configuration settings.  I have not installed  a new os in years. I use a mac so all my upgrades are handled by the automatic upgrades. And remotely I’ll spin up ubuntu instances often running docker.

But what would I want in an operating system? Ideally something less magical. I really dont know what is going on under the hood of my mac or my ubuntu installs.  The config files on Nix make this much more transparent.

So I have not used Nix for anything yet but I want to try it out. I love learning about new tools on the RC Zulip and thanks to Vaibhav for posting about this.