About

NixCon 2017 was organized in Munich, happened in the amazing rooms of TNG. This post is a small review from my end.

There was also a pre-hackathon, a hackathon and a tiny in-train post-hackathon 😜, notes about these sub-events are in the following posts:

The hackathon notes are not repeated here.

The Fixpoint

If I remember one word from NixCon 2015 in Berlin, that's "fixpoint". If I remember correctly it was a talk by Peter Simons about the Haskell package infrastructure at that time.

It got mentioned again a lot of times during NixCon 2017 and it's somewhat important in order to understand how the overlay concept works.

I like to abuse it also for my Nix based development environments for Python web projects, nix-rhodecode shows where this can lead to. Thinking in layers which are then combined brings a nice option: I can use a tool like pip2nix to generate a good chunk automatically and keep the manual adjustments and tweaks in a separate layer. This way I can always run the automatic generator again without having to worry about my tweaks. This is working really well for me since NixCon 2015 actually.

Overlays in NixPkgs

Nicolas B. Pierron gave a take about this topic: https://youtu.be/W85mF1zWA2o.

Based on the concept of the fixpoint the package collection in NixPkgs is now based on a list of composeable layers. The overlay mechanism allows to add further layers when importing nixpkgs and thus allows to tweak things in a clean way. This allows to add packages or adjust packages in a way so that all other packages will also be based on the modified package in the end.

An empty overlay basically looks as follows:

self: super:

{
}

It's a function which has access to self and super and returns an attribute set.

I have been using this approach after NixCon 2015 to figure out a way how to automate parts of my Python based dependencies for most of my web projects. One example out in the public is inside of the repository nix-rhodecode. After this NixCon I did update it to use the overlay mechanism for a few tweaks to the package set: https://github.com/johbo/nix-rhodecode/blob/master/vcsserver/overlays.nix

Still to be figured out is a nice way to treat the tweaks to the attribute pythonPackages in a similar way.

Run your Nix based company

Got a quite interesting chat about offering Nix consulting with Domen Kozar, he also mentioned this in a talk which he gave: https://youtu.be/dlRuMdm6pRU.

The talk and conversation started to make me think, since i am running my own company and we do mainly Python focused web development. Often we end up taking care of the deployment and using Nix in one or the other way, so maybe it's time to make this our real focus.

I could imagine that this would also allow us to contribute things back in a more regular way.

Kubernetes and NixOPS

Kubernetes and Containers are a big topic, also in the NixOS community it seems. I've found that people use Nix to manage their instances on which they run containers.

Also as a proposed Hackathon topic there was a question around the future of NixOPS in the context of all these container runners which we see emerging. Not sure if it actually happened, still its a relevant question I think.

Python and Nix

One of my favorite topics, since I like to do Python development whenever I can. There was a talk from Sebastian Jordan with details about pypi2nix in this area: https://youtu.be/ezb6a1_dtzQ.

Misc

Borg as a backup solution

An interesting tool recommendation from one of the many chats during the breaks: https://borgbackup.readthedocs.io/en/stable/index.html

Added to my list of tools to try out and inspect™.

Adapters

One lesson learned: You need adapters from something common to an ethernet plug to be able to connect to a wired network. It seems that no normal wifi will sustain a crowd of nerds running a hackathon.

Happy that a shop of Notebooksbilliger was close by and we were able to buy more or less all their adapters. I am still wondering if they see a small spike somewhere in their sales statistics and might wonder how that happened.

Thank you!

For me it's quite amazing what happened around NixCon:

  • I don't remember that I did pay for attending. Whoever made this possible, that's quite amazing if you ask me.
  • On the conference and also on the hackathons there was plenty of food available. Even more amazing if you take the item above into account.

A big THANK YOU! to the people who did organize the event and to the sponsors who gave us a great location, food and drinks, and the most amazing magnetic name stickers I ever got.

Make sure to have a look at the event homepage: http://nixcon2017.org/


Comments

comments powered by Disqus