<?xml version='1.0' encoding='utf-8' ?>
<!-- Made with love by pretalx v2026.1.0.dev0. -->
<schedule>
    <generator name="pretalx" version="2026.1.0.dev0" />
    <version>0.6</version>
    <conference>
        <title>NixCon 2024</title>
        <acronym>nixcon-2024</acronym>
        <start>2024-10-25</start>
        <end>2024-10-27</end>
        <days>3</days>
        <timeslot_duration>00:05</timeslot_duration>
        <base_url>https://talks.nixcon.org</base_url>
        
        <time_zone_name>Europe/Amsterdam</time_zone_name>
        
        
        <track name="Workshop" slug="4637-workshop"  color="#fa0000" />
        
        <track name="Main room" slug="4638-main-room"  color="#13471e" />
        
    </conference>
    <day index='1' date='2024-10-25' start='2024-10-25T04:00:00+02:00' end='2024-10-26T03:59:00+02:00'>
        <room name='Arena' guid='e8695c4f-89d4-5fd5-bbc7-d17d7e06e297'>
            <event guid='b6ae91b6-7ed6-5eed-b3fb-2389258607e0' id='56828' code='YFVPSX'>
                <room>Arena</room>
                <title>Opening</title>
                <subtitle></subtitle>
                <type>Happy Hour</type>
                <date>2024-10-25T09:00:00+02:00</date>
                <start>09:00</start>
                <duration>00:30</duration>
                <abstract>Keynote</abstract>
                <slug>nixcon-2024-56828-opening</slug>
                <track></track>
                
                <persons>
                    
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/YFVPSX/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/YFVPSX/feedback/</feedback_url>
            </event>
            <event guid='79b2c921-24ae-5091-abe5-635688f36da0' id='56097' code='E9XWGC'>
                <room>Arena</room>
                <title>Nix State of the Union 2024</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-25T09:30:00+02:00</date>
                <start>09:30</start>
                <duration>00:25</duration>
                <abstract>Cover the dynamic landscape of Nix&apos;s growth, innovation, and future possibilities. This session will provide a comprehensive overview of the major milestones Nix has achieved over the past year, the challenges we&apos;ve faced, and the exciting developments on the horizon together with various Nix community leads!</abstract>
                <slug>nixcon-2024-56097-nix-state-of-the-union-2024</slug>
                <track></track>
                
                <persons>
                    <person id='57938'>Ron Efroni</person>
                </persons>
                <language>en</language>
                <description>We will be joined by a handful of our community leads across various teams to review core topics in the ecosystem. We will also be making a few call to actions for areas that need help or support!
Topics will include:
1. Nix in the Numbers - Data
2. Nix Cache
3. Nix Financials
4. Nix Infra 
5. Nix Marketing
6. Sustainable Nix
7. Nix Survey</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/E9XWGC/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/E9XWGC/feedback/</feedback_url>
            </event>
            <event guid='bead5705-5b3c-51c2-a142-1c8af320081a' id='56277' code='QVYXHD'>
                <room>Arena</room>
                <title>NixOS Facter: Declarative hardware configuration for NixOS</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-25T10:05:00+02:00</date>
                <start>10:05</start>
                <duration>00:25</duration>
                <abstract>A quick overview of https://github.com/numtide/nixos-facter, discussing why it was created and the problems it aims to solve.</abstract>
                <slug>nixcon-2024-56277-nixos-facter-declarative-hardware-configuration-for-nixos</slug>
                <track></track>
                <logo>/media/nixcon-2024/submissions/QVYXHD/nixos-facter_FFd4KWW.svg</logo>
                <persons>
                    <person id='58129'>Brian McGee</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/QVYXHD/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/QVYXHD/feedback/</feedback_url>
            </event>
            <event guid='59c2557b-8baf-50ee-a095-7633f3a031fa' id='54296' code='PZKQP8'>
                <room>Arena</room>
                <title>Kubenix: Leveraging NixOS modules to generate Kubernetes manifests</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-25T10:40:00+02:00</date>
                <start>10:40</start>
                <duration>00:25</duration>
                <abstract>In this talk, we take a look at the Kubenix project. Using Kubenix, you can generate Kubernetes manifests with Nix. We will dive into the technical details how Kubenix uses Kubernetes&apos; OpenAPI spec to generate NixOS modules. I will also show you how to use Kubenix to deploy resources in your own cluster. No more templating YAML!</abstract>
                <slug>nixcon-2024-54296-kubenix-leveraging-nixos-modules-to-generate-kubernetes-manifests</slug>
                <track></track>
                <logo>/media/nixcon-2024/submissions/PZKQP8/logo_QXqvi6s.svg</logo>
                <persons>
                    <person id='56353'>Pim Kunis</person>
                </persons>
                <language>en</language>
                <description>Kubenix is currently maintained by Bryton Hall and the repository can be found [on GitHub](https://github.com/hall/kubenix). It also has its own website over at [kubenix.org](https://kubenix.org/).</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/PZKQP8/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/PZKQP8/feedback/</feedback_url>
            </event>
            <event guid='cdd644ad-5ba3-57ea-9929-834d808ecbc0' id='56175' code='KJ7UFE'>
                <room>Arena</room>
                <title>Deploying random AI models: from pip nightmare to dream2nix</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-25T11:15:00+02:00</date>
                <start>11:15</start>
                <duration>00:25</duration>
                <abstract>Or: how I stopped worrying and learned to love docker images</abstract>
                <slug>nixcon-2024-56175-deploying-random-ai-models-from-pip-nightmare-to-dream2nix</slug>
                <track></track>
                
                <persons>
                    <person id='58013'>Yorick van Pelt</person>
                </persons>
                <language>en</language>
                <description>How can we take existing python software, and turn it into a docker image? Can we use the power of Nix? Can we make it easy?

I&apos;ll tell you all about my new half-finished project, where I smash [dream2nix](https://github.com/nix-community/dream2nix) and [docker-tools](https://ryantm.github.io/nixpkgs/builders/images/dockertools/) together to deploy other people&apos;s AI models to the cloud in a reproducible manner.

Along the way, we&apos;ll have brief detours through [flake-parts](https://flake.parts/), docker internals and nvidia software.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/KJ7UFE/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/KJ7UFE/feedback/</feedback_url>
            </event>
            <event guid='0e1059fd-aba9-5774-a85e-be1e2cf62315' id='54970' code='FLPMKH'>
                <room>Arena</room>
                <title>Tvix</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-25T11:50:00+02:00</date>
                <start>11:50</start>
                <duration>00:25</duration>
                <abstract>Tvix is a modern design and implementation of the Nix package manager (GPLv3). It brings a modular architecture in which components such as the build environment or package store are replaceable, which enables new use-cases and platforms.</abstract>
                <slug>nixcon-2024-54970-tvix</slug>
                <track></track>
                
                <persons>
                    <person id='58312'>flokli</person>
                </persons>
                <language>en</language>
                <description>This talk will give an overview on the architecture, a status update on the current state of the project, and an outlook on the roadmap.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments>
                    <attachment href="https://talks.nixcon.org/media/nixcon-2024/submissions/FLPMKH/resources/slides_TmxTJV1.pdf">Slides</attachment>
                </attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/FLPMKH/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/FLPMKH/feedback/</feedback_url>
            </event>
            <event guid='6136b9a9-4a7a-5e5c-8c03-73a83ef5d5d4' id='56246' code='R8ZBWW'>
                <room>Arena</room>
                <title>Clan: Fully-automated distributed NixOS management</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-25T13:25:00+02:00</date>
                <start>13:25</start>
                <duration>00:25</duration>
                <abstract>Self-hosting services empowers you with greater control and flexibility over your data. However, maintaining such systems today often comes with significant technical challenges, including firewall/NAT configuration, data loss prevention, and security management.

The Clan project aims to lower the technical barriers of self-hosting with NixOS, making it accessible even to non-technical users. Our goal is to simplify the installation and maintenance of NixOS machines.

In this talk, we will present the new NixOS extensions we&apos;ve developed to scale self-hosting, including VPN integration, backup management, secret management, a unified CLI for installation and updates, and an inventory system for managing clusters of machines.

We will also provide a sneak preview of the upcoming graphical user interface.</abstract>
                <slug>nixcon-2024-56246-clan-fully-automated-distributed-nixos-management</slug>
                <track></track>
                
                <persons>
                    <person id='58083'>J&#246;rg Thalheim</person><person id='59110'>Kenji Berthold</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments>
                    <attachment href="https://talks.nixcon.org/media/nixcon-2024/submissions/R8ZBWW/resources/nixcon_kUiTAuY.pdf">Slides</attachment>
                </attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/R8ZBWW/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/R8ZBWW/feedback/</feedback_url>
            </event>
            <event guid='dfd1475f-89bc-51ca-a690-9ff3d6c6aade' id='56274' code='RDZVFH'>
                <room>Arena</room>
                <title>hashes all the way down</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-25T14:00:00+02:00</date>
                <start>14:00</start>
                <duration>00:10</duration>
                <abstract>Nix and similar systems are based on hashing their inputs.
I took a really close look at how this works, and I&apos;d like to help you understand it better as well.</abstract>
                <slug>nixcon-2024-56274-hashes-all-the-way-down</slug>
                <track></track>
                
                <persons>
                    <person id='58123'>Martin Schwaighofer</person>
                </persons>
                <language>en</language>
                <description>It&apos;s quite difficult to really understand how the hashing of build inputs works in Nix.
I think one of the reasons for this is that people talking about this, and also the terminology that they use (e.g. content-addressing vs input-addressing), is not about how build inputs are hashed, but about how contents of the Nix store are addressed.
The way Nix is designed, those things are related, but how they are related is complicated, and I don&apos;t think we have good terminology for the bits and pieces involved in the hashing part.

So, ... I took some definitions from the *Build Systems &#224; la Carte* paper, which explain this, added a few definitions of my own, so we can name and talk about the bits and pieces involved, and I&apos;m going to walk you through that.
If that does not sound like fun to you, think of it more as us delving into the abyss of terminology and pedantry together. I am pretty sure there are quite a few people at NixCon who find that appealing.

If you get stuck in said abyss, come talk to me. I am happy to spend NixCon just explaining this over and over again.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments>
                    <attachment href="https://talks.nixcon.org/media/nixcon-2024/submissions/RDZVFH/resources/nixcon2024-hashes-all-the-way-down_3szUAzq.pdf">Slides</attachment>
                </attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/RDZVFH/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/RDZVFH/feedback/</feedback_url>
            </event>
            <event guid='c7361a6b-fee5-5eaf-978e-ebc8240e0d13' id='56447' code='KEJM9Y'>
                <room>Arena</room>
                <title>Deterministic Firmware with Nix</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-25T14:20:00+02:00</date>
                <start>14:20</start>
                <duration>00:30</duration>
                <abstract>This talk explores the application of Nix&apos;s deterministic build principles to firmware development, with a special focus on integrating hardware-in-the-loop (HIL) testing into CI/CD pipelines. We&apos;ll discuss how Nix can enhance firmware reliability, security, and reproducibility by ensuring consistent builds across different environments.</abstract>
                <slug>nixcon-2024-56447-deterministic-firmware-with-nix</slug>
                <track></track>
                <logo>/media/nixcon-2024/submissions/KEJM9Y/lassulus_I5hpyYA.jpeg</logo>
                <persons>
                    <person id='58311'>&#211;li</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/KEJM9Y/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/KEJM9Y/feedback/</feedback_url>
            </event>
            <event guid='aa19e3ab-01b1-58e5-9816-828ad62dc0f4' id='55823' code='J7V3BM'>
                <room>Arena</room>
                <title>Nix as the Swiss Army Knife in Cloud Development Environments</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-25T15:00:00+02:00</date>
                <start>15:00</start>
                <duration>00:25</duration>
                <abstract>In cloud-based development environments, flexibility and on-demand access to the right tools are essential. While many people think of Nix in terms of reproducibility, I use it in a different, somewhat weird way&#8212;to get exactly what I need, when I need it.

In this talk, I&#8217;ll demonstrate how Nix can be a &quot;Swiss Army knife&quot; in GitHub Codespaces, allowing me to manage complex development environments on the fly without much burden. This talk will use Codespaces as an example, but the same techniques can be applied to any remote environment.

Join me in a discovery of how Nix saved my day many times when contributing on many projects I don&apos;t normally work on.</abstract>
                <slug>nixcon-2024-55823-nix-as-the-swiss-army-knife-in-cloud-development-environments</slug>
                <track></track>
                
                <persons>
                    <person id='57709'>Raffaele Di Fazio</person>
                </persons>
                <language>en</language>
                <description>This is an entry level talk. It&apos;s mostly to show that Nix can be used even in a simple way, without going too deep in its understanding.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/J7V3BM/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/J7V3BM/feedback/</feedback_url>
            </event>
            <event guid='44afb0bf-dba3-531c-89a9-2a554d6c1cbb' id='56239' code='XTCGNB'>
                <room>Arena</room>
                <title>Scalable and secure NixOS deploys on AWS</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-25T15:35:00+02:00</date>
                <start>15:35</start>
                <duration>00:25</duration>
                <abstract>In this talk you will learn best practices on how to build your own NixOS images and securely deploy them using autosaling groups, IAM roles and AWS Systems Manager , terraform and GitHub actions as an alternative to NixOps</abstract>
                <slug>nixcon-2024-56239-scalable-and-secure-nixos-deploys-on-aws</slug>
                <track></track>
                
                <persons>
                    <person id='58314'>Arian van Putten</person>
                </persons>
                <language>en</language>
                <description>At Mercury.com we deploy to production dozens of times per day on a fleet of NixOS servers on AWS.  We also host a plethora of supporting services on NixOS like a GitHub actions runner cluster, Prometheus,  and Vault.

In this talk I want to show the various techniques that we use to deploy NixOS at scale. We will cover topics like how to set up your own S3 cache, how to build custom AMIs, how to use Auto Scaling Groups with Instance Refresh for zero downtime rolling releases of stateless software and how to use AWS Systems Manager as an alternative for NixOps to manage long lived stateful services.

I will also show how SSM can be used to gain secure access to servers without exposing them to the public internet and without the need of a bastion host.

I will finally cover how to trigger deploys of your infrastructure from GitHub Actions and how we use Workload Identity (OIDC tokens and IAM roles) as a way to do these securely deploys without needing any static shared AWS Credentials and bastion hosts.

I am planning to open source the Terraform modules and GitHub actions workflows so that you too can quickly set up a security hardened and production ready NixOS deploy pipeline on AWS.

I would also like to briefly go over the roadmap of improvements I am planning for the AWS NixOS images (https://github.com/nixos/amis)</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links>
                    <link href="https://arianvp.github.io/nixcon2024/slides/reveal.js-master/">Slides</link>
                </links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/XTCGNB/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/XTCGNB/feedback/</feedback_url>
            </event>
            <event guid='13afac77-4cfa-573b-a4ed-3c7b615d2d2d' id='54826' code='WN9LDX'>
                <room>Arena</room>
                <title>Thymis - Web Front-end for Managing Multiple NixOS Devices</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-25T16:10:00+02:00</date>
                <start>16:10</start>
                <duration>00:25</duration>
                <abstract>We want to show the community https://github.com/Thymis-io/thymis which is a web front-end for managing multiple NixOS devices.</abstract>
                <slug>nixcon-2024-54826-thymis-web-front-end-for-managing-multiple-nixos-devices</slug>
                <track></track>
                
                <persons>
                    <person id='56825'>Eli Kogan-Wang</person><person id='58910'>Adrian Block</person>
                </persons>
                <language>en</language>
                <description>In this talk, we&#8217;ll explore how Thymis works, from setup to daily use. We&#8217;ll demonstrate its key features and how it helps streamline device management in a NixOS environment, making life easier for sysadmins and developers.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/WN9LDX/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/WN9LDX/feedback/</feedback_url>
            </event>
            <event guid='62a91213-ab7d-5361-9942-5737cf5c0193' id='56358' code='XPXBHT'>
                <room>Arena</room>
                <title>Introduction to nix-bitcoin</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-25T16:45:00+02:00</date>
                <start>16:45</start>
                <duration>00:10</duration>
                <abstract>In this talk, we will explore nix-bitcoin, a project that leverages the power of NixOS to simplify the deployment and management of Bitcoin nodes securely.

During the presentation, we will see how to use krops to deploy NixOS systems</abstract>
                <slug>nixcon-2024-56358-introduction-to-nix-bitcoin</slug>
                <track></track>
                
                <persons>
                    <person id='58195'>Jo&#227;o Thallis</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/XPXBHT/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/XPXBHT/feedback/</feedback_url>
            </event>
            <event guid='75f501b1-7696-5c22-a608-767c885eb832' id='56292' code='AS373H'>
                <room>Arena</room>
                <title>rebuilding builders instead of trusting trust</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-25T17:05:00+02:00</date>
                <start>17:05</start>
                <duration>00:45</duration>
                <abstract>The key principles Nix is built on are great for supply chain security.
Those principles could take us much further, if we extended or replaced the signatures that provide transport security for binary caches today, in favor of a more powerful mechanism.
A mechanism that works end to end from builder to user, includes provenance data about the builder, and ideally makes that provenance data verifiable.</abstract>
                <slug>nixcon-2024-56292-rebuilding-builders-instead-of-trusting-trust</slug>
                <track></track>
                
                <persons>
                    <person id='58123'>Martin Schwaighofer</person>
                </persons>
                <language>en</language>
                <description>Adopting Trustix, or extending the existing signing scheme are both possible ways to add builder provenance data, but comparing those options is not the focus of my talk.
Instead I would like to focus on the kind of data that we might want to add, and the benefit we would obtain.
This starts simple with a boolean flag, which lets signers claim to have built a derivation themselves, all the way up to a source link and remote attestation, which make it possible to verify which software is running on the builder.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links>
                    <link href="https://doi.org/10.1145/3689944.3696169">Paper</link>
                </links>
                <attachments>
                    <attachment href="https://talks.nixcon.org/media/nixcon-2024/submissions/AS373H/resources/nixcon2024-rebuilding-builders_KXEA1Ss.pdf">Slides</attachment>
                </attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/AS373H/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/AS373H/feedback/</feedback_url>
            </event>
            <event guid='fa792b23-785a-5491-b271-e65a47a67a58' id='56278' code='VYFP7L'>
                <room>Arena</room>
                <title>The C API is Surprisingly Fun</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-25T18:00:00+02:00</date>
                <start>18:00</start>
                <duration>00:25</duration>
                <abstract>Presenting the C API to Nix</abstract>
                <slug>nixcon-2024-56278-the-c-api-is-surprisingly-fun</slug>
                <track></track>
                
                <persons>
                    <person id='56814'>Thomas Bereknyei</person><person id='58135'>Yannik Sander</person>
                </persons>
                <language>en</language>
                <description>The C API allows using the core of Nix in useful ways. Create your own utilities with this interface. We present an overview, examples with multiple languages, and recommendations for improvements.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links>
                    <link href="https://docs.google.com/presentation/d/1L4Lh3h7IuWQNAb-qTm41wqYuJA3jBkFOJzKTOgz0cX8/edit?usp=sharing">Slides</link>
                </links>
                <attachments>
                    <attachment href="https://talks.nixcon.org/media/nixcon-2024/submissions/VYFP7L/resources/C-API_RE6RtQ2.pdf">Slides</attachment>
                </attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/VYFP7L/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/VYFP7L/feedback/</feedback_url>
            </event>
            <event guid='15a95f24-e6de-51c2-a357-b7aab1f7ff70' id='56092' code='NVYVW7'>
                <room>Arena</room>
                <title>buildbot-nix: A modern open-source Nix-native CI/CD</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-25T18:35:00+02:00</date>
                <start>18:35</start>
                <duration>00:15</duration>
                <abstract>Started during a [Mob-programming](https://en.wikipedia.org/wiki/Team_programming#Mob_programming) session at NixCon 2023,
**buildbot-nix** has evolved into a full-featured CI/CD system for Nix, based on Buildbot. 
Buildbot is a mature continuous integration framework used by major software projects such as Python, LLVM, and OpenZFS. 

Buildbot-nix introduces a zero-configuration setup for flake-based repositories, featuring parallel evaluation, binary cache integration, build failure caching, Gitea/GitHub integration, and continuous deployment support based on Hercules-CI effects.

We have deployed buildbot-nix in the nix-community GitHub organization to provide fast CI for numerous projects.

In this talk, we will showcase the current features we support and share our plans for the next year.</abstract>
                <slug>nixcon-2024-56092-buildbot-nix-a-modern-open-source-nix-native-ci-cd</slug>
                <track></track>
                
                <persons>
                    <person id='58313'>Richard Bre&#382;&#225;k</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/NVYVW7/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/NVYVW7/feedback/</feedback_url>
            </event>
            <event guid='b5cee6d0-b8df-5b8a-b2a9-88f410012505' id='56259' code='KFQVJS'>
                <room>Arena</room>
                <title>Introducing nix-make</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-25T19:00:00+02:00</date>
                <start>19:00</start>
                <duration>00:25</duration>
                <abstract>nix-make[1] is a C and C++ build system supporting incremental compilation. It
implements a thin layer of dependency graph construction in nixlang and lets
Nix do the heavy lifting.

[1] https://codeberg.org/tobim/nix-make</abstract>
                <slug>nixcon-2024-56259-introducing-nix-make</slug>
                <track></track>
                
                <persons>
                    <person id='58101'>Tobias Mayer</person>
                </persons>
                <language>en</language>
                <description>This talk starts with an explanation of the user interface and a demo. I will
show what benefits a Nix-native build system brings compared to traditional
alternatives. I&apos;ll then touch on some of the convenience tooling that helps
with integrating misbehaved dependencies. Lastly, I&apos;ll explain how it is
implemented and list some of the problems that are yet to be overcome.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/KFQVJS/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/KFQVJS/feedback/</feedback_url>
            </event>
            <event guid='63060cc7-69a0-5fdc-813c-22628913bc09' id='57529' code='BEVPMA'>
                <room>Arena</room>
                <title>Lightning talk block #1</title>
                <subtitle></subtitle>
                <type>Lightning talk</type>
                <date>2024-10-25T19:35:00+02:00</date>
                <start>19:35</start>
                <duration>00:35</duration>
                <abstract>Block for lightning talks with minimal  break in between.  Order will be determined shortly before it starts, and every speaker should be present at the beginning of the talk!</abstract>
                <slug>nixcon-2024-57529-lightning-talk-block-1</slug>
                <track></track>
                
                <persons>
                    <person id='57836'>Bryan Honof</person><person id='58119'>Arnout Engelen</person><person id='58099'>Nitin Passa</person><person id='56814'>Thomas Bereknyei</person><person id='56116'>Shivaraj B H</person><person id='58028'>Roland Coeurjoly</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links>
                    <link href="https://github.com/shivaraj-bh/nixcon-2024-services-flake">services-flake; Services simplified for Dev/CI workflows</link>
                </links>
                <attachments>
                    <attachment href="https://talks.nixcon.org/media/nixcon-2024/submissions/BEVPMA/resources/nixcon-2024-living-in-an-experimental-world_CD9SG3z.pdf">Slide deck: Living in an experimental world - Bryan Honof</attachment>
                
                    <attachment href="https://talks.nixcon.org/media/nixcon-2024/submissions/BEVPMA/resources/nixcon-2024-python-packaging-with-ai-slides_20doDhH.pdf">Slide deck: Python Packaging with AI</attachment>
                
                    <attachment href="https://talks.nixcon.org/media/nixcon-2024/submissions/BEVPMA/resources/nixcon-2024-wh_aXz1xMo.pdf">Slide deck: Why Nix is Great for Software Freedom - Arnout Engelen</attachment>
                </attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/BEVPMA/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/BEVPMA/feedback/</feedback_url>
            </event>
            
        </room>
        <room name='Woanders' guid='75013c7d-6729-543d-9560-058b7ed96329'>
            <event guid='897451e1-0c59-577b-aeb8-ea2a1d476d0c' id='56065' code='B38V7Z'>
                <room>Woanders</room>
                <title>Lecture #1 - An Introduction to Nix (2023-2024 - Flox University)</title>
                <subtitle></subtitle>
                <type>Workshop/Training - Select this if you are planning on running a training for attendees</type>
                <date>2024-10-25T10:05:00+02:00</date>
                <start>10:05</start>
                <duration>04:00</duration>
                <abstract>We know how daunting it can be to start hacking with/on Nix.
Let&apos;s teach you the first steps on your road to declarative greatness in this lecture style workshop.</abstract>
                <slug>nixcon-2024-56065-lecture-1-an-introduction-to-nix-2023-2024-flox-university</slug>
                <track></track>
                
                <persons>
                    <person id='57836'>Bryan Honof</person><person id='56814'>Thomas Bereknyei</person>
                </persons>
                <language>en</language>
                <description>Come join us in this lecture-style workshop where knowledgeable Nix community members and maintainers will help you grasp that which is Nix.
We&apos;ll leave plenty of room for questions and hacking on your own Nix related projects.

We&apos;ll try and cover the following topics, but questions are more important&#8212;and probably more interesting and relevant than the lecture&#8212;, so don&apos;t be afraid to ask!

- Nix, as in the package manager
- Nix, as in the language
- NixPkgs, as in the package set that uses Nix the language
- NixOS modules, as in the configuration as code using the Nix language
- NixOS, as in the Linux distro that uses Nix the package manager and the NixOS module system
- Flakes, as in the way Nix expressions can be shipped around
- Stores, as in the place where Nix stores all its data
- Random tidbits</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments>
                    <attachment href="https://talks.nixcon.org/media/nixcon-2024/submissions/B38V7Z/resources/nixcon-2024-berlin-workshop_RMW7v4H.pdf">Slide deck</attachment>
                </attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/B38V7Z/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/B38V7Z/feedback/</feedback_url>
            </event>
            <event guid='5a06309c-4ce1-5721-b32d-4eb7a24fa7d8' id='55919' code='QYC7BA'>
                <room>Woanders</room>
                <title>Mastering NixOS Integration Tests: Advanced Techniques for Multi-Host Scenarios and Fast and Robust Integration Testing</title>
                <subtitle></subtitle>
                <type>Workshop/Training - Select this if you are planning on running a training for attendees</type>
                <date>2024-10-25T14:20:00+02:00</date>
                <start>14:20</start>
                <duration>02:00</duration>
                <abstract>In this hands-on workshop, we&#8217;ll take a deep dive into the powerful NixOS Integration Test Driver and its capabilities. Over the course of two hours, you&#8217;ll learn how to leverage the test driver to simulate complex networked environments with multiple NixOS hosts and different virtual networks. We&#8217;ll also explore the interactive mode for debugging and present best practices to avoid flaky tests, ensuring reliable results in real-world scenarios. If you&#8217;re looking to enhance your NixOS testing expertise and streamline your CI/CD pipelines, this session is for you!</abstract>
                <slug>nixcon-2024-55919-mastering-nixos-integration-tests-advanced-techniques-for-multi-host-scenarios-and-fast-and-robust-integration-testing</slug>
                <track></track>
                <logo>/media/nixcon-2024/submissions/QYC7BA/integration-tests_JLilnQy.png</logo>
                <persons>
                    <person id='57804'>Jacek Galowicz</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/QYC7BA/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/QYC7BA/feedback/</feedback_url>
            </event>
            <event guid='40d684be-c6c2-521b-93e9-16a80739e31c' id='56220' code='3JH8BU'>
                <room>Woanders</room>
                <title>Speed Dating</title>
                <subtitle></subtitle>
                <type>Workshop/Training - Select this if you are planning on running a training for attendees</type>
                <date>2024-10-25T16:55:00+02:00</date>
                <start>16:55</start>
                <duration>01:20</duration>
                <abstract>Looking for work? Looking for someone to work for you? This is the place to meet
Looking for a maintainer for a project? Want to maintain a project? This can also be done here!</abstract>
                <slug>nixcon-2024-56220-speed-dating</slug>
                <track></track>
                
                <persons>
                    <person id='57145'>lassulus</person>
                </persons>
                <language>en</language>
                <description>Like speed dating but for nix jobs. If you have a job position to fill, please show up :) if you want a job, also please show up!</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/3JH8BU/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/3JH8BU/feedback/</feedback_url>
            </event>
            
        </room>
        
    </day>
    <day index='2' date='2024-10-26' start='2024-10-26T04:00:00+02:00' end='2024-10-27T03:59:00+01:00'>
        <room name='Arena' guid='e8695c4f-89d4-5fd5-bbc7-d17d7e06e297'>
            <event guid='b4de32fa-42bc-533d-be5a-534bbaa46fc5' id='56288' code='XWCF3W'>
                <room>Arena</room>
                <title>Nix Constitutional Assembly Panel</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-26T09:00:00+02:00</date>
                <start>09:00</start>
                <duration>00:25</duration>
                <abstract>Join us for a 25 minute panel conversation with the NCA members who drove the latest improvements and evolution of Nix governance. We will cover key topics, take questions live and reach out to the community ahead of time for top questions!</abstract>
                <slug>nixcon-2024-56288-nix-constitutional-assembly-panel</slug>
                <track></track>
                
                <persons>
                    <person id='57938'>Ron Efroni</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/XWCF3W/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/XWCF3W/feedback/</feedback_url>
            </event>
            <event guid='bcdc25a9-d581-52ce-bbb3-1d3ae8f9576d' id='56279' code='QMDME9'>
                <room>Arena</room>
                <title>Becoming a Nixpkgs Contributor</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-26T09:35:00+02:00</date>
                <start>09:35</start>
                <duration>00:25</duration>
                <abstract>This talk provides a roadmap toward becoming a Nixpkgs contributor. The format will be a discussion and demonstration.</abstract>
                <slug>nixcon-2024-56279-becoming-a-nixpkgs-contributor</slug>
                <track></track>
                
                <persons>
                    <person id='57804'>Jacek Galowicz</person><person id='56814'>Thomas Bereknyei</person>
                </persons>
                <language>en</language>
                <description>Are you interested in contributing to Nixpkgs but unsure where to start? This talk will guide you through the process of becoming a contributor and eventually a long-term maintainer. We will cover how to get started, how to collaborate, useful tools, tips on effective reviews, and recommendations on areas that need help. We also cover the process of getting started, the tools, the responsibilities, and a demonstration.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links>
                    <link href="https://docs.google.com/presentation/d/1ZEyPJ-mf35A4sEl43sBu7LNRQ-27k6rslyjTyzDdfPI/edit?usp=sharing">Slides</link>
                </links>
                <attachments>
                    <attachment href="https://talks.nixcon.org/media/nixcon-2024/submissions/QMDME9/resources/Becoming_a_Nix_77RNd0o.pdf">Slides</attachment>
                </attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/QMDME9/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/QMDME9/feedback/</feedback_url>
            </event>
            <event guid='794ccec1-f44d-533c-adf6-d22c0f7ce1d9' id='55889' code='VBGYZ9'>
                <room>Arena</room>
                <title>Signed Nix Expressions</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-26T10:10:00+02:00</date>
                <start>10:10</start>
                <duration>00:25</duration>
                <abstract>Nix build expressions will often rely on other expressions as dependencies, most commonly Nixpkgs. However, those could be modified by machine-in-the-middle attacks. Providing users with the means to verify cryptographic signatures on expressions could relieve this attack vector and strengthen Nix&apos; resilience.

This talk will discuss update verification for Nix and NixOS with a focus on Git signatures. It will explain Guix&apos; authentication mechanism and [RFC 100](https://github.com/NixOS/rfcs/pull/100) as an attempt to bring it to Nixpkgs. Subsequently, it will sketch out potential paths forward, considering use cases and additional burdens on developers.</abstract>
                <slug>nixcon-2024-55889-signed-nix-expressions</slug>
                <track></track>
                
                <persons>
                    <person id='58011'>Finn Landweber</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>true</optout>
                </recording>
                <links>
                    <link href="https://landweber.xyz/ba.pdf">Secure Nix Expression Updates (Bachelors&#x27;s Thesis)</link>
                </links>
                <attachments>
                    <attachment href="https://talks.nixcon.org/media/nixcon-2024/submissions/VBGYZ9/resources/output_8d1VNG0.pdf">Slides</attachment>
                </attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/VBGYZ9/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/VBGYZ9/feedback/</feedback_url>
            </event>
            <event guid='fedc2677-f086-5f10-b737-fd2c1d279cc2' id='55093' code='7GUEEE'>
                <room>Arena</room>
                <title>Nix as a Static Site Generator for My Blog (only mildly cursed!)</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-26T10:45:00+02:00</date>
                <start>10:45</start>
                <duration>00:25</duration>
                <abstract>Since a Nix derivation can be anything, from a text file up to a directory tree, then what&apos;s stopping us from implementing a static site generator using Nix? Certainly not the police!

I&apos;ve been using Nix as a generator for &lt;https://pwy.io&gt; ([source code](https://github.com/Patryk27/website)) for almost two years now - in this talk I&apos;d like to show you how it works, go through pros and cons, and hopefully inspire you to see Nix as more than &quot;this funny language used in nixpkgs&quot;.</abstract>
                <slug>nixcon-2024-55093-nix-as-a-static-site-generator-for-my-blog-only-mildly-cursed</slug>
                <track></track>
                
                <persons>
                    <person id='57101'>Patryk Wychowaniec</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/7GUEEE/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/7GUEEE/feedback/</feedback_url>
            </event>
            <event guid='3e881d9c-5c73-583f-9341-aa72e3b99900' id='56245' code='7FN8SB'>
                <room>Arena</room>
                <title>Nix and Bazel - match made in heaven or hell?</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-26T11:20:00+02:00</date>
                <start>11:20</start>
                <duration>00:25</duration>
                <abstract>The premise of combining Nix and Bazel is really appealing and powerful - one gets the full reproducibility stemming from Nix (alongside all definitions from its rich ecosystem) and the fast incremental builds that are the hallmark of Bazel. Truly a bliss. Practicalities however beg to differ - the road towards such a combination is full of unexpected surprises, ill-implemented features and design decisions that break everything. 

This talk is a journey of discovery of things that go wonderfully wrong if Nix and Bazel are being used together. The third ingredient to the Nix and Bazel cocktail are footguns. A lot of them. 

We want to share them,  so others do not have to get burned on them.</abstract>
                <slug>nixcon-2024-56245-nix-and-bazel-match-made-in-heaven-or-hell</slug>
                <track></track>
                
                <persons>
                    <person id='58082'>Aleksander Gondek</person><person id='58149'>Artur Stachecki</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/7FN8SB/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/7FN8SB/feedback/</feedback_url>
            </event>
            <event guid='af340a94-0a2a-5b4a-b579-9f66a1b92772' id='56268' code='AM7K7F'>
                <room>Arena</room>
                <title>devenv is switching to Tvix</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-26T12:55:00+02:00</date>
                <start>12:55</start>
                <duration>00:40</duration>
                <abstract>We&apos;ll be looking into what kind of limitations we&apos;ve hit using C++Nix and how Tvix solves them.</abstract>
                <slug>nixcon-2024-56268-devenv-is-switching-to-tvix</slug>
                <track></track>
                
                <persons>
                    <person id='58114'>Domen Ko&#382;ar</person>
                </persons>
                <language>en</language>
                <description>It&apos;s been two years since devenv.sh has been released and it has been adopted by many projects.

During these years we&apos;ve focused on developer experience and after adopting Rust,
the last barrier to success is dropping C++Nix and modernizing how we implement Nix.

We&apos;ll look into the reason that C++Nix can&apos;t solve without a rewrite and some consequences that Tvix has just by starting from scratch.

Last but not least, we&apos;ll explore what we plan to contribute to Tvix and present a roadmap to using Tvix in devenv.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/AM7K7F/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/AM7K7F/feedback/</feedback_url>
            </event>
            <event guid='79b9051e-3bd3-5613-89e4-12a3ff3abea0' id='56260' code='F9MMRK'>
                <room>Arena</room>
                <title>Enabling incremental adoption of NixOS with module contracts</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-26T13:45:00+02:00</date>
                <start>13:45</start>
                <duration>00:40</duration>
                <abstract>I personally believe NixOS to be the ultimate server management tool. But how to convince others? We must let them try NixOS!

Currently, the only way to try out NixOS is to go all-in. There&apos;s no way to get a feel for it by just replacing one small piece of an existing infrastructure. To ease and accelerate adoption of NixOS, this must change.

This talk goes over why module contracts is the essential and (yet!) missing piece that will help us spread adoption of NixOS.</abstract>
                <slug>nixcon-2024-56260-enabling-incremental-adoption-of-nixos-with-module-contracts</slug>
                <track></track>
                
                <persons>
                    <person id='58102'>Pierre Penninckx</person>
                </persons>
                <language>en</language>
                <description>Take the Nextcloud module. It is a wonderful module and I am one of its happy users. In a few options, it sets up a complicated beast of infrastructure in an elegant way. It even let&apos;s you choose which database you want to use!

There&apos;s a caveat, though. Like most of the modules in NixOS, it assumes ownership of its runtime dependencies. This makes it impossible to tell the module to use a database on another host, for example. One could modify the module to add this use case, but this quickly becomes not maintainable. It would make the module even bigger, even harder to test. Also, other modules could benefit from this nice feature and we can&apos;t just add this to all of them by copy pasting code around.

What if instead, the Nextcloud module did not own its runtime dependencies. What if the user, you, were in charge of spinning up a database and letting the Nextcloud module configure its database on that instance. Same for the Nextcloud cache, the reverse proxy, the backup service, etc. This dependency inversion is what module contracts is about.

This talk explores what a world with NixOS modules relying on contracts would look like. We&apos;ll see how one would configure a Nextcloud module using contracts. Also what it would look like to test it in their current infrastructure. We&apos;ll also go over other benefits of contracts. Finally, I&apos;ll showcase my project which explores contracts and what is already possible today and what the future plans are.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/F9MMRK/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/F9MMRK/feedback/</feedback_url>
            </event>
            <event guid='a3b89205-e816-5efd-9af8-2e644cf9f9d4' id='56282' code='QNPJBY'>
                <room>Arena</room>
                <title>Call-by-hash</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-26T14:35:00+02:00</date>
                <start>14:35</start>
                <duration>00:35</duration>
                <abstract>If we were to design a cloud based on a fundamental principle of Nix, namely hash-based addressing, what would it look like? What would be it&apos;s benefits? We did just that at garnix; this talk is about the big picture, and the details, of that idea.</abstract>
                <slug>nixcon-2024-56282-call-by-hash</slug>
                <track></track>
                
                <persons>
                    <person id='58131'>Julian Kirsten Arni</person>
                </persons>
                <language>en</language>
                <description>Derivations in Nix get a hash based on all their inputs; that hash then becomes (part of) the name by which the outputs are known. This way of naming or addressing build artifacts turns out to have a number of wonderful advantages that Nix users know and love.

But NixOS machines too have such hashes. What if we gave them names - URLs - when deployment that contained that hash, and then had them communicate between each other only via these hashes?

It turns out this solves a lot of common problems faced by engineers deploying infrastructure, such as zero-downtime deployments, &quot;transactional&quot; deployments, speed and more. 

We can moreover extend this idea to apply to stateful servers as well, at least in important special cases.

This perspective allows us to build something with most of the features of Kubernetes, but in a very Nix way. And this isn&apos;t vaporware: it&apos;s implemented at garnix.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/QNPJBY/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/QNPJBY/feedback/</feedback_url>
            </event>
            <event guid='06518571-496f-59c7-9759-7d6fa729a63e' id='56248' code='3TUXAD'>
                <room>Arena</room>
                <title>FUSEd with nix: deploying nix apps to k8s in images weighting as little as 500 KBs</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-26T15:20:00+02:00</date>
                <start>15:20</start>
                <duration>00:25</duration>
                <abstract>Deploying nix-built applications to a Kubernetes cluster can be an exercise in frustration - even though nix has built-in support for creation of container images,  the outcome is usually a quite sizable tar archive. Propagation, caching and updating of such images takes time, bandwidth and storage space. One is essentially packaging little slices of a nix store, every time an application needs to be delivered. There has to be a better way!

We want to present a FUSE-based way of attaching a shared `/nix/store` to container images and thus allowing them to only contain metainformation required to run the application. Even complex k8s deployments are reduced to very thin updates of data!</abstract>
                <slug>nixcon-2024-56248-fused-with-nix-deploying-nix-apps-to-k8s-in-images-weighting-as-little-as-500-kbs</slug>
                <track></track>
                
                <persons>
                    <person id='58082'>Aleksander Gondek</person><person id='58149'>Artur Stachecki</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/3TUXAD/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/3TUXAD/feedback/</feedback_url>
            </event>
            <event guid='3870aaf7-db5b-5e04-93f2-6a2d75fc7424' id='55975' code='MUFGYT'>
                <room>Arena</room>
                <title>Integrating Nix and Buck2 for fun and profit</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-26T15:55:00+02:00</date>
                <start>15:55</start>
                <duration>00:25</duration>
                <abstract>In a large code base you want a tool that is able to build your project quickly by leveraging features such as a distributed cache and remote execution. At the same time it is important that your build is correct and thus reproducible.

In this talk I will present how we integrated Nix with Buck2, an open source build system developed by Meta, in order to achieve highly granular, reproducible builds for a large Haskell code base and how we were able to use Buck2&apos;s remote execution with Nix.</abstract>
                <slug>nixcon-2024-55975-integrating-nix-and-buck2-for-fun-and-profit</slug>
                <track></track>
                
                <persons>
                    <person id='57859'>Claudio Bley</person>
                </persons>
                <language>en</language>
                <description>In this talk I will quickly introduce Buck2 and the project we are working on to explain the goals we were aiming to achieve in regard to the developer experience.

In brief, Buck2 should be the main entry point to the project &#8211; providing a buck2 binary in a dev shell is all that is needed to get a developer going on the project.

Therefore, we developed a fine-grained mechanism for introducing nix packages as dependencies in our build using nix flakes.

I will deep dive into the internals of this integration, demonstrate how easy it is to use, and how we can speed up the build even more using a distributed cache and remote execution.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/MUFGYT/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/MUFGYT/feedback/</feedback_url>
            </event>
            <event guid='b1a822ca-52a0-5116-b331-29ab0103ec88' id='56211' code='Y8BF7E'>
                <room>Arena</room>
                <title>Learning to Nix: Our Summer of Nix Experience</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-26T16:30:00+02:00</date>
                <start>16:30</start>
                <duration>00:25</duration>
                <abstract>In this talk, we&#8217;ll be sharing our journey through the Summer of Nix 2024 mentorship program giving a detailed look at our experiences and contributions. From the interesting projects we worked on to the challenges we faced and tackled. We&#8217;ll provide a an overview of how this initiative our understanding of Nix and contributed to the community. You&#8217;ll hear about the projects we&apos;ve worked on, technical challenges and interesting rabbit holes we jumped into, and some honest feedback on how we can continue to improve. Whether you&#8217;re deeply involved in Nix or just curious about the program, I hope to offer valuable insights and inspiration for both current contributors and those looking to get involved.</abstract>
                <slug>nixcon-2024-56211-learning-to-nix-our-summer-of-nix-experience</slug>
                <track></track>
                
                <persons>
                    <person id='58054'>Enric Morales</person><person id='58399'>Alberto Merino</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/Y8BF7E/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/Y8BF7E/feedback/</feedback_url>
            </event>
            <event guid='d2fb1825-1d6d-58aa-a17c-35f580c1964a' id='56355' code='T9ACJZ'>
                <room>Arena</room>
                <title>Llamafiles plus RAG to have a chat with NixOS documentation running locally</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-26T17:05:00+02:00</date>
                <start>17:05</start>
                <duration>00:45</duration>
                <abstract>Picture this: you&apos;re on a remote tropical island, with limited internet access and only your ultraportable laptop, which lacks a dedicated GPU. Now imagine you need to search resources like nix.dev, various GitHub configurations, or books like NixOS in Production. Basic indexing and grepping just won&apos;t cut it for handling docs, code, and especially PDFs. Plus, relying on exact matches feels outdated. What you really want is to ask natural language questions about the problems you&apos;re solving, and get comprehensive, detailed responses&#8212;using only the latest, most relevant docs and references.

Until recently, this idea was pure science fiction. But with the rise of large language models (LLMs), it&apos;s become reality. However, the usual suspects like ChatGPT have their drawbacks: they don&apos;t provide source links, tend to hallucinate, and require careful fact-checking. On top of that, running them is computationally expensive. Most ultraportable laptops lack the necessary GPU power, or, if they have one, it&apos;s energy-hungry or inadequate for LLMs. This effectively rules out using LLMs in the tropical laptop scenario. Even with enough compute power, setting up an LLM can be a headache, partly due to the notorious challenges of getting Nvidia CUDA to work smoothly on Linux.

Enter Justine Tunney&apos;s llamafile. It&apos;s a game-changer: a single zip file that runs on CPUs and across multiple architectures, built on the llama.cpp library, which is a C/C++ implementation of LLM evaluation for various model architectures. This simplifies running LLMs on CPUs by allowing existing model weights to be used without needing a GPU. Combine this with retrieval-augmented generation (RAG), which pulls relevant information from your chosen docs and GitHub repositories, and you&apos;ve got an offline, fully functional setup for querying NixOS-related content&#8212;right from your beachside ultraportable laptop.</abstract>
                <slug>nixcon-2024-56355-llamafiles-plus-rag-to-have-a-chat-with-nixos-documentation-running-locally</slug>
                <track></track>
                
                <persons>
                    <person id='58315'>Jose Quesada</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/T9ACJZ/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/T9ACJZ/feedback/</feedback_url>
            </event>
            <event guid='1f0b6b39-6bac-5295-a0ae-5f5636ef47b0' id='56357' code='RY98HT'>
                <room>Arena</room>
                <title>Monitoring Your System Using NixOS</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-26T18:00:00+02:00</date>
                <start>18:00</start>
                <duration>00:10</duration>
                <abstract>System monitoring is essential for maintaining infrastructure stability. In this talk, we will explore how NixOS can be used to configure and manage system monitoring for your applications and your NixOS system using Prometheus and Grafana.</abstract>
                <slug>nixcon-2024-56357-monitoring-your-system-using-nixos</slug>
                <track></track>
                
                <persons>
                    <person id='58195'>Jo&#227;o Thallis</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/RY98HT/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/RY98HT/feedback/</feedback_url>
            </event>
            <event guid='6e09d5a3-5b05-518b-96b8-af6a1f4835f8' id='56219' code='XRFPMU'>
                <room>Arena</room>
                <title>Comin: GitOps for NixOS Machines</title>
                <subtitle></subtitle>
                <type>Talk</type>
                <date>2024-10-26T18:20:00+02:00</date>
                <start>18:20</start>
                <duration>00:10</duration>
                <abstract>[comin](https://github.com/nlewo/comin) is a NixOS deployment tool operating in pull mode. In this short talk, I will describe what GitOps is, how comin works and its main features.</abstract>
                <slug>nixcon-2024-56219-comin-gitops-for-nixos-machines</slug>
                <track></track>
                
                <persons>
                    <person id='58064'>lewo</person>
                </persons>
                <language>en</language>
                <description>[comin](https://github.com/nlewo/comin) is a NixOS deployment tool operating in pull mode. Running on a machine, it periodically polls Git repositories and deploys the NixOS configuration associated to the machine.

Its features are:

- Git push to deploy NixOS configurations
- Support testing branches to try changes
- Poll multiple Git remotes to avoid SPOF
- Support machines migrations
- Fast iterations with local remotes
- Observable via Prometheus metrics
- Create and delete system profiles

In this talk, i will describe what GitOps is, what are the main GitOps projects, how comin works, its main features and the next main features.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/XRFPMU/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/XRFPMU/feedback/</feedback_url>
            </event>
            <event guid='f538a04b-c543-5e18-b676-b26dc21c14c0' id='57360' code='HRFQSG'>
                <room>Arena</room>
                <title>Lightning talk block #2</title>
                <subtitle></subtitle>
                <type>Lightning talk</type>
                <date>2024-10-26T18:40:00+02:00</date>
                <start>18:40</start>
                <duration>00:45</duration>
                <abstract>Block for additional lightning talks. If during the NixCon you decide that you would like to do a lightning talk, you can do it in this block.
Just contact anyone from the staff to let us know.</abstract>
                <slug>nixcon-2024-57360-lightning-talk-block-2</slug>
                <track></track>
                
                <persons>
                    
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/HRFQSG/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/HRFQSG/feedback/</feedback_url>
            </event>
            <event guid='082cca56-1960-5622-b9cc-55aaebff1c89' id='56829' code='HZ3AZA'>
                <room>Arena</room>
                <title>Endnote</title>
                <subtitle></subtitle>
                <type>Happy Hour</type>
                <date>2024-10-26T19:25:00+02:00</date>
                <start>19:25</start>
                <duration>00:30</duration>
                <abstract>Endnote</abstract>
                <slug>nixcon-2024-56829-endnote</slug>
                <track></track>
                
                <persons>
                    
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/HZ3AZA/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/HZ3AZA/feedback/</feedback_url>
            </event>
            
        </room>
        <room name='Woanders' guid='75013c7d-6729-543d-9560-058b7ed96329'>
            <event guid='0a1cf0c2-7d29-571c-b0e1-5081d7d8fc10' id='55130' code='E7SJ3W'>
                <room>Woanders</room>
                <title>NixOS Wiki Meetup</title>
                <subtitle></subtitle>
                <type>Workshop/Training - Select this if you are planning on running a training for attendees</type>
                <date>2024-10-26T09:35:00+02:00</date>
                <start>09:35</start>
                <duration>01:00</duration>
                <abstract>A Meeting for the Wiki Users, Admins, Moderators</abstract>
                <slug>nixcon-2024-55130-nixos-wiki-meetup</slug>
                <track></track>
                
                <persons>
                    <person id='57145'>lassulus</person>
                </persons>
                <language>en</language>
                <description>The wiki team invites users, admin, moderators and people that want to become any of those to join up and talk for a bit. We can talk about whatever comes up :)</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/E7SJ3W/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/E7SJ3W/feedback/</feedback_url>
            </event>
            <event guid='96face9d-32f9-54c6-8e33-583783882e00' id='56270' code='9USEQ3'>
                <room>Woanders</room>
                <title>Deploy NixOS remotely with nixos-anywhere &amp; disko</title>
                <subtitle></subtitle>
                <type>Workshop/Training - Select this if you are planning on running a training for attendees</type>
                <date>2024-10-26T11:00:00+02:00</date>
                <start>11:00</start>
                <duration>02:00</duration>
                <abstract>An introduction into [nixos-anywhere](https://github.com/nix-community/nixos-anywhere) and [disko](https://github.com/nix-community/disko), followed by a demo of using both to deploy NixOS with [ZFS](https://openzfs.org) on a remote Ubuntu host. Ending by a hands-on support/Q &amp; A session for the remaining time slot.</abstract>
                <slug>nixcon-2024-56270-deploy-nixos-remotely-with-nixos-anywhere-disko</slug>
                <track></track>
                <logo>/media/nixcon-2024/submissions/9USEQ3/anywhere_qbFPc40.png</logo>
                <persons>
                    <person id='58115'>phaer</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>true</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/9USEQ3/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/9USEQ3/feedback/</feedback_url>
            </event>
            <event guid='7499141e-0262-5466-9f8c-746dfee63e28' id='56356' code='ZZFT8R'>
                <room>Woanders</room>
                <title>Infecting Your Server with NixOS</title>
                <subtitle></subtitle>
                <type>Workshop/Training - Select this if you are planning on running a training for attendees</type>
                <date>2024-10-26T14:35:00+02:00</date>
                <start>14:35</start>
                <duration>00:20</duration>
                <abstract>Installing NixOS on a server can be a challenge for beginners or take a long time if you need to install it on several machines. In this workshop, we will see how it can be simple and what tools we can use to achieve that.</abstract>
                <slug>nixcon-2024-56356-infecting-your-server-with-nixos</slug>
                <track></track>
                
                <persons>
                    <person id='58195'>Jo&#227;o Thallis</person>
                </persons>
                <language>en</language>
                <description>What can be infected? For the best experience you will need a local [Linux](https://github.com/elitak/nixos-infect#tested-on) virtual machine or VPS with an SSH key for the root user &#8211; you can use a local machine if you don&apos;t mind losing your data and OS.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/ZZFT8R/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/ZZFT8R/feedback/</feedback_url>
            </event>
            <event guid='013bbe1e-ec7d-5ffe-9a0b-e74a9b20a102' id='56269' code='CVSGTW'>
                <room>Woanders</room>
                <title>Developer environment for a web project using devenv.sh</title>
                <subtitle></subtitle>
                <type>Workshop/Training - Select this if you are planning on running a training for attendees</type>
                <date>2024-10-26T15:10:00+02:00</date>
                <start>15:10</start>
                <duration>01:30</duration>
                <abstract>We&apos;ll guide you through Nixification of a project using devenv.sh</abstract>
                <slug>nixcon-2024-56269-developer-environment-for-a-web-project-using-devenv-sh</slug>
                <track></track>
                
                <persons>
                    <person id='58114'>Domen Ko&#382;ar</person><person id='58905'>Sander Melnikov</person>
                </persons>
                <language>en</language>
                <description>We&apos;ll take a project using PostgreSQL and application server written in Rust.

We&apos;ll convert it into devenv/Nix by following what docker compose is doing.

During the conversion we&apos;ll explain common features of devenv.

At the end of the workshop you should know enough to go through the same process yourself on your own projects.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/CVSGTW/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/CVSGTW/feedback/</feedback_url>
            </event>
            <event guid='3b6803c2-b9cb-5893-932b-a236f165966a' id='56275' code='9BR87D'>
                <room>Woanders</room>
                <title>NixOS on garnix: Production-grade hosting as a game</title>
                <subtitle></subtitle>
                <type>Workshop/Training - Select this if you are planning on running a training for attendees</type>
                <date>2024-10-26T16:55:00+02:00</date>
                <start>16:55</start>
                <duration>02:00</duration>
                <abstract>In this workshop we&apos;ll play a game based around deploying clusters of NixOS machines more quickly and smoothly than anyone else, and learn how garnix hosting works in the process.</abstract>
                <slug>nixcon-2024-56275-nixos-on-garnix-production-grade-hosting-as-a-game</slug>
                <track></track>
                
                <persons>
                    <person id='58131'>Julian Kirsten Arni</person><person id='58125'>S&#246;nke Hahn</person><person id='58668'>Evie Ciobanu</person><person id='58824'>Jean Fran&#231;ois Roche</person>
                </persons>
                <language>en</language>
                <description>Some parts of deploying a NixOS machine are extremely simple. Updating, for instance, is just a &apos;nixos-rebuild switch&apos; away (or some wrapper thereof). Rolling back is just as easy.

But that doesn&apos;t account for the provisioning, and the network and hardware discovery, and the secrets management, and the zero-downtime deployments, and infrastructure-wide atomicity, and QA deployments, and staging, ...  Once you consider those, things start to look a whole lot less fun.

But it doesn&apos;t have to be that way. In this workshop, we&apos;ll see how to deploy in minutes, and without any of those pesky worries. The NixOS-specific hosting platform we built takes care of everything beyond your git commit and push. The result is that we can focus on just NixOS itself, and forget the rest.

In the workshop, we will help you bring up your own server, hosting simple APIs. And we will have all participants&apos; servers talk to each other through those APIs and hopefully have some fun!

Bring a laptop (with Nix installed)!</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/9BR87D/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/9BR87D/feedback/</feedback_url>
            </event>
            
        </room>
        
    </day>
    <day index='3' date='2024-10-27' start='2024-10-27T04:00:00+01:00' end='2024-10-28T03:59:00+01:00'>
        <room name='Woanders' guid='75013c7d-6729-543d-9560-058b7ed96329'>
            <event guid='fa49a09d-fff1-5f1d-bcdb-dc11e8093783' id='57261' code='WWCYEQ'>
                <room>Woanders</room>
                <title>Hackday</title>
                <subtitle></subtitle>
                <type>Happy Hour</type>
                <date>2024-10-27T09:00:00+01:00</date>
                <start>09:00</start>
                <duration>11:30</duration>
                <abstract>Hackday</abstract>
                <slug>nixcon-2024-57261-hackday</slug>
                <track></track>
                
                <persons>
                    
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://talks.nixcon.org/nixcon-2024/talk/WWCYEQ/</url>
                <feedback_url>https://talks.nixcon.org/nixcon-2024/talk/WWCYEQ/feedback/</feedback_url>
            </event>
            
        </room>
        
    </day>
    
</schedule>
