Nix

DevOpsDays Oct 2015

the purely functional package manager

#nixos

@garbas

DevOps today

DevOpsDays Oct 2015

Bundler, Cabal, Composer, CPAN, CRAN, CTAN, EasyInstall, GoGet, Maven, npm, NuGet, OPAM, PEAR, pip, RubyGems, ...

brew, apt-get, yum, rpm, emerge, ports, ...

virtualbox, docker, vmware, vagrant, rocket, docker, Xen, lxc, ...

Travis, Soucelabs, Jenkins, Hudson, ...

Ansible, Chef, Puppet, Fabric, ...

Don't reinvent the wheel?

DevOpsDays Oct 2015

Why Nix?

multi-user

multi-version

portable

Why Nix?

multi-user

multi-version

portable

Give me moar!

reproducability

atomicity

isolation

complete dependency

Give me moar!

reproducability

atomicity

isolation

complete dependency

Give me moar!

reproducability

atomicity

isolation

complete dependency

Give me moar!

reproducability

atomicity

isolation

complete dependency

Give me moar!

reproducability

atomicity

isolation

complete dependency

And moar!

one tool to rule them all

play nice with any tool

And moar!

one tool to rule them all

play nice with any tool

So, where is the catch?

Comprehensive manual, but no tutorials

Lack of UX in cli tools

Steep learning curve

Is this all?

Hydra

NixOS

NixOps

Thank you

 

NixOS conference

14. - 15. November 2015

Berlin

http://conf.nixos.org

 

Rok Garbas, @garbas

Nix - The purely functional package manager

By Rok Garbas

Nix - The purely functional package manager

NixOS is a Linux distribution with a unique approach to package and configuration management. Built on top of the Nix package manager, it is completely declarative, makes upgrading systems reliable. Declarative specs and safe upgrades make NixOS a great system for DevOps use. NixOps, the NixOS cloud deployment tool, allows you to provision and manage networks of NixOS machines in environments like Amazon EC2, VirtualBox, ...

  • 2,364