<?xml version='1.0' encoding='utf-8' ?>
<!-- Made with love by pretalx v2024.3.1. -->
<schedule>
    <generator name="pretalx" version="2024.3.1" />
    <version>0.4</version>
    <conference>
        <title>All Systems Go! 2026</title>
        <acronym>all-systems-go-2026</acronym>
        <start>2026-09-30</start>
        <end>2026-10-01</end>
        <days>2</days>
        <timeslot_duration>00:05</timeslot_duration>
        <base_url>https://cfp.all-systems-go.io</base_url>
        
        <time_zone_name>Europe/Berlin</time_zone_name>
        
        
    </conference>
    <day index='1' date='2026-09-30' start='2026-09-30T04:00:00+02:00' end='2026-10-01T03:59:00+02:00'>
        <room name='Loft' guid='24cbbfcb-a21d-5c3d-9938-9a2c0ddeb150'>
            <event guid='02dc4f66-6cae-51a2-8fb5-0bc827c6cf5b' id='442'>
                <room>Loft</room>
                <title>Opening Session of All Systems Go! 2026</title>
                <subtitle></subtitle>
                <type>Lightning talk</type>
                <date>2026-09-30T09:25:00+02:00</date>
                <start>09:25</start>
                <duration>00:05</duration>
                <abstract>A welcome session for All Systems Go!</abstract>
                <slug>all-systems-go-2026-442-opening-session-of-all-systems-go-2026</slug>
                <track></track>
                
                <persons>
                    
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/E8V7HN/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/E8V7HN/feedback/</feedback_url>
            </event>
            <event guid='1838a8da-6c04-5fea-aedb-d86fbe7561ca' id='434'>
                <room>Loft</room>
                <title>Provisioning and Deployment Mechanisms in systemd</title>
                <subtitle></subtitle>
                <type>35 min talk + 5 min Q&amp;A</type>
                <date>2026-09-30T09:30:00+02:00</date>
                <start>09:30</start>
                <duration>00:40</duration>
                <abstract>In recent systemd releases we substantially improved the tooling for provisioning and deploying operating systems with systemd. For example, systemd-sysinstall, systemd-sysupdate, credentials, systemd-firstboot, systemd-stub&apos;s parameterization logic, systemd-confext, systemd-imds, systemd-import all are relevant components for getting a node up and running with the right configuration, securely and robustly.

In this talk I&apos;d like to explain the current landscape, and how the various components matter in various scenarios, and how they fit together. I&apos;ll also discuss what&apos;s next, what&apos;s missing, and where we should be going with all this.</abstract>
                <slug>all-systems-go-2026-434-provisioning-and-deployment-mechanisms-in-systemd</slug>
                <track></track>
                
                <persons>
                    <person id='78'>Lennart Poettering</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/NLRDPH/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/NLRDPH/feedback/</feedback_url>
            </event>
            <event guid='7feb9e3e-54ce-5075-ba0a-b9ed7a94cbcd' id='431'>
                <room>Loft</room>
                <title>Modernising Updates and Provisioning with sysupdate</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-09-30T10:15:00+02:00</date>
                <start>10:15</start>
                <duration>00:25</duration>
                <abstract>sysupdate provides a lot of incredibly useful primitives for doing system updates, but it is still mostly designed around old-school SHA256SUMS distribution and static transfer definitions. However, the need to have more autonomous systems for updating systems and adding components became quite clear when we started developing such systems at Amutable. This approach also dove-tailed nicely into developing an autonomous provisioning system using the same underlying mechanism.

This talk will contain a detailed description of the architecture we came up with, along with some of the caveats that such an architecture has with generic distributions.</abstract>
                <slug>all-systems-go-2026-431-modernising-updates-and-provisioning-with-sysupdate</slug>
                <track></track>
                
                <persons>
                    <person id='86'>Aleksa Sarai</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/BBJYFH/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/BBJYFH/feedback/</feedback_url>
            </event>
            <event guid='23b0213c-cfe6-5daf-a7f9-dd6bb7cafcec' id='394'>
                <room>Loft</room>
                <title>Proposal for TPM2+FIDO2 enrollment in systemd</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-09-30T10:45:00+02:00</date>
                <start>10:45</start>
                <duration>00:25</duration>
                <abstract>User space based Full Disk Encryption in openSUSE is old news. We already can set up FDE installations using the systemd toolset. This allows us to use traditional passwords, the TPM2 to validate the status before mounting the encrypted device or a FIDO2 key to validate the presence of a token owned by authorized users. To increase the security, in Tumbleweed, we recommend combining both TPM2 and a password (TPM2+PIN). This guarantees the system is in a healthy state and the user has the correct authorization, but it still doesn&apos;t support a combination of TPM2 and FIDO2 keys. To fix this issue, we are proposing a new enrollment method in systemd: TPM2+FIDO2.</abstract>
                <slug>all-systems-go-2026-394-proposal-for-tpm2-fido2-enrollment-in-systemd</slug>
                <track></track>
                
                <persons>
                    <person id='81'>Alberto Planas Dominguez</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/SD3X9L/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/SD3X9L/feedback/</feedback_url>
            </event>
            <event guid='e8f38a6b-69e4-5d5e-82bb-9041d0331099' id='389'>
                <room>Loft</room>
                <title>systemd: state of the project</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-09-30T11:25:00+02:00</date>
                <start>11:25</start>
                <duration>00:25</duration>
                <abstract>Same as every year, a lot has happened in the systemd project since last year&apos;s
ASG. We released multiple versions, packed with new components and features.
This talk will provide an overview of these changes, commenting on successes and
challenges, and a sneak peak at what lies ahead.</abstract>
                <slug>all-systems-go-2026-389-systemd-state-of-the-project</slug>
                <track></track>
                
                <persons>
                    <person id='128'>Luca Boccassi</person><person id='137'>Zbigniew J&#281;drzejewski-Szmek</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/BTLLGC/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/BTLLGC/feedback/</feedback_url>
            </event>
            <event guid='efb38d7d-3ebb-5e3e-8e8d-60a97940c534' id='390'>
                <room>Loft</room>
                <title>systemd: round table</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-09-30T11:55:00+02:00</date>
                <start>11:55</start>
                <duration>00:25</duration>
                <abstract>Let&apos;s have an open discussion with systemd developers who are at ASG and users in the audience. We will open with the developers saying what they plan to work on in the near future, and then allow questions / comments from the audience.</abstract>
                <slug>all-systems-go-2026-390-systemd-round-table</slug>
                <track></track>
                
                <persons>
                    <person id='128'>Luca Boccassi</person><person id='137'>Zbigniew J&#281;drzejewski-Szmek</person><person id='242'>Yu Watanabe</person><person id='78'>Lennart Poettering</person><person id='241'>Mike Yuan</person><person id='139'>Daan De Meyer</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/RN9E3E/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/RN9E3E/feedback/</feedback_url>
            </event>
            <event guid='f00ce030-06a4-5753-a902-837a0acc2aa6' id='391'>
                <room>Loft</room>
                <title>Measured Boot in NixOS &amp; Other systemd Updates</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-09-30T12:25:00+02:00</date>
                <start>12:25</start>
                <duration>00:25</duration>
                <abstract>This talk will present the newest updates and advancements in NixOS related to Secure &amp; Measured Boot. It will take a look at what we have achieved this far, what issues we have come across, what we would like to see from the ecosystem, and what we are working towards next. Additionally, it will go over some other exciting things that happened related to systemd in NixOS.

Key advancements:
- [Support for Measured Boot via systemd-pcrlock in Lanzaboote](https://github.com/nix-community/lanzaboote/pull/564) (the boot security toolkit for NixOS)
- [Support for Boot Counting in Lanzabooote](https://github.com/nix-community/lanzaboote/pull/477)
- [Removed most patches from systemd (18 -&gt; 6)](https://github.com/NixOS/nixpkgs/pull/488508) and added a patch policy that prohibits most new patches.
- [systemd initrd is now the default](https://github.com/NixOS/nixpkgs/pull/435781)</abstract>
                <slug>all-systems-go-2026-391-measured-boot-in-nixos-other-systemd-updates</slug>
                <track></track>
                
                <persons>
                    <person id='255'>Niklas Sturm</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/QDB7AL/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/QDB7AL/feedback/</feedback_url>
            </event>
            <event guid='12e431be-561c-5a31-ab43-3529f43e232c' id='404'>
                <room>Loft</room>
                <title>A unified OS installer in systemd</title>
                <subtitle></subtitle>
                <type>35 min talk + 5 min Q&amp;A</type>
                <date>2026-09-30T14:20:00+02:00</date>
                <start>14:20</start>
                <duration>00:40</duration>
                <abstract>Linux doesn&apos;t have a unified way to be installed. Every distribution implements their on installer with a different feature set and UX. systemd-sysinstall is a tool to install an OS to a device. It leverages repart to format the disk and bootctl to manage UEFI and the boot partition and supports disk encryption and TPM integration. In addition, it exposes a varlink interface to be used by graphical installers.


In this talk we will explore what sysinstall does, how the GNOME OS installer (gnome-setup) leverages it to install GNOME OS, why distributions shipping GNOME should switch to gnome-setup, and how other desktop environments can build installers using the same stack.</abstract>
                <slug>all-systems-go-2026-404-a-unified-os-installer-in-systemd</slug>
                <track></track>
                
                <persons>
                    <person id='328'>Julian Sparber</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/SBUXXA/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/SBUXXA/feedback/</feedback_url>
            </event>
            <event guid='c0186a8b-1d94-53fe-989d-93ede50dc571' id='427'>
                <room>Loft</room>
                <title>single-file containers with statically linked systemd</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-09-30T15:05:00+02:00</date>
                <start>15:05</start>
                <duration>00:25</duration>
                <abstract>Systemd can now be linked as a single static binary, which is enough to run a &quot;full system&quot; container that boots into a running manager. Transient units can then be used to do more things in the container. Thanks to systemd-nsresourced and systemd-mountfsd, this now works fully unprivileged and with no suid helpers. I want to show that this actually works and can be used for experimentation, development, and custom container images.</abstract>
                <slug>all-systems-go-2026-427-single-file-containers-with-statically-linked-systemd</slug>
                <track></track>
                
                <persons>
                    <person id='137'>Zbigniew J&#281;drzejewski-Szmek</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/XU9CJR/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/XU9CJR/feedback/</feedback_url>
            </event>
            <event guid='2c2479f4-fccf-5076-a02c-77966ac8ba5b' id='435'>
                <room>Loft</room>
                <title>systemd &amp; OCI</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-09-30T15:35:00+02:00</date>
                <start>15:35</start>
                <duration>00:25</duration>
                <abstract>Recently systemd acquired functionality to download &amp; invoke OCI containers directly. In this talk I&apos;d like to explain where we are at with this, what we have, where the gaps are and where we are going, to make OCI containers a thing you can directly execute with systemd, without external tools.</abstract>
                <slug>all-systems-go-2026-435-systemd-oci</slug>
                <track></track>
                
                <persons>
                    <person id='78'>Lennart Poettering</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/BWWVCN/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/BWWVCN/feedback/</feedback_url>
            </event>
            <event guid='210a35a1-0980-5b55-8723-c14847aa9682' id='410'>
                <room>Loft</room>
                <title>Modernizing local storage management for systemd services</title>
                <subtitle></subtitle>
                <type>35 min talk + 5 min Q&amp;A</type>
                <date>2026-09-30T16:15:00+02:00</date>
                <start>16:15</start>
                <duration>00:40</duration>
                <abstract>The storage directory settings in systemd help define where services store their data. Two important features have been implemented for these directories. The first one is id-mapped mounts, which is a filesystem feature that allows a mount namespace to show a different UID than what is stored on a file. Storage directories now support id-mapping, so that the files within the mount namespace of a service defined with DynamicUser=yes are owned by its unprivileged UID/GID. The second feature is storage quota support. Storage limits can now be defined in terms of percentages or absolute values to enforce quotas on the consumption of State, Cache, and Logs directories. These features enhance the security and resource management of systemd services.</abstract>
                <slug>all-systems-go-2026-410-modernizing-local-storage-management-for-systemd-services</slug>
                <track></track>
                
                <persons>
                    <person id='276'>Andres Beltran</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/N93KWW/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/N93KWW/feedback/</feedback_url>
            </event>
            <event guid='77c7da84-07e0-5723-bd69-5154710d6da1' id='429'>
                <room>Loft</room>
                <title>An update on systemd-sysext/confext</title>
                <subtitle></subtitle>
                <type>Lightning talk</type>
                <date>2026-09-30T17:00:00+02:00</date>
                <start>17:00</start>
                <duration>00:05</duration>
                <abstract>The limitations of systemd-sysext/confext from the early days are mostly gone nowadays. The loading of extension images from the initrd means that generic content will behave as expected without any workarounds. New settings help making live reconfiguration work better as well. We will see how declarative configuration management with systemd-sysext/confext from git can be done with an OpenTofu/Terraform module. For image-based Linux binding configuration together with a pinned OS version is now possible through bootctl link. OS builders can ship /etc files through a default confext image.</abstract>
                <slug>all-systems-go-2026-429-an-update-on-systemd-sysext-confext</slug>
                <track></track>
                
                <persons>
                    <person id='135'>Kai L&#252;ke</person>
                </persons>
                <language>en</language>
                <description>systemd-sysext/confext: https://www.freedesktop.org/software/systemd/man/devel/systemd-sysext.html
bootctl: https://www.freedesktop.org/software/systemd/man/devel/bootctl.html</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/RMC879/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/RMC879/feedback/</feedback_url>
            </event>
            <event guid='02e60db7-20dc-5495-a643-10171d7f38f7' id='436'>
                <room>Loft</room>
                <title>Couple Services, Not the Host: Portable Services and Capsules</title>
                <subtitle></subtitle>
                <type>Lightning talk</type>
                <date>2026-09-30T17:05:00+02:00</date>
                <start>17:05</start>
                <duration>00:05</duration>
                <abstract>System extensions (sysexts) become part of the host&apos;s /usr, making them available to all users. But what if we want to run tightly coupled services without exposing their binaries to everyone else on the system?

This lightning talk will show how to ship a real-world stack (kubelet, containerd, and runc) without making them accessible to the rest of the host. We will demonstrate how to use portable services and systemd capsules to allow these components to invoke each other and share some namespaces, all while keeping the host OS clean.</abstract>
                <slug>all-systems-go-2026-436-couple-services-not-the-host-portable-services-and-capsules</slug>
                <track></track>
                
                <persons>
                    <person id='342'>Rodrigo Campos Catelin</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/K9GPKV/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/K9GPKV/feedback/</feedback_url>
            </event>
            <event guid='d672c0b5-5b41-59ed-9495-9e0ce89f5ec4' id='418'>
                <room>Loft</room>
                <title>From fsync to Block I/O: Tracing Storage with eBPF</title>
                <subtitle></subtitle>
                <type>Lightning talk</type>
                <date>2026-09-30T17:10:00+02:00</date>
                <start>17:10</start>
                <duration>00:05</duration>
                <abstract>Observability stacks have gotten good at CPU, memory, and network &#8212; but storage is still where the picture goes dark. When a workload stalls on I/O, device-level tools like iostat or blktrace tell you the disk was busy; they don&apos;t tell you which service caused it, or where in the stack the latency actually accrued: a slow fsync, writeback pressure in the page cache, a filesystem journal commit, or a saturated block queue.

This talk follows a single write from the syscall boundary down to the block layer, using eBPF to instrument each handoff &#8212; VFS, the filesystem, the page cache, and block I/O submission and completion &#8212; without patching applications or running a custom kernel. We&apos;ll look at which attach points (tracepoints, fentry/fexit, kprobes) give honest per-layer latency, how to keep the measurement overhead from biasing the result, and how to attribute the latency back to the responsible cgroup or systemd service instead of an aggregate line on a dashboard. Examples range from fsync-heavy database commits to large sequential writes that look fine at the device level but stall well above it.

Attendees will leave with a concrete method for turning storage from a black box into a traceable path &#8212; and an honest sense of where eBPF helps, and where it still can&apos;t see.</abstract>
                <slug>all-systems-go-2026-418-from-fsync-to-block-i-o-tracing-storage-with-ebpf</slug>
                <track></track>
                
                <persons>
                    <person id='336'>Kritik Sachdeva</person>
                </persons>
                <language>en</language>
                <description>Follow a single write from syscall to block layer with eBPF, measuring honest per-layer latency at each handoff and attributing storage stalls to the service that caused them.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/XHJX3N/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/XHJX3N/feedback/</feedback_url>
            </event>
            <event guid='863d4702-cf23-5e03-942d-773cdc2ccbef' id='412'>
                <room>Loft</room>
                <title>Rethinking systemd-homed&apos;s Key Hierarchy</title>
                <subtitle></subtitle>
                <type>Lightning talk</type>
                <date>2026-09-30T17:15:00+02:00</date>
                <start>17:15</start>
                <duration>00:05</duration>
                <abstract>When you lock your systemd-homed enabled Linux desktop today, your home directory (including the desktop session) is fully frozen. This happens because systemd-homed uses a single cryptographic key (the LUKS volume key) and throws it away during lock. Want to lock away just your credentials as on a normal screen lock while keeping music playing and notifications coming through? You can&apos;t.

This talk presents the work done as part of the systemd STF grant to extend the systemd-homed&apos;s key hierarchy that fixes this issue.</abstract>
                <slug>all-systems-go-2026-412-rethinking-systemd-homed-s-key-hierarchy</slug>
                <track></track>
                
                <persons>
                    <person id='249'>Dhanuka Warusadura</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/TL3KGN/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/TL3KGN/feedback/</feedback_url>
            </event>
            <event guid='5aabf3ed-7f7c-5513-97ef-b7bef7371144' id='400'>
                <room>Loft</room>
                <title>The state of systemd sandboxing in Debian</title>
                <subtitle></subtitle>
                <type>Lightning talk</type>
                <date>2026-09-30T17:20:00+02:00</date>
                <start>17:20</start>
                <duration>00:05</duration>
                <abstract>Marco will review the state of systemd sandboxing in Debian packages, what we need to fix to have more and what will break by enabling too much of it.</abstract>
                <slug>all-systems-go-2026-400-the-state-of-systemd-sandboxing-in-debian</slug>
                <track></track>
                
                <persons>
                    <person id='224'>Marco d&apos;Itri</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/VLBXZ8/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/VLBXZ8/feedback/</feedback_url>
            </event>
            
        </room>
        <room name='Galerie' guid='f73717af-dcf4-523c-968d-885a98f92c1d'>
            <event guid='23d6c6b3-8a6b-5a07-8531-d9bab98c051b' id='414'>
                <room>Galerie</room>
                <title>attezt: device attestation, PKCS11 and ACME</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-09-30T10:15:00+02:00</date>
                <start>10:15</start>
                <duration>00:25</duration>
                <abstract>IETF is standardizing a new ACME challenge, `device-attest-01`, which allows organizations to provision device bound certificates to machines, and enables machines to present signing certificates that can&apos;t be extracted out of machines they where intended for. This is useful for cases where you want to provide reverse proxies with mTLS with a strong sense of device identity.

attezt is intended to be a suite of tools to work the new `device-attest-01` ACME challenges for Linux. It provides an ACME client, an attestation server with (simple) support for inventory systems and a PKCS11 agent which together enables the support of this ACME challenge on Linux.

This talk will give an introduction to the new ACME challenge, a quick rundown of how an attestation server works and how attezt works.

https://datatracker.ietf.org/doc/draft-ietf-acme-device-attest/
https://github.com/Foxboron/attezt</abstract>
                <slug>all-systems-go-2026-414-attezt-device-attestation-pkcs11-and-acme</slug>
                <track></track>
                
                <persons>
                    <person id='333'>Morten Linderud</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/8XRBTA/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/8XRBTA/feedback/</feedback_url>
            </event>
            <event guid='886d54b1-fd33-53a1-816e-4ba5d27eaa4d' id='432'>
                <room>Galerie</room>
                <title>Micromize: Enforcing Container Semantics with eBPF LSM</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-09-30T10:45:00+02:00</date>
                <start>10:45</start>
                <duration>00:25</duration>
                <abstract>Containers should follow an opinionated runtime model. They are designed to be immutable, minimal and predictably constrained to specific behaviors. In practice, Linux gives us powerful primitives such as namespaces and cgroups, but those mechanisms do not directly enforce the higher-level semantics that make containers attractive in the first place.

A container may be packaged as a minimal immutable image, yet still drift at runtime, execute unexpected code, load unexpected objects, or reach kernel functionality unrelated to its purpose. The result is a gap between the way containers are intended to behave and what the kernel actually enforces.

This talk presents Micromize, an open-source project that uses eBPF LSM to narrow that gap. Micromize explores how an opinionated container runtime model can be translated into kernel-enforced constraints that preserve workload behavior after deployment.

We will cover the design, implementation tradeoffs, and open questions behind enforcing stricter container semantics at runtime: what can be enforced cleanly, what remains hard, where existing Linux mechanisms help, and where eBPF LSM gives us a new enforcement point.</abstract>
                <slug>all-systems-go-2026-432-micromize-enforcing-container-semantics-with-ebpf-lsm</slug>
                <track></track>
                
                <persons>
                    <person id='341'>Dor Serero</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/WUH9WS/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/WUH9WS/feedback/</feedback_url>
            </event>
            <event guid='9cbe8d11-14a1-5a9d-b7c9-a7e7a8723da2' id='413'>
                <room>Galerie</room>
                <title>Image Based Modular Deployment for Large Teams in Embedded Systems</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-09-30T11:25:00+02:00</date>
                <start>11:25</start>
                <duration>00:25</duration>
                <abstract>The image based Linux vision is clear: immutable system images, declarative composition, no imperative package installation at runtime. But what happens when you need dozens of independently deployable application modules on the same device, each owned by a different team in a large enterprise, each on its own release cadence, while keeping the root filesystem untouched?

We built a modular deployment system for production Linux devices that takes the image based philosophy to its logical conclusion: every module is a read only ext4 filesystem image, built deterministically at build time, deployed to its own A/B partition with zero installation, and managed entirely through systemd transient services. No unit files on the rootfs. No package manager on the device. No post deploy scripts. The image is the truth.

On the packaging side, we use deterministic ext4 creation with constant timestamps to produce (mostly) reproducible images regardless of build environment. This reproducibility directly enables efficient delta based OTA: because the on device image is read only and byte identical to what was built, we can chunk-diff against it and deliver only changed blocks critical for constrained networks.

On the runtime side, a oneshot service mounts each module and starts it via systemd-run as a transient service inheriting automatic restart, cgroup resource control, and clean lifecycle semantics without ever writing a .service file to disk. We deliberately rejected the alternative of modules shipping their own unit files precisely because it violates the principle that deployment must not modify the root filesystem. Transient services give us the systemd machinery we need while preserving an immutable rootfs compatible with dm-verity.

Modules are fully isolated: separate uid/gid, sandboxed filesystem access, dedicated persistent storage, and communication exclusively through a formal interface (gRPC unix domain sockets in our case). Each module treats every other module as a remote server: no hard startup dependencies, no shared state, no assumption that any other module is even present on the same device</abstract>
                <slug>all-systems-go-2026-413-image-based-modular-deployment-for-large-teams-in-embedded-systems</slug>
                <track></track>
                
                <persons>
                    <person id='332'>Corin Rypkema</person><person id='334'>Mike Sandige</person><person id='337'>Gopal Paudel</person>
                </persons>
                <language>en</language>
                <description>The talk will cover:

* Applying image based Linux principles at the application module level, not just the OS
* Packaging modules as (mostly) reproducible, read only ext4 images with deterministic tooling
* How image based module packaging enables per-module automated testing: deploying test harnesses as modules themselves, composing versioned module sets for deterministic integration testing, and unlocking independent CI/CD pipelines per team
* Why deb/rpm, Flatpak, and AppImage each fail for independently deployable A/B modules
* Delta-based OTA delivery that exploits immutable images for chunk-level diffing
* systemd transient services as a module lifecycle manager: all the benefits of systemd, none of the rootfs side effects
* Per-module sandboxing, cgroup isolation, and gRPC-only IPC
* Lessons from production: independently updating 40+ modules without device reboot</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/VLKVKW/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/VLKVKW/feedback/</feedback_url>
            </event>
            <event guid='6a8ae828-3791-5ceb-a655-b8bc6366533d' id='409'>
                <room>Galerie</room>
                <title>Moonforge: Making Yocto Easy To Assemble</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-09-30T11:55:00+02:00</date>
                <start>11:55</start>
                <duration>00:25</duration>
                <abstract>The Yocto project contains multitudes, and as such it contains the ability to create a modern, image based, integrator friendly operating system, taking advantage of various layers of tooling for hardware and feature support. Moonforge is the result of the work done by Igalia in this space, and it focuses on making it easy to create, build, test, deploy, and update a OS image for multiple products and verticals.</abstract>
                <slug>all-systems-go-2026-409-moonforge-making-yocto-easy-to-assemble</slug>
                <track></track>
                
                <persons>
                    <person id='295'>Emmanuele Bassi</person><person id='303'>Mart&#237;n Abente Lahaye</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/HNUWBK/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/HNUWBK/feedback/</feedback_url>
            </event>
            <event guid='c6f8d047-d6a3-5a25-9d87-6c1f487590bc' id='395'>
                <room>Galerie</room>
                <title>Do Users Actually Want a Trusted, Immutable OS?  Lessons from the Industry</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-09-30T12:25:00+02:00</date>
                <start>12:25</start>
                <duration>00:25</duration>
                <abstract>Recent years have spurred much discussion in Linux communities about the idea of building an OS that is both Trusted and Immutable.  While successful in many ways, attempts to implement these ideas have created numerous sharp edges for end users.  At the same time, these initiatives bear many advantages for the ecosystem&apos;s push towards becoming more reliable, accessible, and consumable.  What lessons can we take from other OS vendors to improve user experience and accelerate adoption?</abstract>
                <slug>all-systems-go-2026-395-do-users-actually-want-a-trusted-immutable-os-lessons-from-the-industry</slug>
                <track></track>
                
                <persons>
                    <person id='322'>Katie Miller</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/R8XMRT/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/R8XMRT/feedback/</feedback_url>
            </event>
            <event guid='e2f479b8-b1d0-55d7-a086-3b4b34b1aacf' id='403'>
                <room>Galerie</room>
                <title>Containers without a new runtime: sdme on systemd-nspawn</title>
                <subtitle></subtitle>
                <type>35 min talk + 5 min Q&amp;A</type>
                <date>2026-09-30T14:20:00+02:00</date>
                <start>14:20</start>
                <duration>00:40</duration>
                <abstract>sdme is a single static binary that boots systemd-nspawn containers using copy-on-write roots (overlayfs layers or btrfs snapshots), with OCI registry pulling and Kubernetes Pod YAML support. No daemon, no runtime dependency beyond the systemd you already run.

Why I built it. Every container runtime reinvents what systemd already does well: process supervision, logging, cgroups, service ordering, socket activation. sdme makes the opposite bet. systemd-nspawn already boots a full system in isolation; the kernel already gives it a cheap copy-on-write root, whether through overlayfs or a btrfs snapshot. Put a thin, daemonless CLI over the two and you get container workflows (clone, import, pull, run) without a new runtime to install or a daemon to keep alive. It began as a one-command clone of the running host, but the bet is bigger than that: lean on the init system instead of rebuilding it.

What you get. Proper machine-like containers: each one runs a full systemd init with journald, D-Bus, and systemctl, not a single foreground process. Each container is highly configurable through native systemd surfaces, with per-container resource limits, networking, and drop-in config. Clone your running host into a throwaway container in one command; run a Docker Hub image (nginx, redis, postgres) as a managed systemd service instead of a foreground process; deploy a multi-container pod from Kubernetes Pod YAML with health probes, secrets, and configmaps. A rootfs can also come from any distro, an OCI registry, a tarball, or a QCOW2 image, and you can build your own from a Dockerfile-like config.

How it works. One copy-on-write root and one systemd-nspawn invocation give you a fully booted system. Storage is pluggable per container. The overlayfs backend mounts the host / (or any imported rootfs) as an immutable lower layer with a fresh upper, so clones are instant. The btrfs backend snapshots the base rootfs as a subvolume instead, which makes the container root a real filesystem: nested containers work, user namespaces use native idmapped mounts, and per-container disk quotas come from qgroups. It runs directly on a btrfs data directory, or inside a loopback pool image on any other filesystem. The binary does two jobs: it manages those copy-on-write roots, and it drives systemd over D-Bus to start, stop, and supervise containers. Everything else (init, journald, cgroups, service ordering) is systemd doing what it already does, with no daemon in the middle.</abstract>
                <slug>all-systems-go-2026-403-containers-without-a-new-runtime-sdme-on-systemd-nspawn</slug>
                <track></track>
                <logo>/media/all-systems-go-2026/submissions/E7MHZJ/sdme-logo_CYNicHk.svg</logo>
                <persons>
                    <person id='327'>Alexandre Fiori</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/E7MHZJ/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/E7MHZJ/feedback/</feedback_url>
            </event>
            <event guid='c073b66f-dd73-5f26-9374-9e026c064df7' id='424'>
                <room>Galerie</room>
                <title>Forget &quot;podman generate systemd&quot;: How Quadlet Really Works</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-09-30T15:05:00+02:00</date>
                <start>15:05</start>
                <duration>00:25</duration>
                <abstract>For a while, the standard way to run Podman containers under systemd was podman generate systemd. It worked, but the output was static and awkward to maintain. Quadlet replaced it &#8212; and most guides stop at &quot;drop an INI file in a directory and your container starts.&quot; leaving the machinery a black box. 

This talk demystifies that black box, because the internals are exactly what you reach for when things break. Quadlet isn&apos;t a daemon. It&apos;s a systemd generator that runs at daemon-reload and turns your .container, .pod, and .network files into ordinary .service units. 

In session, we&apos;ll trace one stack example from end to end, watching a three-line container file expand into a full podman run command, and cross-unit references become injected After=/Wants= dependency edges with name-mangled volumes and networks.

You&apos;ll leave knowing exactly what gets generated, why edits need a daemon-reload, how to dump &amp; debug a failing unit yourself, and explain why keeping only the source files under version control is reliable. Less magic, more model.</abstract>
                <slug>all-systems-go-2026-424-forget-podman-generate-systemd-how-quadlet-really-works</slug>
                <track></track>
                
                <persons>
                    <person id='336'>Kritik Sachdeva</person>
                </persons>
                <language>en</language>
                <description>Quadlet isn&apos;t magic&#8212;it&apos;s a systemd generator. Watch a three-line .container file expand into a full service unit, and learn to dump, debug, and reason about what really gets generated.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/PXBVLE/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/PXBVLE/feedback/</feedback_url>
            </event>
            <event guid='08c82394-512b-595b-9361-b26698f3888e' id='422'>
                <room>Galerie</room>
                <title>Immutable, Fully-Confined Debian Server Images, Even on a Raspberry Pi 3</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-09-30T15:35:00+02:00</date>
                <start>15:35</start>
                <duration>00:25</duration>
                <abstract>Using mkosi and apparmor.d as building blocks, this talk presents a prototype minimal Debian server. The goal is not to provide yet another Linux distribution, but to explore how hard it is to build personalized, hardened server images.

On top of the usual mkosi-backed features such as UKIs, A/B updates and dm-verity, the project adds a whole-system AppArmor policy and an immutable `/etc`. Because older devices also matter, the prototype supports the Raspberry Pi 3 (UEFI) too, with minor changes to the security model. The talk presents the differences in design, attacker model, and implementation between the various targets.</abstract>
                <slug>all-systems-go-2026-422-immutable-fully-confined-debian-server-images-even-on-a-raspberry-pi-3</slug>
                <track></track>
                
                <persons>
                    <person id='338'>Alexandre Pujol</person>
                </persons>
                <language>en</language>
                <description>This talk walks through a prototype: a minimal, hardened Debian server built with `mkosi` and `apparmor.d`. It composes three layers of systemd and Debian tooling that are well understood alone but rarely combined, each reinforcing the others:

- **Image-based OS:** `mkosi` magic.
- **Whole-system MAC:** AppArmor policies that confine every process on the system. It also brings:
    - Multi-layered policy loading, fixing the AppArmor load-time issues that hurt small devices.
    - Immutable security policies.
    - Compatibility with systemd sysext/confext.
- **Immutable `/etc`:** assembled from signed `systemd-confext` images, closing immutability&apos;s usual escape hatch.

The same image targets both an x86-64 server and a Raspberry Pi 3 (UEFI), and that contrast is where it gets interesting. The two share a single build but diverge on attacker model and security guarantees: what an embedded device with no Secure Boot can promise versus a server, and where the implementation has to bend. We walk those differences, the limitations, and what would have to land upstream to make this kind of image easier.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/KJNYQ8/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/KJNYQ8/feedback/</feedback_url>
            </event>
            <event guid='350cd483-8078-53e3-907c-6efc046537cb' id='415'>
                <room>Galerie</room>
                <title>Make Debian Immutable with mkosi and Nix</title>
                <subtitle></subtitle>
                <type>35 min talk + 5 min Q&amp;A</type>
                <date>2026-09-30T16:15:00+02:00</date>
                <start>16:15</start>
                <duration>00:40</duration>
                <abstract>Immutable, image-based Linux has gone mainstream &#8212; on Fedora. Nearly every atomic distro descends from the RPM/ostree lineage. Debian is conspicuously rare, with really only Vanilla OS and Endless OS to its name. There&apos;s a reason, and it&apos;s apt: Debian&apos;s package manager expects a writable root filesystem, so the moment you seal the rootfs, the native way to install and update software stops working. That&apos;s the wall every immutable Debian hits, and most climb it with Flatpak or containers. This talk takes a different route &#8212; Nix. Nix keeps everything in a self-contained, content-addressed /nix/store, so it never needs a writable rootfs. The base is built once with mkosi and frozen (apt isn&apos;t even installed) and Nix manages everything that changes after that, reproducibly. The result is an immutable Debian rootfs with the entire Nix package ecosystem available on top.</abstract>
                <slug>all-systems-go-2026-415-make-debian-immutable-with-mkosi-and-nix</slug>
                <track></track>
                
                <persons>
                    <person id='212'>Frank Vasquez</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/BEDGKF/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/BEDGKF/feedback/</feedback_url>
            </event>
            
        </room>
        
    </day>
    <day index='2' date='2026-10-01' start='2026-10-01T04:00:00+02:00' end='2026-10-02T03:59:00+02:00'>
        <room name='Loft' guid='24cbbfcb-a21d-5c3d-9938-9a2c0ddeb150'>
            <event guid='2f14c798-d2de-51aa-82df-284ad3c3dcc8' id='433'>
                <room>Loft</room>
                <title>An API for systemd Machines</title>
                <subtitle></subtitle>
                <type>35 min talk + 5 min Q&amp;A</type>
                <date>2026-10-01T10:00:00+02:00</date>
                <start>10:00</start>
                <duration>00:40</duration>
                <abstract>In this talk I&apos;d like to provide a vision for accessing systemd hosts via local IPC APIs and remote RPC APIs. With the Varlinkification of systemd going full steam ahead, I&apos;d like to explain what I think should be next for systemd and how things fit together with our focus on APIs.

We&apos;ll talk about metrics/reports, Varlink in general, the Varlink HTTP proxy specifically, about security models, and zero-agent remote access, secure system parameterization and more. We&apos;ll talk about design patterns to follow, both for systemd components, and for other OS components, outside of it.</abstract>
                <slug>all-systems-go-2026-433-an-api-for-systemd-machines</slug>
                <track></track>
                
                <persons>
                    <person id='78'>Lennart Poettering</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/RZ3PUB/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/RZ3PUB/feedback/</feedback_url>
            </event>
            <event guid='27dafc2c-48af-55ef-ad16-a46c90e776e0' id='397'>
                <room>Loft</room>
                <title>Native OS enrollment for the Linux userspace: A proposal for open APIs and protocols</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-10-01T10:45:00+02:00</date>
                <start>10:45</start>
                <duration>00:25</duration>
                <abstract>Enterprise Linux deployments lack a standardized, native enrollment flow. Current solutions rely on distro&#8209;specific first&#8209;boot mechanisms (systemd-firstboot, cloud&#8209;init, realmd, ignition, kickstart and more) or external configuration management layered post&#8209;deployment, resulting in poor feature sets w.r.t. modern features enabled by TPM2 or UEFI setting management.

This talk proposes to explore minimal, vendor&#8209;neutral set of APIs and protocols for OS enrollment, *analogous to* Windows Autopilot but designed for the Linux userspace stack and specifically for the ParticleOS ecosystem. We will examine a concrete model based on device identity (TPM, SMBIOS information), secure attestation, policy discovery, and management&#8209;hint delivery, decoupled from any particular configuration management system.

There might be a live demonstration presenting a reference implementation on NixOS communicating with a lightweight enrollment service over HTTP(S) leveraging a bunch of Varlink APIs built across the past years and presented at ASG.

The primary outcome is a community&#8209;reviewed specification draft for enrollment APIs, intended for integration into systemd and distro installers.

The talk is not a proposal for a new tool but rather invite the attendees to think about the problem space around corporate enrollment for Linux distributions and how do we build native solutions for distributions interested by this idea.</abstract>
                <slug>all-systems-go-2026-397-native-os-enrollment-for-the-linux-userspace-a-proposal-for-open-apis-and-protocols</slug>
                <track></track>
                
                <persons>
                    <person id='243'>Ryan Lahfa (@raitobezarius)</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/3RTJNA/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/3RTJNA/feedback/</feedback_url>
            </event>
            <event guid='b23e7390-95a8-5c6e-bc93-35864b84b95c' id='430'>
                <room>Loft</room>
                <title>Seamless Upgrades with KHO, LUO, and systemd</title>
                <subtitle></subtitle>
                <type>35 min talk + 5 min Q&amp;A</type>
                <date>2026-10-01T11:25:00+02:00</date>
                <start>11:25</start>
                <duration>00:40</duration>
                <abstract>For years, kexec was the standard way to skip lengthy firmware and bootloader delays at reboot. However, in modern cloud environments, even a fast reboot causes severe service degradation. Guests evacuation in virtualized environments or rebuild of massive in-memory caches for large databases is costly and disruptive.

Kernel HandOver (KHO) and Live Update Orchestrator (LUO) introduce a complete framework for seamless kernel and userspace state preservation across upgrades.

KHO provides the infrastructure to preserve kernel data structures and arbitrary memory regions across kexec. Physically contiguous memory areas managed by KHO let the incoming kernel to bootstrap itself without touching the preserved memory.

On top of KHO, LUO provides userspace APIs for coordination of the transition and allows applications to preserve file descriptors across kexec. With initial support for memory file descriptors (memfd), the ecosystem is rapidly expanding to cover subsystems like PCI, VFIO, KVM, guestmemfd, and iommufd.

Moreover, the ecosystem now features native systemd integration, leveraging the standard fdstore interface to pass resources across the kernel reboot.</abstract>
                <slug>all-systems-go-2026-430-seamless-upgrades-with-kho-luo-and-systemd</slug>
                <track></track>
                
                <persons>
                    <person id='340'>Mike Rapoport</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/J8GNND/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/J8GNND/feedback/</feedback_url>
            </event>
            <event guid='295fed84-a14f-5608-940e-0b28d5fd1b85' id='393'>
                <room>Loft</room>
                <title>systemd: reducing impact of servicing interruptions on restart/reboot</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-10-01T12:10:00+02:00</date>
                <start>12:10</start>
                <duration>00:25</duration>
                <abstract>When a machine/server/node is serviced and experiences a downtime, that results in a service interruption, customers or users tend to get quite sad. This talk will explore two recent additions to systemd that aim to make these service interruptions as minimal as possible.</abstract>
                <slug>all-systems-go-2026-393-systemd-reducing-impact-of-servicing-interruptions-on-restart-reboot</slug>
                <track></track>
                
                <persons>
                    <person id='128'>Luca Boccassi</person>
                </persons>
                <language>en</language>
                <description>systemd v260 and v261 added two features which aim to let service owners minimize downtime.

Firstly, when services use dm-verity images, profiling data showed that the largest bottleneck by far was loading the new images, which used to happen after the running service had already stopped during a unit restart. Since v260, when very specific conditions are met, this bottleneck has been removed from the critical path.

Secondly, a common issue causing slowdowns for services is having to serialize and deserialize large amount of state from slow disks after a reboot due to an OS update. Since v261, systemd supports the kernel&apos;s Live Update Orchestration, and uses it to persist the content of the FD Store across a kexec reboot. Services can use a memfd for their runtime state, hand it over the systemd when they are stopped/restarted, and they will get it back and can mmap it and use it straight away on restart. With LUO support, services can rely on this even across a kexec, removing the need to use serialize and deserialize state to disk.

This talk will explore both features, explaining how they work and how they can be used.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/XFZKN8/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/XFZKN8/feedback/</feedback_url>
            </event>
            <event guid='8d949343-0bd6-527f-9773-99eab8f9dbb9' id='402'>
                <room>Loft</room>
                <title>Building IncusOS</title>
                <subtitle></subtitle>
                <type>35 min talk + 5 min Q&amp;A</type>
                <date>2026-10-01T14:05:00+02:00</date>
                <start>14:05</start>
                <duration>00:40</duration>
                <abstract>[IncusOS](https://linuxcontainers.org/incus-os) is an immutable OS based on Debian 13 and built using mkosi. It&apos;s designed to be as secure as possible, actively relying on both UEFI Secure Boot and a TPM 2.0 module to provide strong boot security as well as encryption at rest through LUKS+TPM.

Its whole purpose is to provide an ideal environment for running [Incus](https://linuxcontainers.org/incus/) with a focus on running on bare metal with pretty complex local and remote storage as well as a variety of networking options.

Unlike most other Linux systems, IncusOS doesn&apos;t provide any local or remote shell access to the system. Instead it&apos;s entirely API driven with its management API being available through the Incus API itself.

That management API allows for system configuration, update management, installation of additional components (systemd system extensions), configuring a variety of system services, ... But it also needs to handle a variety of fallback and recovery/patching mechanisms for when something goes wrong.

This talk will cover why we built IncusOS, how we built it, its current state and what we&apos;re working towards in the near future.</abstract>
                <slug>all-systems-go-2026-402-building-incusos</slug>
                <track></track>
                
                <persons>
                    <person id='326'>St&#233;phane Graber</person>
                </persons>
                <language>en</language>
                <description>[Incus](https://linuxcontainers.org/incus/) is a modern container and virtual machine manager with native support for both system and application containers as well as virtual machines. It&apos;s designed to behave just like a private cloud, but one that you can run on your laptop or Raspberry Pi as well as on clusters of hundreds or thousands of servers.

It&apos;s got support for a wide variety of local and remote storage options as well as both software defined and traditional networking. It has built-in clustering allowing for hundreds of servers to act as one with a consistent API and distributed database providing high availability and automated recovery.

Incus is widely available through packages in most Linux distributions with IncusOS providing another method of deployment particularly targeted to those who don&apos;t want to have to manage yet another Linux system or those who want to perform large scale deployments with known identical systems.

IncusOS can be deployed and managed at scale through [Operations Center](https://github.com/futurfusion/operations-center), allowing for hundreds of clusters to be deployed, updated and tracked in one place.

Incus, IncusOS, Operations Center and generally everything related to Incus is Open Source and released under the Apache 2.0 license.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/ER3SSR/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/ER3SSR/feedback/</feedback_url>
            </event>
            <event guid='f859278b-e2af-5765-a085-756644211b26' id='407'>
                <room>Loft</room>
                <title>Bridging the (varlink) gap</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-10-01T14:50:00+02:00</date>
                <start>14:50</start>
                <duration>00:25</duration>
                <abstract>Systemd provides a growing set of very useful varlink APIs. With the new Rust-based varlink-http-bridge, it is possible to expose any number of them over the network securely via https/websockets, including over vsock, with all of the interesting varlink features like &quot;more&quot; support or &quot;protocol-upgrade&quot; support.

This presentation gives an overview of why varlink and websockets are such a good fit, why the varlink-http-bridge implementation is mostly just a transparent byte proxy, and how it plugs into varlinkctl seamlessly to make networked varlinkctl calls &quot;just work&quot;. It also explains the security model and the plans for the future.

The project lives in https://github.com/systemd/varlink-http-bridge.</abstract>
                <slug>all-systems-go-2026-407-bridging-the-varlink-gap</slug>
                <track></track>
                
                <persons>
                    <person id='324'>Michael Vogt</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/WDRTYW/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/WDRTYW/feedback/</feedback_url>
            </event>
            <event guid='3e14be2b-6d9e-5e3b-9969-64f867c05a8b' id='437'>
                <room>Loft</room>
                <title>Varlink observability</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-10-01T15:20:00+02:00</date>
                <start>15:20</start>
                <duration>00:25</duration>
                <abstract>Varlink is slowly getting adopted in the desktop space. This brings a few new challenges, one of them being observability: D-Bus allows us to capture the entire system and session bus and then drill down on specific interactions in the system. Varlink on the other hand is just a protocol spoken over AF_UNIX sockets and thus has no bus and no global view of the system. The talk explores how we can use eBPF and extended attributes on sockets to give us back the observability we&apos;re used to with D-Bus.</abstract>
                <slug>all-systems-go-2026-437-varlink-observability</slug>
                <track></track>
                
                <persons>
                    <person id='344'>Sebastian Wick</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/FKWEC8/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/FKWEC8/feedback/</feedback_url>
            </event>
            <event guid='d20f427d-86c5-55cf-8c4b-31e1db728976' id='387'>
                <room>Loft</room>
                <title>Making NoNewPrivs the default</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-10-01T16:00:00+02:00</date>
                <start>16:00</start>
                <duration>00:25</duration>
                <abstract>This talk will give an update on make NoNewPrivs the default on a Linux distribution.</abstract>
                <slug>all-systems-go-2026-387-making-nonewprivs-the-default</slug>
                <track></track>
                
                <persons>
                    <person id='82'>Thorsten Kukuk</person>
                </persons>
                <language>en</language>
                <description>Running systems with &#8220;NoNewPrivs&#8221; by default is already possible  without issues for many use cases, but there are still some cases where it doesn&apos;t work. As followup to last year&apos;s presentation &#8220;Accessing shadow records via varlink&#8221; this session provides an up-to-date status report on the progress made and the issues that remain.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/CG9K7H/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/CG9K7H/feedback/</feedback_url>
            </event>
            <event guid='bc672c96-6fac-5fcd-9897-8e1f44344ee9' id='441'>
                <room>Loft</room>
                <title>Managing the new mount api</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-10-01T16:30:00+02:00</date>
                <start>16:30</start>
                <duration>00:25</duration>
                <abstract>A fundamental aspect of an OS security policy is the ability to manage mounting. That includes filesystem mounts, remounts, bind-mounts, and property changes. Contrary to popular believe Linux exposes only barebones policy hooks. This is about to change.</abstract>
                <slug>all-systems-go-2026-441-managing-the-new-mount-api</slug>
                <track></track>
                
                <persons>
                    <person id='125'>Christian Brauner</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/J9TM7X/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/J9TM7X/feedback/</feedback_url>
            </event>
            <event guid='485cf1f0-2be1-5d8a-ae8d-5c409337b8b4' id='440'>
                <room>Loft</room>
                <title>Don&apos;t mount this!</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-10-01T17:00:00+02:00</date>
                <start>17:00</start>
                <duration>00:25</duration>
                <abstract>On a standard Linux OS it is not possible to implement a policy for onlining block devices. Newer kernels will rectify this. Let&apos;s figure out how this works.</abstract>
                <slug>all-systems-go-2026-440-don-t-mount-this-</slug>
                <track></track>
                
                <persons>
                    <person id='125'>Christian Brauner</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/8SCGQC/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/8SCGQC/feedback/</feedback_url>
            </event>
            <event guid='7ed9bb17-79ef-5e9e-a543-729163fb0325' id='443'>
                <room>Loft</room>
                <title>Closing session of All Systems Go! 2026</title>
                <subtitle></subtitle>
                <type>Lightning talk</type>
                <date>2026-10-01T17:25:00+02:00</date>
                <start>17:25</start>
                <duration>00:05</duration>
                <abstract>Closing session of All Systems Go! 2026</abstract>
                <slug>all-systems-go-2026-443-closing-session-of-all-systems-go-2026</slug>
                <track></track>
                
                <persons>
                    
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>true</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/G8MFDJ/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/G8MFDJ/feedback/</feedback_url>
            </event>
            
        </room>
        <room name='Galerie' guid='f73717af-dcf4-523c-968d-885a98f92c1d'>
            <event guid='52ca4659-77eb-5657-8401-71035bd4dd5e' id='416'>
                <room>Galerie</room>
                <title>KDE Linux Under the Hood</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-10-01T10:45:00+02:00</date>
                <start>10:45</start>
                <duration>00:25</duration>
                <abstract>KDE&apos;s new image-based Linux distribution embraces modern technologies whenever possible. We&apos;ll explore all the tools that contribute, and how they are being utilized to form the final product. From building the disk image to eventually updating it on the user&apos;s system.</abstract>
                <slug>all-systems-go-2026-416-kde-linux-under-the-hood</slug>
                <track></track>
                
                <persons>
                    <person id='335'>Harald Sitter</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/VXGVJF/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/VXGVJF/feedback/</feedback_url>
            </event>
            <event guid='454959b1-8c6b-53d8-8388-a9069e9d6901' id='399'>
                <room>Galerie</room>
                <title>Running mutable OS images on Confidential VMs: is there any hope?</title>
                <subtitle></subtitle>
                <type>35 min talk + 5 min Q&amp;A</type>
                <date>2026-10-01T11:25:00+02:00</date>
                <start>11:25</start>
                <duration>00:40</duration>
                <abstract>Confidential VM (CVM) instance types are becoming ubiquitous, with all major cloud providers offering them as a key component for achieving &#8220;zero trust.&#8221; While complete zero trust is currently more of a marketing term than a technical reality, we can acknowledge that CVM technologies help reduce the Trusted Computing Base (TCB) when utilized properly. But do we actually know how to use them effectively?
When transitioning from a world of traditional, mutable operating systems, users often expect to gain security benefits simply by moving their existing workloads to new CVM instance types, perhaps with some level of attestation. Unfortunately, in many cases, this looks more like a role play in a &#8220;security theater&#8221;.
Over the past few years, we have investigated what security benefits can truly be unlocked when mutable RHEL or Fedora workloads are deployed on confidential VMs, whether in the public cloud or on-premises. While immutable OSes offer distinct advantages in such scenarios, we pose the question: can traditional (mutable) OSes also benefit? Over the last year, we have contributed several features to systemd (and other components) that we believe can improve the situation. In particular, we are focused on preventing certain attack scenarios against a VM which is normally deployed from a publicly available cloud (marketplace) image. We have further ideas, and in this talk, we will share our vision for how these pieces can fit together.</abstract>
                <slug>all-systems-go-2026-399-running-mutable-os-images-on-confidential-vms-is-there-any-hope-</slug>
                <track></track>
                
                <persons>
                    <person id='294'>Vitaly Kuznetsov</person><person id='325'>Simran Paul Singh</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/VNXPQS/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/VNXPQS/feedback/</feedback_url>
            </event>
            <event guid='6c328e0c-1963-5f7a-9cec-6736acad9cf7' id='405'>
                <room>Galerie</room>
                <title>Disk encryption using attestation for Confidential VMs</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-10-01T12:10:00+02:00</date>
                <start>12:10</start>
                <duration>00:25</duration>
                <abstract>When a VM is confidential (CVM), the host cannot access its memory, enabling data-in-use protection. Hardware vendors like Intel (TDX) and AMD (SEV-SNP) provide the underlying technology to achieve this. The use case becomes more complex when a persistent disk is added to a CVM: the disk must also be encrypted, but how can we safely manage its encryption keys without trusting the host? We propose a mechanism to encrypt and decrypt a disk using remote attestation: the passphrase is stored in a Key Broker Service (KBS) that only releases it when the identity of the VM is verified. During the first boot, systemd-repart encrypts the root disk using a random key that is generated and stored in KBS. On subsequent boots, systemd-cryptsetup requests the same key to decrypt the disk. We present the changes we are working on to support this use case in components like KubeVirt, Trustee, and systemd-repart. We present PRs for Trustee, systemd-repart, and KubeVirt, along with a new LUKS token plugin that integrates systemd-repart and systemd-cryptsetup with KBS for key retrieval. This use case extends beyond KubeVirt and applies to any environment where confidential workloads require encrypted persistent storage, including bare metal deployments.</abstract>
                <slug>all-systems-go-2026-405-disk-encryption-using-attestation-for-confidential-vms</slug>
                <track></track>
                
                <persons>
                    <person id='329'>Matias Vara Larsen</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/TKKLMZ/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/TKKLMZ/feedback/</feedback_url>
            </event>
            <event guid='74362ca8-ad35-5eb5-a96e-8d3720a47c22' id='423'>
                <room>Galerie</room>
                <title>Building image-based operating system images with BuildStream and mkosi</title>
                <subtitle></subtitle>
                <type>35 min talk + 5 min Q&amp;A</type>
                <date>2026-10-01T14:05:00+02:00</date>
                <start>14:05</start>
                <duration>00:40</duration>
                <abstract>BuildStream is a tool for building / integrating software stacks. In a way, it has a similar goal to bitbake / yocto and Android&apos;s repo, but takes a completely different approach. It can be used to take software from various sources, build it with various buildsystems in a reproducible sandbox, and cache results for speedy rebuilds.

mkosi is a tool for easily building customized OS images. It is generally used with distros that have a package manager such as dnf or apt. There is however recent development to add support for using it with BuildStream.

In this talk I give a brief overview of Buildstream, and freedesktop-sdk which is a BuildStream project that can be used as a base to build your own operating system. While BuildStream on its own can build the whole thing, there are some advantages to using mkosi which I&apos;ll go over in this talk.

I&apos;ll also go over the challenges faced moving GNOME OS to use mkosi for generating the image.</abstract>
                <slug>all-systems-go-2026-423-building-image-based-operating-system-images-with-buildstream-and-mkosi</slug>
                <track></track>
                
                <persons>
                    <person id='225'>Abderrahim Kitouni</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/DUNFF9/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/DUNFF9/feedback/</feedback_url>
            </event>
            <event guid='7c1d8289-f0dc-5fb6-be8e-534ec1ba9c32' id='417'>
                <room>Galerie</room>
                <title>Delivering the OS via OCI images: Btrfs snapshots, delta updates and 3-way merges</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-10-01T14:50:00+02:00</date>
                <start>14:50</start>
                <duration>00:25</duration>
                <abstract>Delivering a Linux OS via OCI images unifies infrastructure management but often introduces severe network and state-reconciliation bottlenecks. This talk dives into the mechanics of solving these challenges by applying OS updates directly from OCI images to btrfs snapshots. We will explore how to drastically optimize these atomic upgrades using zstd-chunked compression, enabling systems to execute file-level delta updates via HTTP range requests instead of pulling full layers. Finally, we will demonstrate how to leverage snapper for seamless 3-way merges, safely reconciling upstream OS changes with local user configurations.</abstract>
                <slug>all-systems-go-2026-417-delivering-the-os-via-oci-images-btrfs-snapshots-delta-updates-and-3-way-merges</slug>
                <track></track>
                
                <persons>
                    <person id='318'>David Cassany</person><person id='343'>Dirk M&#252;ller</person>
                </persons>
                <language>en</language>
                <description>The transition to image-based, immutable Linux systems fundamentally changes OS management, but it also introduces complex network and storage challenges that are often abstracted away. This session explores the architecture and technical workflows required to provision and upgrade an OS using OCI images, advanced compression, and copy-on-write filesystems.
The foundation of this approach relies on mapping OCI images directly to btrfs snapshots. OCI image layers are pulled, unpacked, and directly applied as immutable btrfs snapshots, forming the read-only root volume of the system while maintaining distinct writable areas for persistent state.
To eliminate the network bottleneck of pulling full OCI layers for minor patches, we will detail efficient delta updates with zstd-chunked OCI images. The OS agent identifies and downloads only the specific files that have changed between the current running image and the target image. We will explain the mechanics of using HTTP range requests to extract these payloads and write them directly into the target btrfs snapshot on the fly, drastically reducing update times and bandwidth consumption without requiring full local extraction.
Finally, an immutable OS still requires localized configuration (e.g., in /etc), creating a challenge when the base OS image is updated. We will explore how to solve this using a 3-way merge strategy. In particular we will see how snapper is utilized to navigate btrfs snapshot trees and isolate the precise differences between the original base image, the user&apos;s localized state, and the incoming update. Having a clear picture of the differences in multiple directions allows us to define an algorithmic approach to safely merging these three states.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/E7L8GD/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/E7L8GD/feedback/</feedback_url>
            </event>
            <event guid='454fd98a-35e5-5b72-8887-5750a414cda7' id='401'>
                <room>Galerie</room>
                <title>OSPool and thin volumes: Storage for Image-based systems</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-10-01T15:20:00+02:00</date>
                <start>15:20</start>
                <duration>00:25</duration>
                <abstract>Image-based Linux systems have different storage requirements from traditional mutable systems as they rely on signed, immutable disk images for software delivery and separate writable filesystems for data.

Technologies like systemd-homed require that multiple writable filesystems share the same backing storage. This thin provisioning is not something that is well supported by Linux today as filesystems are not aware of it. Another area for improvement is that many disk images often contain similar data that could be deduplicated.

We will present a storage system prototype designed for the usecases of image based systems and our plans for improving thin provisioning on Linux.</abstract>
                <slug>all-systems-go-2026-401-ospool-and-thin-volumes-storage-for-image-based-systems</slug>
                <track></track>
                
                <persons>
                    <person id='323'>Ada Magicat</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/WSNAQL/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/WSNAQL/feedback/</feedback_url>
            </event>
            <event guid='37703396-54c9-5dcd-978c-ac48c8ffb14b' id='392'>
                <room>Galerie</room>
                <title>Hold My Beer, I&apos;m Building 100 Images at Once</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-10-01T16:00:00+02:00</date>
                <start>16:00</start>
                <duration>00:25</duration>
                <abstract>In this talk, we&apos;ll walk through the architecture of Amutable&apos;s OS image build system. We&apos;ll dive into how we mirror rpms from Fedora and orchestrate building those rpms from source, as well as building OS images with buck2, an open source monorepo build system.</abstract>
                <slug>all-systems-go-2026-392-hold-my-beer-i-m-building-100-images-at-once</slug>
                <track></track>
                
                <persons>
                    <person id='139'>Daan De Meyer</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/YSR3PP/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/YSR3PP/feedback/</feedback_url>
            </event>
            <event guid='9f1ef3fb-d209-550c-afe1-1a7c468b85de' id='408'>
                <room>Galerie</room>
                <title>Ten Years Building Container Networking: Lessons Learned and What the Future Might Look Like</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-10-01T16:30:00+02:00</date>
                <start>16:30</start>
                <duration>00:25</duration>
                <abstract>A decade ago, container networking was in its infancy, relying heavily on complex bridges and iptables rules. Today, the landscape has fundamentally shifted towards highly performant, secure, and observable dataplanes powered by eBPF.  
  
In this talk, a core contributor to Cilium reflects on a decade of building container networking solutions - from the early days of Weave Net to modern eBPF-based architectures. We will explore the hard-fought engineering lessons from migrating away from traditional kernel bottlenecks and discuss how Cilium evolved into the most widely used container networking plugin (CNI) and a foundational platform for advanced networking research. Finally, we will look to the horizon to discuss what the next decade of Linux system networking holds.</abstract>
                <slug>all-systems-go-2026-408-ten-years-building-container-networking-lessons-learned-and-what-the-future-might-look-like</slug>
                <track></track>
                
                <persons>
                    <person id='330'>Martynas Pumputis</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/R7BEEK/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/R7BEEK/feedback/</feedback_url>
            </event>
            <event guid='f46235f5-6342-5549-8eda-019adbbb43b7' id='425'>
                <room>Galerie</room>
                <title>Kmod &#8212; teaching old dog new tricks</title>
                <subtitle></subtitle>
                <type>20 min talk + 5 min Q&amp;A</type>
                <date>2026-10-01T17:00:00+02:00</date>
                <start>17:00</start>
                <duration>00:25</duration>
                <abstract>In this talk we&apos;ll cover the developments in kmod over the past few years. We&apos;ll wiz past the documentation and contribution updates, outline some of the performance improvements and discuss  the latest APIs introduced.</abstract>
                <slug>all-systems-go-2026-425-kmod-teaching-old-dog-new-tricks</slug>
                <track></track>
                
                <persons>
                    <person id='154'>Emil Velikov</person>
                </persons>
                <language>en</language>
                
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/TTFUPB/</url>
                <feedback_url>https://cfp.all-systems-go.io/all-systems-go-2026/talk/TTFUPB/feedback/</feedback_url>
            </event>
            
        </room>
        
    </day>
    
</schedule>
