A NixOS Conference.
Thanks to the heroic efforts of the CCC Video Operation Center, all talks are now available on YouTube and media.ccc.de.
In this talk I'll discuss the state of the NixOS project and future plans. These include things like:
Python packaging is one of the oldest packaging ecosystems. We will look into how Python currently works in Nix, what are caveats using the current state and what are short-term and long-term possible solutions moving forward.
I will assume you have basic Nix language familiarity and build on top of that.
Nix concepts and ideas are revolutionary. All of us who use Nix/NixOS on daily basis understand how it works and why it works this way. But it took us quite some time to get here.
Users just starting with Nix/NixOS are facing many problems, which range from Documentation, UX of our command line tools, Interacting with community, ... and many other areas.
I would like to share my views how we can make Nix/NixOS friendlier to beginners without much effort.
The Nixpkgs infrastructure for Haskell packages has evolved over the course of several years, and the result of that process is a fairly sophisticated machinery that few people understand in its entirety. The purpose of this presentation is to take a look inside of that infrastructure and to explore ...
For each of these topics, we'll discuss the current solution, the motivation for the choices underlying that solution, and the known issues and limitations.
The targeted audience are experienced Nix hackers with some understanding of Haskell's Cabal build system. Beginners should be able to follow most of the talk too, though, as we'll focus on algorithms and structure rather that spending our time reading code. Instead, the presentation is intended to enable its audience to read (and modify!) the code themselves afterwards.
In this talk I'll discuss how we used Nix in production at Fynder - a London-based startup building a simple booking system for independent fitness instructors. We'll look at how Nix is used to create development environments to write Haskell code, and how these definitions can be re-used for production deployments and continuous integration with Hydra. We'll also look at how NixOS and NixOps are used to create deployment specifications.
Ok, let's make this straight, for those who might think that nixos is just a toy you eat for breakfast. What about running google kubernetes on a deticated cluster? full of nixos machines! in production! with virtualized networking and distributed storage! Ec2, you can just go to sleep!
In the Nix project, we strive to fully automate deployment processes for many kinds of systems, such as individual packages (Nix) and entire system configurations (NixOS) while providing a number of important quality attributes such as declarative, reliable and reproducible deployment.
Lately, the microservices paradigm gained a lot popularity and it is also desired to automatically deploy such systems that are composed of distributable units, which may have a number of complicated technical and non-functional requirements.
Moreover, we also want to have the same or similar deployment quality properties as the Nix package manager while deploying them.
In this talk I'll show Disnix, a Nix-based service deployment tool that can be used to automatically deploy service-oriented systems into networks of machines and I will explain its underlying concepts.
Additionally, I will show a number of public hands-on example cases each covering a specific deployment objective/property (such as heterogeneous network deployment, service compositions and deployment planning) and a real-world deployment scenario combining several of these aspects.
A lightning talk is a very short presentation lasting only a few minutes, given at a conference or similar forum. Several lightning talks will usually be delivered by different speakers in a single session, sometimes called a data blitz. More
On Saturday night we meet for beers at Volksbar on Rosa-Luxemburg-Platz, opposite the Volksbühne theater. The bar is easily reached from subway station Rosa-Luxemburg-Platz (U2) or Rosenthaler Platz (U8) (map)
The semiconductor industry is highly automated; building a SOC is very similar to building a software package.
Except the build times are weeks instead of minutes.
Nix has a feature set well suited for taming this flow:
With nixcad, we use nix to develop, verify, and assemble a real SoC:
Partitioning:
This talk/demo walks participants through the process of setting up and deploying a small web service written in the FSharp programming language. It is intended for novice to intermediate NixOS and FSharp users and those interested alike.
I will begin with a brief introduction to F# and some fundamental concepts and ideas of the language. This will not go as deep as explaining Mon ads in F#, but will provide some overview of common idioms and styles.
Next, I will demonstrate how to set up a project using a publicly available template and the build environment (Emacs/evil, also the MonoDevelop IDE) and move on to live-coding a small web service in F# using the Suave.io framework.
Finally, the newly created application will be deployed locally using a custom nix expression and a systemd service to manager/monitor it.
A partitioner that allows for fully declatarive storage specification and is thus able to turn the currently running system into NixOS without losing data.
While this is generally useful even for non-NixOS distributions, it's especially useful for bootstraping NixOS on various dedicated server hosters and/or other situations where direct hardware access is not available.
This talk describes the possible use cases of it and the technical details about the implementation.
In this talk, we will give an overview of the usage of Nix within LogicBlox. For 4 years, we have used Nix to improve our build, test and deployment infrastructure, and we are using NixOS heavily in production. We would like to highlight why we feel Nix is awesome and give some insight in how we are trying to give back to the Nix community.
In the Internet era, we have to ship security updates in a matter of hours. The way we manage security updates today does not scale, and it is bound by a critical path. In order to reduce, the round-trip, we deliberately excluded most of the packages.
This presentation introduces a new way to handle security updates, in a manner which can scale with the number of computer in the buildfarm. Thus delivering updates as fast as each project can re-compile.
An unconference, also called OpenSpace conference is a participant-driven meeting. The term "unconference" has been applied, or self-applied, to a wide range of gatherings that try to avoid one or more aspects of a conventional conference... More
A lightning talk is a very short presentation lasting only a few minutes, given at a conference or similar forum. Several lightning talks will usually be delivered by different speakers in a single session, sometimes called a data blitz... More