{"$schema": "https://c3voc.de/schedule/schema.json", "generator": {"name": "pretalx", "version": "2026.3.0.dev0", "url": "https://talks.nixcon.org"}, "schedule": {"url": "https://talks.nixcon.org/nixcon-2026/schedule/", "version": "0.18", "base_url": "https://talks.nixcon.org", "conference": {"acronym": "nixcon-2026", "title": "NixCon 2026", "start": "2026-09-25", "end": "2026-09-28", "daysCount": 4, "timeslot_duration": "00:05", "time_zone_name": "Europe/Warsaw", "colors": {"primary": "#6867ff"}, "rooms": [{"name": "Aula Duza A", "slug": "6222-aula-duza-a", "guid": "a371fd64-20cf-5422-a90d-b40cb46eafcf", "description": "Aula Duza A (left side to enter)", "capacity": null}, {"name": "Aula Duza B", "slug": "6223-aula-duza-b", "guid": "eccc61b6-56e8-5e7e-9811-064ca31d1144", "description": "Aula Duza B (right side to enter)", "capacity": null}, {"name": "Aula Srednia", "slug": "6224-aula-srednia", "guid": "1fd4383e-59af-5dce-90f5-117d2374a049", "description": null, "capacity": null}], "tracks": [{"name": "Sponsored", "slug": "7222-sponsored", "color": "#fff500"}, {"name": "Commercial", "slug": "7284-commercial", "color": "#ff00ea"}], "days": [{"index": 1, "date": "2026-09-25", "day_start": "2026-09-25T04:00:00+02:00", "day_end": "2026-09-26T03:59:00+02:00", "rooms": {}}, {"index": 2, "date": "2026-09-26", "day_start": "2026-09-26T04:00:00+02:00", "day_end": "2026-09-27T03:59:00+02:00", "rooms": {"Aula Duza A": [{"guid": "a7e5e75b-94e7-5782-b9d0-7d40772b547e", "code": "9VYLTB", "id": 104189, "logo": null, "date": "2026-09-26T09:00:00+02:00", "start": "09:00", "end": "2026-09-26T09:35:00+02:00", "duration": "00:35", "room": "Aula Duza A", "slug": "nixcon-2026-104189-opening-ceremony", "url": "https://talks.nixcon.org/nixcon-2026/talk/9VYLTB/", "title": "Opening ceremony", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "Join us as we ceremoniously open the gates of NixCon 2026!", "recording_license": "", "do_not_record": false, "persons": [], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/9VYLTB/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/9VYLTB/", "attachments": []}, {"guid": "fd36708d-e46b-5e3b-994f-7192f2f8c90e", "code": "AUMD3Y", "id": 102518, "logo": null, "date": "2026-09-26T09:45:00+02:00", "start": "09:45", "end": "2026-09-26T10:30:00+02:00", "duration": "00:45", "room": "Aula Duza A", "slug": "nixcon-2026-102518-nix-state-of-the-union-2026", "url": "https://talks.nixcon.org/nixcon-2026/talk/AUMD3Y/", "title": "Nix State of the Union 2026", "subtitle": "", "track": null, "type": "Long talk", "language": "en", "abstract": null, "description": "A year of Nix with the Foundation, Steering Committee, and Nix teams!", "recording_license": "", "do_not_record": false, "persons": [{"code": "G8XY7C", "name": "Ron Efroni", "avatar": null, "biography": "Ron is CEO and co-founder of Flox and President of the NixOS Foundation. A former software engineer and leader in large-scale product development, Ron led developer products at Meta, supporting 20,000+ engineers. Realizing the limitations of existing tooling and recognizing the superpowers of Nix, Ron co-founded Flox to help build a more sustainable Nix and make it accessible to the wider engineering community.", "public_name": "Ron Efroni", "guid": "0ccd3e33-fdab-553f-8fb9-d14dda1ff28c", "url": "https://talks.nixcon.org/nixcon-2026/speaker/G8XY7C/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/AUMD3Y/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/AUMD3Y/", "attachments": []}, {"guid": "9c03a323-0ad9-5d9a-81b9-fcb7ab625186", "code": "XJWUVA", "id": 100825, "logo": null, "date": "2026-09-26T10:45:00+02:00", "start": "10:45", "end": "2026-09-26T11:05:00+02:00", "duration": "00:20", "room": "Aula Duza A", "slug": "nixcon-2026-100825-ngi-forge-software-distribution-platform-for-ngi-projects", "url": "https://talks.nixcon.org/nixcon-2026/talk/XJWUVA/", "title": "NGI Forge \u2014 Software Distribution Platform for NGI projects", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "The Next Generation Internet (NGI) program of the European Commission, through\nNLnet, provides funding for more than 1000 free software projects. The NixOS\nFoundation NGI team is an NGI consortium partner for software packaging, with\na mission to ensure that all funded software is packaged, deployable, and\ncontributes to the long-term sustainability of the upstream software development\necosystem. We use Nix and NixOS to achieve this.\n\nThe challenge we face is how to scale packaging and long-term package\nmaintenance. Ideally, upstream software authors would be able to package their\nown software, maintain packages, and set up development environments themselves \u2014 but\nNix is known for a steep learning curve, which is not an appealing proposition\nfor everyone. Can we build a platform that is intuitive enough to appeal to a\ngeneral software developer audience with no prior Nix experience, while still\nexposing all the powerful features of Nix and NixOS?\n\nThis talk introduces [NGI Forge](https://ngi.nixos.org/), a platform that lowers the barrier to packaging\nand deploying NGI-funded software with Nix. We will explore its design, how it\nguides contributors through the packaging process, and how it feeds back into\nNixpkgs and the wider Nix community.\n\nNGI Forge URL: https://ngi.nixos.org/", "recording_license": "", "do_not_record": false, "persons": [{"code": "T3M7NC", "name": "Ivan Min\u010d\u00edk (@imincik)", "avatar": null, "biography": "Ivan is a founding member of the Nixpkgs Geospatial Team and currently serves as the NGI Team Lead.", "public_name": "Ivan Min\u010d\u00edk (@imincik)", "guid": "d8c954fb-a3a5-5998-8919-60ab24bcf347", "url": "https://talks.nixcon.org/nixcon-2026/speaker/T3M7NC/"}, {"code": "SS9AGY", "name": "Daniel Ramirez", "avatar": null, "biography": null, "public_name": "Daniel Ramirez", "guid": "e456ffdb-574d-5b1a-a6c6-e3a2ec9fad6b", "url": "https://talks.nixcon.org/nixcon-2026/speaker/SS9AGY/"}, {"code": "YNDSSN", "name": "Fedi Jamoussi", "avatar": "https://talks.nixcon.org/media/avatars/9Z3ENS_Meu5hPw.webp", "biography": "Former distro-hopper who got bitten hard by the Nix bug.", "public_name": "Fedi Jamoussi", "guid": "9a6fff5f-1f0f-5cdd-ad89-8bc36eca9fe4", "url": "https://talks.nixcon.org/nixcon-2026/speaker/YNDSSN/"}, {"code": "7JKPPV", "name": "Phani Rithvij", "avatar": null, "biography": null, "public_name": "Phani Rithvij", "guid": "29c4ca46-c4e9-574a-ba37-f8575900b717", "url": "https://talks.nixcon.org/nixcon-2026/speaker/7JKPPV/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/XJWUVA/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/XJWUVA/", "attachments": []}, {"guid": "08180d90-29ae-5c61-8579-83ee7998b26a", "code": "DBPWBZ", "id": 102407, "logo": null, "date": "2026-09-26T11:15:00+02:00", "start": "11:15", "end": "2026-09-26T11:35:00+02:00", "duration": "00:20", "room": "Aula Duza A", "slug": "nixcon-2026-102407-lazy-nix-store-serving-nix-artifacts-lazily-at-scale", "url": "https://talks.nixcon.org/nixcon-2026/talk/DBPWBZ/", "title": "Lazy Nix Store: Serving Nix Artifacts Lazily at Scale", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "Consuming Nix artifacts at scale has been a challenge to many. When there is a large swarm of ephemeral compute (CI jobs, spot instances, cloud developer environments, etc.) relying on Nix artifacts, traditional S3-based binary caches fall short due to the need for each instance to re-download entire NAR closures.\n\nOff-the-shelf shared filesystems like NFS are not optimized for Nix: Program startups trigger stat storms against the single-point-of-failure, and this is exacerbated by how Nix organizes lookup paths.\n\nWe present Lazy Nix Store, a dynamic file system that provides the Nix store backed by an S3 bucket containing globally deduplicated, content-addressed chunks. We leverage the immutability of Nix store paths to minimize network round trips by requesting metadata for a whole NAR in one round trip and serving subsequent VFS requests from memory.\n\nIn this talk, we elaborate on the design decisions we made along the way, the tradeoffs we considered, and some preliminary benchmarking results at scale.", "recording_license": "", "do_not_record": false, "persons": [{"code": "RCFFVB", "name": "Srini", "avatar": "https://talks.nixcon.org/media/avatars/T3C8QA_FrAZ3g6.webp", "biography": "Hi there, I'm Srini. I previously worked at Apple Maps and LinkedIn, primarily in the build systems space. I'm a recent Nix convert (my primary expertise is in Bazel) and I'm looking forward to delving deep into all things nix and being a part of the community!", "public_name": "Srini", "guid": "e43ef9c8-a6c6-53f4-b544-c04c37891f90", "url": "https://talks.nixcon.org/nixcon-2026/speaker/RCFFVB/"}, {"code": "EHVN3E", "name": "Zhaofeng Li", "avatar": null, "biography": null, "public_name": "Zhaofeng Li", "guid": "20afe8b5-2990-5c34-963e-96f0e8b0158e", "url": "https://talks.nixcon.org/nixcon-2026/speaker/EHVN3E/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/DBPWBZ/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/DBPWBZ/", "attachments": []}, {"guid": "cb0ae500-b587-5716-8b1e-c90be3d6cd5c", "code": "APSGL9", "id": 101728, "logo": null, "date": "2026-09-26T11:45:00+02:00", "start": "11:45", "end": "2026-09-26T12:30:00+02:00", "duration": "00:45", "room": "Aula Duza A", "slug": "nixcon-2026-101728-advanced-nixos-integration-test-scenarios-usb-passthrough-xen-and-fdo", "url": "https://talks.nixcon.org/nixcon-2026/talk/APSGL9/", "title": "Advanced NixOS Integration Test Scenarios: USB Passthrough, Xen, and FDO", "subtitle": "", "track": null, "type": "Long talk", "language": "en", "abstract": null, "description": "NixOS integration tests are an enormously helpful tool to automate test scenarios involving one or multiple VMs. The test driver's capabilities allow for complex tests cases beyond testing whether a service comes up correctly or whether a distributed software communicates correctly across multiple peers. In this talk, I present three such advanced scenarios that I encountered during my professional and academic work.\n\n[usbvfiod](https://github.com/cyberus-technology/usbvfiod) is a USB-controller emulation that enables the passthrough of USB devices to cloud-hypervisor VMs. [NixOS integration tests](https://github.com/cyberus-technology/usbvfiod/blob/aa002d9e10df25ccbd7941675561d35d09f82b63/nix/tests.nix) utilize QEMU's capability to emulate USB devices and nested virtualization to automatically test the passthrough of USB sticks and keyboards.\n\n[xenmux](https://github.com/lbeierlieb/xenmux) is a project to allow reseachers to easily configure current and older Xen versions. [Tests](https://github.com/lbeierlieb/xenmux/blob/1d61214997a55abfb1e23cd3caab0224166d12ca/checks.nix) ensure that every supported version of Xen successfully boots. These tests are not as trivial as they sound, special configuration is necessary to switch from the default direct kernel boot to image-based booting.\n\nFIDO Device Onboarding (FDO) provides a protocol to realize zero-touch deployment of IoT devices without deployment-specific provisioning at the manufacturer. [fdo-nix](https://github.com/lbeierlieb/fdo-nix) experiments with packaging FDO applications, provides a module for device and server configuration, and checks everything in an [integration test](https://github.com/lbeierlieb/fdo-nix/blob/9787be6f281e48a680130eb81b11f0bdbf63b781/checks/fdo-check.nix), which is non-trivial because has to boot multiple times.", "recording_license": "", "do_not_record": false, "persons": [{"code": "HAALZF", "name": "Lukas Beierlieb", "avatar": "https://talks.nixcon.org/media/avatars/UN8R7J_cFKikgb.webp", "biography": "Lukas Beierlieb is a software engineer at Cyberus Technology and a PhD student at the University of W\u00fcrzburg, both with a focus on virtualization technology. He does not want to imagine a world in that development systems and environments are not managed with Nix.", "public_name": "Lukas Beierlieb", "guid": "68a0e42a-120a-5e75-95a0-ff3921c766b9", "url": "https://talks.nixcon.org/nixcon-2026/speaker/HAALZF/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/APSGL9/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/APSGL9/", "attachments": []}, {"guid": "3d826742-52e2-5b42-809e-a315ea2c3665", "code": "3GB87D", "id": 98196, "logo": null, "date": "2026-09-26T13:30:00+02:00", "start": "13:30", "end": "2026-09-26T13:50:00+02:00", "duration": "00:20", "room": "Aula Duza A", "slug": "nixcon-2026-98196-mainstream-nix-native-windows-nix-language-pm-nix-backends", "url": "https://talks.nixcon.org/nixcon-2026/talk/3GB87D/", "title": "Mainstream Nix \u2013 Native Windows Nix, Language PM Nix Backends", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "In this talk I want to summarize 1 year of work on libnix. \n\nhttps://lastlog.de/blog/libnix.html\n\nI want to introduce the motivation and vision and then discuss the results so far.\n\nThis will mainly show the nix integration in cargo and discuss the progress of the native windows port of nix and why it is important!\n\nhttps://lastlog.de/blog/libnix_cargo-nix-backend.html\n\nFinally I want to encourage the Nix community to join this effort.", "recording_license": "", "do_not_record": false, "persons": [{"code": "TDQC9Q", "name": "Joachim Schiele", "avatar": "https://talks.nixcon.org/media/avatars/FWL8G7_1Rwh6Cq.webp", "biography": "Long term Nix developer, creator of the tour of Nix and driver behind the libnix effort.", "public_name": "Joachim Schiele", "guid": "c1ff29b0-e38e-5347-9d74-034c24a09d29", "url": "https://talks.nixcon.org/nixcon-2026/speaker/TDQC9Q/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/3GB87D/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/3GB87D/", "attachments": []}, {"guid": "8632413a-4adc-5c99-ab03-7402c9d8b236", "code": "UQ9HVT", "id": 102125, "logo": null, "date": "2026-09-26T14:30:00+02:00", "start": "14:30", "end": "2026-09-26T15:15:00+02:00", "duration": "00:45", "room": "Aula Duza A", "slug": "nixcon-2026-102125-nixception-uncompromising-incremental-builds-inside-the-sandbox-and-outside", "url": "https://talks.nixcon.org/nixcon-2026/talk/UQ9HVT/", "title": "Nixception: Uncompromising incremental builds inside the sandbox\u2026 and outside!", "subtitle": "", "track": null, "type": "Long talk", "language": "en", "abstract": null, "description": "Sandboxed Nix builds are great\u2026 until you're rebuilding for the 42nd time.\n\nWe wanted fast incremental builds **without** giving up sandboxing. And we wanted to reuse the same cache both **outside** build sandboxes during development and **inside** sandboxed Nix builds.\n\nTurns out that's actually possible with **Nixception**: an inception of Nix inside Nix that looks like an exception to sandboxing!\n\nThe trick is surprisingly simple. Nixception speaks the Remote Build Execution (RBE) protocol on one side and the Nix daemon protocol on the other. Every remote execution request becomes a regular Nix derivation, built and cached by Nix itself. Nixception stores almost no state of its own; the Nix store is the cache. It all works thanks to the unloved `recursive-nix` feature which makes the same nix daemon available inside the build sandboxes. So they share the same build caches inside and outside the sandbox.\n\nThis means any tool that already speaks RBE (Bazel, Buck2, etc) can use nix as their remote execution service. For tools that don't, RECC (think ccache/distcc/sccache, but for RBE) makes C/C++ builds benefit from the same mechanism.\n\nIn this talk we will cover the benefits of the tool in several common use cases, including performance benchmarks. We will also cover conceptual aspects of composing build systems, and how this design compares with similar projects. We will also cover interesting implementation details and challenges we encountered trying to translate one model into the other, both ways.\n\nWelcome to all the curious people, and please bring questions!", "recording_license": "", "do_not_record": false, "persons": [{"code": "RKKUPU", "name": "Guillaume Maudoux (@layus)", "avatar": "https://talks.nixcon.org/media/avatars/PFYCTR_MwbN0PM.webp", "biography": "Guillaume Maudoux (a.k.a @layus on GitHub and elsewhere) is an engineer and researcher specialized in build systems.\n\nBased in Belgium, Guillaume blends a background in computer science, engineering, and applied mathematics with strong interests in correctness, reliability, and efficiency in software systems.\n\nGuillaume works at Tweag\u2019s Scalable Build Systems group. A team of engineers and researchers focused on developer productivity, robust tooling, and enterprise-scale build performance. His work focusses on integrating Nix into Bazel and in particular supporting remote execution. For some reason his skills are most appreciated in the robotics industry.\n\nYou may find him contributing to random open source projects because he never resists fixing a bug he found, and digging to uncover the root cause of problems. He will happily share his findings in blogs, conferences or around a coffeeC-w tea.\n\nGuillaume\u2019s reputation stems from his ability to bridge academic rigor with systems engineering pragmatism. His work helps teams build complex software more reliably, efficiently, and at scale.", "public_name": "Guillaume Maudoux (@layus)", "guid": "435a4227-db71-5c7c-9fa6-46b67bcd307b", "url": "https://talks.nixcon.org/nixcon-2026/speaker/RKKUPU/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/UQ9HVT/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/UQ9HVT/", "attachments": []}, {"guid": "a71487b1-d0cf-5a53-9d49-54db0f420373", "code": "3LDLLY", "id": 102155, "logo": null, "date": "2026-09-26T15:30:00+02:00", "start": "15:30", "end": "2026-09-26T16:15:00+02:00", "duration": "00:45", "room": "Aula Duza A", "slug": "nixcon-2026-102155-nixos-in-the-corporate-trenches-cuts-and-bruises", "url": "https://talks.nixcon.org/nixcon-2026/talk/3LDLLY/", "title": "NixOS in the Corporate Trenches: Cuts and Bruises", "subtitle": "", "track": null, "type": "Long talk", "language": "en", "abstract": null, "description": "NixOS promises a utopian, purely reproducible future. But deploying it inside a legacy corporate network feels like trench warfare. Standard fetchers get gunned down by enterprise proxies, and security teams deploy Endpoint Detection and Response (EDR) agents like landmines on our beautifully immutable operating system.\n\nIn this talk, I\u2019ll walk you through my ongoing campaign to build a secure, fully provisioned NixOS Developer VM for a strict corporate client. I\u2019ll share the battle scars of custom proxy packaging, the frontline struggle of EDR integration, and the covert operation of deploying air-gapped, sandboxed AI.\n\nJoin me to learn how to survive (and win) in the corporate trenches!", "recording_license": "", "do_not_record": false, "persons": [{"code": "Q7JTYP", "name": "Nicolas Goudry", "avatar": "https://talks.nixcon.org/media/avatars/RQUCZX_QEdrk9i.webp", "biography": "Hi, I\u2019m Nicolas Goudry, a DevOps engineer mainly focused on Kubernetes and Cloud Native technologies.\nI love exploring ways to make development environments more reliable and reproducible, and I\u2019ve spent way too much time working with Nix and its ecosystem (but I love it).", "public_name": "Nicolas Goudry", "guid": "4ea8cbf3-7fad-59dd-9902-203d69e7bc6a", "url": "https://talks.nixcon.org/nixcon-2026/speaker/Q7JTYP/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/3LDLLY/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/3LDLLY/", "attachments": []}, {"guid": "9def8e43-3e3b-50ee-b788-c1e0ac2c364a", "code": "SYDEZB", "id": 98936, "logo": null, "date": "2026-09-26T16:30:00+02:00", "start": "16:30", "end": "2026-09-26T16:35:00+02:00", "duration": "00:05", "room": "Aula Duza A", "slug": "nixcon-2026-98936-nixos-on-riscv", "url": "https://talks.nixcon.org/nixcon-2026/talk/SYDEZB/", "title": "NixOS on RISCV", "subtitle": "", "track": null, "type": "Lightning talk", "language": "en", "abstract": null, "description": "Hi,\n\nI'd like to present my work on RISCV. I've currently ported Nixos to the SpacemIT K1 and I'll be working on the K3 soon. I hope to finish before NixCon and present it there.\n\nThis also involves providing a RISCV cache to facilitate the use of RISCV on NixOS.\n\nBest Regards", "recording_license": "", "do_not_record": true, "persons": [{"code": "CAVLMB", "name": "liberodark", "avatar": null, "biography": "I am just a hobbyist and NixOS user no more.", "public_name": "liberodark", "guid": "fb495737-7ab5-597a-b641-6d1733b6ecf9", "url": "https://talks.nixcon.org/nixcon-2026/speaker/CAVLMB/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/SYDEZB/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/SYDEZB/", "attachments": []}, {"guid": "aa406987-9bc2-5218-b31e-542ffb7110b4", "code": "7VCF7M", "id": 102525, "logo": null, "date": "2026-09-26T16:40:00+02:00", "start": "16:40", "end": "2026-09-26T16:45:00+02:00", "duration": "00:05", "room": "Aula Duza A", "slug": "nixcon-2026-102525-the-future-of-code-collaboration", "url": "https://talks.nixcon.org/nixcon-2026/talk/7VCF7M/", "title": "the future of code collaboration", "subtitle": "", "track": "Sponsored", "type": "Lightning talk", "language": "en", "abstract": null, "description": "Since 2008, code collaboration has meant one company's servers. Your identity and your project history sit inside GitHub, and none of it is yours to take with you.\nThe AT protocol, the same one under Bluesky, changes the arrangement. Your data lives in your own account. It travels with you, and any app can build on it.\nThat makes the forge swappable and your reputation portable. It also fits what's coming: once AI agents are opening most of the pull requests, you'll want collaboration on open rails anyone can build on.\nFive minutes on why the AT protocol is where this is heading.", "recording_license": "", "do_not_record": false, "persons": [{"code": "RJH9ET", "name": "Tangled", "avatar": "https://talks.nixcon.org/media/avatars/CGB3RG_tpq9wrF.webp", "biography": "Tangled is a code collaboration platform built on the AT Protocol, the open network behind Bluesky. Your code and identity live in your own account, not on someone else's servers.", "public_name": "Tangled", "guid": "177b013b-1a41-55b6-9c03-14867b23ea8f", "url": "https://talks.nixcon.org/nixcon-2026/speaker/RJH9ET/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/7VCF7M/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/7VCF7M/", "attachments": []}, {"guid": "e89037bb-6abf-5de2-adb6-96b5d94f85fe", "code": "AJB7DM", "id": 104215, "logo": null, "date": "2026-09-26T16:50:00+02:00", "start": "16:50", "end": "2026-09-26T16:55:00+02:00", "duration": "00:05", "room": "Aula Duza A", "slug": "nixcon-2026-104215-lightning-talk-pdt-partners", "url": "https://talks.nixcon.org/nixcon-2026/talk/AJB7DM/", "title": "Lightning Talk: PDT Partners", "subtitle": "", "track": "Sponsored", "type": "Lightning talk", "language": "en", "abstract": null, "description": "Placeholder", "recording_license": "", "do_not_record": false, "persons": [], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/AJB7DM/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/AJB7DM/", "attachments": []}, {"guid": "3c4d5d7a-0ee4-59e7-aeb0-51b013f60dc0", "code": "KNRVXR", "id": 103264, "logo": null, "date": "2026-09-26T17:00:00+02:00", "start": "17:00", "end": "2026-09-26T17:05:00+02:00", "duration": "00:05", "room": "Aula Duza A", "slug": "nixcon-2026-103264-how-long-until-it-s-done-techniques-for-build-farm-dashboards", "url": "https://talks.nixcon.org/nixcon-2026/talk/KNRVXR/", "title": "How Long Until It's Done? Techniques for Build Farm Dashboards", "subtitle": "", "track": null, "type": "Lightning talk", "language": "en", "abstract": null, "description": "**Slides:** https://github.com/applicative-systems/hydra-dashboard/blob/b34867faaa093115c0dee226506279f2bebb47d3/docs/hydra-dashboard-krakow-nixcon.pdf\n\nStaring at a private Hydra instance and guessing when a massive build will finish is a completely solved problem, yet most teams are still flying blind. While the official NixOS project enjoys real-time ETAs and granular bottleneck metrics, you are likely suffering through multi-hour black-box builds simply because your own Hydra traps its telemetry inside a raw JSON blob.\nIn this five-minute lightning talk, we will see how to unlock that data and get official-grade observability for your own build farm without patching Hydra or maintaining a custom exporter daemon. By dropping in the off-the-shelf Prometheus json_exporter, we can map Hydra's native output into over fifty scrape-able metrics purely through configuration. We will walk through the exact setup to visualize queue depths, catch failing remote builders, and build the real-time ETA burndown panel.", "recording_license": "", "do_not_record": false, "persons": [{"code": "XN3JNC", "name": "Kier\u00e1n Meinhardt", "avatar": "https://talks.nixcon.org/media/avatars/MEDVQZ_c8Cuw2A.webp", "biography": "Kier\u00e1n Meinhardt fell down the Nix rabbit hole in 2018 by way of Haskell. Today, he is a NixOS consultant at Applicative Systems and a long-time regular at the weekly Berlin NixOS meetup. Upstream he is best known for introducing systemd-nspawn container tests to nixpkgs.", "public_name": "Kier\u00e1n Meinhardt", "guid": "08d82986-1d71-540d-8fe7-0d2c28976f1f", "url": "https://talks.nixcon.org/nixcon-2026/speaker/XN3JNC/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/KNRVXR/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/KNRVXR/", "attachments": []}, {"guid": "68c0f707-05bd-5c8f-8a2b-c1cfc6be55b4", "code": "CRK3WW", "id": 102360, "logo": null, "date": "2026-09-26T17:10:00+02:00", "start": "17:10", "end": "2026-09-26T17:15:00+02:00", "duration": "00:05", "room": "Aula Duza A", "slug": "nixcon-2026-102360-automated-function-package-scope-creation-override-and-modules-without-specialargs", "url": "https://talks.nixcon.org/nixcon-2026/talk/CRK3WW/", "title": "Automated function/package/scope creation + override, and modules without `specialArgs`", "subtitle": "", "track": null, "type": "Lightning talk", "language": "en", "abstract": null, "description": "Majority of Nix code bases are still relying on ad-hoc declarations for packages (including overrides) and helper functions. Entries are manually listed and might even be duplicated in various parts of the code base.\n\nIn this talk, we will cover a pattern where users can very easily inject globally available helper functions, create new custom packages/scopes or transparently override preexisting ones and make them available to modules all without using `specialArgs`.", "recording_license": "", "do_not_record": false, "persons": [{"code": "VNWVFU", "name": "Yifei Sun", "avatar": "https://talks.nixcon.org/media/avatars/UZLEP7_nV3JgIV.webp", "biography": "Running [my own \u201cISP\u201d](https://bgp.tools/as/10779) on NixOS, [osu!](https://osu.ppy.sh/users/stepbrobd) enjoyer, [`nixpkgs`](https://github.com/NixOS/nixpkgs) committer, [`colmena`](https://github.com/nix-community/colmena) maintainer. More about me [here](https://ysun.co/) or on [GitHub](https://github.com/stepbrobd).\n\nBtw you can check your connection speed to the official binary cache with [Fastly speedtest tool](https://speed.edgecompute.app) ;)", "public_name": "Yifei Sun", "guid": "bb1edcef-d88a-56b2-897f-be72136c1929", "url": "https://talks.nixcon.org/nixcon-2026/speaker/VNWVFU/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/CRK3WW/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/CRK3WW/", "attachments": []}, {"guid": "025e0a42-1109-5a90-87cb-fc92e234b14c", "code": "W7YLBZ", "id": 104213, "logo": null, "date": "2026-09-26T17:20:00+02:00", "start": "17:20", "end": "2026-09-26T17:25:00+02:00", "duration": "00:05", "room": "Aula Duza A", "slug": "nixcon-2026-104213-lightning-talk-cyberus", "url": "https://talks.nixcon.org/nixcon-2026/talk/W7YLBZ/", "title": "Lightning Talk: Cyberus", "subtitle": "", "track": "Sponsored", "type": "Lightning talk", "language": "en", "abstract": null, "description": "Placeholder", "recording_license": "", "do_not_record": false, "persons": [], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/W7YLBZ/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/W7YLBZ/", "attachments": []}], "Aula Duza B": [{"guid": "4d2353f9-5e13-58d5-b7e6-1675a825c1e1", "code": "GQFKXA", "id": 101419, "logo": null, "date": "2026-09-26T10:00:00+02:00", "start": "10:00", "end": "2026-09-26T10:20:00+02:00", "duration": "00:20", "room": "Aula Duza B", "slug": "nixcon-2026-101419-finix-making-space-for-multiple-nix-operating-systems", "url": "https://talks.nixcon.org/nixcon-2026/talk/GQFKXA/", "title": "finix \u2013 making space for multiple nix operating systems", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "After another year of building and daily-driving [finix](https://github.com/finix-community/finix), I remain interested in what it means for `nix` to support multiple operating system designs and philosophies. In this talk, I will share some lessons from my experiences with `finix`, and beyond, and make the case that healthy ecosystems benefit from diversity.\n\n`nixos` remains an extraordinary achievement. But if the ideas behind `nix` are truly powerful, they should be able to adapt to different technical philosophies and communities, rather than requiring everyone to converge on a single vision. By creating space for alternative approaches, we can bring those ideas to people who might otherwise never adopt them at all.", "recording_license": "", "do_not_record": false, "persons": [{"code": "8VEBAW", "name": "aanderse", "avatar": "https://talks.nixcon.org/media/avatars/RCZQRA_KKZ6Ixi.webp", "biography": "Interested in all things nix.", "public_name": "aanderse", "guid": "a6366f21-0e08-56e3-9cdb-0853e285dc71", "url": "https://talks.nixcon.org/nixcon-2026/speaker/8VEBAW/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/GQFKXA/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/GQFKXA/", "attachments": []}, {"guid": "b2fd55a9-745a-556e-8882-25e19a51e243", "code": "GMPZQM", "id": 102514, "logo": null, "date": "2026-09-26T10:30:00+02:00", "start": "10:30", "end": "2026-09-26T11:15:00+02:00", "duration": "00:45", "room": "Aula Duza B", "slug": "nixcon-2026-102514-nix-panel", "url": "https://talks.nixcon.org/nixcon-2026/talk/GMPZQM/", "title": "Nix panel", "subtitle": "", "track": null, "type": "Long talk", "language": "en", "abstract": null, "description": "Ask Nix Core developer anything you want.", "recording_license": "", "do_not_record": false, "persons": [{"code": "73RSLL", "name": "J\u00f6rg Thalheim", "avatar": null, "biography": "I create tools around Nix/NixOS: nixos-anywhere, disko, sops-nix, ...", "public_name": "J\u00f6rg Thalheim", "guid": "5970a0a0-f588-53be-9057-f8eaee08b319", "url": "https://talks.nixcon.org/nixcon-2026/speaker/73RSLL/"}, {"code": "7LVSAC", "name": "Lisanna Dettwyler", "avatar": "https://talks.nixcon.org/media/avatars/HU38TC_3iXZfJY.webp", "biography": "Longtime Nix enthusiast, contributor for the past year, and NixOS Google Summer of Code 2026 mentor. Author of [nix-scheduler-hook](https://codeberg.org/lisanna/nix-scheduler-hook). Nix maintainer.", "public_name": "Lisanna Dettwyler", "guid": "9b6380a5-27b6-591b-a4ef-4ce1f3b503c3", "url": "https://talks.nixcon.org/nixcon-2026/speaker/7LVSAC/"}, {"code": "WSBSSA", "name": "Eelco Dolstra", "avatar": "https://talks.nixcon.org/media/avatars/CH7HAF_8flolZw.webp", "biography": "Eelco Dolstra started the Nix project as a PhD student at Utrecht University. He is a co-founder at Determinate Systems.", "public_name": "Eelco Dolstra", "guid": "6476c246-9512-5aef-8cd1-03e29a1b5fb6", "url": "https://talks.nixcon.org/nixcon-2026/speaker/WSBSSA/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/GMPZQM/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/GMPZQM/", "attachments": []}, {"guid": "8a275bb3-e2dc-5a40-ba5c-8f546dd4311e", "code": "HDKDCQ", "id": 102519, "logo": null, "date": "2026-09-26T11:30:00+02:00", "start": "11:30", "end": "2026-09-26T11:50:00+02:00", "duration": "00:20", "room": "Aula Duza B", "slug": "nixcon-2026-102519-nix-foundation-and-steering-committee-panel", "url": "https://talks.nixcon.org/nixcon-2026/talk/HDKDCQ/", "title": "Nix Foundation and Steering Committee Panel", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "Join the steering committee and the NixOS Foundation in an open panel conversation. Ask your questions, raise the top subjects and lets dive into Nix together.", "recording_license": "", "do_not_record": false, "persons": [{"code": "G8XY7C", "name": "Ron Efroni", "avatar": null, "biography": "Ron is CEO and co-founder of Flox and President of the NixOS Foundation. A former software engineer and leader in large-scale product development, Ron led developer products at Meta, supporting 20,000+ engineers. Realizing the limitations of existing tooling and recognizing the superpowers of Nix, Ron co-founded Flox to help build a more sustainable Nix and make it accessible to the wider engineering community.", "public_name": "Ron Efroni", "guid": "0ccd3e33-fdab-553f-8fb9-d14dda1ff28c", "url": "https://talks.nixcon.org/nixcon-2026/speaker/G8XY7C/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/HDKDCQ/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/HDKDCQ/", "attachments": []}, {"guid": "f3cbb7e5-5a4d-5169-9557-17b3175d07d8", "code": "GWK3ZW", "id": 103361, "logo": null, "date": "2026-09-26T13:00:00+02:00", "start": "13:00", "end": "2026-09-26T13:20:00+02:00", "duration": "00:20", "room": "Aula Duza B", "slug": "nixcon-2026-103361-deltanar-space-efficient-nix-deployments-for-space", "url": "https://talks.nixcon.org/nixcon-2026/talk/GWK3ZW/", "title": "DeltaNAR - Space efficient Nix deployments for space", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "Nix deployments can be very bandwidth-intensive, and in certain deployments such as spacecraft or other very remote systems this can become a major hurdle.\nThis is the problem DeltaNAR aims to solve.\n\nThis talk will provide the motivations, deduplication strategies & implementation details behind DeltaNAR,\nand some learnings for future binary cache transfer protocols.", "recording_license": "", "do_not_record": false, "persons": [{"code": "9UXJAU", "name": "adisbladis", "avatar": null, "biography": null, "public_name": "adisbladis", "guid": "2a5aa4ee-99ec-5719-b1c8-6664aa9859e2", "url": "https://talks.nixcon.org/nixcon-2026/speaker/9UXJAU/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/GWK3ZW/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/GWK3ZW/", "attachments": []}, {"guid": "0808f938-a62e-56ba-845f-7faa7ecf9637", "code": "7ED9HM", "id": 97504, "logo": null, "date": "2026-09-26T13:30:00+02:00", "start": "13:30", "end": "2026-09-26T13:50:00+02:00", "duration": "00:20", "room": "Aula Duza B", "slug": "nixcon-2026-97504-declarative-hardware-architectures-using-nix", "url": "https://talks.nixcon.org/nixcon-2026/talk/7ED9HM/", "title": "Declarative Hardware Architectures using Nix", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "Nix allows us to define complex build architectures in a declarative matter. So what stops us from defining hardware? In fact, it turns out nothing stops us from designing hardware with Nix. In this talk, I'll be covering how a unified hardware and toolchain architecture can be defined for FPGA's and ASIC's using Nix.", "recording_license": "", "do_not_record": false, "persons": [{"code": "CRPRL9", "name": "Tristan Ross", "avatar": "https://talks.nixcon.org/media/avatars/879RHC_u8eDwLN.webp", "biography": "I've been a nix user for about 4 years now. I've worked on various aspects of nixpkgs like the stdenv, Flutter, and LLVM. Nowadays, I deal with SBOMs and supply chain security at Determinate Systems.", "public_name": "Tristan Ross", "guid": "2232b047-e687-51fa-bd08-ae02800ecb7f", "url": "https://talks.nixcon.org/nixcon-2026/speaker/CRPRL9/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/7ED9HM/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/7ED9HM/", "attachments": []}, {"guid": "e7f5ce14-c95a-53d7-b23c-3432bb3b5ac0", "code": "TRWZVV", "id": 102421, "logo": null, "date": "2026-09-26T14:00:00+02:00", "start": "14:00", "end": "2026-09-26T14:20:00+02:00", "duration": "00:20", "room": "Aula Duza B", "slug": "nixcon-2026-102421-nix-the-eu-cyber-resilience-act-what-the-ecosystem-still-needs-to-build", "url": "https://talks.nixcon.org/nixcon-2026/talk/TRWZVV/", "title": "Nix & the EU Cyber Resilience Act: What the Ecosystem Still Needs to Build", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "The EU Cyber Resilience Act regulates software to increase security. Its approach is to regulate accountability. From December 2027, commercial products with digital elements must meet mandatory cybersecurity requirements: SBOMs, vulnerability disclosure, patch lifecycle commitments, and incident reporting. For the Nix ecosystem, the technical foundations are strong. The organizational foundations are not, bits and pieces are in place but a coherent whole is missing.\n\nThis talk surveys how comparable projects have organized for the CRA. FreeBSD has formally designated its Foundation as the project's Open Source Software Steward. Zephyr documented a seven-day vulnerability response commitment and restructured its release lifecycle around it. Yocto built per-CVE annotation tooling that turns triage into an auditable trail. Debian offers the deepest precedent: a dedicated Security Team, a separate LTS team, CVE Numbering Authority status, and a funding model that pays for sustained maintenance.", "recording_license": "", "do_not_record": false, "persons": [{"code": "7BMVBK", "name": "Florian Pester", "avatar": null, "biography": "- Member of the Nix Marketing Team\n - Responsible for CTRL-OS @ Cyberus Technology", "public_name": "Florian Pester", "guid": "3affa5f6-9424-5905-8c47-020e894c05e8", "url": "https://talks.nixcon.org/nixcon-2026/speaker/7BMVBK/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/TRWZVV/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/TRWZVV/", "attachments": []}, {"guid": "e1f49c1b-fd0a-5915-93ee-d8a9479123dc", "code": "LQNN3Q", "id": 103266, "logo": null, "date": "2026-09-26T14:30:00+02:00", "start": "14:30", "end": "2026-09-26T14:50:00+02:00", "duration": "00:20", "room": "Aula Duza B", "slug": "nixcon-2026-103266-netbox-nixos-automatically-turning-netbox-devices-into-nixos-configurations", "url": "https://talks.nixcon.org/nixcon-2026/talk/LQNN3Q/", "title": "netbox-nixos: automatically turning NetBox devices into NixOS configurations", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "**Slides:** https://github.com/applicative-systems/netbox-nixos/blob/10625b1352260d3a60113443034f8a4ebce34fe2/docs/netbox-nixos-krakow-nixcon.pdf\n\nNetBox has become a widely-used source of truth for datacentre and network infrastructure: devices, interfaces, IP addresses, prefixes, VLANs.\nWhen those devices run NixOS, you'll want that data reflected in your NixOS configurations. Traditionally, the NixOS configuration lives in a repository and NetBox is treated as just another data source. If not managed very carefully, this results in error-prone maintenance and a steady supply of configuration drift.\nnetbox-nixos inverts that relationship and makes NetBox authoritative for NixOS configuration as well. Every NixOS device in NetBox is rendered into a NixOS configuration, served from a flake endpoint under NetBox's domain. Deploying a host is then just:\n\n`$ nixos-rebuild switch --flake https://my.netbox/nixos#myDevice --target-host root@myDevice`\n\nNo repository round-trip, no drift. And as a bonus, non-Nix operators can manage host configuration directly through NetBox's UI.\nIn this talk we introduce netbox-nixos, show how a device configured in NetBox derives a complete NixOS configuration, and cover the questions this immediately raises: how NetBox's data model maps onto NixOS options, where the boundary sits between NetBox-owned network configuration and the modules you still write yourself, and what serving a flake from a live web service means for reproducibility and trust.", "recording_license": "", "do_not_record": false, "persons": [{"code": "XN3JNC", "name": "Kier\u00e1n Meinhardt", "avatar": "https://talks.nixcon.org/media/avatars/MEDVQZ_c8Cuw2A.webp", "biography": "Kier\u00e1n Meinhardt fell down the Nix rabbit hole in 2018 by way of Haskell. Today, he is a NixOS consultant at Applicative Systems and a long-time regular at the weekly Berlin NixOS meetup. Upstream he is best known for introducing systemd-nspawn container tests to nixpkgs.", "public_name": "Kier\u00e1n Meinhardt", "guid": "08d82986-1d71-540d-8fe7-0d2c28976f1f", "url": "https://talks.nixcon.org/nixcon-2026/speaker/XN3JNC/"}, {"code": "JMD3VD", "name": "Jacek Galowicz", "avatar": null, "biography": "Jacek Galowicz is a systems architect, Nixpkgs contributor and maintainer of the NixOS Integration Test Driver. He is the founder of Applicative Systems, a software development consulting firm, and Nixcademy, corporate Nix/NixOS training provider. With a background ranging from microhypervisors, CI/CD automation, and writing technical books, Jacek focuses on building resilient, machine-verified software infrastructure that lasts.", "public_name": "Jacek Galowicz", "guid": "9190745d-16ab-5d2b-860e-8b4eeb42622d", "url": "https://talks.nixcon.org/nixcon-2026/speaker/JMD3VD/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/LQNN3Q/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/LQNN3Q/", "attachments": []}, {"guid": "79cd6eb4-b4de-5c89-8d06-cc08cfac475c", "code": "R7FSSH", "id": 102147, "logo": null, "date": "2026-09-26T15:00:00+02:00", "start": "15:00", "end": "2026-09-26T15:20:00+02:00", "duration": "00:20", "room": "Aula Duza B", "slug": "nixcon-2026-102147-statix-stratified-module-configuration-for-humans", "url": "https://talks.nixcon.org/nixcon-2026/talk/R7FSSH/", "title": "Statix: stratified module configuration for humans", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "A ground up rework of the module system in racket. Separates values from options allowing for:\n\n1. cheap and correct diagnosis of almost all errors (no more clueless infinite recursion).\n2. a working prototype booting a real vm.\n3. hole-driven developement: start a repl with a missing computable configuration value, be dropped into a repl with required (depended on configuration in scope), dynamically calculate the computation body and move on.", "recording_license": "", "do_not_record": false, "persons": [{"code": "8VLPUT", "name": "bme", "avatar": null, "biography": "CTO @ hypervolt", "public_name": "bme", "guid": "540913de-2ed0-5948-a3b0-6112316965c6", "url": "https://talks.nixcon.org/nixcon-2026/speaker/8VLPUT/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/R7FSSH/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/R7FSSH/", "attachments": []}, {"guid": "ae81a700-a726-5812-9762-599fef195287", "code": "AYCEH8", "id": 102524, "logo": null, "date": "2026-09-26T15:30:00+02:00", "start": "15:30", "end": "2026-09-26T15:50:00+02:00", "duration": "00:20", "room": "Aula Duza B", "slug": "nixcon-2026-102524-nixing-artificial-intelligence", "url": "https://talks.nixcon.org/nixcon-2026/talk/AYCEH8/", "title": "Nixing Artificial Intelligence", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "Nixing, as in, the dictionary word of \"to really get Nix to solve all the problems..\"\n\nIf you read this far, the title is obviously a play here... We aren't here to erase machine learning from your machine configuration. Instead, we are here to talk about how Nix is quietly becoming the critical foundation layer for the builders behind the top agents and models to the practitioners taking them out to the outer edge of potential.\n\nRight now, the state of AI infrastructure engineering is a nightmare. It is a fragile house of cards built on broken Python virtual environments, conflicting CUDA driver paths, massive 15GB Docker layers, and opaque execution sandboxes. But behind closed doors at some of the world's leading model labs and autonomous agent startups, engineers are abandoning traditional version managers and heavy container setups. They are turning to Nix.\n\nIn this fast-paced 20-minute talk, we will cut through the generative AI hype and look at the hard operational realities. We\u2019ll cover exactly where Nix and AI genuinely flourish together: from managing complex local model runtimes to generating ultra-fast, sub-second deterministic environments for cloud-based coding agents. We\u2019ll discuss real-world use cases, show where the ecosystem is successfully scaling right now, and look at the architectural paradigms driving the future of reproducible AI stacks.", "recording_license": "", "do_not_record": false, "persons": [{"code": "G8XY7C", "name": "Ron Efroni", "avatar": null, "biography": "Ron is CEO and co-founder of Flox and President of the NixOS Foundation. A former software engineer and leader in large-scale product development, Ron led developer products at Meta, supporting 20,000+ engineers. Realizing the limitations of existing tooling and recognizing the superpowers of Nix, Ron co-founded Flox to help build a more sustainable Nix and make it accessible to the wider engineering community.", "public_name": "Ron Efroni", "guid": "0ccd3e33-fdab-553f-8fb9-d14dda1ff28c", "url": "https://talks.nixcon.org/nixcon-2026/speaker/G8XY7C/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/AYCEH8/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/AYCEH8/", "attachments": []}, {"guid": "684135b6-b0a6-5ad4-ad61-111563890341", "code": "J3RMT8", "id": 102415, "logo": null, "date": "2026-09-26T16:00:00+02:00", "start": "16:00", "end": "2026-09-26T16:20:00+02:00", "duration": "00:20", "room": "Aula Duza B", "slug": "nixcon-2026-102415-nixnet-declare-your-network-experiments-as-a-nix-flake", "url": "https://talks.nixcon.org/nixcon-2026/talk/J3RMT8/", "title": "NixNet: Declare Your Network Experiments as a Nix Flake", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "Reproducibility is a cornerstone of scientific research \u2014 results that cannot be reproduced cannot be trusted, challenged, or built upon. Yet in network research, reproducing an experiment is harder than it should be: undeclared dependencies, environment drift, and fragile shell scripts cause experiments to silently diverge across machines and over time, making it difficult to verify prior work or share experiments with collaborators.\n\nNixNet is a recent effort that uses Nix to manage the complete lifecycle of virtual network experiments: dependency installation, topology setup, experiment execution, and resource cleanup \u2014 all triggered by a single nix run command. It is already in use across research, industry, and teaching at TU Munich and Airbus, and we also presented NixNet at the IRTF Applied Networking Research Workshop (ANRW) in Vienna in July 2026.\n\nA NixNet experiment is defined by a Nix expression specifying network nodes, virtual Ethernet links, link characteristics (delay, loss, bandwidth via netem), and per-node application scripts. NixNet compiles this into a human-readable Bash script that sets up a strongly isolated environment using nested Linux namespaces: each node gets its own network stack, and mount namespaces ensure nodes can only access explicitly declared resources \u2014 no host state leaks in, no experiment state leaks out. The full dependency closure \u2014 userspace binaries, libraries, other file resources, even custom eBPF programs \u2014 is pinned and reproducible from source via the nix build system.\n\nIn this talk, I want to give deeper insights into the inner workings of NixNet than the ANRW paper does: how the NixOS module system is used to model network topologies, my experience using Nix for real research projects, and the practical lessons learned from building research tooling on Nix \u2014 from pitfalls in network experimentation such as DNS leaking out of namespaces, to declaratively pinning forked and patched network tools. I'll also cover how experiments are distributed on systems with Nix and on machines without it, and compare NixNet with the state of the art in virtual network testbeds \u2014 outperforming Docker-based tools in setup time and memory consumption.\n\nI'm looking forward to discussing this with the Nix community \u2014 there are open questions around Nix's own versioning guarantees, packaging patterns for research software, macOS support, and how the ecosystem can better support reproducible science.\n\nNixNet is open source (MIT/Apache 2.0): \ngithub.com/birneee/nixnet\nnixnet.org", "recording_license": "", "do_not_record": false, "persons": [{"code": "M8RCWJ", "name": "Benedikt Spies", "avatar": "https://talks.nixcon.org/media/avatars/L9FH3H_bbt0vMS.webp", "biography": "Benedikt Spies is a PhD student and network researcher at the Technical University of Munich, working on secure network protocol development with a focus on QUIC and WebAssembly. He has been using Nix since 2021 and teaching it since 2026.\n\nsince 2022 - Network Researcher and PhD Student @ Technical University of Munich\n2022 - M.Sc. - Computer Science @ Technical University of Munich\n2022 - B.Sc. - Computer Science @ Landshut University of Applied Sciences \n2015 - Computer Science Expert for Software Development (CCI Germany)", "public_name": "Benedikt Spies", "guid": "3c35fb60-b302-53a7-a24a-f12621ff9b04", "url": "https://talks.nixcon.org/nixcon-2026/speaker/M8RCWJ/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/J3RMT8/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/J3RMT8/", "attachments": []}, {"guid": "6db6cbc2-3379-51d3-b6bd-e895f312e046", "code": "EDKLQM", "id": 102439, "logo": null, "date": "2026-09-26T16:30:00+02:00", "start": "16:30", "end": "2026-09-26T16:50:00+02:00", "duration": "00:20", "room": "Aula Duza B", "slug": "nixcon-2026-102439-peering-declaratively-running-a-small-autonomous-system-on-nixos", "url": "https://talks.nixcon.org/nixcon-2026/talk/EDKLQM/", "title": "Peering Declaratively: Running a small Autonomous System on NixOS", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "Running an AS on the public internet sounds hard, but NixOS modules, coupled with nixosTests make it very approachable. In this talk we'll walk through setting up a hobby AS from scratch: what it takes legally and technically to get your own ASN and IPv6 space and the design decisions around building a fully declarative routing infrastructure using NixOS; from generating service configs in Nix, to testing service behaviour with nixosTests before it ever reaches a live upstream. This talk will be from the viewpoint of an operator that cares about reproducibility, portability and safe rollouts of the infrastructure using NixOS.", "recording_license": "", "do_not_record": false, "persons": [{"code": "LUJCEQ", "name": "Dionysis Grigoropoulos", "avatar": "https://talks.nixcon.org/media/avatars/SZAJPG_u3DDJzF.webp", "biography": "SRE by trade, but my interests lie in security, decentralization, radio communications, self-hosting and automation.\n\nFOSS contributor to various projects, I like to blog at https://blog.erethon.com/.", "public_name": "Dionysis Grigoropoulos", "guid": "2f79624b-110f-57e7-9c0c-d5573b46203b", "url": "https://talks.nixcon.org/nixcon-2026/speaker/LUJCEQ/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/EDKLQM/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/EDKLQM/", "attachments": []}, {"guid": "82eb8b11-6d8c-5b61-a358-8c73e024afce", "code": "NVUYGU", "id": 102290, "logo": null, "date": "2026-09-26T17:00:00+02:00", "start": "17:00", "end": "2026-09-26T17:20:00+02:00", "duration": "00:20", "room": "Aula Duza B", "slug": "nixcon-2026-102290-running-nixos-integration-tests-on-real-hardware", "url": "https://talks.nixcon.org/nixcon-2026/talk/NVUYGU/", "title": "Running NixOS Integration Tests on Real Hardware", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "When developing operating systems and other hardware-related functionality, many critical behaviors can only be properly tested on real hardware. Drivers, firmware interactions, and peripherals are difficult, sometimes even impossible, to test reliably in a virtualized environment. At the same time, the NixOS integration test framework provides a developer experience that is invaluable for reproducible integration testing, but is limited to virtual machines.\n \nIn this talk, we present an extension to the Nixpkgs integration test framework that allows the familiar test driver running inside its QEMU VM to control a real machine over the network. This is enabled by a REST-based  backend that manages provisioning, booting, and interaction with physical devices.\n \nWe will discuss the overall architecture, the integration with the test framework, and what it takes to enable reproducible Hardware-in-the-Loop test automation.", "recording_license": "", "do_not_record": false, "persons": [{"code": "UQLPR9", "name": "Markus Napierkowski", "avatar": "https://talks.nixcon.org/media/avatars/GVJ33R_4WHTBvM.webp", "biography": "Markus Napierkowski is Head of Test Automation and CI at Cyberus Technology GmbH, where he contributed to different low-level virtualization projects in the past and helped build an internal hardware test automation service. He is currently responsible for the Cidoka department, which offers consulting and services around the software development lifecycle, with a focus on on-hardware test automation.", "public_name": "Markus Napierkowski", "guid": "7f6757e0-8911-5748-93c9-9cf89db99447", "url": "https://talks.nixcon.org/nixcon-2026/speaker/UQLPR9/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/NVUYGU/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/NVUYGU/", "attachments": []}, {"guid": "ca1eab3b-5396-5f59-9fc4-ae43cab361bc", "code": "XTGEMY", "id": 102448, "logo": null, "date": "2026-09-26T17:30:00+02:00", "start": "17:30", "end": "2026-09-26T17:50:00+02:00", "duration": "00:20", "room": "Aula Duza B", "slug": "nixcon-2026-102448-scaling-nix", "url": "https://talks.nixcon.org/nixcon-2026/talk/XTGEMY/", "title": "Scaling Nix", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "Nix's wide adoption has stretched it to the breaking point, as it's being applied far beyond what it was originally built for: a moderately-sized Nixpkgs. To misquote Niklaus Wirth, \"Nix is getting faster more slowly than Nixpkgs is getting slower\". And it's not just Nixpkgs and NixOS growing beyond what Nix was designed for; enterprise users routinely apply Nix to giant monorepos and huge derivation graphs that are heavily taxing Nix's machinery. This leads to a dismal user experience with long evaluation and CI times.\n\nIn this talk, I will discuss a number of efforts (some ongoing, some finished) to make Nix more scalable, including:\n\n* Parallel evaluation\n* Lazy source trees\n* Baked flakes\n* Sparse flake lock files\n* `builtins.wasm`\n\nTogether, these features make Nix a much more pleasant experience for large projects.", "recording_license": "", "do_not_record": false, "persons": [{"code": "WSBSSA", "name": "Eelco Dolstra", "avatar": "https://talks.nixcon.org/media/avatars/CH7HAF_8flolZw.webp", "biography": "Eelco Dolstra started the Nix project as a PhD student at Utrecht University. He is a co-founder at Determinate Systems.", "public_name": "Eelco Dolstra", "guid": "6476c246-9512-5aef-8cd1-03e29a1b5fb6", "url": "https://talks.nixcon.org/nixcon-2026/speaker/WSBSSA/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/XTGEMY/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/XTGEMY/", "attachments": []}], "Aula Srednia": [{"guid": "fe2607d6-dbbb-554c-b77d-231a71ea9f36", "code": "UTYUY9", "id": 106002, "logo": null, "date": "2026-09-26T10:30:00+02:00", "start": "10:30", "end": "2026-09-26T11:30:00+02:00", "duration": "01:00", "room": "Aula Srednia", "slug": "nixcon-2026-106002-speed-dating-in-the-exhibition-hall-food-room", "url": "https://talks.nixcon.org/nixcon-2026/talk/UTYUY9/", "title": "speed-dating (in the exhibition hall / food room)", "subtitle": "", "track": null, "type": "Short workshop", "language": "en", "abstract": null, "description": "Talk to a stranger (or accidentally someone you know) for 2minutes!\n\nCome by if if you want to talk to strangers or don't know what else to do at this time of day!\nYou can also drop out early or drop in late.", "recording_license": "", "do_not_record": false, "persons": [], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/UTYUY9/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/UTYUY9/", "attachments": []}, {"guid": "2ff10626-9c99-50d7-837b-3d8fa9fb6142", "code": "QWPDHJ", "id": 102527, "logo": null, "date": "2026-09-26T14:00:00+02:00", "start": "14:00", "end": "2026-09-26T15:00:00+02:00", "duration": "01:00", "room": "Aula Srednia", "slug": "nixcon-2026-102527-joining-the-tangled-network", "url": "https://talks.nixcon.org/nixcon-2026/talk/QWPDHJ/", "title": "Joining the Tangled network", "subtitle": "", "track": null, "type": "Short workshop", "language": "en", "abstract": null, "description": "A hands-on session with a decentralized, AT Protocol-based code platform. You'll be joining the Tangled network \u2014\u00a0set up a knot, spindle, nix-powered CI etc. from zero\nNo experience with it needed, and a free account covers everything. \nThink of it as a test drive of what code collaboration looks like once you take it off a single company's servers: you own your identity, and switching tools stops being a migration project.\nFacilitated by Tangled, with people on hand the whole time.", "recording_license": "", "do_not_record": false, "persons": [{"code": "RJH9ET", "name": "Tangled", "avatar": "https://talks.nixcon.org/media/avatars/CGB3RG_tpq9wrF.webp", "biography": "Tangled is a code collaboration platform built on the AT Protocol, the open network behind Bluesky. Your code and identity live in your own account, not on someone else's servers.", "public_name": "Tangled", "guid": "177b013b-1a41-55b6-9c03-14867b23ea8f", "url": "https://talks.nixcon.org/nixcon-2026/speaker/RJH9ET/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/QWPDHJ/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/QWPDHJ/", "attachments": []}, {"guid": "09c9d38a-6719-5720-bdd5-b19232514401", "code": "AWWCUK", "id": 103263, "logo": null, "date": "2026-09-26T15:15:00+02:00", "start": "15:15", "end": "2026-09-26T17:15:00+02:00", "duration": "02:00", "room": "Aula Srednia", "slug": "nixcon-2026-103263-from-zero-to-product-let-s-build-an-embedded-cuda-computer-vision-project", "url": "https://talks.nixcon.org/nixcon-2026/talk/AWWCUK/", "title": "From zero to product: Let\u2019s build an embedded CUDA computer-vision project", "subtitle": "", "track": null, "type": "Long workshop", "language": "en", "abstract": null, "description": "Stop fighting with complex build systems; learn to build production-ready embedded Linux images for the NVIDIA Jetson Orin Nano using NixOS. In this workshop, you will see why NixOS is *the* alternative to Yocto for modern embedded development, offering reproducible builds, atomic updates, and simplified dependency management from day one.\n\nWe start from an empty repository, building a complete computer-vision product from the ground up. You will learn to cross-compile for your hardware, integrate custom software, and implement hygienic build practices that drastically reduce evaluation times and improve testability. By the end of this session, you will leave with a proven blueprint for defining, customizing, and tuning NixOS for any embedded platform, giving you total control over your production pipeline.", "recording_license": "", "do_not_record": false, "persons": [{"code": "JMD3VD", "name": "Jacek Galowicz", "avatar": null, "biography": "Jacek Galowicz is a systems architect, Nixpkgs contributor and maintainer of the NixOS Integration Test Driver. He is the founder of Applicative Systems, a software development consulting firm, and Nixcademy, corporate Nix/NixOS training provider. With a background ranging from microhypervisors, CI/CD automation, and writing technical books, Jacek focuses on building resilient, machine-verified software infrastructure that lasts.", "public_name": "Jacek Galowicz", "guid": "9190745d-16ab-5d2b-860e-8b4eeb42622d", "url": "https://talks.nixcon.org/nixcon-2026/speaker/JMD3VD/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/AWWCUK/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/AWWCUK/", "attachments": []}]}}, {"index": 3, "date": "2026-09-27", "day_start": "2026-09-27T04:00:00+02:00", "day_end": "2026-09-28T03:59:00+02:00", "rooms": {"Aula Duza A": [{"guid": "7a43dd9f-f39c-501e-8e9d-72a9d9d9dec7", "code": "WEADU3", "id": 102239, "logo": null, "date": "2026-09-27T09:00:00+02:00", "start": "09:00", "end": "2026-09-27T09:45:00+02:00", "duration": "00:45", "room": "Aula Duza A", "slug": "nixcon-2026-102239-why-i-changed-my-mind-about-flakes", "url": "https://talks.nixcon.org/nixcon-2026/talk/WEADU3/", "title": "Why I changed my mind about flakes", "subtitle": "", "track": null, "type": "Long talk", "language": "en", "abstract": null, "description": "Technically speaking, flakes address problems with distributing Nix-based software projects: hermetic evaluation, managing dependencies on remote sources, and a standard interface for consumers, all shipped as batteries included.\n\nSounds simple enough. Yet, the introduction of flakes became a source of internet drama \u2013 and 7 years later, flakes are still experimental. This talk traces how we got into a controversy that was never quite resolved, and makes the case that it was never really about flakes.\n\nMy goal is to highlight what I suspect is an underlying failure of communication, and to serve a healthy dose of unsolicited opinion on how we can do better in the future.", "recording_license": "", "do_not_record": false, "persons": [{"code": "7VMJZD", "name": "Valentin Gagarin (@fricklerhandwerk)", "avatar": "https://talks.nixcon.org/media/avatars/A3BRRY_u1p4xuv.webp", "biography": "Former Nix maintainer and documentarian on the never-ending crusade to put the right words in the right place and make computers work reliably in the long run.\n\nWorking for Tweag since 2022, he is currently involved in improving Nixpkgs supply chain security infrastructure. He also contracts for the NixOS Foundation to help with fundraising and project management.", "public_name": "Valentin Gagarin (@fricklerhandwerk)", "guid": "21f85ea0-e01f-5bab-96fb-0dc51967bec3", "url": "https://talks.nixcon.org/nixcon-2026/speaker/7VMJZD/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/WEADU3/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/WEADU3/", "attachments": []}, {"guid": "09b4b4f1-3fd4-51b3-add4-3333eb9ae45e", "code": "C3CD3Y", "id": 101402, "logo": null, "date": "2026-09-27T10:00:00+02:00", "start": "10:00", "end": "2026-09-27T10:45:00+02:00", "duration": "00:45", "room": "Aula Duza A", "slug": "nixcon-2026-101402-untangling-the-undead-spaghetti-life-with-scripted-networking-in-2026", "url": "https://talks.nixcon.org/nixcon-2026/talk/C3CD3Y/", "title": "Untangling the undead spaghetti: life with scripted networking in 2026", "subtitle": "", "track": null, "type": "Long talk", "language": "en", "abstract": null, "description": "It's the year 2026, and at Flying Circus our NixOS platform still runs on scripted networking. But the writing is on the wall: scripted networking's days are numbered, and the time is coming where we need to consider replacing it.\n\nThe journey which brought us here goes back to a major architecture change in our datacentre networks starting in 2023. We couldn't meet all of the operational requirements for this migration using systemd-networkd, so we dug our heels in and put our effort into scripted networking instead, adapting and improving it in order to robustly handle complex, dynamic network configuration.\n\nIn this talk I'll reflect on some of our decisions as the rest of the world has moved on, and discuss some of the technical details like interface renaming, configuration convergence, and the dizzying array of systemd unit dependencies which are involved. It's not been all smooth sailing, and some sharp edges have periodically come back to bite us. And ultimately we have to ask ourselves: where do we go from here?", "recording_license": "", "do_not_record": false, "persons": [{"code": "LYNREJ", "name": "Molly Miller", "avatar": "https://talks.nixcon.org/media/avatars/MDJQCC_HvII0oG.webp", "biography": "Molly is a Systems Engineer at Flying Circus Internet Operations GmbH, where she works in the platform team on datacentre infrastructure and networking.", "public_name": "Molly Miller", "guid": "c93a2a12-b2c5-560d-99ce-2409366f5327", "url": "https://talks.nixcon.org/nixcon-2026/speaker/LYNREJ/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/C3CD3Y/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/C3CD3Y/", "attachments": []}, {"guid": "e5ecc354-85b6-564e-9395-ef00ddecac2c", "code": "DC8XBR", "id": 101367, "logo": null, "date": "2026-09-27T11:00:00+02:00", "start": "11:00", "end": "2026-09-27T11:45:00+02:00", "duration": "00:45", "room": "Aula Duza A", "slug": "nixcon-2026-101367-unprivileged-privileged-nix-an-exercise-in-linux-sandboxing", "url": "https://talks.nixcon.org/nixcon-2026/talk/DC8XBR/", "title": "Unprivileged Privileged Nix: An Exercise in Linux Sandboxing", "subtitle": "", "track": null, "type": "Long talk", "language": "en", "abstract": null, "description": "For many security-conscious administrators, the Nix daemon presents a problem: a highly-privileged daemon that parses complex file formats, executes code, and performs error-prone file management; all at the request of untrustworthy users.\n\nA simple question \u2014 \"What if one could build as an unprivileged user?\" \u2014 turned into a rabbit hole of syscalls, systemd, and shadow due to Linux's paradoxical problem: in order to lose permissions, one must first gain more.", "recording_license": "", "do_not_record": false, "persons": [{"code": "HEQ9MT", "name": "Artemis Tosini", "avatar": null, "biography": "Artemis Tosini has been an avid user of nix since 2018. She works at Obsidian Systems as a software engineer, and is a nixpkgs committer who loves working with the internals of every system she comes across.", "public_name": "Artemis Tosini", "guid": "5a95a9b2-0903-56af-93f0-7757ed535af0", "url": "https://talks.nixcon.org/nixcon-2026/speaker/HEQ9MT/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/DC8XBR/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/DC8XBR/", "attachments": []}, {"guid": "2e674297-e29e-52a6-a8e5-93ac6c3517af", "code": "YEF3TC", "id": 102377, "logo": null, "date": "2026-09-27T13:15:00+02:00", "start": "13:15", "end": "2026-09-27T14:00:00+02:00", "duration": "00:45", "room": "Aula Duza A", "slug": "nixcon-2026-102377-staging-ground-building-for-upstream-in-clan-lol", "url": "https://talks.nixcon.org/nixcon-2026/talk/YEF3TC/", "title": "Staging Ground: Building for Upstream in clan.lol", "subtitle": "", "track": null, "type": "Long talk", "language": "en", "abstract": null, "description": "In this talk we(I?) want to show on how we used clan.lol as a staging ground for different upstream features.\n\nsome projects we used/breed inside clan and later separated out (or are separating out) or are maintained by us:\ndisko\nnixos-anywhere\nnixos-facter\nvars\nnix-select\nwrappers\njsonschema\nnixos container tests\nWe want to show a rough roadmap what we want to do with these features/projects, where we want to go, what sucks and what to improve upon it.\n\nWe think upstreaming what is ripe is the best way to ensure a stable ecosystem growth and wide adoption. We want to build software for the future and with lots of community feedback.\n\nWe also want to showcase limitations we identified with some of these project and how we worked around those or solved them.", "recording_license": "", "do_not_record": false, "persons": [{"code": "SKG3NK", "name": "lassulus", "avatar": null, "biography": "NixCon organizer since 2024\nTreasurer of NixOS Foundation\nGood Boy", "public_name": "lassulus", "guid": "837f5193-d17b-57c2-a724-ad6b22091cdc", "url": "https://talks.nixcon.org/nixcon-2026/speaker/SKG3NK/"}, {"code": "QCTYDP", "name": "Qubasa", "avatar": null, "biography": "Qubasa", "public_name": "Qubasa", "guid": "ddaa7ba9-8a1d-5553-8ee7-8df28b77a4d4", "url": "https://talks.nixcon.org/nixcon-2026/speaker/QCTYDP/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/YEF3TC/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/YEF3TC/", "attachments": []}, {"guid": "1b568a3e-2d0b-5c04-9430-576000c7a6d2", "code": "3AGQJD", "id": 102363, "logo": null, "date": "2026-09-27T14:15:00+02:00", "start": "14:15", "end": "2026-09-27T15:00:00+02:00", "duration": "00:45", "room": "Aula Duza A", "slug": "nixcon-2026-102363-trampolining-nix-or-how-i-nearly-lost-my-mind-fighting-the-nix-evaluator", "url": "https://talks.nixcon.org/nixcon-2026/talk/3AGQJD/", "title": "Trampolining Nix, or how I nearly lost my mind fighting the Nix evaluator", "subtitle": "", "track": null, "type": "Long talk", "language": "en", "abstract": null, "description": "I wanted to see how far I could take Nix as a programming language, so nix-effects grew to include a small language with effect handlers, a type checker and an evaluator, all written in Nix. This talk is about the unreasonable amount of work that went into getting it to run the next step.\n\nWe start with a small effectful program and the recursive driver that runs it. Nix keeps the waiting calls even when they have nothing left to do, so we look for a builtin to handle repetition. A strict fold works when we already have a list to traverse, but a general interpreter that needs to decide what happens next based on previous state needs something more, so we borrow `builtins.genericClosure`.\n\nThen we ask for the result, which turns out to be a separate endeavor. We follow the deferred additions, make evaluation happen before advancing, and discover what forcing too much costs. Deeply nested types bring another problem, because forcing a function doesn\u2019t run its body. Making that work explicit gives us control over execution, but the borrowed driver is still keeping every state we ever visited.\n\nWe\u2019ll work through small runnable examples to see how far genericClosure gets us, what it takes to make the results usable, and why I ended up wanting a native loop in Nix. No type theory knowledge required, though some sympathy for someone who did all this to get a while loop would be appreciated.", "recording_license": "", "do_not_record": false, "persons": [{"code": "7GR7PC", "name": "Mika Bohinen", "avatar": "https://talks.nixcon.org/media/avatars/EX3KLK_nDEBbEC.webp", "biography": "Mika Bohinen runs Kleisli.IO and the technical infrastructure for the Lie-St\u00f8rmer Center. He also thought writing a type checker and an evaluator in Nix was a reasonable use of his time. The result is nix-effects, a pure Nix toolkit for effect-style programs and auto-derived validation, which he now uses in that infrastructure because apparently writing it wasn\u2019t enough of a commitment.", "public_name": "Mika Bohinen", "guid": "7b62c9eb-c622-5d88-a1a5-1deaef2bf3ed", "url": "https://talks.nixcon.org/nixcon-2026/speaker/7GR7PC/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/3AGQJD/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/3AGQJD/", "attachments": []}, {"guid": "662485b5-c362-5c8a-9618-2b310e67309d", "code": "3SFNY8", "id": 104219, "logo": null, "date": "2026-09-27T15:15:00+02:00", "start": "15:15", "end": "2026-09-27T16:00:00+02:00", "duration": "00:45", "room": "Aula Duza A", "slug": "nixcon-2026-104219-spontaneous-lightning-talks", "url": "https://talks.nixcon.org/nixcon-2026/talk/3SFNY8/", "title": "Spontaneous lightning talks", "subtitle": "", "track": null, "type": "Long talk", "language": "en", "abstract": null, "description": "Come talk about your stuff!", "recording_license": "", "do_not_record": false, "persons": [], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/3SFNY8/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/3SFNY8/", "attachments": []}, {"guid": "88e8ba24-6603-5220-8124-3036d11406ef", "code": "VSKERY", "id": 102367, "logo": null, "date": "2026-09-27T16:00:00+02:00", "start": "16:00", "end": "2026-09-27T16:05:00+02:00", "duration": "00:05", "room": "Aula Duza A", "slug": "nixcon-2026-102367-the-thunk-trap-why-your-nix-loop-crashes-after-it-finishes", "url": "https://talks.nixcon.org/nixcon-2026/talk/VSKERY/", "title": "The thunk trap, why your Nix loop crashes after it finishes", "subtitle": "", "track": null, "type": "Lightning talk", "language": "en", "abstract": null, "description": "`builtins.foldl'` is strict, which sounds reassuring until your fold finishes and reading the result causes a stack overflow. This talk takes one small problem from carrying interpreter state through Nix and reduces it to a counter in an attribute set.\n\nWe\u2019ll see why the fold evaluates each record while leaving its additions suspended, then fix it by computing the total before returning the next record. We\u2019ll also compare `seq` and `deepSeq`, including what happens when forcing everything reaches a field we never needed. It is rather a lot of trouble to go through to add one.", "recording_license": "", "do_not_record": false, "persons": [{"code": "7GR7PC", "name": "Mika Bohinen", "avatar": "https://talks.nixcon.org/media/avatars/EX3KLK_nDEBbEC.webp", "biography": "Mika Bohinen runs Kleisli.IO and the technical infrastructure for the Lie-St\u00f8rmer Center. He also thought writing a type checker and an evaluator in Nix was a reasonable use of his time. The result is nix-effects, a pure Nix toolkit for effect-style programs and auto-derived validation, which he now uses in that infrastructure because apparently writing it wasn\u2019t enough of a commitment.", "public_name": "Mika Bohinen", "guid": "7b62c9eb-c622-5d88-a1a5-1deaef2bf3ed", "url": "https://talks.nixcon.org/nixcon-2026/speaker/7GR7PC/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/VSKERY/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/VSKERY/", "attachments": []}, {"guid": "a1c2b6e7-9449-57b7-abfb-f2b2fa3818ba", "code": "E9P9Y7", "id": 104214, "logo": null, "date": "2026-09-27T16:10:00+02:00", "start": "16:10", "end": "2026-09-27T16:15:00+02:00", "duration": "00:05", "room": "Aula Duza A", "slug": "nixcon-2026-104214-lightning-talk-jane-street", "url": "https://talks.nixcon.org/nixcon-2026/talk/E9P9Y7/", "title": "Lightning Talk: Jane Street", "subtitle": "", "track": "Sponsored", "type": "Lightning talk", "language": "en", "abstract": null, "description": "Placeholder", "recording_license": "", "do_not_record": false, "persons": [], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/E9P9Y7/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/E9P9Y7/", "attachments": []}, {"guid": "e1c6c802-e92c-593c-bd3e-81fe49e85a87", "code": "NZCBNT", "id": 103203, "logo": null, "date": "2026-09-27T16:20:00+02:00", "start": "16:20", "end": "2026-09-27T16:25:00+02:00", "duration": "00:05", "room": "Aula Duza A", "slug": "nixcon-2026-103203-nix-singularity-bringing-nix-to-the-high-performance-computing-world", "url": "https://talks.nixcon.org/nixcon-2026/talk/NZCBNT/", "title": "nix-singularity: bringing Nix to the High Performance Computing world", "subtitle": "", "track": null, "type": "Lightning talk", "language": "en", "abstract": null, "description": "This lightning talk demonstrates how to integrate Nix with Singularity and Slurm, to build packages in a High Performance Computing (HPC) Center.\n\nSingularity is a container runtime that grew independently of Docker/Podman. It is commonly used in HPC's, as it allows more granular control of access to resources.\n\nSingularity's container images can be transformed from Docker images, but using Nix requires some special workarounds. The purpose of this talk is to demonstrate that with these small tweaks and some wrapper scripts, it is possible to run Nix inside Singularity.\n\nA recorded demo will be shown, using Nix in a supercomputer, taking advantage of the large resources to perform a build.\n\nThe author works a DevOps engineer at the Barcelona Supercomputing Center. Also known as the National Supercomputing Center, it hosts Marenostrum 5. This machines has 6408 general-purpose nodes, for a total of 717696 cores, and is the most powerful supercomputer in Spain.\n\nhttps://codeberg.org/viperML/nix-singularity\n\nSlides: https://viperml.gitlab.io/nix-singularity-slides", "recording_license": "", "do_not_record": false, "persons": [{"code": "AEB3ME", "name": "Fernando Ayats", "avatar": "https://talks.nixcon.org/media/avatars/EP9JJF_pIbfd7Z.webp", "biography": "Fernando (viperML) works as a DevOps Engineer at the Barcelona Supercomputing Center. He has used Nix for many years, creating projects such as nh or wrapper-manager. He also has experience working as a Guix developer in France, deploying HPC applications to the national supercomputing centers.", "public_name": "Fernando Ayats", "guid": "35d1f045-10a9-5990-8f5e-a9faa0473dd4", "url": "https://talks.nixcon.org/nixcon-2026/speaker/AEB3ME/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/NZCBNT/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/NZCBNT/", "attachments": []}, {"guid": "9a068422-3783-5e0a-8c18-ef0c5cb526bb", "code": "9TL88V", "id": 104217, "logo": null, "date": "2026-09-27T16:30:00+02:00", "start": "16:30", "end": "2026-09-27T16:35:00+02:00", "duration": "00:05", "room": "Aula Duza A", "slug": "nixcon-2026-104217-biting-your-own-tail-off", "url": "https://talks.nixcon.org/nixcon-2026/talk/9TL88V/", "title": "Biting your own tail off", "subtitle": "", "track": "Sponsored", "type": "Lightning talk", "language": "en", "abstract": null, "description": "[Antithesis](https://antithesis.com) uses Nix for everything. But what happens when you use Nix *too much*?\n\nIn this talk, I'll go over an example of an abstraction we've made that makes our lives very easy, while also exposing one of Nix's weak spots -- and the decisions surrounding it that we need to make as we scale.", "recording_license": "", "do_not_record": false, "persons": [{"code": "PXMNS9", "name": "winterqt", "avatar": null, "biography": "Engineer at [Antithesis](https://antithesis.com), Nixpkgs committer, and ex-Steering Committee.", "public_name": "winterqt", "guid": "c4ce1e12-45e6-5dbe-b3bd-38a113c81cea", "url": "https://talks.nixcon.org/nixcon-2026/speaker/PXMNS9/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/9TL88V/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/9TL88V/", "attachments": []}, {"guid": "db4e3e84-6687-50cb-8fdc-a3bdafce9b9b", "code": "9MR9R3", "id": 102414, "logo": null, "date": "2026-09-27T16:40:00+02:00", "start": "16:40", "end": "2026-09-27T16:45:00+02:00", "duration": "00:05", "room": "Aula Duza A", "slug": "nixcon-2026-102414-beyond-push-vs-pull-deployments-we-deserve-a-control-plane", "url": "https://talks.nixcon.org/nixcon-2026/talk/9MR9R3/", "title": "Beyond Push-vs-Pull Deployments: We deserve a Control Plane", "subtitle": "", "track": null, "type": "Lightning talk", "language": "en", "abstract": null, "description": "Kubernetes is a control plane for running containers.  With nix, we may be able to make a control plane for almost everything.", "recording_license": "", "do_not_record": false, "persons": [{"code": "ZEYKEZ", "name": "nick novitski", "avatar": null, "biography": "I've lived in San Francisco writing web things of varying usefulness on-and-off since 2011, and nix things of varying usefulness since 2017, when I added native Vim package support to nixpkgs' `vim.customize`.", "public_name": "nick novitski", "guid": "78cdf37c-ce85-5f5d-899a-778f1df2c546", "url": "https://talks.nixcon.org/nixcon-2026/speaker/ZEYKEZ/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/9MR9R3/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/9MR9R3/", "attachments": []}, {"guid": "7617f82f-519f-5077-b6ee-15efdfe9acf2", "code": "VQXBLD", "id": 104218, "logo": null, "date": "2026-09-27T16:50:00+02:00", "start": "16:50", "end": "2026-09-27T16:55:00+02:00", "duration": "00:05", "room": "Aula Duza A", "slug": "nixcon-2026-104218-lightning-talk-determinate-systems", "url": "https://talks.nixcon.org/nixcon-2026/talk/VQXBLD/", "title": "Lightning Talk: Determinate Systems", "subtitle": "", "track": "Sponsored", "type": "Lightning talk", "language": "en", "abstract": null, "description": "Placeholder", "recording_license": "", "do_not_record": false, "persons": [], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/VQXBLD/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/VQXBLD/", "attachments": []}, {"guid": "5d7cabd8-b134-5324-8b2d-f940cf60edc7", "code": "YP8SH3", "id": 102234, "logo": null, "date": "2026-09-27T17:00:00+02:00", "start": "17:00", "end": "2026-09-27T17:05:00+02:00", "duration": "00:05", "room": "Aula Duza A", "slug": "nixcon-2026-102234-you-don-t-need-a-staging-environment-to-integration-test-microservices", "url": "https://talks.nixcon.org/nixcon-2026/talk/YP8SH3/", "title": "You don't need a staging environment to integration-test microservices", "subtitle": "", "track": null, "type": "Lightning talk", "language": "en", "abstract": null, "description": "If your final integrated product consists of multiple components maintained by different teams, in the form of services, packages or platform, it's a pain to run end-to-end and integration tests. Some problems are\n1. Every team depends on a shared staging environment where people are pushing latest changes, typically these environments are stateful, and not isolated.\n2. Container based solutions like a `docker-compose.yml` works only for 1 of these teams and has duplication across the organization, it's also bloated and often requires the images to be built by CI which comes with some delay. The same problems exist with tilt.dev, garden.io\n\nIn my workplace, there's a hardware product that runs microservices in a Kubernetes cluster on the edge. Most of the services are in a mono-repo, while some live outside. A staging environment is a highly contentious resource, and a local `docker-compose.yml` gets out of date very quickly.\n\nThe Nix based solution we adopted involved creating a `flake.nix` for every microservice that lived closer to its source code. And an `integration-tests` flake that treated these microservices as inputs. So with a single command, at build time the `integration-tests` flake fetches correct versions of each dependency microservice, spawn some essential sidecars with `process-compose` and presented a developer with an environment looking much like the staging environment. It runs the same way locally as in the CI, backed up by a binary cache. The hot setup ran such tests in 4-5 seconds when a docker backed command would take 35, and since the flakes lived closer to the source code, they wouldn't run out-of-sync easily.", "recording_license": "", "do_not_record": false, "persons": [{"code": "GPFNFU", "name": "Shivashis Padhi", "avatar": null, "biography": "[Shivashis](https://shivashis.dev/) is a Software Engineer currently working on the automation software stack and some developer experience things at [Orbem GmbH](https://orbem.ai/).\n\nI'm interested in systems/software engineering, self-hosting software, DIY electronics and maps.\n\nI'd love to talk to you about Nix, Python, Go and learn more about software distribution at NixCon'26.", "public_name": "Shivashis Padhi", "guid": "e1e56550-8997-534e-8c49-246f3d85f6b0", "url": "https://talks.nixcon.org/nixcon-2026/speaker/GPFNFU/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/YP8SH3/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/YP8SH3/", "attachments": []}, {"guid": "217c535c-3f95-5f55-901e-a997c23c7360", "code": "3A9NNU", "id": 104216, "logo": null, "date": "2026-09-27T17:10:00+02:00", "start": "17:10", "end": "2026-09-27T17:15:00+02:00", "duration": "00:05", "room": "Aula Duza A", "slug": "nixcon-2026-104216-lightning-talk-flox", "url": "https://talks.nixcon.org/nixcon-2026/talk/3A9NNU/", "title": "Lightning Talk: Flox", "subtitle": "", "track": "Sponsored", "type": "Lightning talk", "language": "en", "abstract": null, "description": "Placeholder", "recording_license": "", "do_not_record": false, "persons": [], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/3A9NNU/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/3A9NNU/", "attachments": []}, {"guid": "02263a04-c8c7-5f4a-91f0-11899021050e", "code": "XRNDVL", "id": 104190, "logo": null, "date": "2026-09-27T17:30:00+02:00", "start": "17:30", "end": "2026-09-27T17:50:00+02:00", "duration": "00:20", "room": "Aula Duza A", "slug": "nixcon-2026-104190-closing-ceremony", "url": "https://talks.nixcon.org/nixcon-2026/talk/XRNDVL/", "title": "Closing ceremony", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "Join us as we ceremoniously wrap up NixCon 2026!", "recording_license": "", "do_not_record": false, "persons": [], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/XRNDVL/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/XRNDVL/", "attachments": []}], "Aula Duza B": [{"guid": "ebaf2875-a551-5214-8d46-8cd9f522d276", "code": "S9BFP7", "id": 103276, "logo": null, "date": "2026-09-27T09:00:00+02:00", "start": "09:00", "end": "2026-09-27T09:20:00+02:00", "duration": "00:20", "room": "Aula Duza B", "slug": "nixcon-2026-103276-the-state-nixos-won-t-manage", "url": "https://talks.nixcon.org/nixcon-2026/talk/S9BFP7/", "title": "The State NixOS Won't Manage", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "Imagine bootstrapping your company\u2019s entire internal infrastructure (Git servers, SSO, initial repositories, and user permissions) with one single command. Normally, NixOS will happily deploy Keycloak and Forgejo for you, but then you hit a wall: you still have to manually click through admin UIs, configure realms, and copy client secrets between them. This exposes a fundamental flaw in modern infrastructure: the imperative nature of application state. NixOS modules stop at the systemd unit on purpose: they manage the package, the config file, and the service, but not the state a service creates once it's running.\n\ndeclarative-runtime is a tool to close that gap with pieces that already exist. Many of these services ship a Terraform provider for exactly this state, so it pairs a NixOS module with a provider through OpenTofu. You declare the runtime state in Nix, it generates the provider configuration, and a systemd oneshot unit reconciles it once the service is up. Secrets are passed in with LoadCredential so they never touch the world-readable store. It ships backends for Forgejo, Keycloak, Jellyfin, and Hetzner DNS today, with more on the way; the last of those shows the pattern reaches cloud resources too, not just a service's own internal state.\n\nTo make this concrete, the talk culminates in a live demo. We will wire Forgejo and Keycloak together for single sign-on using exactly one Nix configuration: no clicking, no copying secrets, and without ever opening an HCL file. We'll build it live, modify the infrastructure state, and rebuild, proving that the runtime state of two completely distinct services can move perfectly in sync, fully declaratively, with a single command.", "recording_license": "", "do_not_record": false, "persons": [{"code": "3HN8WU", "name": "Alexander Foremny", "avatar": null, "biography": "Nix/NixOS consultant at [Applicative Systems](https://applicative.systems/).\n\nAlexander Foremny is a longtime functional programming and Linux enthusiast.", "public_name": "Alexander Foremny", "guid": "4eaa1f4d-a98d-5c3c-a53d-063a4e74590f", "url": "https://talks.nixcon.org/nixcon-2026/speaker/3HN8WU/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/S9BFP7/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/S9BFP7/", "attachments": []}, {"guid": "c7e29d07-0d90-5f3c-9fb9-031bdbf81c4c", "code": "CHK97H", "id": 102413, "logo": null, "date": "2026-09-27T09:30:00+02:00", "start": "09:30", "end": "2026-09-27T09:50:00+02:00", "duration": "00:20", "room": "Aula Duza B", "slug": "nixcon-2026-102413-the-ministry-of-silly-builds-a-bazel-9-derivation-builder", "url": "https://talks.nixcon.org/nixcon-2026/talk/CHK97H/", "title": "The ministry of silly builds: a Bazel 9 derivation builder", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "Building Bazel projects with Nix has traditionally been also character building - even with the \u201cbuildBazelPackage\u201d builder from nixpkgs, the experience often feels less like reproducible engineering and more like a fully-fledged negotiation session. \n\nBroadly speaking there are two main sources of that friction: \n1) Bazel has a habit of fetching dependencies lazily - downloading exactly what it needs at a given moment and not a second before. That naturally clashes with the Nix philosophy of declaring all dependencies upfront. Consequently \u201cbuildBazelPackage\u201d performs some non-trivial work and patching to vendor all dependencies upfront. This works in principle but in practice tends to generate a steady stream of friction and existential self-questioning.\n2) The aforementioned standard builder relies on the nixified version of Bazel. While well-intentioned, it tends to introduce subtle incompatibilities with \u201cvanialla\u201d version, particularly around references to binaries \u201cbaked\u201d into the tool (i.e. shebangs), leading to delightful surprises that emerge precisely at the most inconvenient occasions. \n\nTo address this, we have built a proof-of-concept of alternative derivation builder, aimed specifically at Bazel 9 (or later) repositories, where `bzlmod` can be used as an aid in vendoring efforts. This significantly improves the dependency management process and makes it noticeably less painful. In addition, our approach is utilizing the unmodified, prebuilt Bazel binary to avoid any usual suspects of Nix/non-Nix incompatibilities. \nThe lion share of effort was put into automation of dependency vendoring, so that the most-common use cases may be handled with any specific orchestration from the user. \n\nThis talk aims to highlight the existing problems, describe potential solutions and share the proof-of-concept builder with the community.", "recording_license": "", "do_not_record": false, "persons": [{"code": "TDVVXB", "name": "Aleksander Gondek", "avatar": "https://talks.nixcon.org/media/avatars/SMHKG7_HJidIJ2.webp", "biography": "Alex is contracting for ASML, spearheading migration to Bazel build system. He enjoys solving complex challenges in a manner that results in simple solutions. Rust, Nix and Bazel enthusiast, he attempts to bring reproducibility and correctness to any software project he works on.", "public_name": "Aleksander Gondek", "guid": "c212f077-748f-5a77-9ccf-fe522e0d43f9", "url": "https://talks.nixcon.org/nixcon-2026/speaker/TDVVXB/"}, {"code": "NPCP7S", "name": "Artur Stachecki", "avatar": "https://talks.nixcon.org/media/avatars/USTHHT_0p7g5ae.webp", "biography": "Artur, with a background in computer science and engineering, focuses on correctness, reliability, and reusability in software systems. Leading large-scale migrations, he excels in creating advanced build systems and ensuring hermetic, reproducible builds. A proponent of software reusability, Artur has engineered innovative solutions using variability modeling and mass customization to enhance software performance and reliability.", "public_name": "Artur Stachecki", "guid": "56f15d21-a013-5ee5-a57d-461d74584bad", "url": "https://talks.nixcon.org/nixcon-2026/speaker/NPCP7S/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/CHK97H/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/CHK97H/", "attachments": []}, {"guid": "ea1c6a9b-7d39-5635-a583-733a1b38d79b", "code": "KPW7AW", "id": 102311, "logo": null, "date": "2026-09-27T10:00:00+02:00", "start": "10:00", "end": "2026-09-27T10:20:00+02:00", "duration": "00:20", "room": "Aula Duza B", "slug": "nixcon-2026-102311-stop-playing-telephone-and-start-distributing-trust-with-laut", "url": "https://talks.nixcon.org/nixcon-2026/talk/KPW7AW/", "title": "stop playing telephone and start distributing trust with laut", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "**It's easier to trust things more, when you have to trust them less.**\n\nAt NixCon in 2024, in [rebuilding builders instead of trusting trust](https://talks.nixcon.org/nixcon-2024/talk/AS373H/), I talked about gaps in the Nix signature format that makes us trust the people and systems that feed our caches more than we should have to. Build results can travel from point to point, \"trusted\" along the way but not attributed, like in a game of telephone.\n\nThis year I present [laut](https://github.com/mschwaig/laut), my project for tackling those limitations, which is almost ready for its first users now. It ships as a secondary binary alongside Nix and is more pedantic about where things come from. Claims are designed to be more precise and signed by whoever made them, so laut can aggregate from original sources, like a journalist. This lets you pick who you trust independently from everyone else and change your mind about it over time, with even more paranoid features still on the horizon.", "recording_license": "", "do_not_record": false, "persons": [{"code": "VBMWXK", "name": "Martin Schwaighofer", "avatar": "https://talks.nixcon.org/media/avatars/HMYGKG_N1zYUNl.webp", "biography": "Martin Schwaighofer works at the intersection between Nix and supply chain security, trying to prove the link between source code and output artifacts.", "public_name": "Martin Schwaighofer", "guid": "857bf347-19cb-5bed-a77d-96882f8abbc2", "url": "https://talks.nixcon.org/nixcon-2026/speaker/VBMWXK/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/KPW7AW/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/KPW7AW/", "attachments": []}, {"guid": "62dc40c0-d5de-5de2-a60c-770a79264065", "code": "XMAYHH", "id": 102326, "logo": null, "date": "2026-09-27T10:30:00+02:00", "start": "10:30", "end": "2026-09-27T10:50:00+02:00", "duration": "00:20", "room": "Aula Duza B", "slug": "nixcon-2026-102326-nix-store-is-my-favorite-database", "url": "https://talks.nixcon.org/nixcon-2026/talk/XMAYHH/", "title": "Nix store is my favorite database", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "Nix derivations are nodes in a data structure. I challenged myself to use this Nix store in strange ways: can I model an airplane flight network as a Nix store graph and get it to answer questions about going from Singapore to Dublin? Can I store all of my chess game positions as nodes in my Nix store and use it to improve my chess game? Can I write a slideshow software where each slide is a Nix derivation that points to the next slide?\n\nJoin me to dive deep into polishing our Nix fundamentals: what are buildInputs vs runtime referencecs? What is lib.fix and what does it have to do with a popular venture capital firm? What does dontUnpack do? Why would anyone use ${derivation} in a string?\n\nYou are not going to get anything directly applicable from this talk. You may be infected by this disease I have where I try to model everything from project tracking to Git commits as derivations in a Nix store.\n\nNix's dependency model can be used for far more than just packages: Nix's dependency model is weirder, more powerful, and more fun than it looks.", "recording_license": "", "do_not_record": false, "persons": [{"code": "NKSAZU", "name": "Anuj More", "avatar": null, "biography": "Hi, I am Anuj.\n\nWhen I am not working on Google's Networking Team as an SRE, very often you will find me trying to think \"I wonder if Nix can do this\" which turns into a weekend project.\n\nMy talk is about 3 of those weekends.", "public_name": "Anuj More", "guid": "fe7fc19d-6e71-5621-bf7b-c21ed5185c6a", "url": "https://talks.nixcon.org/nixcon-2026/speaker/NKSAZU/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/XMAYHH/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/XMAYHH/", "attachments": []}, {"guid": "75e1b57b-9c2e-5117-b412-5e29f0a7e6a6", "code": "YVDHDB", "id": 97625, "logo": null, "date": "2026-09-27T11:00:00+02:00", "start": "11:00", "end": "2026-09-27T11:20:00+02:00", "duration": "00:20", "room": "Aula Duza B", "slug": "nixcon-2026-97625-the-new-devshell-interface-for-nix-develop", "url": "https://talks.nixcon.org/nixcon-2026/talk/YVDHDB/", "title": "The new `.devShell` interface for `nix develop`", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "`nix develop` has been completely rewritten to support a new `.devShell` interface provided by Nixpkgs. Learn about how to use these new development shells, how they work, and how to extend them to customize your own package's devshells.", "recording_license": "", "do_not_record": false, "persons": [{"code": "7LVSAC", "name": "Lisanna Dettwyler", "avatar": "https://talks.nixcon.org/media/avatars/HU38TC_3iXZfJY.webp", "biography": "Longtime Nix enthusiast, contributor for the past year, and NixOS Google Summer of Code 2026 mentor. Author of [nix-scheduler-hook](https://codeberg.org/lisanna/nix-scheduler-hook). Nix maintainer.", "public_name": "Lisanna Dettwyler", "guid": "9b6380a5-27b6-591b-a4ef-4ce1f3b503c3", "url": "https://talks.nixcon.org/nixcon-2026/speaker/7LVSAC/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/YVDHDB/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/YVDHDB/", "attachments": []}, {"guid": "6efa8539-c0ab-5163-9f31-00612ef4f782", "code": "NJD9GN", "id": 101189, "logo": null, "date": "2026-09-27T11:30:00+02:00", "start": "11:30", "end": "2026-09-27T11:50:00+02:00", "duration": "00:20", "room": "Aula Duza B", "slug": "nixcon-2026-101189-serving-nix-store-at-scale-with-cvmfs-and-mergerfs", "url": "https://talks.nixcon.org/nixcon-2026/talk/NJD9GN/", "title": "Serving /nix/store at Scale with CVMFS and mergerfs", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "Managing a large Nix deployment across many machines means shipping a lot of store paths which the hosts will most likely never touch and creating pressure on local storage. We replaced bulk pre-population with a lazy-loading approach: CVMFS exposes the Nix store as a read-only FUSE filesystem, fetching file content on demand from HTTP-backed object storage. Mergerfs sits in front, presenting a single unified /nix/store that layers a local read-write volume over one or more read-only CVMFS mounts. The Nix daemon sees a normal store; nothing needs patching. This lets us distribute the full closure of our internal packages across campuses without paying the bandwidth or local storage cost upfront. We'll cover how the solution interacts, what CVMFS brings that a plain binary cache doesn't, the failure modes we hit Applicable to anyone running Nix across a large number of servers where store size and bandwidth matter.", "recording_license": "", "do_not_record": true, "persons": [{"code": "CWU8NV", "name": "Cyriaque Millot", "avatar": null, "biography": "Software engineer at Morgan Stanley", "public_name": "Cyriaque Millot", "guid": "81090d02-fb2c-5a36-8628-4b9c96019069", "url": "https://talks.nixcon.org/nixcon-2026/speaker/CWU8NV/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/NJD9GN/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/NJD9GN/", "attachments": []}, {"guid": "e6bb8612-be91-5bfc-bfde-295683c0d430", "code": "UNQZSX", "id": 102404, "logo": null, "date": "2026-09-27T12:00:00+02:00", "start": "12:00", "end": "2026-09-27T12:20:00+02:00", "duration": "00:20", "room": "Aula Duza B", "slug": "nixcon-2026-102404-when-the-honeymoon-ends-supporting-nixos-based-products-for-the-next-five-years", "url": "https://talks.nixcon.org/nixcon-2026/talk/UNQZSX/", "title": "When the Honeymoon Ends: Supporting NixOS based Products for the Next Five Years", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "You\u2019ve just built a phenomenal product on NixOS. The declarative configuration is beautiful, and the reproducibility is flawless. Then the honeymoon phase ends. Your industrial hardware is deployed into the real world, and suddenly you\u2019re faced with a five-year lifecycle. To make matters more complicated, upcoming regulations like the EU\u2019s Cyber Resilience Act are demanding rigorous CVE tracking and compliance.\n\nUpstream NixOS moves fast and is an incredible foundation, but maintaining those products in production for half a decade is an entirely different beast. Pinning to a release is great, but after community support ends, you hunt down vulnerabilities and backport security fixes to keep auditors happy.\n\nWe had to solve this, so we built Cyberus Linux.\n\nThis talk is a behind-the-scenes story of how we manage a downstream, enterprise-grade NixOS distribution designed to survive the long haul. We will walk you through the lifecycle of our daily operations, including:\n\n* How we decide which packages to commit to supporting.\n* Our methodology for identifying and patching security vulnerabilities.\n* How we keep customers in the loop, turning raw data into actionable advisories for their security and compliance needs.\n* The pipeline we use to safely ship everything to customers in production.", "recording_license": "", "do_not_record": false, "persons": [{"code": "ST89DK", "name": "Martin Messer", "avatar": "https://talks.nixcon.org/media/avatars/DX38L8_IQJpQPK.webp", "biography": "Enthusiastic Product Manager for Cyberus Linux, working at Cyberus Technology GmbH.\nI use Nix and NixOS on multiple devices at home and at work.\nIn my former role as senior software engineer I worked on virtualisation technology, starting from little self written operating system kernels up to KVM and several Virtual Machine Monitor backends for microkernels and also for Linux KVM.\nNow, I'm bridging the gap between engineering and business development to bring NixOS into the commercial sector.", "public_name": "Martin Messer", "guid": "ce526ef4-4a1f-51b5-9a61-6b721d8aee50", "url": "https://talks.nixcon.org/nixcon-2026/speaker/ST89DK/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/UNQZSX/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/UNQZSX/", "attachments": []}, {"guid": "254736ba-fcc5-5b5c-a16a-ee6c25be16be", "code": "WQK7QC", "id": 102507, "logo": null, "date": "2026-09-27T13:30:00+02:00", "start": "13:30", "end": "2026-09-27T13:50:00+02:00", "duration": "00:20", "room": "Aula Duza B", "slug": "nixcon-2026-102507-adding-to-the-pile-or-how-to-extend-nixpkgs", "url": "https://talks.nixcon.org/nixcon-2026/talk/WQK7QC/", "title": "Adding to the pile, or how to extend nixpkgs.", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "Nixpkgs is a vast collection of packages, yet sometimes we need to add our own modification or additional packages to it.\nThe intended way to do so are overlays which are composable extensions of package sets.\n\nStill, while documentation on overlays exists, the details behind package sets such as mkScope, mkExtensible, etc. remain relatively elusive. \n\nIn this talk I will shed some light on this increasingly consistent architecture of nixpkgs, point out ways to automate and where automation fails.", "recording_license": "", "do_not_record": false, "persons": [{"code": "MTTRKG", "name": "Yannik Sander", "avatar": null, "biography": "Software Engineer at Flox, bored with the common.\n\nNix user and contributed for 5+ years, who brought flake support to search.nixos.org and mentored at summer of nix.\nNow doing Nix at Flox.", "public_name": "Yannik Sander", "guid": "009498fd-4419-59eb-a70d-ff3ad3e26777", "url": "https://talks.nixcon.org/nixcon-2026/speaker/MTTRKG/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/WQK7QC/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/WQK7QC/", "attachments": []}, {"guid": "b0b33865-e687-5a76-914f-9f2b55344b7d", "code": "YWPHWG", "id": 103269, "logo": null, "date": "2026-09-27T14:00:00+02:00", "start": "14:00", "end": "2026-09-27T14:20:00+02:00", "duration": "00:20", "room": "Aula Duza B", "slug": "nixcon-2026-103269-build-it-all-yourself-and-prove-it-air-gapped-nixpkgs-with-hydra", "url": "https://talks.nixcon.org/nixcon-2026/talk/YWPHWG/", "title": "Build It All Yourself (And Prove It): Air-Gapped Nixpkgs with Hydra", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "**Slides:** https://github.com/applicative-systems/offline-build-site/blob/4c562094ac86ef84d44037b757ae72c1637e9983/docs/offline-build-site-krakow-nixcon.pdf\n\nHow do you guarantee absolute software supply chain security without locking your developers into a restricted environment?\n\nIn highly regulated industries, the standard answer is painful: force all development into offline, air-gapped environments. But Nix offers an elegant alternative. Because Nix cleanly separates network-fetching from building, we can decouple developer velocity from compliance. Developers can work in unrestricted environments while releases are rebuilt from scratch behind the air gap to prove (to authorities) that an exact verified set of unchanged sources led to our binaries.\n\nIn this talk, we share a concrete blueprint for building all of Nixpkgs entirely offline. We cover:\n\n- How to develop freely and use air-gapped Hydra builds to produce a 100% trusted, verified binary cache.\n- The practical cost of sovereignty: carrying an audited ~1TB seed (one disk, one hash) across the gap, and rebuilding all of Nixpkgs on standard hardware in a week.\n- How content-addressed seeds and pinned evaluations create a replayable record of your software for decades to come.\n\nRegardless of which critical regulated industry you work in, you will leave with a proven recipe to achieve total digital sovereignty without sacrificing modern developer workflows.", "recording_license": "", "do_not_record": false, "persons": [{"code": "XN3JNC", "name": "Kier\u00e1n Meinhardt", "avatar": "https://talks.nixcon.org/media/avatars/MEDVQZ_c8Cuw2A.webp", "biography": "Kier\u00e1n Meinhardt fell down the Nix rabbit hole in 2018 by way of Haskell. Today, he is a NixOS consultant at Applicative Systems and a long-time regular at the weekly Berlin NixOS meetup. Upstream he is best known for introducing systemd-nspawn container tests to nixpkgs.", "public_name": "Kier\u00e1n Meinhardt", "guid": "08d82986-1d71-540d-8fe7-0d2c28976f1f", "url": "https://talks.nixcon.org/nixcon-2026/speaker/XN3JNC/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/YWPHWG/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/YWPHWG/", "attachments": []}, {"guid": "309d2e2a-d005-5148-b8c9-c1d22d9d8cae", "code": "FCAMUG", "id": 103284, "logo": null, "date": "2026-09-27T14:30:00+02:00", "start": "14:30", "end": "2026-09-27T14:50:00+02:00", "duration": "00:20", "room": "Aula Duza B", "slug": "nixcon-2026-103284-declarative-frontiers-running-kubernetes-on-risc-v-with-nixos", "url": "https://talks.nixcon.org/nixcon-2026/talk/FCAMUG/", "title": "Declarative Frontiers: Running Kubernetes on RISC-V with NixOS", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "An open alternative to x86 and ARM shows promise: the RISC-V architecture is transitioning from an academic curiosity to a serious contender for edge and cloud workloads. However, deploying a complex cloud native stack like Kubernetes on RISC-V remains a minefield of fragmented kernel trees, slow native compilation on low-power Single Board Computers (SBCs), and missing upstream package suppor.\nWe demonstrates why NixOS can be idealfor bootstrapping emerging hardware architectures. We showcase how Nix\u2019s native support for cross-compilation, flakes, and declarative kernel customization allows us to bypass the pain of native RISC-V builds entirely. We will share raw, unvarnished performance data comparing RISC-V Kubernetes nodes to their ARM counterparts, evaluating CPU/memory overhead and network limitations with Nix. Finally, we map out the \"rough edges\"\u2014including Go runtime quirks and missing nixpkgs dependencies.", "recording_license": "", "do_not_record": false, "persons": [{"code": "WTNPUX", "name": "Bruce Gain", "avatar": "https://talks.nixcon.org/media/avatars/PMZ89G_iaArtWP.webp", "biography": "Bruce Gain is founder and principal analyst for ReveCom. He co-founded ReveCom in part, to help contribute to pure research and benchmarking and testing different software tools and platforms. He loathes marketing. As a writer, his byline has appeared in Wired, PC World, CIO, Technology Review, The New Stack and EETimes.", "public_name": "Bruce Gain", "guid": "269baccc-6003-57fb-8036-6be0e3edbdad", "url": "https://talks.nixcon.org/nixcon-2026/speaker/WTNPUX/"}, {"code": "JPLTW9", "name": "Liang Yuning", "avatar": "https://talks.nixcon.org/media/avatars/RB9RVZ_tlaRWBJ.webp", "biography": "Yuning Liang is the Founder and CEO of DeepComputing, focusing on developing innovative technology products based on RISC-V SoMs. From the world's first RISC-V development laptop DC-ROMA to pads, workstations, remote-controlled cars, drones, and more, all are based on RISC-V chips.\nThe world's first RISC-V laptop, the world's first RISC-V pad capable of making phone calls, and so on, are all Yuning's masterpieces. Yuning's innovation and pioneering spirit in the RISC-V field have enabled him to create several world firsts, leading DeepComputing to gain widespread recognition in the global RISC-V product commercialization field, contributing significantly to the advancement and progress of RISC-V technology.\nYuning's career has taken him from the UK to Switzerland, then to South Korea, and finally to China. He has a strong practical background in embedded systems, platform APIs, and system software. In 2024, he was honored with the \"RISC-V Community Contributor Award\" and recognized as a \"Ubuntu Summit Contributor,\" further solidifying his influence in the technology sector.", "public_name": "Liang Yuning", "guid": "74b205d2-2f3b-5ca2-9904-2c47eac4a8d9", "url": "https://talks.nixcon.org/nixcon-2026/speaker/JPLTW9/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/FCAMUG/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/FCAMUG/", "attachments": []}, {"guid": "9db37304-d9c3-59b3-9765-5d63b7852186", "code": "LH9YU3", "id": 102451, "logo": null, "date": "2026-09-27T15:00:00+02:00", "start": "15:00", "end": "2026-09-27T15:20:00+02:00", "duration": "00:20", "room": "Aula Duza B", "slug": "nixcon-2026-102451-server-apps-commodified-digital-autonomy-for-the-masses", "url": "https://talks.nixcon.org/nixcon-2026/talk/LH9YU3/", "title": "server apps commodified: digital autonomy for the masses", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "While nixpkgs has made lots of software reproducible, most users of devices experience technical barriers in switching to open-source software still.\n\nIn this talk, Fediversity developer @kiara explains the shortcomings of the GDPR's right to data portability, and how we can do better while bringing Nix to the masses.\n\nIt will further touch on:\n\n- how Nix services can facilitate micro-service architectures\n- how we can use GUIs to configure Nix modules\n- using Nix to make portable infrastructure", "recording_license": "", "do_not_record": false, "persons": [{"code": "YRJEAH", "name": "Kiara Grouwstra", "avatar": "https://talks.nixcon.org/media/avatars/JSAKPT_dtBFJGT.webp", "biography": "@kiara is a developer on Fediversity, an NGI-funded project to make a nix-powered app store for server software. A nix user since 2018, she sees nix as an empowering tool that just might be what the world needed to start using and collaborate on open-source more.", "public_name": "Kiara Grouwstra", "guid": "af546de5-d76f-5365-9ae4-16735d2200d4", "url": "https://talks.nixcon.org/nixcon-2026/speaker/YRJEAH/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/LH9YU3/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/LH9YU3/", "attachments": []}, {"guid": "06dd2880-114e-5da1-811c-4ad84811e029", "code": "9N7QKH", "id": 103277, "logo": null, "date": "2026-09-27T15:30:00+02:00", "start": "15:30", "end": "2026-09-27T15:50:00+02:00", "duration": "00:20", "room": "Aula Duza B", "slug": "nixcon-2026-103277-implementing-the-nixos-stig", "url": "https://talks.nixcon.org/nixcon-2026/talk/9N7QKH/", "title": "Implementing the NixOS STIG", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "As of 2025, there's a Security Technical Implementation Guide (STIG) for NixOS: a hardening baseline in the exact same checklist format the Defense Information Systems Agency (DISA) uses for RHEL or Ubuntu. It features 103 controls spanning auditing, cryptography, SSH, and kernel hardening. That it exists at all is a milestone: it means NixOS now turns up in places that require a formal, government-grade security baseline. On a recent client engagement, we had to implement it.\n\nThis process highlighted exactly how NixOS differs from other Linux distributions. Traditionally, hardening a system means manually going through checklists, writing fragile bash scripts, and hoping nothing drifts. The NixOS STIG is unusual because it ships the declarative configuration alongside the requirement. We took those snippets and packaged them into reusable modules. Instead of manually hardening a server, you simply import the baseline. Because the entire system state is declared in code, verifying compliance effectively becomes static analysis for server configs. From these same modules, we automatically generate the compliance report that maps each control to the exact configuration that meets it: the specific artifact an auditor actually asks for.\n\nHaving the setting is one thing; proving it holds is another. Each control comes with a NixOS VM test that boots a machine and checks that the rule is enforced (e.g., verifying that audit rules are set). This allows for automatic testing before system upgrades: a change that breaks compliance fails in CI, long before an auditor ever sees it. The same checks include a script for live systems so a running machine can be verified in place (though it is important to note we are strictly verifying that the STIG configurations are correctly set, not executing a penetration test to see if they prevent specific exploits).", "recording_license": "", "do_not_record": false, "persons": [{"code": "3HN8WU", "name": "Alexander Foremny", "avatar": null, "biography": "Nix/NixOS consultant at [Applicative Systems](https://applicative.systems/).\n\nAlexander Foremny is a longtime functional programming and Linux enthusiast.", "public_name": "Alexander Foremny", "guid": "4eaa1f4d-a98d-5c3c-a53d-063a4e74590f", "url": "https://talks.nixcon.org/nixcon-2026/speaker/3HN8WU/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/9N7QKH/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/9N7QKH/", "attachments": []}, {"guid": "c730daef-f19c-53a1-b38b-a63ec11a80c4", "code": "B7HA7F", "id": 102279, "logo": null, "date": "2026-09-27T16:00:00+02:00", "start": "16:00", "end": "2026-09-27T16:20:00+02:00", "duration": "00:20", "room": "Aula Duza B", "slug": "nixcon-2026-102279-nix-for-cloud-native-platform-engineering-from-imperative-templating-to-functional-derivation", "url": "https://talks.nixcon.org/nixcon-2026/talk/B7HA7F/", "title": "Nix for Cloud Native Platform Engineering: From Imperative Templating to Functional Derivation", "subtitle": "", "track": null, "type": "Short talk", "language": "en", "abstract": null, "description": "**Slides**: [arik-grahl.de/talks/nixcon-2026](https://www.arik-grahl.de/talks/nixcon-2026)\n\nThe Kubernetes ecosystem currently lacks a unified model for pure and reproducible deployments. Industry standards like Helm and Dockerfiles rely on impure templating and imperative definitions, creating non-deterministic side effects and opaque dependency trees. Often, the industry attempts to mitigate this by adding layers of orchestration (Internal Developer Platforms, GitOps controllers), which can inadvertently increase complexity without addressing the underlying fragility.\n\nThis talk demonstrates how to apply Nix\u2019s functional purity to this landscape. By organizing a platform's entire catalogue as a Nix monorepository, inspired by the architecture of nixpkgs, we can shift from managing state to deriving it, achieving total reproducibility for the entire cloud-native stack.\n\nWe will explore how Kubenix leverages the OpenAPI specification to treat Kubernetes manifests and Helm charts as Nix expressions, replacing traditional YAML templating with a strongly-typed approach. To address the build layer, we examine how `dockerTools` brings Nix\u2019s hermetic, network-isolated sandboxing to the OCI ecosystem. By treating containers as first-class dependencies, we can ensure fully reproducible artifacts, optimize storage via shared OCI layers, and generate accurate SBOMs and provenance attestations as natural byproducts. Finally, we will see how the NixOS module system serves as a flexible composition layer for the scalable orchestration of complex cluster configurations.\n\nLet\u2019s stop templating our cloud-native infrastructure and start deriving it with Nix: purely functional, hermetically sealed, and truly reproducible.", "recording_license": "", "do_not_record": false, "persons": [{"code": "SHTNXR", "name": "Arik Grahl", "avatar": "https://talks.nixcon.org/media/avatars/U7KVPX_mZAWJHN.webp", "biography": "Arik Grahl is a Staff Software Systems Architect living between Berlin and Barcelona and has more than 15 years of experience in full-stack development and operation of infrastructure on bare metal. At the moment he mainly designs cloud native systems and develops Golang applications close to Kubernetes. Furthermore, he is excited about everything evolving around Nix(OS) and enjoys contributing to Nixpkgs.\n\nHe studied computer science (BSc. in 2017, MSc. in 2021) at Technical University (TU) in Berlin. During this time he worked on freelance projects as a full-stack developer and supervised the corresponding IT infrastructure.\nHe also gained experience with co-founding two companies (2014, 2015) during this time with a focus on web development for small and medium-sized companies.\n\nAt his former job, he worked as a DevOps engineer where he also had the leading role in developing a mass-market product. He modernized and implemented operations and infrastructure at this company: containerization of all applications, an implementation of a CI/CD infrastructure, the operation of a self-hosted Kubernetes cluster on Bare Metal together with a Gluster and Ceph storage cluster in various locations in Europe, together with state-of-the-art observability stack. In addition, he was also intensively involved in the further training of employees concerning these technologies. Currently, he works as an Staff Software Systems Architect at SysEleven, where he is involved in the design of a cloud native software supply chain management on top of the managed Kubernetes and the development of Golang applications.\n\nHe is interested in IT security, data protection as well as network politics, and is an enthusiastic advocate of free and open-source software (FOSS). He is happy to take part in meetups and conferences to exchange ideas about technology. In his free time, he runs numerous services of everyday digital life on a home Kubernetes cluster, passionately cooks vegan food, does strength training, and listens to heavy metal.", "public_name": "Arik Grahl", "guid": "bcf4abb2-1091-5c98-857d-d2e702438ab5", "url": "https://talks.nixcon.org/nixcon-2026/speaker/SHTNXR/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/B7HA7F/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/B7HA7F/", "attachments": []}, {"guid": "58fa1b5f-2646-590d-856a-aac3cfae7ed4", "code": "LN8PXG", "id": 102371, "logo": null, "date": "2026-09-27T16:30:00+02:00", "start": "16:30", "end": "2026-09-27T17:15:00+02:00", "duration": "00:45", "room": "Aula Duza B", "slug": "nixcon-2026-102371-two-architectures-twice-the-fun-wearable-silicon-necromancy-with-the-nix-badge", "url": "https://talks.nixcon.org/nixcon-2026/talk/LN8PXG/", "title": "Two architectures, twice the fun: Wearable silicon necromancy with the Nix Badge", "subtitle": "", "track": null, "type": "Long talk", "language": "en", "abstract": null, "description": "I've wanted to put NixOS on a hackable hardware badge for a while, and finally did it... not just once, but twice! We managed to dual-boot NixOS in two separate *architectures* (aarch64 and riscv64) on the Nix Badge v2 as a speaker gift for Nix Vegas DEF CON attendees.\n\nAlong the way, I created some of the first hardware built fully with Nix, for NixOS. Come relive how we got NixOS working on the Sophgo SG2000, and discovered just how haunted a chip with dual ARM and RISC-V application cores can be. If you like embedded hardware, owning your devices, Bad Apple and Quake, secure boot, and a lot of hardware hacking, this may be the talk for you. \n\nMay contain at least one unfixable hardware bug. Remember, immutable means it's broken f o r e v e r.", "recording_license": "", "do_not_record": false, "persons": [{"code": "EBRHEF", "name": "Morgan Jones", "avatar": "https://talks.nixcon.org/media/avatars/88DXJB_Q2GaejP.webp", "biography": "I work as an embedded security engineer for a Carlsbad ISP, am a member of the SoCal NixOS User Group, and organize Nix Vegas. I may have read Ken Thompson's Reflections on Trusting Trust one too many times.", "public_name": "Morgan Jones", "guid": "404a94d7-d06e-55b9-ac01-e6980625a8c7", "url": "https://talks.nixcon.org/nixcon-2026/speaker/EBRHEF/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/LN8PXG/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/LN8PXG/", "attachments": []}], "Aula Srednia": [{"guid": "e7109688-de36-5046-be77-1bbdc3713ae2", "code": "JM9XSR", "id": 102949, "logo": null, "date": "2026-09-27T10:00:00+02:00", "start": "10:00", "end": "2026-09-27T12:00:00+02:00", "duration": "02:00", "room": "Aula Srednia", "slug": "nixcon-2026-102949-official-documentation-workshop", "url": "https://talks.nixcon.org/nixcon-2026/talk/JM9XSR/", "title": "Official Documentation workshop", "subtitle": "", "track": null, "type": "Long workshop", "language": "en", "abstract": null, "description": "The docs are the #1 thing people complain about. Let's go fix them\n\nhttps://docs.nixos.org is finally happening!\n\nJoin the workshop. Newbies and veterans alike.\n\n- We build pages and ship PRs in a room.\n\nWho's this for? Everyone.\n- Newbies: you are the secret weapon. You still remember what was confusing.\n- Veterans: you know the why's. Help us write it down.\n\nWhat to do:\n- Grab a page that's wrong, stale, or confusing.\n- Fix it: write, test, open the PR.\n- We merge what we can, on the spot.\n\nYou'll leave with:\n- PR with your name on it.\n- Understanding some parts of Nix that scared you this morning.\n- A concrete idea of where docs move. And how to keep contributing\n  after nixcon.", "recording_license": "", "do_not_record": false, "persons": [{"code": "8XNBDY", "name": "@hsjobeki", "avatar": "https://talks.nixcon.org/media/avatars/KFGKEG_Fsgs7Rn.webp", "biography": "Documentation team lead since 2026.\n\nI maintain parts of nixpkgs lib and the module system.\n\nI built noogle.dev (https://noogle.dev)\n\nMostly I just care about making Nix less painful.", "public_name": "@hsjobeki", "guid": "18980a26-bb0f-5afe-a7fe-e25530e2d2b7", "url": "https://talks.nixcon.org/nixcon-2026/speaker/8XNBDY/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/JM9XSR/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/JM9XSR/", "attachments": []}, {"guid": "645246a6-ec06-5af4-b665-aba841a7aefe", "code": "KXHR33", "id": 103265, "logo": null, "date": "2026-09-27T14:00:00+02:00", "start": "14:00", "end": "2026-09-27T16:00:00+02:00", "duration": "02:00", "room": "Aula Srednia", "slug": "nixcon-2026-103265-nixos-test-driver-faster-tests-cuda-in-the-sandbox-and-better-debugging", "url": "https://talks.nixcon.org/nixcon-2026/talk/KXHR33/", "title": "NixOS test driver: Faster tests, CUDA in the sandbox, and better debugging", "subtitle": "", "track": null, "type": "Long workshop", "language": "en", "abstract": null, "description": "The last NixOS test driver workshop at NixCon 2025 was packed with people who were eager to use the NixOS test driver to its full potential in production.\nBecause this format was so successful, we repeat it with a strong focus also on the latest features that we and others upstreamed in the last 12 months:\n\nRun faster tests with NixOS containers, even with non-KVM infrastructure\nRun CUDA in NixOS integration tests\nMix Intel and ARM based VMs in your tests\nDebug your tests with minimal configuration changes via VSOCK\nIf you have tests that sporadically fail in CI, but never on your laptop, the new debugger hook will help you out\n\nSome of the new features require special Nix daemon configuration, which we will also walk you through.", "recording_license": "", "do_not_record": false, "persons": [{"code": "JMD3VD", "name": "Jacek Galowicz", "avatar": null, "biography": "Jacek Galowicz is a systems architect, Nixpkgs contributor and maintainer of the NixOS Integration Test Driver. He is the founder of Applicative Systems, a software development consulting firm, and Nixcademy, corporate Nix/NixOS training provider. With a background ranging from microhypervisors, CI/CD automation, and writing technical books, Jacek focuses on building resilient, machine-verified software infrastructure that lasts.", "public_name": "Jacek Galowicz", "guid": "9190745d-16ab-5d2b-860e-8b4eeb42622d", "url": "https://talks.nixcon.org/nixcon-2026/speaker/JMD3VD/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/KXHR33/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/KXHR33/", "attachments": []}, {"guid": "093a1c09-1bac-57d0-b42f-648b4a7f5268", "code": "PS9TK9", "id": 106071, "logo": null, "date": "2026-09-27T16:00:00+02:00", "start": "16:00", "end": "2026-09-27T17:00:00+02:00", "duration": "01:00", "room": "Aula Srednia", "slug": "nixcon-2026-106071-nixos-secrets-manage-secrets-with-nixos-experimental", "url": "https://talks.nixcon.org/nixcon-2026/talk/PS9TK9/", "title": "nixos-secrets: manage secrets with nixos (experimental)", "subtitle": "", "track": null, "type": "Short workshop", "language": "en", "abstract": null, "description": "[nixos-secrets](https://github.com/NixOS/nixpkgs/pull/547171) (formerly knows as nixos-vars) is an experimental project aiming to provide a unified and composable interface for secret management on NixOS (think what agenix & sops-nix are currently used for).\n\nThis workshop will introduce the concepts behind the proposal and some basic usage patterns for the provided CLI & module. People are then encouraged to try it out on their own (be it by playing with a toy example, migrating their entire configuration, or trying to write a backend that fits their needs).", "recording_license": "", "do_not_record": false, "persons": [{"code": "YFQP3H", "name": "prescientmoon", "avatar": "https://talks.nixcon.org/media/avatars/D8TGMZ_yu0ljo1.webp", "biography": "Functional programming addict\nNixOS stan & masters math student (@ Radboud University)\nColemak-dh enjoyer\nForever trapped inside vim\n\nMeow :3\n\nI like System Erasure, Arcaea, Noita, Rain World, Factorio & more.\n\n[moonythm.dev](https://moonythm.dev/)", "public_name": "prescientmoon", "guid": "b177738c-d04b-5dea-9f09-1adf13bb1739", "url": "https://talks.nixcon.org/nixcon-2026/speaker/YFQP3H/"}], "links": [], "feedback_url": "https://talks.nixcon.org/nixcon-2026/talk/PS9TK9/feedback/", "origin_url": "https://talks.nixcon.org/nixcon-2026/talk/PS9TK9/", "attachments": []}]}}, {"index": 4, "date": "2026-09-28", "day_start": "2026-09-28T04:00:00+02:00", "day_end": "2026-09-29T03:59:00+02:00", "rooms": {}}]}}}