"Welcome to FOSDEM 2024" ( 2024 )

Saturday at 09:30, 25 minutes, Janson, Janson, Keynotes FOSDEM Staff Richard "RichiH" Hartmann , slides , video

FOSDEM welcome and opening talk.

 "Take Your FOSS Project From Surviving To Thriving" ( 2024 )

Saturday at 10:00, 50 minutes, K.1.105 (La Fontaine), K.1.105 (La Fontaine), Main Track - K Building Jason Evangelho Ryan Sipes , video

In 2012, Thunderbird was pronounced dead. What happened next unfolded like a fairytale, as the Thunderbird project roared back to life on the shoulders of an incredibly generous community. Fast-forward to the end of 2022, and Thunderbird raised an astounding $6.4 million in donations. Within the last 3 years, it experienced a 326% revenue increase, quadrupled its core team, visually overhauled the desktop application, and announced plans to expand to Android and iOS. But how did this happen? More importantly, can your open source project use Thunderbird's experience as a template for success and sustainability? You absolutely can. Join us to find out how!

 "Where have the women of tech history gone?" ( 2024 )

Saturday at 10:00, 50 minutes, Janson, Janson, Keynotes Laura Durieux , slides , video

Ada Lovelace, Hedy Lamarr, the 'ENIAC Girls,' Grace Hopper, Joan Clarke... Stemming from the role of a calculator, the profession of a developer was initially considered a women's job, while hardware design was seen as a man's job. However, who are these women who have shaped the world of tech? Why don't we hear more about them? With Laura Durieux, you'll attempt to set the record straight bit by bit and provide role models in tech that you've always needed.

 "The state of Go" ( 2024 )

Saturday at 10:30, 30 minutes, UD2.218A, UD2.218A, Go devroom Maartje Eyskens , slides , video

What is new since Go 1.20. In this talk we'll bring you up to date with all upcoming changes to the Go language and the community! What is new since Go 1.20. In this talk we'll bring you up to date with all upcoming changes to the Go language and the community! Go 1.22 will be released in February 2024, we will be taking a look to all upcoming features as well as give an update on important changes in Go 1.21. This includes traditionally updates about the language, tooling, libraries, ports and most importantly the Go Community.

 "Perl at PayProp" ( 2024 )

Saturday at 10:30, 20 minutes, K.3.401, K.3.401, Perl and Raku devroom Lee J , video

PayProp chose Perl over twenty years ago when they bootstrapped their business. Today the backend is still Perl, but has changed. This is a short talk about how we are modernising the stack and contributing back to open source software.

A short talk about some of the tools and techniques PayProp are using to modernise their Perl stack, including some of the issues and challenges. The areas covered will include:

  • Moving from a CGI.pm based framework to Mojolicious
  • Adding an ORM and business objects, via DBIx::Class and Moose
  • Refactoring existing functionality with help from regression tests
  • Contributing and maintaining distributions on CPAN
  • Hiring developers and introducing them to Perl

Link to my github profile: https://github.com/leejo Link to my CPAN profile: https://metacpan.org/author/LEEJO

 "Creative Coding with TurtleStitch" ( 2024 )

Saturday at 10:30, 60 minutes, J.1.106, J.1.106, FOSS Educational Programming Languages devroom Pauline Maas

Turtlestitch is based on a browser-based educational programming language (Snap!) to generate patterns for embroidery machines. It is easy to use, requiring no prior knowledge in programming, yet powerful in creating nowels patterns for embroidery. It is useful for designers to experiment with generative aesthetics and precision embroidery as well as a tool for innovative workshops combining an introduction to programming with a haptic output.

 "HopsFS FUSE Mount" ( 2024 )

Saturday at 10:30, 30 minutes, K.3.201, K.3.201, Software Defined Storage devroom Salman Niazi Fabio Buso , video

Introducing HopFS Mount, a FUSE file system designed to enhance user experience and simplify interactions with distributed file systems, specifically tailored for HopsFS. Leveraging the Filesystem in Userspace (FUSE) framework, our solution establishes a seamless interface, shielding users from the inherent complexities associated with distributed file operations.

HopsFS, a derivative of HDFS, renowned for its scalability and performance, is now easily accessible with the familiarity of a local file system through our FUSE-based innovation. By abstracting the intricacies of distributed file systems, our implementation ensures that users engage with HopsFS in a manner similar to traditional file systems. This abstraction not only reduces the entry barriers for users unfamiliar with distributed systems but also enhances the overall usability and accessibility of HopsFS.

 "How Tansu, a Reactive Agnostic Library, Simplifies Widget Creation for AgnosUI" ( 2024 )

Saturday at 10:30, 30 minutes, H.1301 (Cornil), H.1301 (Cornil), JavaScript devroom Florent Exbrayat , slides , video

This presentation explores Tansu, an open-source library that revolutionizes widget state management through signal implementation. We also introduce AgnosUI, our open-source, framework-agnostic, headless, and Bootstrap libraries created using Tansu. We will delve into the specifics of how Tansu facilitates widget creation and the unique features of AgnosUI.

 "Cologne Chip GateMate FPGA -- filling a gap between hardware and software (with a presentation of the GMM-7550 module)" ( 2024 )

Saturday at 10:30, 50 minutes, K.4.201, K.4.201, Libre-SOC, FPGA and VLSI devroom Anton Kuzmin , slides , video

A unique feature of the GateMate FPGA architecture is its provision for [partial] self-reconfiguration, i.e. the possibility to change the running configuration of the chip from inside, without affecting the operation of the other parts of the chip.

Presentation of GMM-7550 -- the open hardware module, based on the CologneChip GateMate FPGA.

The hardware part of the project consists of: * the FPGA module * a small adapter board to host the module on Raspberry-Pi 40-pin GPIO header * an RP2040 USB adapter board * a memory extension module (SRAM and SPI)

All the hardware was designed with KiCAD and released under CERN-OHL-P license.

The project also provides control software and design examples. GateMate FPGA designs are synthesized using the Yosys framework, optionally with the GHDL plugin. Control software and design examples are released under MIT license.

 "DIY Private Container Registry" ( 2024 )

Saturday at 10:30, 30 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Containers devroom Márk Sági-Kazár , video

The increasing adoption of containerization and container orchestration has highlighted the need for secure and controlled distribution of container images. This talk will delve into the methods of distributing private container images and OCI artifacts, analyzing the strengths and weaknesses of various solutions, especially in contexts like software sales and custom builds for clients.

We will begin our discussion with hosted registries, highlighting their cost-effectiveness, ease of implementation, and low maintenance needs. Next, we will explore self-hosted solutions, which offer greater flexibility. Finally, we will examine the integration of an OCI-compatible registry with a custom authorization server. This setup allows the incorporation of complex business logic into authorization decisions, such as custom IAM and product subscriptions. While this adaptable and cost-efficient approach may involve custom development, we will provide a thorough analysis of its implications.

 "From phone hardware to mobile Linux" ( 2024 )

Saturday at 10:30, 25 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), FOSS on Mobile Devices devroom Luca Weiss , slides , video

An exploration from the chips on the PCB to how Linux makes the phone work. We'll go into how the hardware and the Linux device tree files are connected, how the different chips communicate, etc. Things I wish I had learned years ago!

 "Linux on a Confidential VM in a cloud: where's the challenge?" ( 2024 )

Saturday at 10:30, 30 minutes, UB2.147, UB2.147, Virtualization and Cloud Infrastructure devroom Vitaly Kuznetsov , slides , video

Confidential instance types (or CVMs) are the newest addition to public clouds like Microsoft Azure, Google Cloud Platform (GCP) and Amazon Web Services (AWS), some are already generally available and some are still in development/preview. Can we just bring existing general purpose Linux distributions to these environments and get the advertised confidentiality guarantees? Do we need to develop something or maybe we just need to have a specific OS image configuration to enjoy the benefits? The talk will try to answer these questions and explain the differences in the design of the various CVM instance types and discuss the current state of development of various important component upstream as well as their integration in general purpose Linux distributions (Fedora, CentOS Stream, RHEL). Focusing on providing confidentiality of the data at rest, existing technologies providing boot time integrity (SecureBoot, Measured boot, vTPMs,...) will be discussed. Finally, some of the remaining gaps in various components (Linux kernel, systemd, cloud-init,...) will be highlighted.

 "Introduction to OpenAPI" ( 2024 )

Saturday at 10:30, 30 minutes, AW1.126, AW1.126, APIs & friends devroom Lorna Mitchell , video

OpenAPI Specification is a machine and human readable way to describe APIs, from endpoints to examples. From these descriptions we can generate documentation, create libraries, and ensure that our users know exactly what to expect from our APIs. This talk introduces you to the OpenAPI standard, showing how to describe APIs and looking at some popular API examples. Good tools are essential so we'll look at some of the open source tools available to working with OpenAPI easier. We'll cover the benefits of using an open standard to describe your APIs and discuss what you can do next, like publishing documentation, generating code, and teaching LLMs new tricks. Learn about what's coming up in the world of OpenAPI, and how to get involved with this open standard and its community.

 "Opening Railways and Open Transport devroom" ( 2024 )

Saturday at 10:30, 5 minutes, K.4.401, K.4.401, Railways and Open Transport devroom Max Mehl Cornelius Schumacher Simon Clavier Loic HAMELIN Peter Keller , video

Setting the stage for the Railways and Open Transport developer room and guiding through the programme.

 "Making reproducible and publishable large-scale HPC experiments" ( 2024 )

Saturday at 10:30, 30 minutes, UA2.118 (Henriot), UA2.118 (Henriot), HPC, Big Data & Data Science devroom Philippe SWARTVAGHER , slides

For a long time, scientific publications focused only on experimental results, ignoring how, concretely, the results were obtained, making difficult for readers, but also for the author, to reproduce the experiments. Things are slowly changing: publication of so-called "artifacts" are encouraged by journals and conferences. However, releasing scripts and programs used for experiments can be challenging: how to organize the material? how to clearly document the instructions? how to ensure reproducibility of the experiments? how to ensure long-term availability? Several answers are possible to all these questions. In this talk, I will try to summarize how and why my methodology to build reproducible artifacts evolved over several years in the research area.

 "SemVer in the Rust ecosystem: breakage, tooling, and edge cases" ( 2024 )

Saturday at 10:30, 40 minutes, H.1308 (Rolin), H.1308 (Rolin), Rust devroom Predrag Gruevski , slides , video

In theory, semantic versioning (SemVer) is simple: breaking changes require major versions. SemVer rules do not change over time. Crates always adhere to SemVer. Careful coding is enough to avoid accidental breaking changes.

None of those statements are true!

In practice, SemVer is complex and accidental breakage is common: 1 in 6 of the top 1000 Rust crates has violated semantic versioning at least once, frustrating both users and maintainers alike.

If you write Rust but don't have the time for a PhD in SemVer, this talk is for you. We'll take a practical look at SemVer in Rust: what it buys us, how Rust's features lead to strange SemVer edge cases, and how we can prevent accidental breakage using a SemVer linter called cargo-semver-checks.

 ""Where the !?*! are the packets going?”" ( 2024 )

Saturday at 10:30, 20 minutes, UB5.230, UB5.230, Network devroom Luca Sani , slides , video

Traceroute has been helping troubleshoot network issues since the late 80s. In that time, it has become one of the most used tools in Internet measurement and topology discovery. Here at Catchpoint we leverage Linux traceroute to perform measurements from nodes distributed all over the world. In order to do what we do, we've enhanced the Linux traceroute to add some useful and interesting capabilities, and made those changes publicly available. In this presentation we are going to have an overview of the enhancements we made to traceroute. These Improvements include support for QUIC, a new style of TCP traceroute called "InSession" aimed at bypassing firewalls, ECN bleaching detection, path MTU discovery speedup and many more. The presented enhancements are made open source with the hope that they can be helpful to the networking community.

 "Enhancing the video call experience with Forward Error Correction" ( 2024 )

Saturday at 10:30, 35 minutes, H.1302 (Depage), H.1302 (Depage), Real Time Communications (RTC) devroom Jehan Monnier Flore Harlé , slides , video

Packet losses are common in real-time communications, due to the nature of transmissions. Forward Error Correction (FEC) is a well-known technique for controlling errors in data transmission. The goal is to recreate a lost packet, based on other transmitted packets and redundant information included in specific FEC packets.

Packet losses are well handled for audio streams thanks to Packet Loss Concealment (PLC), which makes them almost un-noticeable to the end users. However, they are far more complicated to handle for video data. FEC offers a solution to compensate the loss rates typically observed over the Internet. At the expense of a relatively low overhead and small latency, the redundancy information transmitted by the sender lets the receiver re-create the missing packets.

There are currently various FEC standard techniques and approaches documented at IETF. The Linphone project has selected the Flexible Forward Error Correction scheme (flexfec) documented in RFC8627.

This talk will talk about: - the principles of Forward Error Correction - why the Linphone team chose the Flexible Forward Error Correction scheme - what were the implementation challenges - what are the observable results at the Linphone app level

 "Screen Sharing on Raspberry Pi 5 Using VNC in Weston and Wayland with the Yocto Project and OpenEmbedded" ( 2024 )

Saturday at 10:30, 25 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Embedded, Mobile and Automotive devroom Leon Anavi , slides , video

In 2023, embedded Linux developers received eagerly awaited news: the release of Raspberry Pi 5 and the integration of VNC backend into Weston, the reference compositor for the Wayland display server protocol.

During this talk we will explore VNC backend integration in Weston 12 and newer versions as well as its build and runtime dependencies such as NeatVNC and AML. We will compare VNC (Virtual Network Computing) to RDP (Remote Desktop Protocol). Using the Yocto Project and OpenEmbedded, we are going to build core-image-weston for Raspberry Pi 5 and configure VNC with TLS security and user authentication. Step-by-step tutorial will be provided to demonstrate the configuration of a remote connection to Raspberry Pi 5 from another computer through Vinagre, an open-source VNC client designed for the GNOME Desktop.

The presentation is appropriate for anyone interested in remote access to embedded Linux devices. It will expand upon Leon’s lightning talk about RDP from FOSDEM 2023 and address frequently asked questions about remote screen sharing on embedded Linux devices. Previous experience is not required.

 "Bridging Research and Open Source: the genesis of Gephi Lite" ( 2024 )

Saturday at 10:30, 30 minutes, UB4.132, UB4.132, Open Research devroom Paul Girard Alexis Jacomy Benoit Simard , slides , video

Gephi Lite, developed by OuestWare, is a web-based, streamlined version of the renowned graph visualization tool, Gephi. Aimed at porting its features into a web application while simplifying common use cases, this project was published in 2022 (github.com/gephi/gephi-lite).

The genesis of Gephi Lite is routed into academia. Over the last decade, a succession of graph visualisation and manipulation prototypes emerged, each addressing specific research requirements. These academic prototypes, funded by various research projects, paved the way for the development of increasingly powerful low-level tools (sigma.js, graphology).

Gephi Lite emerges as the culmination of these efforts. This presentation explores the concise journey of how diverse research needs over the past 10 years converged into the development of Gephi Lite.

 "The State of OpenJDK" ( 2024 )

Saturday at 10:30, 30 minutes, UB5.132, UB5.132, Free Java devroom Dalibor Topic , video

A review of the past four years in the life of the OpenJDK Community, and a look at what’s ahead.

 "Public calendars aggregation using Linkal" ( 2024 )

Saturday at 10:30, 25 minutes, H.2213, H.2213, Collaboration and Content Management devroom Julien Malka , video

Calendars are a building block of our work tools. Unfortunately, managing calendars is often a nightmare. The reason for this is simple: the big companies hosting most of the calendar services are not trying very hard to provide interroperability between their services, or facilitate the use of calendars not hosted by themselves. One particular setting that is very painful when using calendars is the case of public-calendars. While a lot of organizations have a public-calendar available to stay informed about the events they organize, it is actually very complicated to leverage these calendars in a natural way: First of all, not all caldav clients support public-calendars, or at least not as well as “account” calendars. Often, they allow to “bulk import” multiples ical events inside your calendar client but not suscribe to the underlying calendar. This means that new events will not be added to your calendar automatically; Public-calendars are not easily composable: it is not possible to merge multiple public-calendars together in order for example to share a collection of calendars; It is not possible to filter events in public-calendars. We may be interested only in a subset of events in a calendar (events occuring on mondays for example, or taking place in Paris, or any other criterion).

Linkal is a software developped to solve the above problems. It is a public-calendar aggregator server. It acts as a man-in-the-middle between a caldav client and some public-calendars. Given a list of public-calendar, it emulates a calendar collection containing all these calendars. The user can then use its usual caldav client and add the collection as an “account” calendar (specifying the url of the Linkal instance instead of the caldav server). This allows the collection to be shared easily to multiple users and seamlessly updated.

The talk will present the challenges to collaborations using calendars and the solutions that Linkal provides.

 "BEAM me up, Scotty" ( 2024 )

Saturday at 10:30, 20 minutes, K.4.601, K.4.601, Erlang, Elixir, Gleam and Friends devroom Riccardo Binetti Arnaldo Cesco Davide Bettio , video

An introduction to the BEAM virtual machine and its languages.

 "NGI Zero network meetup" ( 2024 )

Saturday at 10:30, 90 minutes, AW1.121, AW1.121, BOF - Track C Ronny Lam

NLnet is inviting (prospect) NGI Zero projects to meet & greet, and have a discussion about the Next Generation Internet.

 "Opening Energy: Reimagining this Ecosystem through Open Source devroom" ( 2024 )

Saturday at 10:30, 5 minutes, H.2214, H.2214, Energy: Reimagining this Ecosystem through Open Source devroom , video

Opening a day of great talks.

 "Open standards, open data, open-source tools: their governance and future" ( 2024 )

Saturday at 10:35, 30 minutes, K.4.401, K.4.401, Railways and Open Transport devroom Tu-Tho Thai Brede Dammen , slides , video

For the past years, everyone has been talking about standards but how many of us can define what are standards, how they are governed and why they chose their own approach?

A lot of us work with some standards or specifications but can lack of a global perspective. Taking advantage of a conference time, let’s explore how different standards and open specifications can work together to support Public Transport Authorities, Public Transport Operators, and their third parties’ daily workload.

In this session, experts working on MMTIS EU-standards (e.g., NeTEx, SIRI) and other open specifications (e.g., ITxPT) will reflect on:

  • How open standards and specifications are defined in each case
  • Their governance and its impact
  • How open-source tools accelerate their uptake

They will also discuss the state of their current work and share some crucial lessons learnt on:

  • Communication and dissemination about standards
  • Promoting open data for National Access Points or other international repositories
  • Engaging an open-source community
  • Funding the common goods that are standards / open specifications
  • How to make sure different standardisation approaches benefit to the end-users and the multimodal mobility ecosystem

With the format of an interactive session and open discussion, this session will feature:

  • The Transmodel family (NeTEx, SIRI, OJP, OpRa, etc.), led by the CEN standardisation body
  • ITxPT Specifications, led by the non-profit organisation ITxPT
  • Open Trip Planner by Entur, the one open-source tool that combines different standards and specifications, led by a National Body (Norway)

 "EVerest: One stack to charge them all?" ( 2024 )

Saturday at 10:35, 15 minutes, H.2214, H.2214, Energy: Reimagining this Ecosystem through Open Source devroom Kai-Uwe Hermann , slides , video

The main goal of EVerest is to develop and maintain an open source software stack for EV chargers with implementations of various communication protocols, robust hardware support and the ability to simulate the complete charging process.

In this talk we will give a short update on the exciting progress EVerest has seen over the last year.

We will also show you a selection of the different kinds of hardware EVerest is already capable of running on, like AC and DC chargers (for which open hardware designs are available). Additionally we will present how EVerest can be used to implement different kinds of devices like a portable, handheld DC "charger" that can be used for protocol testing various EVs.

We will also briefly discuss our plans for EV-side simulation and some of the exciting things we're working on to make our dream of providing a fully open source EV charging solution with extensive protocol support a reality!

https://github.com/EVerest/ https://lfenergy.org/projects/everest/

 "Broom not included: curling the modern way" ( 2024 )

Saturday at 10:50, 20 minutes, UB5.230, UB5.230, Network devroom Daniel Stenberg , slides , video

Everyone uses curl, the swiss army knife of Internet transfers. Earlier this year we celebrated curl's 25th birthday, and while this tool has provided a solid set of command line options for decades, new ones are added over time This talk is a look at some of the most powerful and interesting additions to curl done in recent years. The perhaps lesser known curl tricks that might enrich your command lines, extend your "tool belt" and make you more productive. Also trurl, the recently created companion tool for URL manipulations you maybe did not realize you want.

 "Gleam: Past, present, future!" ( 2024 )

Saturday at 10:55, 40 minutes, K.4.601, K.4.601, Erlang, Elixir, Gleam and Friends devroom Louis Pilfold , slides , video

Gleam has come a long way over the last few years! Let's take a look at what's happened, where we are, and what's next for the language and the community. 💫

 "Using FlexMeasures to build a climate tech startup, in 15 minutes" ( 2024 )

Saturday at 10:55, 15 minutes, H.2214, H.2214, Energy: Reimagining this Ecosystem through Open Source devroom Nicolas Höning , slides , video

FlexMeasures is the intelligent & developer-friendly EMS to support real-time energy flexibility apps, rapidly and scalable.

In this talk, we want to focus on the "developer-friendly" part, and demonstrate the steps it takes to turn FlexMeasures into a smart backend, for instance to power the intelligent scheduling in your new climate tech startup! (you can also tinker with this at home, of course)

In this highly relevant example, we assume you control the heating for your customers' buildings. There is a heat pump and solar panels. You promise your customers to heat their home with their own solar power if possible. You even promise to use the cheapest grid power when the sun isn't shining. Green building, low energy bill!

Our tutorial will turn this promise into reality ― in any case, the data-driven optimal computations you'd need (measuring and on/off control of hardware not included).

FlexMeasures is a Flask web server, so this tutorial will use Python. We will use the FlexMeasures API, but also its CLI and the Python client ― the possibilities are rich. We also show how to add custom logic in a FlexMeasures plugin.

In short, we will:

  • create a new customer account with the relevant asset models for this use case (via a new API endpoint, e.g. called from your CRM)
  • feed local measurements (e.g. solar, temperature) regularly into your FlexMeasures server, using the FlexMeasures Python client
  • get the latest price and weather forecast data from third-party-APIs (regularly via cron jobs), using existing FlexMeasures plugins
  • create forecasts for solar data and prices (regularly via cron jobs)
  • call the FlexMeasures scheduler to compute when to draw green & cheap electricity for heating (via the FlexMeasures API) which you can out to use in the building
  • define a cost reporter and let it run (regularly via cron jobs)
  • configure a FlexMeasures dashboard to show the relevant data in one place

We hope to see you there, and that some of you get inspired to put some climate tech into the field!

 "Open Food Facts: Learning and using Perl in 2024 to transform the food system !" ( 2024 )

Saturday at 10:55, 20 minutes, K.3.401, K.3.401, Perl and Raku devroom Pierre Slamich , video

Using Perl, and through open source and open data, Open Food Facts is transforming our food system! In this talk, we'll dive into how Open Food Facts is helping reshape the food system to reduce its impacts on health and the environment. We'll go through how Open Food Facts helps create a treasure trove of information, and turn it into actionable data for consumers, researchers and policy makers.

We'll explore how citizens and consumers are using this database to make smarter, healthier food choices, steering the food industry towards a more transparent and sustainable future.

We'll show how we are mobilising technology (mobile crowdsourcing, artificial intelligence and more classic tech) in the pursuit of food enlightenment.

We will tell the story of Nutri-Score, and how the Open Food Facts community helped shape food policy, going from a digital deployment to real-life impact. We will also touch on the on-going projects with Eco-Score and Open Products Facts.

We'll go through the inspiring journeys of people who learned Perl in 2023 to contribute to Open Food Facts, the challenges of expanding and refactoring a Perl stack with very high impact, and what’s ahead

 "How Much Do You Know about Snapshot" ( 2024 )

Saturday at 11:00, 30 minutes, UB2.147, UB2.147, Virtualization and Cloud Infrastructure devroom Tingting Mao , video

Snapshot functionality stands as a cornerstone in virtualization across key platforms such as Openshift Virtualization/CNV, OSP (OpenStack Platform), and RHEL employing KVM virtualization. Its pivotal role in practical customer environments underscores the significance of understanding its nuances in our virtualization production.

So in my presentation, I'll navigate through:

Introduction to Snapshots: Offering a concise overview of this fundamental feature in virtualization. Practical Use Cases and Benefits: Detailing how snapshots are utilized from customers's perspective, showcasing their immense benefits. Create & Restore Architecture in CNV, OSP, and KVM: Delving into the snapshot architecture in CNV, OSP, and KVM (Libvirt & Qemu), exploring how they enable the creation and restoration of snapshots. Snapshot Status in CNV and OSP: Analyzing the current scenario, primarily focusing on disk snapshots, highlighting the limitations and disadvantages perceived from the customers' standpoint. This will set the stage for discussing the need for VM snapshots. The Case for VM Snapshots and the develop status in KVM layer: Emphasizing the necessity for VM snapshots, understanding why they are essential and how they address the limitations of disk snapshots. And the investigating result of the developmental status of VM snapshots within the KVM layer. Conclusion: Reinforcing the critical role snapshots play in customers' environments, summarizing their significance in virtualization production.

 "The secret life of a goroutine" ( 2024 )

Saturday at 11:00, 30 minutes, UD2.218A, UD2.218A, Go devroom Jesús Espino , slides , video

Goroutines are an exciting part of the Go language, but what are they? How are they created? How are they paused? How are they resumed? There are a lot of questions that the regular go programmer doesn't need to know and usually doesn't know, but if you, like me, are a curious person, you probably want to know more about what is going on under the hood.

Come with me on this interesting trip through one of the most outstanding features of the Go language, the goroutines, and discover what makes your Go programs tick! In this talk we are going to explore how is the life of a goroutine.

We are going to start talking about the go runtime scheduler in general, and we are going to talk about the most important structures there, P, M, G and Sched.

Once we have that clear we are going to explore how a goroutine is created and after the creation, how it change states, exploring the different states like Waiting, Runnable or Running, but also others. We are going to talk about the transitions between them to finish talking about the death of a goroutine.

After this talk you should have an intuition about how your goroutines are scheduled and why they transit from one state to another.

 "U-Boot for modern Qualcomm phones" ( 2024 )

Saturday at 11:00, 25 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), FOSS on Mobile Devices devroom Caleb Connolly (they/them) , slides , video

Overview

Bootloaders are one of the biggest pain points when it comes to booting upstream Linux on Qualcomm devices, they require that distros support 5 versions of the Android boot image header, weird non-standard devicetree properties, and are generally a huge headache. As modifying the bootloader is out of the question, we can at least replace the environment it gives us with a more sensible one...

In this talk, I'll give a brief introduction to what an EFI bootloader actually is, how they work, and how U-Boot fits into the picture as a second-stage bootloader. I'll cover the work I've been doing to improve Qualcomm support in upstream U-Boot, and how we can drastically lower the barrier of entry for distro support on Qualcomm phones.

Lastly, I'll go over the new process for porting a Qualcomm SoC to U-Boot, and demo booting Linux with EFI runtime support on a Qualcomm phone.

I'll also give a sneak peak at what would be possible if we had greater ownership of our devices.

Why you should care

This talk is primarily aimed at the upstream community, if you work on upstream support for any Qualcomm devices - be it phone, tablet, Chromebook, or vehicle - then you can likely benefit from running U-Boot.

UEFI is now the lowest common denominator, and supporting it makes Qualcomm devices a viable target for more mainstream distros.

 "Productionizing Jupyter Notebooks" ( 2024 )

Saturday at 11:00, 30 minutes, UA2.118 (Henriot), UA2.118 (Henriot), HPC, Big Data & Data Science devroom Antoni Ivanov Antoni Ivanov , slides , video

Jupyter notebooks play a crucial role in the development stage for data analytics, machine learning, and other data-driven applications. However, moving them into a production environment often leads to a complex set of challenges.  Challenges related to production readiness, version control, testing, reproducibility, and modularity are common.     In this talk, we will delve into the specifics of these challenges and demonstrate how our tool, Versatile Data Kit (VDK), effectively addresses them. From deploying production-relevant code to ensuring linear execution for reproducibility, we will provide insights into practical solutions that could enhance efficiency in your data analytics and machine learning workflows. This session is aimed at those looking to understand the complexities of productionizing notebooks and explore potential methods to overcome these challenges. Benefits to the Ecosystem - solutions to several specific pain points of Productionizing Jupyter notebooks. For this talk, some prior knowledge of Jupyter Notebooks is necessary.

 "Outreachy: 1000 interns" ( 2024 )

Saturday at 11:00, 50 minutes, Janson, Janson, Keynotes Karen Sandler Anna e só Omotola Eunice OMOTAYO Sage Sharp , slides , video

This keynote celebrates an important milestone 13 years in the making: Outreachy surpassed 1000 interns with its current round of internships! For the first time ever, the full organizing team of Outreachy has gathered together in person here at FOSDEM. This celebratory keynote, will talk about the history of Outreachy, our lessons learned and our hopes for the future.

 "calc with calculang, a language for calculations" ( 2024 )

Saturday at 11:00, 25 minutes, H.1301 (Cornil), H.1301 (Cornil), JavaScript devroom Declan Naughton , video

calculang is a language for calculations, pure-functional and compiles to Javascript.

In this talk I present intended separation of concerns, calculang properties, and some interactions and sharing of numbers and their workings that it facilitates.

I'll use some interactions and examples from a new and experimental calculang website. 🤞

calculang is free software and currently available on GitHub. Updates @calculang on Fosstodon. Matrix #calculang.party:matrix.org

For slides see calculang-at-fosdem.dev/slides

VIDEO below contains 2x short but noticeable drops due to technical issues.

 "Introducing Sound Open Firmware project" ( 2024 )

Saturday at 11:00, 25 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Embedded, Mobile and Automotive devroom Daniel Baluta , slides , video

Sound Open Firmware is an open source audio DSP firmware and SDK that provides audio firmware infrastructure and development tools for developers who are interested in audio or signal processing on modern DSPs.

Sound Open Firmware is supported on platforms from Intel, NXP, Mediatek and AMD. It comes with Linux kernel ALSA driver and open source firmware. Past year saw a major effort on integrating Sound Open Firmware with Zephyr RTOS.

The goal of the presentation is to offer a gentle introduction to the project, building blocks, community and tools.

Project page: https://www.sofproject.org/ Project documentation page: https://thesofproject.github.io/latest/index.html

 "Indico: an event management system" ( 2024 )

Saturday at 11:00, 25 minutes, H.2213, H.2213, Collaboration and Content Management devroom Pedro Ferreira Dominic Hollis , video

We will be presenting Indico, an event-management system born out of the collaborative spirit at CERN. Initially developed more than 20 years go, to meet the unique demands of the world's largest physics lab, Indico has since evolved and transcended its origins, becoming a globally adopted solution for the organization events of all scales, used in more than 300 organizations world wide, including the United Nations, and integrated in a lively user community. We will be focusing on the main features of the tool, its role at CERN and elsewhere, the work we have been doing regarding community building, as well as plans and ideas for the future.

 "Synergy in Open Communities" ( 2024 )

Saturday at 11:00, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks William Breathitt Gray , slides , video

As an open community grows the amount of external contributions increases with it. This is one of the primary benefits of open communities: the assimilation of progress from a wide and diverse pool of talent. However, care must be taken to ensure that the process of acceptance is free from social friction, lest arguments bring down and delay development of the project. This lightning talk covers the social issues open community maintainers and external contributors face during the submission of a patch or other change, why conflicts arise between parties, and how to handle difficult public disagreements to bring threads of discussions back on topic to focus on the benefit of the project and community. Synergy is when multiple parties come together to produce something greater than the sum of their parts, and it's what we will strive for in this talk.

 "Cosma, a visualization tool for network synthesis" ( 2024 )

Saturday at 11:00, 15 minutes, UB4.132, UB4.132, Open Research devroom Arthur Perret , slides , video

Cosma is a visualization tool for knowledge workers. It helps create, use and share non-linear scientific documentation. It works by reading plain text files interconnected with [[wiki links]] and rendering them as an interactive network of index cards inside a standalone HTML file.

This talk will present the design choices of Cosma, which uses existing ideas but in a peculiar way:

  • it includes graph visualization but primarily for network synthesis rather than analysis;
  • it creates contextualized backlinks based on wiki links but also based on citations (bibliographic references);
  • it is a command-line program but most of its features are located within the files it exports.

These choices reflect the core idea of the project (which is as much an ambition as it is a set of constraints): leveraging innovation from the “tools for thought” space (easy hypertext authoring, interactive publications) while addressing the needs of creative, investigative knowledge work (owning robust data, backing claims with sources).

Project website, examples, documentation: cosma.arthurperret.fr

Project repository: github.com/graphlab-fr/cosma

Read the blog post for this presentation : www.arthurperret.fr/blog/2024-02-03-cosma-at-fosdem-24.html

 "NetBSD 10: Thirty years, still going strong!" ( 2024 )

Saturday at 11:00, 50 minutes, K.1.105 (La Fontaine), K.1.105 (La Fontaine), Main Track - K Building Benny Siegert , video

In 2023, the NetBSD project celebrated 30 years since its first release, 0.8. Now, four years after NetBSD 9, NetBSD 10 brings a huge number of changes and improvements. This talk will dive into the most important new features of NetBSD 10, such as performance and security improvements, expanded CPU and GPU support, improved virtualization and more!

Another strength of NetBSD is its package system, pkgsrc, which is portable to dozens of other OSes and can even be used like virtualenv for development and deployment environments.

But over all this, the question remains: how relevant is NetBSD these days? There is a small but friendly, and tight-knit community of users and developers. The focus on portability and cleanliness provides a good system for both beginners and tinkerers, but also a rock-solid server or workstation system. We will go over some cool use cases and show ways that you can get involved.

 "Forensic container checkpointing and analysis" ( 2024 )

Saturday at 11:05, 30 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Containers devroom Adrian Reber , slides , video

With the introduction of "Forensic Container Checkpointing" in Kubernetes 1.25 it is possible to checkpoint containers. The ability to checkpoint containers opens up many new use cases. Containers can be migrated without loosing the state of the container, fast startup from existing checkpoints, using spot instances more effective. The primary use case, based on the title of the Kubernetes enhancement proposal, is the forensic analysis of the checkpointed containers.

In this session I want to introduce the different possible use cases of "Forensic Container Checkpointing" with a focus on how to perform forensic analysis on the checkpointed containers. The presented use cases and especially the forensic analysis will be done as a live demo giving the audience a hands on experience.

 "Rust-transit: libraries to manage transit data in rust" ( 2024 )

Saturday at 11:05, 20 minutes, K.4.401, K.4.401, Railways and Open Transport devroom Tristram Gräbener , video

To build nice tools with transit data, we need nice libraries to build upon.

We present a small collection of libraries hosted in the https://github.com/rust-transit/ organization to manipulate transit data.

The main library, gtfs-structures, is a performant and flexible rust crate that parses a large variety of GTFS files and is used in production in the validator of transport.data.gouv.fr, but also in other projects like https://catenarymaps.org/.

Other libraries allow to manipulate realtime data in the SIRI-Lite format or to parse OpenStreetMap for simple routing tasks.

 "A decade of JDK Updates in OpenJDK" ( 2024 )

Saturday at 11:05, 20 minutes, UB5.132, UB5.132, Free Java devroom Dalibor Topic , video

Since Oracle began developing updates for the JDK with the JDK 7 Updates Project in 2011, a lot has happened in the OpenJDK community. The development processes have been constantly adapted, so that today the changes to the updates begin their journey as pull requests on GitHub.

But what happens next with the changes? In this lecture we'll take a look at how it all began and how the development of JDK updates works in practice today.

 "External Rook Ceph Cluster" ( 2024 )

Saturday at 11:05, 25 minutes, K.3.201, K.3.201, Software Defined Storage devroom Parth Arora , slides , video

You may have an existing Ceph cluster that you want to integrate with Kubernetes, or wanted centralized ceph management in a single cluster connected to multiple Kubernetes clusters what's the solution? External Rook-Ceph Cluster. An external cluster is a Ceph configuration that is managed outside of the local K8s cluster. In external mode, Rook will provide the configuration for the CSI driver and other basic resources that allow your applications to connect to Ceph in the external cluster. This talk will give a quick overview of the Rook external cluster, which includes its deployment, demo, and how the latest ceph features can be used with this like Multi-site, rados namespace, etc.

 "Improving IPv6-only experience on Linux" ( 2024 )

Saturday at 11:10, 20 minutes, UB5.230, UB5.230, Network devroom Ondřej Caletka , slides , video

IPv6-only networks are slowly becoming reality and are very well supported by mobile operating systems as well as macOS. Linux is slightly falling behind. In this talk, I will cover how IPv6-only and IPv6-mostly networks work and what needs to be done to have first class support in Linux. Let's talk about IPv6-mostly networks - the kind of networks which run IPv6-only for devices supporting it while providing some IPv4 for devices dependent on it. This can be done by DHCPv4 option called IPv6-only Preferred. Using this option, a device can opt-out from IPv4 if it does not need it for proper functionality.

But even if a device opts out from IPv4, chances are it would need some IPv4-as-a-service for supporting legacy applications. Typically, 464XLAT concept is used. This relies on a client-side translator (CLAT) responsible for converting residual IPv4 into IPv6. If such a translator is missing, which is the case for the most Linux desktop distributions nowadays, most things would work normally, but chances are you will hit some corner case where your computer complains about no connectivity. There are solutions to set up CLAT on Linux but none of them is mature enough. Let's talk about what needs to be done to change this.

Resources:

  • clatd: a CLAT daemon utilizing userspace translator TAYGA or nat46 kernel-space translator

  • Jool: Open Source SIIT and NAT64 for Linux

  • RFC 6877: 464XLAT: Combination of Stateful and Stateless Translation

  • RFC 8925: IPv6-Only Preferred Option for DHCPv4

  • RFC 8781: Discovering PREF64 in Router Advertisements

 "Stopping all the attacks before they start: Building a security-first API" ( 2024 )

Saturday at 11:10, 30 minutes, AW1.126, AW1.126, APIs & friends devroom Warren Parad , video

Embrace a security-first mindset in API development to proactively prevent malicious attacks. Learn how to integrate fundamental security building blocks, authenticate requests, validate access control, implement secure communication channels, identify potentially dangerous actors, and dynamically prevent attacks as they happen.

Here, I’ll walk through building resilient APIs and platforms that thwart attacks from the beginning, protecting your users and your data. Join me as I introduce how to make security an integral part of our development process.

 "REPLACEMENT: RTC AMA" ( 2024 )

Saturday at 11:10, 35 minutes, H.1302 (Depage), H.1302 (Depage), Real Time Communications (RTC) devroom Manish Kumar Pandit Ashish Kumar Singh , video

RTC AMA since the original speakers couldn't make it.

 "Writing your own Rust linter" ( 2024 )

Saturday at 11:15, 20 minutes, H.1308 (Rolin), H.1308 (Rolin), Rust devroom Guillaume Gomez , video

This talk will show you how to write your own rust linter using the rustc_tools crate which allows you to have access to the rust compiler API. It can be quite useful if you need specific lints for a project and cannot add them to clippy.

It will explain how the compiler API works and give a small example at the end showing it in action.

 "OwnTech Project: An open-source generic reprogrammable technology suite for reimagining the energy ecosystem" ( 2024 )

Saturday at 11:15, 20 minutes, H.2214, H.2214, Energy: Reimagining this Ecosystem through Open Source devroom Luiz Villa , slides , video

The energy transition relies heavily on energy management technology such as power electronics devices. These devices allow the control of electricity flows such as battery charging, motor control and renewable energy usage. This critical technology is mostly proprietary blocking innovation and knowledge transfer. The OwnTech project has the objective of creating an open-source technology suite similar to Raspberry Pi or Arduino for energy management. Our goal is to provide our community with the tools to act and re-imagine their energy system from the bottom up.
In this talk we will introduce the OwnTech project, its mission and show a study case of a 1kW 24V micro-grid developed by Alyssia Dong, an assistant professor at the University of Angers, for educational purposes.

If you wish to know more about our work: Link to our website Link to our documentation Link to our Foundation on GitHub Link to our software Link to our control hardware - SPIN Board Link to our power hardware - TWIST Board

 "From the lab to Jupyter : a brief history of computational notebooks from a STS perspective" ( 2024 )

Saturday at 11:15, 15 minutes, UB4.132, UB4.132, Open Research devroom Emilien SCHULTZ , slides , video

Scripts and softwares are indispensable components of contemporary research. While the study of scientific instruments has been extensively covered in science and technology studies (STS), as well as aspects related to digital data, software strangely remains absent. I will build on the success of Jupyter computational notebooks to sketch a social study of open source scientific softwares.

The Jupyter project, initiated in 2001 by a physics graduate student interested in scientific programming, has gradually evolved into a global data science infrastructure. I will demonstrate the importance of closely examining its trajectory by identifying the continually negotiated conditions for the transition from local usage to a role as a generic instrument, progressively leading to its integration into a diversity of services beyond scientific communities. The dissemination of computational notebooks has thus not only facilitated a convergence between open code and open science but also between the practices of researchers and those of computer developers, leading to the stabilization of a specific infrastructure for data analysis.

 "Synergy: a chat bot framework" ( 2024 )

Saturday at 11:20, 35 minutes, K.3.401, K.3.401, Perl and Raku devroom Ricardo Signes , video

Years ago, we had to rewrite our old IRC bot in a hurry, converting it to the Slack messaging API. When we did that, we also converted it to IO::Async and began trying to keep it both async and easy to work on.

This talk will give a brief overview of the bot architecture and how we've kept working on the bot simple, most especially by adopting Future::AsyncAwait. We'll also look at how you can run your own instance of the bot.

 "Problems and solutions for running a distributed virtual world" ( 2024 )

Saturday at 11:20, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Vadim Troshchinskiy Shmelev , slides , video

Overte is a virtual environment comparable to the likes of VR Chat, Resonite or Second Life.

However, our architecture is highly distributed, and our approach to many things such as content hosting is significantly different to that of other platforms. We don't need accounts, servers can be anywhere, and content can be hosted on any HTTP server. Overte closely imitates the WWW, and this brings plenty benefits, but also creates problems other platforms don't have.

In this talk, I will explain what makes us different, what the benefits are to doing things our way, how do we solve problems other systems don't have, and why you might want to try Overte for its unique approach.

 "An introduction to Formal Verification of Digital Circuits" ( 2024 )

Saturday at 11:25, 40 minutes, K.4.201, K.4.201, Libre-SOC, FPGA and VLSI devroom Cesar Strauss , slides , video

Formal verification, or formal correctness proofs, are powerful tools when designing your FPGA or ASIC "gateware". They help finding bugs sometimes missed in simulation, triggered by corner cases you didn't think to check. This talk will give a little background on how they work, the available ecosystem of tools, show some small examples on how to use them, and some practical results from real-life usage.

 "Counting on openness: Privacy-safe passenger counting" ( 2024 )

Saturday at 11:25, 30 minutes, K.4.401, K.4.401, Railways and Open Transport devroom Henri Seijo , slides , video

Discover the modern architecture of Waltti-APC, Finland's national Automatic Passenger Counting system. We have developed what we believe is the first application of differential privacy to anonymize real-time APC data, ensuring its safe use in trip planners and other passenger information systems. Additionally, we have crafted an API specification that allows new vendors to easily step into the market of onboard counting devices without prior knowledge of public transit. All open source, of course. Join us for an exploration of our data pipeline, powered by Apache Pulsar.

 "Mainline Linux on Qualcomm SoCs, are we here now ?" ( 2024 )

Saturday at 11:30, 25 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), FOSS on Mobile Devices devroom Neil Armstrong , slides , video

Yes, and we’re in pretty good shape!

For the last 10 years, Qualcomm’s engineers and Linaro’s Qualcomm Landing Team has been working hard to carefully implement Linux mainline support for Qualcomm platforms, and so far so good it’s pretty good now as you can judge with the very good Thinkpad X13S support.

Neil will do a tour of all supported platforms, describe the work the Linaro’s Qualcomm Landing Team has achieved so far and the key features engineers are working on. The Qualcomm SoCs are notoriously very complex and very powerful, and implementing clean, correct, maintainable and extensible support for mainline Linux is particularly hard. Key domains like Power or DSP management were particularly hard to support, with those in good shape multimedia, connectivity and network features getting enabled permitting Qualcomm based devices to offer excellent support while running vanilla (unmodified) Linux kernel !

The Thinkpad X13S is a great example of such support, because until recently it was limited to expensive and hard to buy Qualcomm Reference platforms.

Nevertheless the Qualcomm Reference platforms also get as early as possible mainline support, without any concessions on code quality, like the Snapdragon 8 Gen 3 mailing-list patches delivered on marketing announcement day.

The talk will propose a tour of supported platforms, current and possible future achievements, and integration examples with mobile distributions like PostmarketOS.

 "You're already running my code in production: My simple journey to becoming a Go contributor." ( 2024 )

Saturday at 11:30, 30 minutes, UD2.218A, UD2.218A, Go devroom Jonathan Hall , video

Go is widely considered simple language. But the proposal and contribution process can be intimidating to the uninitiated.

In this talk, I take the auduience on a quick tour of my experience from feature idea, to proposal, to eventually implementing the proposal myself in just a dozen lines of code, and getting it merged and included in Go 1.21.

The goal of this talk is to demystify the Go contribution and proposal process, and encourage others who may otherwise feel intimidated, to participate.

 "Exploring Quarkus Native: Choices and Implementation" ( 2024 )

Saturday at 11:30, 20 minutes, UB5.132, UB5.132, Free Java devroom Foivos Zakkak , slides , video

In this presentation, we'll take a detailed look at how Quarkus approaches native compilation, highlighting what sets it apart from other frameworks. We'll start with an overview of Quarkus and its native compilation, then dive into the specific decisions made during the compilation process, explaining the reasons behind each choice. Finally we will go through parts of the Quarkus code to show how these decisions are practically implemented and how they benefit users.

 "UKI addons and extensions: safely extending UKIs kernel command line and initrd" ( 2024 )

Saturday at 11:30, 30 minutes, UB2.147, UB2.147, Virtualization and Cloud Infrastructure devroom Emanuele Giuseppe Esposito , slides , video

An UKI (Unified Kernel Image) is a single executable which can be booted directly from UEFI firmware, or automatically sourced by boot-loaders with little or no configuration. UKI technology is a main building block for Linux on Confidential Virtual Machines. However, UKIs are immutable, meaning that once created it won't be possible to safely change/extend kernel command line or initrd modules without creating a new UKI. This session will firstly review what an UKI is and why is it useful especially for Confidential Computing, then explain the current immutability challenges that it brings, the various approach that were proposed, and which solution is currently deployed. The topic covered are UKI addons, sysext extensions, and sbat rules.

 "OpenTalk - Video conferencing secure and GDPR compliant" ( 2024 )

Saturday at 11:30, 25 minutes, H.2213, H.2213, Collaboration and Content Management devroom Wolfgang Silbermayr , slides , video

OpenTalk is more than just another video conferencing solution. Designed with a special focus on data protection and security, OpenTalk offers a completely reimagined solution ideally suited for public administration. With its modern IT architecture and strict data segregation, OpenTalk meets the highest standards of data protection and security, fully compliant with the GDPR.

In the public sector, data protection is not just a buzzword; it's a central requirement. OpenTalk provides specialized features and moderation tools specifically developed for such demanding scenarios. This includes features voting, recording, streaming, breakout rooms and a coffee break timer. Don't worry: thanks to its user-friendly design and simple operation, OpenTalk is also accessible to users who are not tech-savvy.

OpenTalk has been created as a comprehensive European — and therefore GDPR-compliant — alternative for collaboration and communication. It is a video conferencing solution well-suited for agencies, municipalities, administrations as well as personal and business use.

Starting with the history of the OpenTalk project, this talk will provide insights into features that set it apart from other solutions, its service architecture and the current state of development. We will also discuss about the efforts of creating tooling for developers to build their own service and client integrations for the system. We have the vision of building and fostering a community around the project that helps creating an open ecosystem.

Links

 "CATS: The Climate Aware Task Scheduler" ( 2024 )

Saturday at 11:30, 30 minutes, UA2.118 (Henriot), UA2.118 (Henriot), HPC, Big Data & Data Science devroom Colin Sauze Abhishek Dasgupta , slides , video

The Climate-Aware Task Scheduler is a lightweight Python package designed to schedule tasks based on the estimated carbon intensity of the electricity grid at any given moment. This tool uses real-time carbon intensity data from the UK's National Grid ESO via their API to estimate the carbon intensity of the electricity grid, and schedules tasks at times when the estimated carbon intensity is lowest. This helps to reduce the carbon emissions associated with running computationally intensive tasks, making it an ideal solution for environmentally conscious developers. Currently CATS is built to work with the simple "at" scheduler, but work is underway to port it to Slurm. The source code can be found at https://github.com/GreenScheduler/cats and more information at https://greenscheduler.github.io/cats/.

 ""Vanilla" Debian On An Industrial Embedded Device" ( 2024 )

Saturday at 11:30, 25 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Embedded, Mobile and Automotive devroom Francesco Dolcini , slides , video

Debian is a commonly used distribution on embedded devices, however more often than not single-board computers available on the market just run some sort of Debian derivative that is provisioned as a binary image to be flashed to an SD card where the device will boot from. At the same time linux distributions for industrial embedded computer are often based on Yocto/OpenEmbedded or buildroot.

This talks will explore what is required to install and run a non modified Debian in an industrial arm/arm64 embedded device running the U-Boot bootloader.

We will investigate the various option to install Debian, either running debian-installer (from network or from an external storage media) or using debootstrap, we will look into how the bootloader is loading the OS (kernel, initrd and devicetree), looking at U-Boot distroboot/Standard Boot and UEFI and after that we will have a look at the required support from the Linux kernel.

During the talk we will also describe the steps needed to contribute support for a specific board to Debian.

 "Your web app is taking up too much RAM. Let's fix it!" ( 2024 )

Saturday at 11:30, 30 minutes, H.1301 (Cornil), H.1301 (Cornil), JavaScript devroom Giulio Zausa , slides , video

We've all seen the memes about Google Chrome devouring all the available RAM in your laptop. Is that only due to how the browser works or is it also our fault as web apps developers? In fact, modern JS apps are becoming increasingly complicated, so their compute and memory requirement are rising as well, with some famous websites even taking up entire gigabytes of memory. This does not only fill up the memory of your users devices, but can also cause crashes and performance drops. How do we monitor if that's the case, and how can we fix it? This talk will shed some light on the dark art of memory allocations and profiling, showing how some data structures and some JS frameworks are less efficient than others. Also, what are the tools that are available to measure it, such as the Chrome Memory Profiler and MemLab, showcasing some custom tooling I've built around those two.

 "Load balancing using XDP" ( 2024 )

Saturday at 11:30, 20 minutes, UB5.230, UB5.230, Network devroom Luca Bassi , slides , video

eBPF permits to run sandboxed programs in the OS kernel, mainly event-driven. It's used to extend the kernel without recompiling it or use modules. eXpress Data Path (XDP) provides a eBPF-based, high performance, programmable network data path in the Linux kernel. It provides bare metal packet processing at the lowest point in the software stack, which makes it ideal for speed. A XDP program returns an action code to tell the kernel what to do with the packet: XDP_PASS, XDP_DROP (and XDP_ABORTED), XDP_TX (and XDP_REDIRECT).

This talk, after a brief introduction of what XDP is, presents how redirecting packets, using the XDP_TX return code, can be used to implement a load balancer. It shows how using Direct Server Return can increase the throughput and how to use a consistent hashing algorithm to redirect all the packets of a specific connection to the same backend server. Finally, it explores how the load balancer can be deployed directly to backend servers without the need for a dedicated machine, leveraging the Equal-Cost Multi-Path routing. The presentation of a possible network topology to deploy this load balancer using BPG or static routes completes the seminar.

 "Prompt Compass: A Methodological Approach to Evaluating the Use of Large Language Models in SSH research" ( 2024 )

Saturday at 11:30, 15 minutes, UB4.132, UB4.132, Open Research devroom Erik Borra , slides , video

As researchers continue to explore the utility of platform-based large language models (LLMs) for tasks like data extraction, annotation, and classification, concerns about access, cost, scalability, volatility, and privacy arise. Even when using local or open-source LLMs in the social sciences and humanities, it is critical to address the inherent inconsistencies of LLM outputs, and to assess their suitability for specific tasks. 

How should LLMs be approached and evaluated for digital research projects? I propose a methodology for systematically exploring and evaluating above issues using Prompt Compass. The tool encapsulates research affordances for working with LLMs tailored to the social sciences and humanities. It provides easy access to various local and platformed LLMs, defines default (but modifiable) parameters that produce the most consistent results, offers a library of ready-made and customizable research prompts, allows for looping over rows in a CSV, and allows for testing and evaluating various LLM-prompt combinations. 

As technological advances reshape social science and humanities research, tools like Prompt Compass are critical in bridging the gap between LLM technologies and methodological robustness in both qualitative and quantitative research. Such tools allow for a hands-on approach to assess the stability of prompts, their accordance with specific LLMs, and the replicability of research.

Prompt Compass is available under an Apache 2.0 license at https://github.com/ErikBorra/PromptCompass

 "Boosting CephFS Security in Kubernetes: Rook's Intelligent Network Fencing for Uninterrupted Data Flow and Workload Harmony!" ( 2024 )

Saturday at 11:35, 25 minutes, K.3.201, K.3.201, Software Defined Storage devroom Niels de Vos Riya Singhal , slides , video

Ever found yourself lost in the complex world of Kubernetes, wondering what unfolds when a node throws a curveball? Fear not, for Rook's Network Fencing is the unsung hero in this tale of container chaos. Let's take a journey into the heart of this complexity, uncovering the superheroic qualities of Rook's Network Fencing, working tirelessly to prevent any data chaos.

Imagine this: when one node takes an unexpected turn, Rook elegantly guides the pods to a new, stable platform. Here's the twist – CephFS remains undisturbed, a calm leader in the face of potential turbulence and the container using this may happily continue, leading to data corruption!

Join us as we break down the details of this strategic performance. Discover how Rook's Network Fencing becomes the guardian of your data, ensuring a smooth transition from one node to another. It's not just about preventing chaos; it's about preserving the integrity of CephFS, the backbone of your containerized world.

So, get ready for an exploration into the art and science of Network Fencing, where Rook emerges as the quiet force that guarantees your data's safety, keeps your workloads running smoothly, and bids farewell to chaos in the Kubernetes story.

Welcome to the "revelation of Network Fencing in CephFS with Rook – your data's trustworthy guide in the container wilderness."

 "MicroBlocks" ( 2024 )

Saturday at 11:40, 60 minutes, J.1.106, J.1.106, FOSS Educational Programming Languages devroom Kathy Giori John Maloney Turgut Guneysu , slides , video

MicroBlocks is a blocks programming language for physical computing inspired by Scratch. MicroBlocks is a non-profit open-source project that makes physical computing fun and easy. Although it's goal is to enable and inspire youth (10+), curious makers of all ages are encouraged to embrace the joys of physical computing. Unlike other programming environments for microcontrollers, MicroBlocks is LIVE. That is, the MicroBlocks IDE (editor running on a computer) and the MicroBlocks code (running on a microcontroller) are constantly kept in sync. The blocks-based editor makes it easy to click any block or script of blocks to execute them immediately. Development and debugging occur at the same time. The project lives up to its tagline "small, fast, human friendly". :)

 "Enhancing OCPP with E2E-Security and Binary Data Streams for a more Secure Energy Ecosystem" ( 2024 )

Saturday at 11:40, 15 minutes, H.2214, H.2214, Energy: Reimagining this Ecosystem through Open Source devroom Achim Friedland , slides , video

In the rapidly evolving landscape of electric vehicle charging, the Open Charge Point Protocol (OCPP) has emerged as a crucial industry standard for communication between charging stations and a central management system. In my presentation I will introduce groundbreaking extensions to OCPP, focusing on the integration of end-to-end digital signatures and binary data streams, a leap forward in efficiency and security within the EV charging ecosystem.

The integration of binary data streams via HTTP Web Sockets into OCPP marks a significant enhancement in data transmission efficiency. This approach not only reduces latency and bandwidth usage for large data transfers, but also paves the way for more secure, in-band data transmissions like firmware updates or log file transport. Traditionally, such data transfers required separate HTTP or FTP servers, introducing unnecessary complexity and potential network security risks. With these extensions firmware updates become seamless and more secure, directly within the OCPP framework.

Furthermore, the addition of digital signatures to OCPP commands and data structures, such as charging tariffs or grid related commands for controllable consumers according to the German §14a EnWG, introduce a new layer of security and integrity. These signatures ensure that data is not tampered with during transmission - even beyond the traditional scope of OCPP - providing a verifiable trust mechanism in end-to-end EV charging communications and might in the future lead to more cost-efficient intelligent measuring systems.

A notable advancement is the use of digital signatures for creating distinct user roles within OCPP. Until now, OCPP lacked the capability to differentiate between user access levels, such as "normal" users and "admin" users. The introduction of role-based access control, underpinned by digital signatures, allows for precise management of user permissions, enhancing both security and operational efficiency especially in more complex managed charging locations.

In my talk, I will delve into the technical implementation details of these extensions. Attendees will gain insights into the practical applications and benefits of these enhancements in the context of the Open Source energy ecosystem. The presentation will also explore the potential future implications and developments that these extensions could usher in, setting the stage for a more secure, efficient, and scalable EV charging infrastructure.

 "The plan for gccrs" ( 2024 )

Saturday at 11:40, 40 minutes, H.1308 (Rolin), H.1308 (Rolin), Rust devroom Arthur Cohen , video

gccrs is an alternative implementation of a Rust compiler currently being developed. It aims to become a fully fledged Rust compiler, and hopes to share as much code as possible with the official Rust compiler in order to guarantee correctness and avoid damage on the Rust ecosystem. But how do we plan to integrate Rust components to the GCC codebase, and what sort of components will we reuse? This talk will explore the future of the project, as well as some of the challenges surrounding compilers, and the very silly sounding but real problems of bootstrapping and dogfooding. We will explore the stack of rustc crates that we leverage, how we use them together, and how they will play a part once the compiler has advanced further.

 "Introducing Incus" ( 2024 )

Saturday at 11:40, 30 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Containers devroom Stephane Graber , slides , video

Incus is the latest project in the system containers and virtual-machine space. It came to life as a fork of Canonical's LXD project after Canonical decided to reclaim full ownership of LXD.

Incus is a fully fledged system container and virtual machine manager, capable of running either standalone on systems as small as single board computers, or scale up to hundreds of servers to run tens of thousands of instances. It supports advanced storage and networking options and can easily be managed through its command line, a variety of web UIs or its REST API.

In this presentation, we'll be going over a bit of the history of LXD and Incus, how it came to be, who's behind it, what state it's currently in and what to look forward to in the near future!

 "Property based testing in Elixir" ( 2024 )

Saturday at 11:40, 20 minutes, K.4.601, K.4.601, Erlang, Elixir, Gleam and Friends devroom Tonći , slides , video

As developers, we write unit tests in a TDD-style workflow for validating the behavior of our applications and libraries. However, all possible situations need to be manually thought out when writing the tests for the code. Property based testing aims to solve this by allowing the developer to specify behavior of their programs in terms of properties (invariants) of their code and then automatically generating tests that check if the property is indeed valid. In this talk, the key concepts of property based testing will be explained, along with clarifying examples, ranging from introductory snippets to more complex ‘real life’ scenarios. The examples will be written in Elixir; a functional programming language that runs on the Erlang virtual machine. The high level, flexible and expressive nature of the language make it an ideal fit for declaring properties against which a program can be checked.

 "Open Food Facts : Acting on the health and environnemental impacts of the food system" ( 2024 )

Saturday at 11:40, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Pierre Slamich , video

Through open source and open data, Open Food Facts is transforming our food system! In this talk, we'll dive into how Open Food Facts is helping reshape the food system to reduce its impacts on health and the environment. We'll go through how Open Food Facts helps create a treasure trove of information, and turn it into actionable data for consumers, researchers and policy makers.

We'll show how we are mobilizing technology (mobile crowdsourcing, artificial intelligence and more classic tech) in the pursuit of food enlightment.

We will tell the story of Nutri-Score, and how the Open Food Facts community helped shape food policy, going from a digital deployment to real-life impact. We will also touch on the on-going projects with Eco-Score and Open Products Facts.

We'll explore how citizens and consumers are using this database to make smarter, healthier food choices, steering the food industry towards a more transparent and sustainable future.

 "UB App: Using Design Justice to involve marginalised communities and urban planners in co-designing a new photovoice tool for citizen engagement" ( 2024 )

Saturday at 11:45, 30 minutes, UB4.132, UB4.132, Open Research devroom Sofie Burgos-Thorsen Iain Kettles , video

How might we innovate digital tools for citizen engagement with visual methods to ‘retool’ citizen science and invite more people to document their lived experiences as inputs to urban planning and policy? And could we do so in a participatory process that uses principles of Data Feminism and Design Justice to diversify who has a seat at the table in the tool development, and whose interest are built into the tools we make? Forged in the fire of such burning questions, we present the UB App as an open-source photovoice application for smartphones, co-created during the Urban Belonging Project (2020-22) in a process that involved scholars from Copenhagen and Amsterdam, professional urban planners, citizen engagement experts, and seven marginalized communities in Copenhagen (deaf, lgbtq+, physically disabled, mentally vulnerable, houseless, internationals, and ethnic minorities). At the 2023 FOSDEM, we are excited introduce the UB App and the UB Toolkit, and use examples from our design process to discuss the potentials and challenges of involving a multitude of voices and perspectives in the development of digital citizen science tools. We touch upon; how inputs from different stakeholders shaped decisions about what data collection the app makes possible; how it mitigates issues of privacy and visual and spatial literacy to make the app as inclusive as possible; and how design criteria were translated into app features that open new empirical opportunities for community engagement.

Resources: The UB App, open-source photovoice app developed in the project (https://github.com/Urban-Belonging/UrbanBelonging), licensed as GPLv3.

The UB Toolkit; open-source scripts developed in the project to transform raw data from the app into structured data files and images ready for analysis (https://urban-belonging.github.io/UrbanBelongingToolkit/), licensed as GPLv3. Articles about (a) the development process and (b) its use in the Urban Belonging Project: a) Madsen, A. K., Burgos-Thorsen, S., De Gaetano, C., Ehn, D., Groen, M., Niederer, S., ... & Simonsen, T. (2023). The Urban Belonging Photo App: A toolkit for studying place attachments with digital and participatory methods. Methodological Innovations, 20597991231185351. https://journals.sagepub.com/doi/10.1177/20597991231185351 b) Burgos-Thorsen, S., Niederer, S., & Madsen, A. K. (2023). What is an inclusive city? Reconfiguring participation in planning with geospatial photovoice to unpack experiences of urban belonging among marginalised communities. Visual Studies, 1-20. https://www.tandfonline.com/doi/full/10.1080/1472586X.2023.2261897

Spearkers: Sofie Burgos-Thorsen (sofieburgosthorsen@gmail.com):

 "Bridging Open Protocols: XMPP and ActivityPub Gateway via Libervia" ( 2024 )

Saturday at 11:50, 35 minutes, H.1302 (Depage), H.1302 (Depage), Real Time Communications (RTC) devroom Jérôme Poisson (Goffi) , slides

Libervia is an universal communication ecosystem that extends the use of XMPP far beyond instant messaging, incorporating features such as microblogging, direct messages, calendar events, A/V calls, and more.

A significant feature is its role as a server component, which has facilitated the implementation of a XMPP <=> ActivityPub gateway. This gateway enables seamless interaction between two key open protocols.

In this session, we'll explore the architecture of this gateway, detailing how it facilitates communication between XMPP and ActivityPub. We'll delve into the intricacies of protocol mapping and discuss how Libervia integrates features such as microblogging, reactions, likes/favorites, mentions, and calendar events across these platforms. The talk is aimed at providing a clear understanding of how Libervia contributes to the evolution of open communication technologies.

 "Making API Terms of Service Trustworthy? Presenting FACT : The Fair API Commitment Terms" ( 2024 )

Saturday at 11:50, 30 minutes, AW1.126, AW1.126, APIs & friends devroom Célyagd , video

Open source has been highly democratized thanks to a clear OSI defintion. In a Digital infrastrcuture world, now it is the time for APIs to have such open and clear defintion. Inspired by Open Source, this talk will present the FACT framework, a way to create and publish easily Fair API Commitment Terms, making API Terms of Service that are easy to read and understand. Indeed, the biggest threat on trust in the digital infrastructure we know is the threat on APIs you consume for your software. What if the API provider breaks the API? What if the API provider change its licence? Its version abruptly making it a breaking version without notice? Its pricing making it unaffordable for all users? This is why we have worked to make a framework to make it easy to provide clear open commitment about your APIs to your community. It is like a Creative Commons for APIs, as it is also easy to read and understand for users about what they can expect about API provider commitments about trust for their API. This project has been supported by the Ford Foundation, Mozilla foundation and Open Society foundation.rThis talk will present the FACT framework, a way to create and publish easily Fair API Commitment Terms, making API Terms of Service that are easy to read and understand. Indeed, the biggest threat on trust in the digital infrastructure we know is the threat on APIs you consume for your software. What if the API provider breaks the API? What if the API provider change its licence? Its version abruptly making it a breaking version without notice? Its pricing making it unaffordable for all users? This is why we have worked to make a framework to make it easy to provide clear open commitment about your APIs to your community. It is like a Creative Commons for APIs, as it is also easy to read and understand for users about what they can expect about API provider commitments about trust for their API. This project has been supported by the Ford Foundation, Mozilla foundation and Open Society foundation.ired by open source. This talk will present the FACT framework, a way to create and publish easily Fair API Commitment Terms, making API Terms of Service that are easy to read and understand. Indeed, the biggest threat on trust in the digital infrastructure we know is the threat on APIs you consume for your software. What if the API provider breaks the API? What if the API provider change its licence? Its version abruptly making it a breaking version without notice? Its pricing making it unaffordable for all users? This is why we have worked to make a framework to make it easy to provide clear open commitment about your APIs to your community. It is like a Creative Commons for APIs, as it is also easy to read and understand for users about what they can expect about API provider commitments about trust for their API. This project has been supported by the Ford Foundation, Mozilla foundation and Open Society foundation. https://www.apitos.org/

 "Nephio: A New Approach for Automating Telco Workloads" ( 2024 )

Saturday at 11:50, 20 minutes, UB5.230, UB5.230, Network devroom Wim Henderickx , video

Kubernetes has evolved far beyond container orchestration and is now playing a significant role in automating telco workloads in a cloud-native manner at a large scale. In this session, we will demonstrate the innovative ways we harness Kubernetes to streamline telco operations. Throughout the presentation, we will introduce you to cutting-edge concepts, including configuration as data, kpt (Kubernetes Package Manager), krm functions, and more. These powerful tools and concepts are instrumental in effectively orchestrating telco workloads within a Kubernetes environment. Join us for an insightful journey where we showcase the seamless integration of Kubernetes with telco workloads and illustrate how these advanced techniques transform the way we manage and operate telecom services in the cloud-native landscape.

 "MATSim at SBB: Using and contributing to the open-source transport simulation for advanced passenger demand modeling." ( 2024 )

Saturday at 11:55, 30 minutes, K.4.401, K.4.401, Railways and Open Transport devroom Joschka Bischoff , slides , video

Since 2017, the Passenger Division at the Swiss Federal Railways has used MATSim as the main framework for SIMBA MOBi - its activity and agent-based transport model. By now, SIMBA MOBi is a well-established model that helps the company’s decision-making process in passenger demand planning. Very early in the development stage of the model SBB has committed itself to contributing actively in the MATSim core libraries under GPL. In this talk, we briefly give an overview about the model itself, its applications and SBB’s long-standing contributions in MATSim. We also point out the advantages and limitations of using an academic open source software in our active production environment. MATSim is available under GPL and its code repository is https://github.com/matsim-org/

 "Project Lilliput - Compact Object Headers" ( 2024 )

Saturday at 11:55, 30 minutes, UB5.132, UB5.132, Free Java devroom Thomas Stüfe Roman Kennke , slides , video

This presentation will discuss the OpenJDK project Lilliput, which aims to reduce object header sizes, and with it, memory and CPU consumption of the HotSpot JVM. We will start with a short overview of the status-quo in HotSpot, and explain the goals and motivations. We will then give an overview of what has been achieved so far - 64-bits-headers -, and look ahead at our plans for the future - 32-bits-headers - and our vision on how to achieve this, and which technical challenges we need to solve.

 "How to Chart your own Career Path in Open Source - Panel Discussion" ( 2024 )

Saturday at 12:00, 50 minutes, Janson, Janson, Main Track - Janson Dawn M Foster Ray Paik Ildiko Vancsa Allison Randal , video

There isn’t one way to build your career in open source as there are a variety of roles beyond writing code and many different routes into those roles. It’s also important for individuals to chart their own path that aligns with their unique experience and interest.

In this panel discussion, panelists will share how they got started in their career and their journey over the past two decades. For people looking for jobs in open source, we’ll discuss what we look for in candidates and why it’s not necessary to check all the boxes in job descriptions. We’ll also discuss challenges in balancing your day jobs vs. open source activities during your career.

In addition, we’ll also delve into other challenges and opportunities of an open source career that range from dealing with the impostor syndrome, DEI (Diversity, Equity, and Inclusion) challenges, exploring open source communities for self growth, and more.

The goal of this session is to help attendees feel more comfortable exploring opportunities in open source and be confident in charting their own path. Our panel members will share what contributed to their success and the lessons learned throughout their extensive experience in open source. This session is meant to be interactive, and we’ll encourage attendees to ask questions and engage in the conversation.

 "Overcoming MPI ABI incompatibility" ( 2024 )

Saturday at 12:00, 30 minutes, UA2.118 (Henriot), UA2.118 (Henriot), HPC, Big Data & Data Science devroom Marc Joos , slides , video

Scientific applications rely on third-party libraries, which may have multiple implementations with many of these implementations not sharing the application binary interface (ABI) and require recompiling depending on the target system. Recompiling can be a long and complex process, (1) impeding application execution across different HPC and Cloud systems; (2) adding developer hours rebuilding an application; and (3) not taking advantage of host-optimized libraries.

The Wi4MPI library, developed at CEA, addresses this ABI incompatibility in MPI. Wi4MPI translates the ABI dynamically from the MPI library used to build the application to a different MPI library available at run time. With Wi4MPI, HPC practitioners can break the portability barrier imposed by ABI incompatibility, potentially increase performance, and increase user productivity. This presentation is broken down in three components: (1) Understanding ABI compatibility in MPI; (2) Translating MPI libraries dynamically; and (3) Applying dynamic translation to key use cases in HPC, including Containers.

 "The CPAN Security Working Group" ( 2024 )

Saturday at 12:00, 20 minutes, K.3.401, K.3.401, Perl and Raku devroom Salve J. Nilsen , video

In April 2023, during the Perl Toolchain Summit in Lyon, France, the CPAN Security Working Group was set up. This presentation is a short introduction to the group, sharing some of the ambitions and thoughts behind it, and a call for participation to all stakeholders.

If you care about the security landscape around CPAN, then this presentation is for you!

 "CitrineOS" ( 2024 )

Saturday at 12:00, 15 minutes, H.2214, H.2214, Energy: Reimagining this Ecosystem through Open Source devroom Christian Weissmann , slides , video

The open source OCPP 2.0.1 CSMS project CitrineOS was initiated by S44. By leveraging over a decade of experience in EV charging software, at S44 we are actively working towards making EV charging more attainable and equitable. In our quest for a greener future, we face a pivotal challenge: by 2030 50% of new U.S. cars will be EVs, but today 28% of chargers in leading cities don't work. Developers must build innovative software to improve and grow the charging network so EV owners can travel with confidence. By creating an open source charge station management system, CitrineOS's goal is to provide the fuel for this change. The project is NEVI compliant, globally available and open to all. CitrineOS is meant to offer a community driven, reliable CSMS that builds a foundation for market participants to innovate on top of a protocol implementation instead of re-inventing the same wheel. The project drives forward the adoption of the OCPP 2.0.1 protocol resulting in more reliable charging networks worldwide. Our hope is that anyone looking to bootstrap a modern charging network, or upgrade an existing one from OCPP 1.6 to OCPP 2.0.1, will consider CitrineOS as their starting point, and that increased community involvement will continue to improve the charging experience delivered by this open source project. Our main code repository can be found here on GitHub: https://github.com/citrineos/citrineos-core take a look at our GitHub pages site that you can find here: https://citrineos.github.io/

 "Single binary, full-stack provisioning" ( 2024 )

Saturday at 12:00, 30 minutes, UD2.218A, UD2.218A, Go devroom James (purpleidea) , video

Mgmt is a real-time automation tool that is written in go(lang).

It implements a DSL (domain specific language) that allows you to build fancy automation solutions. With this tool and DSL, I'll demo how I built a full, single-binary provisioning solution so that you can use your own laptop to bootstrap an entire infrastructure. Thanks to the go(lang) static compilation, it makes it very easy to have a single binary that includes tftp, dhcp and http servers, it can run a pxe boot and OS kickstart, and it can even rsync a local mirror to run an offline installation from.

We'll take you through a tour of all the plumbing that needed to be changed to support this. We'll show lots of real-time demos to keep everyone entertained.

I'll talk about the long journey it took to get us here, and how you can get involved.

 "From Virtualization Platform to Hybrid Cloud Solution: A Hands-On Account" ( 2024 )

Saturday at 12:00, 30 minutes, UB2.147, UB2.147, Virtualization and Cloud Infrastructure devroom Bella Khizgiyaev , slides , video

As organizations increasingly shift towards hybrid cloud, many are expected to face the following challenge: how to migrate virtual workloads from traditional virtualization platforms, like vSphere, oVirt or OpenStack, to a hybrid cloud solution, like OKD? There are a variety of strategies and tools available for such a transition to choose from. In this session, we will see one of these strategies, in which workloads keep running in virtual machines alongside containers on top of OKD, based on our recent experience in migrating real-world virtual machines from oVirt to KubeVirt using Forklift.

In mid-2023, our engineering team at Red Hat took the task of migrating all the virtual machines from an internal oVirt environment to a new OKD deployment. Our oVirt environment was in use for more than a decade, running hundreds of production VMs as well as VMs for development purposes. Given the nature of the workloads, it was impractical, and in some cases not even possible, to containerize the workloads. Therefore, we decided to go ahead and take Forklift for a spin, and move the VMs to run on OKD using KubeVirt, with minimal changes to the workloads that run inside them.

At first glance, this kind of migration appears fairly straightforward, doesn't it? Especially considering we now have access to mature tools for VM migrations, like virt-v2v and ovirt-imageio, that are orchestrated by the Forklift operator. And specifically, when migrating from oVirt to KubeVirt, the same virtualization stack is used on both ends. However, in reality, the migration process was more complex than anticipated, with quite a few factors to consider and operations that were needed to complement the functionality in Forklift.

This session presents tips and insights for migrations from legacy virtualization platforms to OKD, through our test case of transitioning from oVirt to OKD using Forklift. Without assuming prior knowledge of the platforms and tools discussed, we will cover the entire migration process using Forklift, and explain scripts we implemented and strategies we used for a smooth transition to OKD. Join us to learn from our journey, so by the end of this session you will have a clear understanding of the necessary steps to successfully execute your organization's transition projects.

 "Using linux-yocto as a Yocto BSP kernel" ( 2024 )

Saturday at 12:00, 25 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Embedded, Mobile and Automotive devroom Dmitry Baryshkov , slides , video

The linux-yocto kernel is widely known as a default OpenEmbedded / Yocto kernel, used for QEMU machines and several default Yocto BSPs. For other platforms it is use quite rarely. Nevertheless it is a kernel recommended by the Yocto Project Compatible Layer program. This talk is dedicated to the meta-qcom (Qualcomm Yocto BSP layer) swich from the Linaro-backed kernel to linux-yocto. It provides step-by-step guide and lists the positive sides and drawbacks of such conversion. Also it covers the peculiarities of the linux-yocto itself, it's config system based on the features files and config snippets.

 "Securely collaborate with CryptPad" ( 2024 )

Saturday at 12:00, 25 minutes, H.2213, H.2213, Collaboration and Content Management devroom Fabrice Mouhartem , slides , video

CryptPad is a full-fledged collaborative office suite that supports End-to-End-Encryption to ensure the privacy of its users. It manages to conciliate both by using the server only for the synchronisation of encrypted communications between collaborating editors of a document. CryptPad aims at providing an user-friendly interface, hiding the technicalities from end users, letting them focus on the document content instead.

However, the nowaday use of cryptography in CryptPad sometimes clashes with simplicity of use. Fortunately, the NLnet foundation helped us prepare the future by sponsoring the Blueprints project. This project allowed us to pinpoint different ways of improvement, some of which will be presented during this talk.

 "Reproducible Builds: The First Ten Years" ( 2024 )

Saturday at 12:00, 50 minutes, K.1.105 (La Fontaine), K.1.105 (La Fontaine), Main Track - K Building Holger Levsen , video

In this talk Holger "h01ger" Levsen will give an overview about Reproducible Builds: How it started with a small BoF at DebConf13 (and before), then grew from being a Debian effort to something many projects work on together, until in 2021 it was mentioned in an executive order of the president of the United States. And of course, the talk will not end there, but rather outline where we are today and where we still need to be going, until Debian stable (and other distros!) will be 100% reproducible, verified by many.

h01ger has been involved in reproducible builds since 2014 and so far has set up automated reproducibility testing for Debian, Fedora, Arch Linux, FreeBSD, NetBSD and coreboot.

 "VoLTE for FOSS" ( 2024 )

Saturday at 12:00, 25 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), FOSS on Mobile Devices devroom Marius Gripsgard , video

Marius has been playing around with VoLTE with Qualcomm Mediatek devices. He has got to the point of being able to make and receive calls and send and receive SMSs on Ubuntu Touch ported devices. It is still very hacky. Without any knowledge of the modem stack it seemed impossibly difficult, but now we are getting some insights into how it works it is possible to see how the binary blobs are doing stuff. The way forward was to run Android and capture all the calls made to the drivers. Sailfish have some of it working, so their solution provided tools too.

The fixes so far are very specific, every proprietary system has its own unique way of doing things. It is a horrible standard, and no carrier even follows the standard. The modem is a black box with no outputs. To be honest, when it works, we don’t know why it works. It works perfectly well, though, so result. He would like to share his results, to discuss with the wider community how we can roll this out to get more devices supported.

In the recent and coming years 2G and 3G are being phased out by network operators, especially on a lot of Mobile Foss OSes that are Halium based. This means that they will be useless because you can't make calls any more. It has been extremely difficult to enable VoLTE service due to all the proprietary components.

VoLTE stands for Voice over LTE, and LTE (Long Term Evolution) is better known as 4G. So essentially, VoLTE amounts to mobile calls over a 4G network.

 "Modern Email BoF, creating email-compat-data & more" ( 2024 )

Saturday at 12:00, 60 minutes, AW1.121, AW1.121, BOF - Track C Mechiel Lukkien

This BoF is for modern email developers/enthousiasts to meet each other and have discussions on email protocols/implementations. Join to say hi, and optionally bring ideas/topics to discuss.

Here's already one idea to discuss: The creation of "email-compat-data" (somewhat like browser-compat-data): asupport matrix of email protocol features vs clients and servers. "Email" consists of many protocols and extensions. The many clients and servers need to interoperate with each other. A database of implementations and supported features will make testing easier. A little coordination between clients and servers, to reach critical mass, can be helpful at times as well.

 "Observations on a DNSSEC incident: the russian TLD" ( 2024 )

Saturday at 12:00, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Stéphane Bortzmeyer , slides , video

On tuesday 30 january, a few days before FOSDEM, people noticed that Web sites under .ru (Russia) were all down. Because of the war, many people speculated this was an attack. But, actually, the problem came from a DNSSEC error in the top-level domain .ru and, as of today, nothing indicates it was an attack. We will describe the problem, the technical observations, possible causes and a few lessons.

 "Data Security and Storage Hardening in Rook and Ceph" ( 2024 )

Saturday at 12:05, 30 minutes, K.3.201, K.3.201, Software Defined Storage devroom Federico Lucifredi Sage McTaggart , video

We explore the security model exposed by Rook with Ceph, the leading software-defined storage platform of the Open Source world. Digging increasingly deeper in the stack, we examine options for hardening Ceph storage that are appropriate for a variety of threat profiles.

 "Gleam in the machine: phantom types and the builder pattern." ( 2024 )

Saturday at 12:05, 20 minutes, K.4.601, K.4.601, Erlang, Elixir, Gleam and Friends devroom Hayleigh Thompson , slides , video

Discussions about types often begin and end with the assertion that they make our programs safer, but how to get the most out of types can be a bit of a mystery. With the development of a type system for Elixir, multiple explorations for Erlang, and the steady growth of Gleam there is increasing demand for practical discussions on how types can be used to write better programs.

This talk explores one such technique, known as "phantom types". We will learn what phantom types are, why they can be useful, and see some examples of Gleam packages employing them in the wild to achieve safer APIs.

 "Recycle, Reuse, Rebuild: Transformative Tactics for Turning your Brownfields Green" ( 2024 )

Saturday at 12:05, 25 minutes, H.1301 (Cornil), H.1301 (Cornil), JavaScript devroom Adam Juran , slides , video

In early 2023, having just started as Director of Engineering at a US startup, I was immediately faced with a fascinating challenge: a legacy technology landscape resembling a Rube Goldberg machine—a diverse mix of tools and systems. Join me in 'Recycle, Reuse, Rebuild: Transformative Tactics for Turning Your Brownfields Green' as we navigate the intricacies of transforming this intricate system. I'll share experiences, guide you through my decision-making process, and impart valuable lessons learned.

Unlocking Transformation

Explore the challenges of leveraging open source tools, particularly those resistant to customization. We'll address the common temptation to 'burn it all down' and start anew, emphasizing the strategic middle path of transformation.

Navigating Solution Evolution

Discover how to plan for loosely coupled systems, decide when to repair or rebuild, and strike the right balance between open source and custom solutions.

Empower Your Development

This isn't just about strategies; it's a dynamic conversation aimed at empowering you to transform your brownfields into greener, more sustainable JavaScript landscapes.

This session will be informative and fun for anyone who's ever confronted the joys of working with legacy code.

 "Network Topology Discovery: how it really works" ( 2024 )

Saturday at 12:10, 25 minutes, UB5.230, UB5.230, Network devroom Victor Kirhenshrtein , slides , video

Feel like you’re not quite sure you know about all the devices in your network? This is when network topology discovery function comes in very handy. Although, applying it might not be that straightforward if you don’t know what it consists of and how to do it.
This presentation outlines the network topology discovery in detail, told by the monitoring platform’s NetXMS (netxms.com) developers team with decades of experience. They will cover such topics as - what is LLDP and CDP and how they can be used as sources of info for the topology discovery - how Spanning Tree can be such a source too (or not at all!) - what is FDB and how it can be used to get information about the end nodes in your network - automatic device discovery

Finally, the NetXMS team will guide you through the network preparation guidelines, using the NetXMS use case and their hands-on experience to show you the A to Z setup process. There are many ways where you can go wrong in this process, so the team will cover also most popular pitfalls. Please, do come if your areas of interest are network monitoring, administration and architecture, if you’d like to be more efficient in your network audit — and, generally, if you are up for a great 40 minutes spent! Network topology discovery process in focus — a detailed presentation for sysadmins, network engineers, telecom integrators, and everyone interested in networks.

 "Verilog-AMS in Gnucap" ( 2024 )

Saturday at 12:10, 30 minutes, K.4.201, K.4.201, Libre-SOC, FPGA and VLSI devroom Felix Al Davis , slides , video

Verilog-AMS is a standardised modelling language widely used in analog and mixed-signal design, but without an open reference implementation. Gnucap is a modular mixed-signal circuit simulator that partially implements Verilog-AMS, that aspires to eventually implement the complete language. In 2023, with NLnet support, we made significant progress in support for Verilog-AMS, the "analog" part, also known as Verilog-A, both on the simulator side and in the model compiler. For 2024, we will extend the work, concentrating on three tasks. The first is extensions to modelgen, the model compiler, essentially completing the analog part of Verilog-AMS, with some digital. The second task is enhancements to the simulator, mostly related to fast simulation of large mixed circuits, with both analog and digital parts. The first and second tasks are related to the "mixed-signal" aspect of Verilog-AMS. The third task addresses interoperability with other software, including schematic entry and layout, ability for Gnucap to use device models from other simulators, for modelgen to generate code to be used with other simulators, and porting some analysis commands.

 "Kubernetes Operators: Expanding Automation in Containerized Applications" ( 2024 )

Saturday at 12:15, 30 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Containers devroom Edith Puclla , slides , video

Kubernetes Operators have emerged as a pivotal force in container orchestration. In this talk, I will explain the core concepts of Kubernetes Operators and their significant impact on the field. I will illustrate why Kubernetes Operators are essential, explore practical use cases, and demonstrate how they increase the capabilities of containerized applications.

I will offer an introduction to Kubernetes Operators, highlighting their importance. We will explore the dynamic Kubernetes Operator ecosystem and its crucial role in optimizing application operations. To conclude, I will present compelling case studies of organizations that have effectively utilized Operators to improve application scalability, reliability, and efficiency.

This Talk is tailor-made for those who want to cut through the complexity and understand how Kubernetes Operators simplify application management. Whether you're a newcomer to Kubernetes or a seasoned pro, this presentation offers valuable insights.

 "Beyond Ratings: Empowering Communities through Wikirate for Transparent Corporate Impact Research and Analysis." ( 2024 )

Saturday at 12:15, 15 minutes, UB4.132, UB4.132, Open Research devroom Vasiliki Gkatziaki , slides , video

Wikirate is an open source crowdsourcing platform powered by a global community that collects, analyzes and shares data on company commitments, actions and impacts on people and the planet. Wikirate aims to lead the way in advancing corporate accountability through the utilization of open research and open data. Wikirate has been instrumental in democratizing information, fostering collaboration, and driving positive change across industries. In our talk, we will focus on the specifics of the platform, spotlighting strategies to empower users to add, verify, analyze, and share accessible, reliable data.

 "Power Grid Model: Open source high performance power systems analysis" ( 2024 )

Saturday at 12:20, 15 minutes, H.2214, H.2214, Energy: Reimagining this Ecosystem through Open Source devroom Nitish Bharambe , slides , video

The electricity grid faces challenges such as rising electricity demand and the integration of solar panels, wind turbines, electric vehicles (EVs), heat pumps, etc. Moreover, smart technologies are being added, providing a wealth of data. The industries associated with these challenges must perform complex calculations to assess the present and future state of the grid. The vast scale and diverse applications demand faster calculations that are cross-platform compatible.

Power Grid Model is an open-source library with a C++ core and a well-defined Python API. It conducts state estimation, power flow, and short-circuit calculations for symmetric/asymmetric grids. The library is actively employed in 10+ applications within Alliander. Other major grid operators in the Netherlands, as well as researchers and stakeholders throughout the grid technology chain, use the library to conduct academic, technical, and feasibility studies.

In this presentation, we will explore the power-grid-model library, its capabilities, active and future use cases.

To know more about the power-grid-model project, visit: https://lfenergy.org/projects/power-grid-model/

 "A simple caching service for your CI" ( 2024 )

Saturday at 12:20, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Rémi Duraffort , slides , video

Kisscache is a simple caching service developed by Linaro for the LKFT (Linux Kernel Functional Testing project at Linaro) project to cache test artefacts like kernel, dtb and root filesystem. While pretty simple, KissCache can cahe https urls without any hacks that proxies like squid will require.

Kisscache is intensively used at Linaro to reduced the amount of data downloaded by the CI system while improving reliability with automatic retries. Since it's introduction, two years ago, KissCache was able to save 1TB of data transfer and decrease the amount of network failures.

In this short introduction, I will show you the features that make this service so efficient for LKFT.

 "Bending geographic maps for enhanced railway space-time diagrams" ( 2024 )

Saturday at 12:25, 20 minutes, K.4.401, K.4.401, Railways and Open Transport devroom Alexis Jacomy , slides , video

Space-Time diagrams are crucial schematics for organizing railway traffic. However, their symbolic representation hides the reality of the railway infrastructure that supports the traffic. In Open Source Railway Designer, we found it necessary to enhance the context related to the 'space' component of this diagram.

We developed a custom projection, bending a map to position the origin at the bottom, the destination at the top, and the path relatively straight in between. The outcomes reveal a vertically aligned map following the Space-Time diagram, but with precise infrastructure details alongside geographic context using Open Street Map data.

This presentation will delve into the technique, discussing the calculations, implementation methods, as well as my experience navigating this challenge as a graphics developer without domain knowledge.

 "openQA - How do you test a testing software?" ( 2024 )

Saturday at 12:25, 20 minutes, K.3.401, K.3.401, Perl and Raku devroom Tina Müller , video

openQA is a software for automated testing of installing and running distributions, written in Perl with a bit of C++.

In this talk I want to give you a short introduction of what you can test with openQA. In the second part I want to show how our team develops this software, how we test and deploy it and how we got to over 95% code coverage.

 "Shig: distribute and clone live streams among Fediverse instances" ( 2024 )

Saturday at 12:30, 35 minutes, H.1302 (Depage), H.1302 (Depage), Real Time Communications (RTC) devroom Enrico Schwendig , slides , video

Shig is a federated live stream broadcasting service designed to distribute live streams among cross-domain Fediverse instances on the backend side via WebRTC. The service has an ActivityPub implementation and clones the stream on the backend side. Shig is designed using the WHIP/WHEP approach for both incoming and outgoing streams, eliminating the necessity for an additional Signal Server. The "cloning" of live streams across domain boundaries enables different kinds of live video content distribution, as well as interactions with live streams, such as multi-guest streaming.

Links: https://github.com/shigde/ https://shig.de https://mastodon.social/@shig

Docu: https://github.com/shigde/sfu/blob/main/docs/README.md https://github.com/shigde/sfu/blob/main/docs/use-cases.md

 "Making VirtIO sing - implementing virtio-sound in rust-vmm project" ( 2024 )

Saturday at 12:30, 30 minutes, UB2.147, UB2.147, Virtualization and Cloud Infrastructure devroom Dorinda Bassey Matias Vara Larsen , slides , video

In automotive, Android guests are currently used for deploying infotainment systems. To support Android as a guest, the Virtual Machine Monitor (VMM) requires a set of virtual hardware like sound, video and networking. In this context, VirtIO has spreaded as a standard interface for virtual devices. Having VirtIO for hardware allows Android to be deployed in different VMMs that support VirtIO like Crosvm or QEMU. This talk presents the current efforts to implement virtio-sound for infotainment systems in automotive. The implementation of virtio-sound can be split into two: the device or backend and the driver or the frontend. Generally speaking, the driver runs in the guest OS and it is not different from other sound drivers. The sound driver exposes an API to the user-application in guest and then communicates to the device to serve those requests like playing a sound or recording audio. The device usually runs in the host and processes the requests that come from the driver. There are different ways to implement the device, e.g., as a built-in device in QEMU, using vhost or vhost-user. In this talk, we talk about our decision to implement virtio-sound as an vhost-user device. In this case, the device runs in the host machine as a separate process independent of the QEMU process. This deployment has benefits like reducing the attack surface of QEMU and also enables more granularity in setting up rights for the device process. Our implementation is able to handle different audio backends by relying on a generic interface. Currently, we support the pipewire and Alsa as audio backends. During this presentation, we propose to share our journey in building the virtio-sound device, including improving its specification, fixing bugs in the virtio-sound driver, and building it as a rust-vmm project. We also plan to outline a roadmap for the future like adding support for other audio backends like Gstreamer.

 "Efficient Integration Testing in Go: A Case Study on Dapr" ( 2024 )

Saturday at 12:30, 30 minutes, UD2.218A, UD2.218A, Go devroom Josh van Leeuwen , slides , video

No one really loves testing, however it becomes the most critical part of any software project as the size and complexity grows. Discover the strategies behind creating a low-touch developer friendly framework for integration testing through our work on Dapr. This talk highlights the design philosophy and practical steps taken to build a framework that not only speeds up test scenario creation but also makes ad hoc testing for new features and bug reproduction a breeze. The framework’s user-friendly design encourages wide participation from developers, fostering a collaborative testing culture on a project. Attendees will gain insights into efficient testing practices, learning how to apply these strategies to enhance their own Go projects.

github.com/dapr/dapr

 "gen_statem Unveiled: A Theoretical Exploration of State Machines" ( 2024 )

Saturday at 12:30, 20 minutes, K.4.601, K.4.601, Erlang, Elixir, Gleam and Friends devroom Nelson Vides , slides , video

Come with me on a journey through the realms of state machines, with the practical brilliance of Erlang’s gen_statem behaviour as our light beam. Building on state machines as a model to reimplement technical debt, we will traverse the intersection of gen_statem practical implementation and the theoretical foundations of state machines. Using real-world application examples, we will go over from the industry beast to the theoretical abyss, revealing the mathematical elegance inherent in state machines and its more powerful automata siblings. Bridging this gap, we will empower Erlang developers to architect solutions that go beyond conventional patterns, with concrete examples and plenty of code to read, providing the attendees with a comprehensive vision to harness the full potential of gen_statem.

 "Hardware pointer checks in a Rust application near you?" ( 2024 )

Saturday at 12:30, 20 minutes, H.1308 (Rolin), H.1308 (Rolin), Rust devroom Lewis Revill , video

This talk presents a case study in taking a security-focused application to the next level by modifying the Rust compiler to target a capability-based architecture.

We will discuss CHERI, a system that enables hardware enforcement of safety constraints at runtime using capabilities, and how we have added support for CHERI to the Rust compiler in order to improve the security of CyberHive Connect, an application that implements an end-to-end encrypted mesh network.

Connect can already boast a very high level of security when we consider the protocols it uses, and we can argue that the application itself has many potential vulnerabilities eliminated by being written in Rust. However, just like most real world applications, Connect needs to make use of unsafe code in areas such as the interface with the underlying operating system. This exposes an attack surface in the form of code that the compiler can't guarantee will be safe at runtime.

If, however, we make modifications to the Rust compiler to support transferring knowledge about pointer provenance, bounds and other access restrictions to CHERI's capability-based runtime enforcement, then in many cases we should be able to eliminate the potential for unsafe situations to occur.

This talk will demonstrate what we have managed to achieve in terms of producing a modified Rust compiler that can target CHERI architectures. We will give an overview of what problems were solved by doing this and how we worked towards getting our real world Rust application running on CHERI.

 "An in-depth look at JFR in GraalVM and how it compares to JFR in OpenJDK" ( 2024 )

Saturday at 12:30, 25 minutes, UB5.132, UB5.132, Free Java devroom Robert Toyonaga , slides , video

GraalVM Native Image is a technology that allows users to transform their Java programs into ahead-of-time compiled executables. However, until recently, Native Image was missing a key tool that Java developers use to gain insight into what an application is doing: JDK Flight Recorder. JFR has been re-implemented in Native Image so that it can be included with executables and behave with a similar experience to JFR in OpenJDK. In this presentation, we'll peel back the layers and give you a tour of some of the most vital parts of JFR's inner workings in Native Image. At various points, we'll stop and draw comparisons to how JFR is implemented in OpenJDK.

From this presentation, listeners will get exposure to some of the unique challenges to developing low-level implementations for Java-on-Java and ahead-of-time compiled applications. They will also gain a better understanding of how key JFR components work under-the-hood.

 "AOMP Compiler Kung Fu: Mastering Optimization Flags and Environment Variables for Performance" ( 2024 )

Saturday at 12:30, 30 minutes, UA2.118 (Henriot), UA2.118 (Henriot), HPC, Big Data & Data Science devroom Jan-Patrick Lehr , video

The world’s largest supercomputers get most of their potential from their GPU accelerators. As such, it is essential to target GPUs when running on such powerful machines. Given the desire for portability of applications, OpenMP offloading is a popular way to accelerate applications on GPUs.

This talk presents the ROCm OpenMP offloading compiler from two perspectives: compiler flags and compiler/runtime implementation. Given that it may be critical to use the right compiler flags, the talk presents some of the tuning knobs that the ROCm OpenMP compiler exposes to users. It will go into more detail of what optimization, feature, and parameter the specific compiler flags enable. For each of the compiler flags listed, the talk will present information on what occurs in the compiler and the runtime library. For several of these switches, the talk presents performance results.

In particular, the talk covers the high-level flag -fopenmp-target-fast and what optimizations are enabled by that switch. It will then go into more detail about the specific flags for the selected underlying optimizations and their user-facing parameter options that allow for fine-tuning in certain scenarios. Specifically, the talk covers the following flags:

  • -fopenmp-gpu-threads-per-team: This switch controls kernel launch parameters considered during the compiler’s code generation phase, which can impact things like register allocation.
  • -fopenmp-target-big-jump-loop: This switch enables a more optimized form of loops for running on the GPU that is closer to traditional block-languages like CUDA or HIP.
  • -fopenmp-target-no-loop: This switch enables the generation of CUDA-like code without any loop executed on the device. The talk outlines which conditions must be met to allow the compiler to generate such GPU code.
  • -fopenmp-target-xteam-reductions: A special form of reduction kernels that can greatly benefit the performance of reductions. One of its main tuning knobs is the blocksize.
  • -fopenmp-target-xteam-reduction-blocksize: The xteam reductions blocksize and what are the implications.
  • -fopenmp-force-usm: This flag is a convenient switch that enables the compiler to emit code as if the user specified #pragma omp unified_shared_memory.

In addition to the compiler flags, the runtime offers additional configurability via environment variables. Some of these variables influence the very same mechanisms, whereas other provide separate mechanisms. The talk gives an overview of some of these variables and how they influence execution.

The repositories can be found at https://github.com/ROCm. The AOMP development compiler (with build recipes etc) can be found at https://github.com/ROCm/aomp

 "Collabora Online: WASM" ( 2024 )

Saturday at 12:30, 25 minutes, H.2213, H.2213, Collaboration and Content Management devroom Caolán McNamara Thorsten Behrens , slides , video

Collabora Online is an online collaborative Office suite which you can integrate into your own infrastructure. Typically comprised of a JavaScript browser side client communicating with a remote server side instance. Here we demonstrate Collabora Online serving a WASM solution to enable the JavaScript client to communicate with a WebAssembly server instance executing within the browser to allow editing of a document while disconnected from the network. Providing Collabora Online, off-line.

 "The API Landscape : mapping the 2000+ API and opensource tooling for Developers" ( 2024 )

Saturday at 12:30, 30 minutes, AW1.126, AW1.126, APIs & friends devroom Mehdi Medjaoui , video

Since 2017, I monitor all API Developer tools and companies on https://apilandscape.apiscene.io/ and in this talk I would like to present latest trends and updates to the DevRoom audience. Especially, we will talk about how Async/Real time, OpenAPI Spec API Security and Privacy, API Regulations, AI and APIs, GraphQL are consolidating the landscape.

 "Embedded Security 2023" ( 2024 )

Saturday at 12:30, 25 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Embedded, Mobile and Automotive devroom Marta Rybczynska , slides , video

Much has happened in the embedded security field in 2023: the raise of SBOM, discussions on the Cyber Resiliance Act (CRA), important vulnerabilities and updates in major projects.

In this talk Marta is going to present her subjective overview of embedded security in 2023 and a list of items to watch in 2024.

 "Universal Serial Bug - a tale of spontaneous modem resets" ( 2024 )

Saturday at 12:30, 40 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), FOSS on Mobile Devices devroom Sebastian Krzyszkowiak , slides , video

Case-study on how we (re)discovered and worked around a bug in USB 2.0 specification that leads to race conditions when resuming from USB suspend, which affected the cellular modem module used in the Librem 5 phone.

 "From Grassroots to Standard Practice: how an Open Science society shaped university initiatives" ( 2024 )

Saturday at 12:30, 15 minutes, UB4.132, UB4.132, Open Research devroom Violeta Menéndez González Danielle Kurtin , video

Join us for a journey through the inception, growth, and eventual challenges faced by the Reproducibility Society at the University of Surrey, a grassroots initiative that sparked a movement in open and reproducible science collaboration. Established in June 2019, the society brought together research students from diverse disciplines to foster discussions on transparent and rigorous research methods. Drawing inspiration from the UK Reproducibility Network and various postgraduate-led initiatives nationwide, the society successfully influenced university policy, creating a supportive community for skill-sharing, motivation, and resource exchange. An initially successful project central to the society was the Monthly Mini Hacks. These were workshops that addressed the coding learning curve and promoted collaboration among students and research staff. Using Open Science Framework and open access publishing platforms, we facilitated hands-on coding experiences where information was freely available to everyone.

This talk delves into the story of student collaboration, the highs and lows of open science advocacy, and the valuable lessons learned from the challenges encountered. The Surrey Reproducibility Society experienced triumph, such as university-wide implementation of policies championed by the society, and failures, including the societies eventual dissolution. This talk reflects on the society’s journey, sharing tools for attendees to implement in their own initiatives, and learn from the success and struggle of our grassroots initiative. We explore the potential for future endeavours, emphasising the importance of adaptability, community engagement, and resilience in advancing the cause of open and reproducible science within the academic landscape. We intend for attendees to leave our talk wiser than we were, inspired to make positive change, and equipped with the tools to do so.

 "Unraveling JavaScript's Heart: Mastering the Event Loop for Peak Performance" ( 2024 )

Saturday at 12:35, 30 minutes, H.1301 (Cornil), H.1301 (Cornil), JavaScript devroom Antoine Pairet , slides , video

Join Antoine Pairet, CTO of Rosa, as he leads a deep dive into the core of JavaScript performance: the event loop. This session will demystify how JavaScript handles asynchronous operations, offering insights into optimizing your code for maximum efficiency. Discover the secrets behind event-driven programming, learn best practices for avoiding common pitfalls, and explore advanced techniques to enhance your applications' responsiveness and speed.

 "ipt_geofence: Protecting Networks using GeoFencing, Blocklists and Service Analysis" ( 2024 )

Saturday at 12:35, 20 minutes, UB5.230, UB5.230, Network devroom Luca Deri , slides , video

Cybersecurity attacks are constantly increasing and simple IP/port-based policies are no longer enough. GeoIP is a popular technique used to limit access to selected resources from specific locations, and IP blocklists contain lists of IP addresses that have a low reputation and for which communications (from/to) should be forbidden on healthy networks. In addition to this, IP addresses that have shown malicious behaviour (e.g. multiple service failures or WordPress attack attempts) should also be blocked.

This talk introduces ipt_geofence, an open-source tool for Linux and FreeBSD that combines in one tool IP geofencing, service (e.g. SSH, Web and mail) analysis, and blocklists. It allows malicious hosts to be blocked and hence protect services in a simple way without having to use multiple tools and complex administration practices to implement what ipt_geofence offers out of the box.

 "GridSuite and PowSyBl: an Open Source approach to develop advanced tools for grid analysis and simulation of power systems." ( 2024 )

Saturday at 12:40, 15 minutes, H.2214, H.2214, Energy: Reimagining this Ecosystem through Open Source devroom heyberger , slides , video

During these last two decades, transmission system operators (TSOs) have been facing profound changes such as penetration of renewables, DC networks, redefinition of European market mechanisms leading to major evolutions in the way to operate the electrical transmission grids. The goal of carbon neutrality implies that most of the challenges for TSOs are still to come. All those changes imply drastic changes in the way to perform grid analysis and have appropriate computation modules to perform efficient security assessment. Legacy tools are evolving slowly with low information about used approximations. RTE, the French TSO, believes that Open Source is the perfect answer to build power system tools in an efficient, flexible, transparent, and collaborative way. RTE has significantly invested in these Open Source tools and would like to share his experience with demo of tools currently in operation based on PowSyBl framework.

 "Crash-consistent group snapshots in CephFS for k8s CSI and you!" ( 2024 )

Saturday at 12:40, 45 minutes, K.3.201, K.3.201, Software Defined Storage devroom Patrick Donnelly Leonid Usov , slides , video

Crash-consistent snapshots of storage volumes are a required feature in today’s storage systems. In Kubernetes, the CSI protocol introduced the VolumeGroupSnapshot concept which requires crash-consistent snapshots be guaranteed within the context of volumes, which may be block devices or mounts on a distributed POSIX file system such as CephFS. This talk will cover the challenges and mechanisms to achieve this design goal. In particular, we will show how CephFS provides consistency by exposing a new API to pause write IOs to a set of volumes for the duration of the snapshot process. We will explore the new API, the mechanisms used to achieve this IO pause and discuss broadly the software changes made to Ceph.

 "Reinventing database exploration with Azimutt" ( 2024 )

Saturday at 12:40, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Loïc Knuchel , video

Struggling with databases? Me too. Well, that was before.
As developers, we often interact with databases, whether to understand the data model or debug our application.
After more than 50 years of existence and thousands of tools, we still rely on our basic SQL client: query file and a results table.
No advanced tool has really gained widespread adoption.

This is the challenge I set for myself: create the daily tool for developers to interact, explore, and collaborate with their databases 🤯
I've checked all the boxes: a beautiful and modern SaaS, fully open-source, with a generous free plan, but most importantly:

  • a blend of schema and data exploration and documentation
  • an ultra-simple DSL to design and evolve your schema
  • made for complex databases
  • analysis of best practices

In this talk, I'm discussing the needs I've identified, how Azimutt addresses them, including a demo, as well as my process of creation, past and future.

 "FOSS CAD/EDA tools supporting the open access PDK initiative" ( 2024 )

Saturday at 12:45, 50 minutes, K.4.201, K.4.201, Libre-SOC, FPGA and VLSI devroom Wladek Grabinski , slides , video

The semiconductor industry has been evolving and innovating for the past 75 years, ever since the first semiconductor transistor was invented. This rapid growth is driven by the direct and proactive contribution of the FOSS CAD/EDA to the entire technology flow: from state-of-the-art semiconductor technologies, device level compact/SPICE modeling, its Verilog-A standardization to advanced IC designs for various HiTech applications. However, the semiconductor industry also faces many challenges in maintaining the growth of its workforce with skilled technicians and engineers. To address the increasing need for well-trained workers worldwide, we need to find innovative ways to attract skilled talent and strengthen the local semiconductor workforce ecosystem. The FOSS CAD/EDA tools with the recently available open access PDKs provide a new platform to connect IC design beginners, enthusiasts and experienced mentors to benefit from the collaboration opportunities enabled by the fast-growing open-source IC design movement. FOSS IC design collaboration is increasingly possible due to the rapid growth of open access PDKs recently offered by SkyWater, GF and IHP. This paper demonstrates the FOSS CAD/EDA contribution to the SPICE/Verilog-A modeling/standardization, compete IC design flow (Xschem, Qucs-S, ngspice, Xyce, OpenVAF, OpenEMS, Magic, kLayout, OpenRoad) as well as selected open source analog/RF and digital IC design examples.

 "MARECO algorithm: how to drive a train using the least amount of energy" ( 2024 )

Saturday at 12:45, 20 minutes, K.4.401, K.4.401, Railways and Open Transport devroom Alex Rolland , slides , video

Trains are planned with margins compared to their fastest possible drive. Without them, they would not be able to catch up in case of a delay. A train departing 5 minutes late would arrive at least 5 minutes late. A driver accelerating or braking a bit slower than planned would inevitably be late. The entire transportation plan would fail.

Those margins/allowances consist of adding extra time to the total running time. This implies planning trains with a lower speed than the maximum they could physically drive.

There are many ways to lower the speed of a train along its trip, but one of them is particularely efficient in terms of energy savings. The algorithm MARECO, developped by SNCF, details an entire strategy for this purpose: how to plan a train that would intelligently drives slower in a way that consume the least amount of energy ?

In this talk we will go though the main ideas of the algorithm, then we will compare its efficiency to other margin distribution stratgies on a few relevant examples, and finally we will discuss the impact of this algorithm on train planning and operation.

 "Bridging contributor's knowledge and the technology of The Turing Way, an open guide for data science" ( 2024 )

Saturday at 12:45, 15 minutes, UB4.132, UB4.132, Open Research devroom Jim Madge , video

The Turing Way is a handbook for reproducible, ethical and collaborative data science. The book is a collaborative effort; over 470 contributors from many, diverse backgrounds share their wisdom in its pages. The size of the community means that not everyone will share the same technical skills, preferred tools, or ways of working. The book is built from Markdown source files using JupyterBook and work is largely coordinated on GitHub. We want to maintain and promote the benefits of version control, plain text and open working. However, this can clash with the experience and expectations of collaborators, raising the barrier to contribution and potentially making people feel unwelcome. I will talk from my perspective as an RSE and co-lead of The Turing Way's infrastructure working group about lessons in bridging the knowledge of our community and the technology of how the book is produced.

 "Corinna—Perl's new object-oriented system" ( 2024 )

Saturday at 12:50, 35 minutes, K.3.401, K.3.401, Perl and Raku devroom Ovid , video

In 2018, I started designing a new object system for Perl, codenamed Corinna. Eventually, a team grew up around the design and with the release of Perl v5.38.0, the first bits of the new system are in place.

This is a new talk giving a quick walkthrough of the features of Corinna and why it's so powerful.

 "Composefs and containers" ( 2024 )

Saturday at 12:50, 30 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Containers devroom Alexander Larsson , slides , video

Composefs is new filesystem that supportsvalidating, content-sharing readonly images. It has recently had an 1.0 release, and has started to be used for image-based operating system. However, composefs is also a great fit for container image.

This talk will explain what composefs is and how it works, and then talk about what advantages composefs brings to containers. It will also talk about the current level of support for composefs in the podman image store, and show some demos of it.

 "MicroBlocks Workshop" ( 2024 )

Saturday at 12:50, 60 minutes, J.1.106, J.1.106, FOSDEM junior Kathy Giori

MicroBlocks is a blocks programming language for physical computing inspired by Scratch. It runs on microcontrollers such as the micro:bit, Calliope mini, AdaFruit Circuit Playground Express, and many others.

Anyone aged 7 to 17 can visit the workshop and learn how to program microcontrollers with MicroBlocks.

Registration will be required for this session. Use the following link to register.

 "Proving Performance" ( 2024 )

Saturday at 12:55, 40 minutes, H.1308 (Rolin), H.1308 (Rolin), Rust devroom Nikolai Vazquez , slides , video

Software engineers choose Rust for its safety and performance baseline. Wizards use Rust's dark arts to improve performance by chanting cursed unsafe-yet-sound expressions. Whether you’re an engineer or a wizard, this talk will give you the tools and best practices to correctly measure and explore Rust’s performance claims against your projects. And wizards will learn when the performance benefits are worth risking nasal demons with unsafe code.

 "Guess Less with Erlang Doctor" ( 2024 )

Saturday at 12:55, 20 minutes, K.4.601, K.4.601, Erlang, Elixir, Gleam and Friends devroom Paweł Chrząszcz , video

It is tough to figure why Erlang or Elixir code is failing, or how unknown software is working. When confronted with an unusual error, we might search for it in the code, which often gives multiple results, so we resort to guessing. We might also decide to trace with tools like dbg or recon, but here we need to guess, which functions to trace. I would like to show you a different approach, where the first step is to trace multiple modules or even whole apps. Then you can query, analyse, process and even execute the collected traces. The tool itself is so simple, that you will be able to use it instantly. It is also battle-proven, as I have used it numerous times to debug the MongooseIM project, which I am leading. Limit unnecessary guesswork and have more time for creative work.

 "Network Function Abstraction: A delicate question of (CPU) affinity ?" ( 2024 )

Saturday at 12:55, 25 minutes, UB5.230, UB5.230, Network devroom Hadi Rayan Al-Sandid Nathan Skrzypczak Hedi Bouattour , slides , video

Software-defined networking workloads are deployed higher and higher up the stack, in virtual machines, now containers, to leverage all the perks of these abstractions. But this comes at a cost, as being further away from the silicon makes reaching high throughputs more difficult.

In this talk, we will cover CPU resources management, including challenges related to CPU affinity and cgroups, and strategies to obtain better performance in network workloads at different levels of abstraction.

For demonstration purposes, we will discuss network workloads deployed on Calico-VPP powered Kubernetes clusters, and the performance gains observed using CPU placement strategies.

 "Foreign Function & Memory API" ( 2024 )

Saturday at 13:00, 30 minutes, UB5.132, UB5.132, Free Java devroom Maurizio Cimadamore , slides , video

JNI is, to date, the only way to access native libraries from Java code, but JNI's brittle and convoluted programming model makes it tedious to use at scale. But no more: JDK's 22 Foreign Function & Memory API provides a safe, modern and efficient way to access foreign memory and code from Java.

 "OpenStack Cluster Installer (aka: OCI): the Debian way to manage your OpenStack deployments" ( 2024 )

Saturday at 13:00, 30 minutes, UB2.147, UB2.147, Virtualization and Cloud Infrastructure devroom Thomas Goirand , slides , video

OCI (OpenStack Cluster Installer) is a software to provision an OpenStack clusters automatically. This package installs a provisioning machine, which uses the below components:

  • DHCP server (isc-dhcp-server)
  • PXE boot server (tftp-hpa)
  • web server (apache2)
  • puppet-master

Once computers in the cluster boot for the first time, a Debian live system is served by OCI over PXE, to act as a discovery image. This live system then reports the hardware features back to OCI. Computers can then be installed with Debian from that live system, configured with a puppet-agent that will connect to the puppet-master of OCI. After Debian is installed, the server reboots, and OpenStack services are provisioned, depending on the server role in the cluster.

OCI is fully packaged in Debian, including all of the Puppet modules. After installing the OCI package and its dependencies, no other artificat needs to be installed on your provisioning server, meaning that if a local debian mirror is available, the OpenStack cluster installation can be done completely offline. This presentation will introduce OpenStack Cluster Installer, and explain how it works, its general principle, and why it's a very good solution to manage your OpenStack deployment on Debian.

See details of the project here: https://salsa.debian.org/openstack-team/debian/openstack-cluster-installer

 "Effortless Bug Hunting with Differential Fuzzing" ( 2024 )

Saturday at 13:00, 30 minutes, UD2.218A, UD2.218A, Go devroom Maciej Mionskowski , slides , video

Differential fuzzing is a powerful fuzzing technique for uncovering hidden bugs and vulnerabilities in code. Learn how to integrate this tool into your development process, enhancing your software's reliability and security.

 "Extracting Mini-Apps from HPC software for Total Cost of Ownership optimized systems procurement" ( 2024 )

Saturday at 13:00, 30 minutes, UA2.118 (Henriot), UA2.118 (Henriot), HPC, Big Data & Data Science devroom Tim Heldmann , slides , video

When procuring new hardware for an HPC system, the hardware vendors can be provided with targets to hit. This can either be performance per dollar but more recently also includes metrics like performance per watt. Industry standard benchmarks like Linpack, Stream, or Spec are not necessarily representative for the jobs that will actually run on the system and their predicted performance per dollar or watt might not be accurate when users run their tasks on the system. At the association for national high performance computing (NHR) we are developing a pipeline to generate a representative benchmark collection from an observed job mix to provide to hardware vendors. One essential step is the so called mini-app extraction. A mini-app is a standalone kernel of a given HPC application, making it significantly smaller in terms of lines of code but retaining the computational characteristic of the original application. Based on these mini-apps vendors can better suite there hardware offerings to the expected use. As mini-apps usually need to be crafted manually by domain experts, we are developing Mini-Apex. Mini-Apex is an open source compiler tool based on Clang, able to help extract mini-apps from C and C++ applications. It uses a MetaCG to generate a call-graph with attached analysis results, and PIRA to identify the kernel. It then extract the kernel-function, as well as all necessary sub-routines, variables, classes, structs, and definitions into a mini-app, reusing most of the build system of the original application.

 "Passbolt - Open source password manager for teams" ( 2024 )

Saturday at 13:00, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Remy Bertot , slides , video

Passbolt is an open source password manager designed for collaboration. In this presentation we will dig into the new product functionalities developed in the course of 2023, as well as the results of the latest security audits. Finally we will touch base on the roadmap for 2024 and beyond.

 "LFEnergy SEAPATH - Easier Operations in Electrical Substations through Digital Twin Empowerment" ( 2024 )

Saturday at 13:00, 15 minutes, H.2214, H.2214, Energy: Reimagining this Ecosystem through Open Source devroom Erwann Roussy Paul Le Guen de Kerneizon , slides , video

Managing electrical substations poses significant challenges. The high costs associated with hardware and equipment, as well as the high level of knowledge necessary in electrical engineering, make the work and research in this field accessible only to a select few major electrical companies. The LFEnergy SEAPATH project introduces a paradigm shift in this sector. By aggregating third-party FOSS components, it brings virtualization to electrical grid substations and provides a robust solution for critical infrastructures, enhancing their adaptability and increasing their interconnections.

The primary objective of SEAPATH is to transition from a hardware-centric to a software-centric model within substations, leading to reduced costs, improved adaptability, and simplified maintenance and updates. Moreover, the project aims to democratize participation in the field. SEAPATH eliminates the need for specialized equipment in both the construction and testing phases of a substation system. The project further emphasizes an open-source philosophy, incorporating meaningful documentation and a transparent strategy.

This presentation will delve into Savoir-faire Linux's experience in replicating a SEAPATH infrastructure in their laboratory. It will provide insights into the architecture of SEAPATH and the essential tools employed for conducting functionnal tests. The tools showcased encompass Precision Time Protocol (PTP) at software level, IEC 61850 Sample Value simulation as well as latency measurements . Crucially, this talk aims to communicate the inclusivity of SEAPATH, making it accessible to a broader audience. By eliminating the need for specialized expertise in electrical engineering, SEAPATH opens the door for researchers, mathematicians, and professionals from diverse backgrounds to contribute meaningfully to the project. The presentation will highlight the collaborative potential of SEAPATH, fostering a community where individuals with various skill sets can actively participate in shaping the future of electrical substation virtualization.

 "V4L2 Stateless Video Encoding: Hardware Support and uAPI" ( 2024 )

Saturday at 13:00, 25 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Embedded, Mobile and Automotive devroom Paul Kocialkowski , slides , video

Support for hardware video codecs has been around in V4L2 since the memory-to-memory (M2M) framework was merged in 2010. While it initially allowed support for firmware-driven stateful implementations, it did not cover the case of stateless hardware codecs where the kernel has to configure hardware blocks directly instead of relying on a (proprietary) firmware.

Stateless video decoding became supported in 2018 after Bootlin's successful crowdfunding campaign targeting Allwinner platforms. The only remaining piece missing after this work was support for stateless video encoders.

This talk will present the current effort to bring support for stateless video encoders in mainline V4L2. This includes an overview of the current preliminary work on selected hardware platforms and video codecs as well as a brief summary of today's out-of-tree support. It will be followed by an introduction to the difficult process of creating a new userspace API to support them in mainline Linux, the inherent trade-offs that need arbitration and why this is taking time to converge.

 "The CarpentriesOffline: Teaching Foundational Data Science and Coding Skills with Little or no Internet Access" ( 2024 )

Saturday at 13:00, 30 minutes, UB4.132, UB4.132, Open Research devroom Colin Sauze Jannetta Steyn Abhishek Dasgupta , slides , video

The Carpentries teaches foundational coding and data science skills to researchers worldwide using open source training materials. A typical workshop uses several online components: a website with course notes, an etherpad for shared notes, data downloads, Github repositories and frequently a Jupyter notebook or Rstudio server. One of the popular lessons is HPC Carpentry which covers an introduction to the Unix command line and using shared High Performance Computing systems.

CarpentriesOffline (https://carpentriesoffline.org) is an out of the box solution for running a Carpentries workshop from a single device such as a Raspberry Pi, old laptop or even a dedicated server. It is intended for use in environments where there is limited or no internet access. Everything needed to run the workshop including course notes, data files, software downloads, a Git server, etherpad and a Jupyter Hub server are provided by the CarpentriesOffline system. It can also provide a backup environment for those with better connectivity in the event of the Carpentries website, etherpad, GitHub etc suffering an outage.

We have also developed a miniature high performance computing system based around the Raspberry Pi and RockPi single board computers to allow participants to experience using a high performance computing system without having remote access to one.

This talk will describe:

The architecture of the CarpentriesOffline system
The build process that automates the creation of OS images in GitHub Actions
Ways to download and deploy it yourself
How to get involved with the project

 "An engineer's guide to Linux Kernel upgrades" ( 2024 )

Saturday at 13:00, 50 minutes, K.1.105 (La Fontaine), K.1.105 (La Fontaine), Main Track - K Building Ignat Korchagin , slides , video

The Linux Kernel lies at the heart of many high profile services and applications. And since the kernel code executes at the highest privilege level it is very important to keep up with kernel updates to ensure the production systems are patched in a timely manner for numerous security vulnerabilities discovered almost every day.

Yet, because the kernel code executes at the highest privilege level and a kernel bug usually crashes the whole system, many SREs, production engineers and system administrators try to avoid upgrading the kernel too often just for the sake of stability. In many companies we have seen a tendency to create more obstacles to Linux kernel releases (requiring more approvals, harder update justifications, requiring more time in canary testing etc). But introducing all these obstacles and not treating kernel updates like any other software updates usually significantly increases the risk for the company and their service of being exploited.

One of the reasons SREs and production engineers are too afraid of ANY kernel upgrade is that they don’t actually know the details about Linux kernel release process and policy. This talk tries to demystify Linux Kernel releases and provides a guide on how to distinguish a kernel bugfix release from a feature release. We also try to explore why commonly established perceptions and patterns around production kernel releases are wrong and how you actually risk the stability of your systems by not releasing the kernel regularly. In the end we describe how kernel releases are implemented in our company and propose possible approaches to deploy kernel upgrades regularly with minimal risk.

 "Collabora Online usability optimization" ( 2024 )

Saturday at 13:00, 25 minutes, H.2213, H.2213, Collaboration and Content Management devroom Caolán McNamara Michael Meeks , slides , video

Come and hear about some of the work we have done to optimize the collaborative performance of Collabora Online recently. See how an improved mix of tils compression algorithms and AVX acceleration improves both time and bandwidth. See the impact of profiling, tons of flamegraphs, and catch the excitement of making code simpler, faster and better for users simultaneously.

See too some of our recent usability optimizations: the easy little features around the UX that cumulatively make life more pleasant - and the people that have implemented them.

Finally see how you can get involved with the fun.

 "The Regulators Are Coming: One Year On" ( 2024 )

Saturday at 13:00, 50 minutes, Janson, Janson, Main Track - Janson Simon Phipps Enzo Ribagnac Gaël Blondelle Benjamin Bögel Omar Ennaji , slides , video

At FOSDEM 2023 we heard directly from the authors of The Cyber Resilience Act (CRA) and the Product Liability Directive (PLD) about the care they were taking to avoid harm to free and open source software developers. During the year, these legislators received a great deal of help from experts across the communities to make that (even more) true! Now both instruments are in their final state, we can learn lessons how to engage over the next wave.

In this session we will hear an update from the authors of the legislation on how they see the last year with CRA and PLD, and insights from the open source community members who engaged to change it. We will explore how easy it is to engage with legislators over policy that will affect open source projects, and hopefully have an opportunity for audience feedback. If this session leaves you with questions, or you want to contribute yourself, come to the unique "policy hackfest" Devroom on Sunday, "Open Source In The European Legislative Landscape".

 "Outreachy Connect: Newcomers & Old friends" ( 2024 )

Saturday at 13:00, 60 minutes, AW1.121, AW1.121, BOF - Track C Sage Sharp

Outreachy provides internships in free software and open science. Outreachy interns work remotely with FOSS mentors for 3 months. Outreachy is a great way to increase diversity in your FOSS community, since Outreachy provides internships to people subject to systemic bias and impacted by underrepresentation in the technical industry where they are living.

Come learn about Outreachy and network with Outreachy organizers, mentors, past interns, and new friends! Whether you are considering mentoring Outreachy interns or you want to connect to other Outreachy participants, come by to say hi.

We want to know more about you, your projects, and how you are working on enhancing the FOSS ecosystem.

 "Railway signaling: detecting conflicts in a complex world" ( 2024 )

Saturday at 13:05, 20 minutes, K.4.401, K.4.401, Railways and Open Transport devroom Younes Khoudli , video

OSRD is a railway toolbox designed for multiple use cases. These tools have in common a reliance on railway infrastructure simulation and results analysis. In order to perform short-term digital capacity management (STDCM) or operational studies, a fine grained simulation of railway signaling systems is necessary. Every country has different signaling rules, and often multiple active signaling systems, sometimes even overlapping. This raises a challenge: how do we decouple the complexity of railway signaling and the rest of the application code, while retaining acceptable performance? In this presentation, we will present our modeling of signaling systems and how we use it to automatically detect scheduling conflicts.

Official OSRD website: https://osrd.fr/en/ Github repository: https://github.com/osrd-project/osrd/

 "Deploy Fast, Without Breaking Things: Level Up APIOps With OpenTelemetry" ( 2024 )

Saturday at 13:10, 30 minutes, AW1.126, AW1.126, APIs & friends devroom Adnan Rahic Sonja Chevre , slides , video

For developers building distributed applications, few things are more frustrating than having an API break unexpectedly. When an API changes in a backwards-incompatible way, it can disrupt downstream consumers. Suddenly, applications start failing, integrations break, and developers are left scrambling to fix the issues.

How can developers deploy changes fast without breaking APIs and maintain stability for consumers? By adding modern observability techniques to their APIOps pipeline.

In this talk, we will start together from a traditional APIOps pipeline in ArgoCD and explore how incorporating modern observability techniques can help developers deploy changes quickly and efficiently while maintaining stability for API consumers.

In this presentation, Sonja (Group Product Manager in the API space) and Adnan (5 years in the observability space) are combining their expertise to present best practices for detecting and resolving API issues in production.

This talk will be helpful for developers working with APIs, helping them extend their GitOps practices by using distributed tracing in pre-production to identify and fix issues before they reach production.

But it will also be helpful for any users of OpenTelemetry, Jaeger and/or ArgoCD.

 "The Biome toolchain" ( 2024 )

Saturday at 13:10, 25 minutes, H.1301 (Cornil), H.1301 (Cornil), JavaScript devroom Victorien Elvinger , video

Biome provides fast error-resilient IDE-ready formatters and linters for JavaScript, TypeScript, JSX, and JSON. It scores 97% compatibility with the Prettier test suite and implements more than 200 linter rules from ESLint, TypeScript ESLint, and others. In this talk I will introduce the unique features of Biome and how I improved the Biome's semantic model to support TypeScript. This will lead us to understand:

  • What is a semantic model and how TypeScript types coexist and interact with JavaScript values?
  • How to achieve top-notch IDE support using an error-resilient parsers and Concrete Syntax Trees?

 "Getting AV1/SVC to work in the Janus WebRTC Server" ( 2024 )

Saturday at 13:10, 35 minutes, H.1302 (Depage), H.1302 (Depage), Real Time Communications (RTC) devroom Lorenzo Miniero , video

AV1 is an open and royalty free codec, recently designed within the context of the Alliance for Open Media (AOMedia). It was specifically designed for use over the Internet, and was built with Scalable Video Coding (SVC) functionality built in the specification. This makes it a particularly interesting codec to use in WebRTC applications of different kinds, from web conferencing to streaming and more.

This presentation will cover how AV1 is used on top of RTP, how SVC is signalled and used within the context of an ad-hoc (and pretty convoluted) RTP extension, and the efforts I had to make to get all that to work in the Janus WebRTC Server. If time permits, I'll show a brief demo of how it works too.

 "The Linux Phone App Ecosystem" ( 2024 )

Saturday at 13:15, 40 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), FOSS on Mobile Devices devroom 1peter10 , slides , video

"Okay, this Linux on Phones thing ... but it has no apps, right?" It has apps - Sailfish OS and Ubuntu Touch have dedicated app stores, and the newer projects also have many well working apps.

This talk attempts to cover it all - from frameworks to metadata, stengths, weaknesses, highlights, difficulties and gaps.

 "Kùzu: A Graph Database Management System for Python Graph Data Science" ( 2024 )

Saturday at 13:20, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Semih Salihoglu Prashanth Rao , slides , video

This talk presents Kùzu: a new open-sourced graph database management system (GDBMS) that is designed for graph data science (GDS) eco-system, specifically in Python. GDS applications require a series of data processing steps, such as extracting data from tabular sources into a graph of nodes and relationships, cleaning and transforming the graph, extracting node features, and finally moving data into a GDS package, such as NetworkX and PyTorch Geometric for graph analytics. These steps can be performed easily and efficiently by GDBMSs, which provide high-level graph-based data models and query languages to developers. Kùzu is a GDBMS designed to serve as an essential storage system for GDS developers.

Kùzu's embedded architecture makes it very easy to import as a library without a server setup and also provides performance advantages. Specifically users can: (i) ingest and model their application records in various raw file formats, such as Parquet or in-memory Pandas DataFrames, as a graph; (ii) query and transform these graphs using Cypher query language; and (iii) export graphs into popular Python GDS packages like NetworkX and PyTorch Geometric with no copy cost.

The talk is tailored for data scientists and engineers. We will briefly provide the necessary background on graph analytics. We'll briefly walk through code examples showcasing how Kùzu makes developing GDS pipelines easier, via its integrations with the PyData ecosystem.

 "OpenSTEF: Opensource Short Term Energy Forecasting" ( 2024 )

Saturday at 13:20, 15 minutes, H.2214, H.2214, Energy: Reimagining this Ecosystem through Open Source devroom Jonita Ruiter , slides , video

The energy transition poses new challenges to all parties in the energy sector. For grid operators, the rise in renewable energy and electrification of energy consumption leads to the capacity of the grid to near its physical constraints. Forecasting the load on the grid in the next hours to days is essential for anticipating on local congestion and making the most of existing assets. OpenSTEF provides a complete software stack which forecasts the load on the electricity grid for the next hours to days. Given a timeseries of measured (net) load or generation, a fully automated machine learning pipeline is executed which delivers a probabilistic forecast of future load. During this presentation, the implementation of OpenSTEF to fully automatically forecast the load on the grid at the Dutch Distributed System Operator will be shown. Furthermore, the community built around OpenSTEF will be discussed. Take a look at the OpenSTEF website and Github.

 "Implementing UDP protocols in Elixir" ( 2024 )

Saturday at 13:20, 20 minutes, K.4.601, K.4.601, Erlang, Elixir, Gleam and Friends devroom Andrei Zvonimir Crnkovic , slides , video

I've always believed that the best way of learning a language is doing low level stuff with it. It will show you how well the language is thought through, and will help you understand some inner workings. Let alone the cool factor of having to say you implemented a random protocol. In this demo/talk I'm going to show you how I've implemented the NTP (network time protocol) using Elixir. I'll also talk about reading RFCs, how I got into a fight with an LLM, and much more.

 "Testing iptables firewall rules with scapy" ( 2024 )

Saturday at 13:20, 25 minutes, UB5.230, UB5.230, Network devroom Michael Estner Simone Weiß , slides , video

The challenge we were facing was to verify a firewall based on iptables according to a set of defined requirements. Included in the challenge were finding a tool to craft custom network packets, integrating the tool into the test environment and defining test cases based on the expected communication behaviors and the given firewall rules. For this it is important to know how the packet filtering in the Linux kernel is working in general. This talk will highlight how the scapy python framework works in general and how it can be used to empower developers for testing to achieve this challenge.

This talk will start with an overview about the existing network packet tools and why scapy was chosen. Next it is important to understand the basics of the netfiler in the Linux kernel and how scapy is attached to it. Once a functional overview of scapy is given, we are able to write proper test cases. We will explain detailed examples how to create ICMP, UDP and TCP packets, how to manipulate the protocol header and how to choose fitting methods for sending in specific test scenarios. To wrap this up we will provide advanced real world examples based on specific iptables firewall rules.

 "How we at Deutsche Bahn develop IoT use cases quickly and cost-effectively" ( 2024 )

Saturday at 13:25, 30 minutes, K.4.401, K.4.401, Railways and Open Transport devroom Holger Koch , video

IoT (Internet of Things) is playing an increasingly important role for Deutsche Bahn. Be it to monitor existing infrastructure systems and make them fit for the future with pedictive maintenance or to obtain information in order to be able to make better decisions based on it. It is essential for Deutsche Bahn, that prototypes can be built and tested very quickly and cost-effectively. The talk provides an insight into the open source software ThingsBoard and the IoT construction kit Tinkerforge. After this, we will make a live demo and build a IoT system to monitor the air quality in the conference room. This gives you a very easy entry into the world of IoT. Finally, we would like to share our experience in conducting IoT hackathons to find solutions or recruit young talent and present three unusual IoT use cases at Deutsche Bahn.

 "libamicontained: a low-level library for reasoning about resource restriction" ( 2024 )

Saturday at 13:25, 30 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Containers devroom Tycho Andersen Sebastien Dabdoub , slides , video

A common question language runtimes have is: how many resources do I have access to? They want to know e.g. how many threads they can run in parallel for their threadpool size, or the number of thread-local memory arenas, etc.

The kernel offers many endpoints to query this information. There is /proc/cpuinfo, /proc/stat, sched_getaffinity(), sysinfo(), the cpuset cgroup hierarchy's cpuset.cpus.effective, the isolcpus kernel command line parameter, /sys/devices/system/cpu/online. Further, libcs offer divergent implementations of sysconf(_SC_NPROCESORS_ONLIN). As a bonus, the kernel scheduler may be configured to limit resources using cpu "shares" or cpu quotas, so a task may be able to run on all cores, but have some kind of rate limit that is not reflected in the physical cores the system is allowed to run on.

In this talk, we propose a new library "libamicontained" to offer one place to consolidate the logic for the answer to this question. We propose a:

  • C ABI exporting
  • statically linked
  • zero dependency

library which is aware of all of these different runtime configurations and answers questions about cpu counts etc. in accordingly reasonable ways.

Of course, the real challenge here is adoption. Ideally we can pitch such a library as "from the container people", so it's an easier pitch to language runtimes. We are here seeking feedback on all points (heuristics to reason about CPU counts, design goals, etc.) from container people as a first step.

[2]: as of this writing, the jvm still uses cpuset.cpus instead of cpuset.cpus.effective on cgroupv2: https://github.com/openjdk/jdk/blob/7fbfb3b74a283261027e6c293e1a5dbc354cf0af/src/hotspot/os/linux/cgroupV2Subsystem_linux.cpp#L92-L96 [3]: https://github.com/libuv/libuv/issues/2297 , https://github.com/nodejs/node/issues/6252

 "Document collaboration made simpler: Revealing the concept of rooms in ONLYOFFICE DocSpace" ( 2024 )

Saturday at 13:30, 25 minutes, H.2213, H.2213, Collaboration and Content Management devroom Alex Mikheev , video

When teams need to collaborate on documents on a regular basis, chaos can quickly break out: the necessary editing rights are missing, or important files cannot be found. This scenario can cause problems, especially when it comes to sensitive docs.

Moving all the activities related to handling paperwork to the digital rooms of open-source ONLYOFFICE DocSpace can eliminate such difficulties. In our session, we will:

  • present ONLYOFFICE DocSpace which we launched in 2023;
  • describe its tech stack;
  • explain how rooms work and what are the benefits of such collaboration mechanism;
  • present new tools for working with different types of office files such as digital forms and PDF;
  • show available integration options, including plugins, connectors, open API for developers;
  • tell you what security features ensure data protection in DocSpace;
  • share our plans on further enhancements for DocSpace.

 "Maintaining Go as a day job - a year later" ( 2024 )

Saturday at 13:30, 30 minutes, UD2.218A, UD2.218A, Go devroom Filippo Valsorda , video

In 2022 I left the Go team at Google to carry on in approximately the same role, but as an independent professional maintainer. The idea was not to rely on donations, nor to do support contracts, but to sell retainers to companies interested in funding my work and having access to my expertise.

At the time, it was an experiment, trying to prove a new model by putting my money where my mouth was. Today, I am still a maintainer of the Go cryptography standard library, and I successfully fund the work of myself—as well as that of other people!—through half a dozen contracts.

This talk is an update on last year's announcement, including lessons learned and planned next steps to popularize this model and make it more accessible.

 "The Art of Concurrent Scripting with Raku" ( 2024 )

Saturday at 13:30, 20 minutes, K.3.401, K.3.401, Perl and Raku devroom Brian Duggan , slides , video

Raku brings modern concurrency techniques to every day scripts by making it easy to implement common tasks like timeouts, parallel execution, and event-driven actions initiated by watching the filesystem or observing data streams.

This will be an example-driven tour of practical ways to introduce concurrency to your scripts by using Raku's asynchronous capabilities for every day situations.

We will cover built-in language features like promises, supplies, channels, threads, atomic variables, reactive event loops, and asynchronous processes. We'll also touch on advanced concurrent techniques using modules from the Raku ecosystem.

 "Exercising QEMU generated ACPI/SMBIOS tables using Biosbits from within a guest VM." ( 2024 )

Saturday at 13:30, 30 minutes, UB2.147, UB2.147, Virtualization and Cloud Infrastructure devroom Anirban Sinha , slides , video

Biosbits is a software written by Josh Triplett that executes the bios components such as acpi/smbios tables directly from grub without an operating system involved in between. In QEMU, we never had the ability to directly execute and test ACPI/SMBIOS tables from within a running guest. This work adds the ability to test QEMU generated acpi tables using biosbits. We can add new tests incrementally. For QEMU, we maintain a fork of bios bits in gitlab containing numerous fixes along with all the dependent submodules. Within the QEMU repo, we add new python based avocado tests for bits. Care has been taken so that an ACPI contributor can add new tests for bits without having to know too much about biosbits itself or even touching the biosbits repository. This test framework is available from QEMU v7.2. The talk will give some details on the bios bits avocado tests, how to execute them, how to add new tests etc. It will discuss some of the challenges and limitations of this framework.

 "PyPartMC: engineering Python-to-Fortran bindings in C++, for use in Julia and Matlab" ( 2024 )

Saturday at 13:30, 30 minutes, UA2.118 (Henriot), UA2.118 (Henriot), HPC, Big Data & Data Science devroom Sylwester Arabas , slides , video

The talk will outline the technical lessons learned in development of the PyPartMC project. The key goal of PyPartMC is to provide a maintainable multi-platform pip-installable package enabling interoperability between the Python ecosystem and the internal components of PartMC – an open-source aerosol dynamics simulation package. The wrapped PartMC package has been in active development for almost two decades and is used in computational research ranging from process studies on ice formation in clouds to large-scale simulations of air pollution evolution coupled with weather forecasting models. PartMC has a modular, test-covered, pseudo-OOP, Fortran 90 codebase; several C and Fortran dependencies (SUNDIALS, MPI, netCDF, SuiteSparse, ...); and a bespoke config-file subsystem supporting nested files for variable-size input.

Developing PyPartMC, we aim to provide added value to both the existing community of PartMC users, accustomed to the Fortran/HPC ecosystem, as well as to a wider community potentially daunted by the entry threshold pertinent to the multiple steps needed to obtain, compile, setup and run PartMC, and analyse its output. Steps which so far involved usage of diverse tools and languages, and which are meant to be achievable in a single computational research environment such as Python, Julia or Matlab.

To this end, PyPartMC is available at pypi.org in form of both source (with all 10+ dependencies in git submodules) as well as binary packages (Linux, Windows and macOS). Binary packages have all the dependencies statically linked, what is orchestrated using CMake via standard wheel-building logic. The design features: (i) employment of unmodified Fortran code of the wrapped PartMC package; (ii) binding logic implemented in C++ using pybind11; (iii) garbage collection of Fortran derived type instances; (iv) a drop-in i/o layer replacement matching the Fortran config-file subsystem API, which C++ sees as nlohmann::json objects, and which quacks like ordinary dicts from Python perspective. On top of that, a thorough test coverage including Github-Actions-hooked checks for interoperability with Matlab's built-in Python bridge and with Julia (using PyCall.jl).

For more information, see: D'Aquino et al. 2023

 "A fully open source stack for MIPI cameras" ( 2024 )

Saturday at 13:30, 25 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Embedded, Mobile and Automotive devroom Bryan O'Donoghue Hans de Goede , slides , video

Many recent Windows (on ARM and x86) laptops have replaced the standard UVC USB camera module with a raw MIPI camera-sensor using a CSI receiver and ISP in the CPU to process the raw data into an image.

Both the hw interface of the ISP as well as the image processing algorithms used are often considered a trade secret by CPU vendors. This makes supporting these cameras under Linux a big challenge and so far these cameras are not supported.

Both Linaro and Red Hat have identified this as a problem. Linaro has started a project to add a SoftwareISP component to libcamera to allow these cameras to work without needing proprietary software and Red Hat has joined Linaro in working on this.

These exact same problems with MIPI cameras are also seen in embedded and automotive uses and the new SoftISP is also targeting these.

This talk will present and demo the current state of the SoftwareISP as well as present future plans.

We hope there will be plenty of community feedback, so we will leave ample time for questions and discussions at the end.

 "The French Open Science Monitor: steering the science based on open bibliographic databases" ( 2024 )

Saturday at 13:30, 15 minutes, UB4.132, UB4.132, Open Research devroom Anne L'Hôte , video

In 2018, the first National Plan for Open Science was launched. To be able to steer this public policy, we built the French Open Science Monitor. For sovereignty reasons, we wanted it to be based on open bibliographic databases exclusively. This talk will expose our methodology to build from scratch a national open science monitor and how to consolidate the worldwide open bibliographic databases and fill the gap of missing metadata.

 "CERN's Open Source Storage Systems" ( 2024 )

Saturday at 13:30, 45 minutes, K.3.201, K.3.201, Software Defined Storage devroom Hugo Gonzalez Labrador Richard Bachmann , video

CERN (European Organization for Nuclear Research) is one of the world's largest and most respected centres for scientific research. It is home to the world's largest particle accelerator (Large Hadron Collider, LHC) and is the birthplace of the Web.

CERN's Storage and Data Management Group is responsible for enabling data storage and access for the CERN laboratory, in particular the long-term archival, preservation and distribution of LHC data to a worldwide scientific community (WLCG). Today we operate heterogeneous disk and tape software defined storage systems, with several large EOS disk farms, the CERN Tape Archive (CTA) system and other storage solutions. In total the group manages more than one exabyte of storage across about 2,000 data servers (60,000 disks) and 50,000 high-capacity tapes and orchestrates more than 4 exabytes of data transfers every year. More than 30,000 users need to access these data from their computers in a user-friendly way, which has been made possible through the CERNBox project, CERN's open source cloud sync and share platform. The group also operates a large Ceph cluster (over 60 petabytes) mostly to support the CERN OpenStack Cloud Computing infrastructure.

All of these systems are open source and available for use and hosting on-premise.

In this talk we would like to give you a high level view of the following technologies and how they work together to satisfy the storage needs of the organisation: from the early phases of data taking, to its distribution and final end-user analysis.

EOS provides a service for storing large amounts of physics data and user files (accounting today for more than 1 exabyte), with a focus on interactive and batch analysis with multi-protocol support (WebDAV, HTTP, FUSE, CIFS). It supports different authentication protocols (KRB5, X509, OIDC).

CTA (CERN Tape Archive) is the archival storage system for the custodial copy of all physics data at CERN. The CTA software provides a free and open source platform for managing data on magnetic tapes at scale.

CERNBox is the CERN cloud storage platform that provides sync and share functionality on top of the EOS and Ceph storage systems. It is built on top of the ownCloud open source product and the Reva project.

All of these systems are open source and available for use and are deployed in other laboratories around the world.

 "Ruby on the Modern JVM: Fibers, FFI, and More" ( 2024 )

Saturday at 13:35, 30 minutes, UB5.132, UB5.132, Free Java devroom Charles Nutter , slides , video

JRuby continues to push the boundaries of the JVM, optimizing code with InvokeDynamic and now powering Ruby code with Project Loom fibers and Project Panama FFI. Come see how the rapidly evolving JVM is making JRuby better with every release!

 "Using the ECP5 for Libre-SOC prototyping" ( 2024 )

Saturday at 13:40, 50 minutes, K.4.201, K.4.201, Libre-SOC, FPGA and VLSI devroom Tobias Platen (they/them) , slides , video

The Libre-SOC project has been prototyped using an Lattice ECP5 FPGA before its first tapeout. Since then many things have changed. One big change is the use of a different controller for DDR3 called gram. To get DDR3 working on the OrangeCrab many changes are needed.

This talk will provide an overview on my work on Libre-SOC in the past two years, an overview of DDR SDRAM interfaces and the PHYs commonly found on FPGAs and some ways to debug the OrangeCrab using a BeagleWire.

 "Unleash the Power of Flexibility with Shapeshifter: A Universal Flex Trading Protocol" ( 2024 )

Saturday at 13:40, 15 minutes, H.2214, H.2214, Energy: Reimagining this Ecosystem through Open Source devroom Tom Wetjens Hugo van der Zwaag , slides , video

Decentralized energy production is becoming more prevalent and electrification is increasing. While this is a positive development, it is creating new challenges for grid operators who must facilitate this rapid change on their existing electricity grids. Grid operators try to maximize the utility of the current grid, using flexibility of electricity production and consumption.

Shapeshifter is an open source protocol that enables the fastest, fairest, and lowest cost route to a smart energy future by delivering one common approach to efficiently connect smart energy projects and technologies.

Shapeshifter implements the Universal Smart Energy Framework for flexibility forecasting, offering, ordering, and settlement processes. Additionally, Shapeshifter enables trading via DSO/TSO coordination platforms that support the protocol. Shapeshifter focuses on the exchange of flexibility between aggregators and distribution and transmission system operators. It describes the corresponding market interactions between them to resolve grid constraints by applying congestion management or grid capacity management.

In the presentation, we will introduce Shapeshifter and show the most recent applications of the protocol.

 "Friend or Foe Inside? Exploring In-Process Isolation to Maintain Memory Safety for Unsafe Rust" ( 2024 )

Saturday at 13:40, 20 minutes, H.1308 (Rolin), H.1308 (Rolin), Rust devroom Merve Gülmez , slides , video

Rust provides unsafe language features to interact with hardware or call into non-Rust libraries. However, this shifts responsibility for ensuring memory safety to the developer. Failing to do so may lead to memory-safety violations in unsafe code, which can violate the safety of the entire application. In this talk, we explore in-process isolation with Memory Protection Keys as a mechanism to shield safe program sections from safety violations that may happen in unsafe sections. Our approach is easy to use and comprehensive, as it prevents heap and stack-based violations. We further compare process-based and in-process isolation mechanisms and the necessary requirements for data serialization, communication, and context switching. We specifically explored various Rust serialization crates such as Abomonation and bincode. Our results show that in-process isolation can be effective and efficient, permits for a high degree of automation, and also enables a notion of application rewinding where the safe program section may detect and safely handle violations in unsafe code. However, even for modestly sized arguments, the context switch cost starts to get dominated by the cost of data transfer between domains. Here, the Rust data serialization method used can significantly impact performance and thus, it is crucial to optimize it for the use case at hand. We open-source our prototype and experimental evaluation data under a BSD license on GitHub: https://secure-rewind-and-discard.github.io/

 "Staying Ahead of the Game: JavaScript Security" ( 2024 )

Saturday at 13:40, 30 minutes, H.1301 (Cornil), H.1301 (Cornil), JavaScript devroom Dheeraj Joshi , slides , video

In this talk, I will cover the fundamentals of JavaScript security and provide actionable insights and best practices for safeguarding web applications built with modern frameworks like React, Vue and Angular!

In addition to that, I will be sharing the methodology that we've applied to secure GitLab codebase, increasing our frontend security posture, and sharing the real-world experiences and lessons learned.

Attendees will leave with a better understanding of how to stay ahead of the game when it comes to JavaScript security, and with practical steps they can take to enhance their own security practices.

 "Testing Containers with Python and pytest" ( 2024 )

Saturday at 13:40, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Dan Čermák , slides , video

To ease the pain of testing container images, we’ve developed the pytest_container plugin for pytest. The plugin makes it possible to use pytest to perform tests on containers and software inside containers. You don’t have to take care of pulling images, building them, or picking ports on the host. You just describe your container setup and pass it to a test function. In return, the plugin gives you a connection to the container. Using the connection, you can verify the container’s state using the testinfra python framework. The plugin even cleans up after itself when you’re done.

In short, pytest_container makes it possible to write tests in Python: no need to build your own framework from scratch or worry about the boring container plumbing tasks.

Join this talk to see pytest_container in action and learn how it can make your life easier!

 "iputils project introduction" ( 2024 )

Saturday at 13:45, 15 minutes, UB5.230, UB5.230, Network devroom Petr Vorel , slides , video

Introduction into the iputils project from the upstream maintainer. I would like to summarize shortly the project history, what is the current status and where we are heading for the future. I also compare it with similar tools from other projects.

The iputils project is set of small utilities for Linux networking. The most known part of it is ping, a tool for testing connectivity. Historically the project contained several tools. Some of the obsolete ones has been removed. I would like to outline possible improvements of the remaining tools and other project future plans.

 "Evolve your (web)app while it is running" ( 2024 )

Saturday at 13:45, 20 minutes, K.4.601, K.4.601, Erlang, Elixir, Gleam and Friends devroom Kero van Gelder , slides , video

From a model, we generate multiple running instances. When the model is updated, so are the instances. This allows immediate feedback from user-interaction, while still developing your model.

The model is a state-description and has to be well-defined, because of this we manage it with the type-safety of Gleam.

The instances each contain an independent state. We want to migrate this state when the state description changes. Because of this, we generate the code for the instances in Core Erlang, and use BEAM facilities to upgrade the instances while running.

Naturally, for the largest part, this presentation will be a live demo.

 "Infra Finder: Increasing visibility of open technologies for open science" ( 2024 )

Saturday at 13:45, 15 minutes, UB4.132, UB4.132, Open Research devroom Emmy Tsang Chrys Wu , slides , video

Infra Finder is a new tool for advocates, decision-makers, and creators in the open infrastructure space. It is open-source and free to use. In this first release in January 2024, Infra Finder contains a standard set of information about 56 open infrastructure tools and services enabling the sharing of research data and publications that audiences can use to identify services, increase adoption, and foster development and investment in open infrastructure.

At Invest in Open Infrastructure (IOI, https://investinopen.org/), we are committed to iteratively developing Infra Finder with the community. In the past months, through user interviews, focus groups, and testing, we acquired a better understanding of libraries’ and institutions’ infrastructure discovery and evaluation processes. We refined our interface design and data collection and validation workflows to be able to provide up-to-date, validated information in one place, and offer at-a-glance comparison views, with links to more granular information, thereby saving librarians time and effort in looking for scattered pieces of information to discover and evaluate what’s on offer. (More in our latest blog post: https://investinopen.org/blog/blog-introducing-infra-finder/)

With this first release, we are collecting feedback and use cases for this first set of services in Infra Finder in order to further develop the information resource and the set of services covered in the tool. In this session, we will demonstrate Infra Finder. We will also share information about expressing interest in adding your tool to Infra Finder, and invitations for audience feedback and suggestions on the current iteration as we develop our next steps for expansion of the tool.

 "Evolving your APIs, a step-by-step approach" ( 2024 )

Saturday at 13:50, 35 minutes, AW1.126, AW1.126, APIs & friends devroom Nicolas Fränkel , video

When you publish your first HTTP API, you’re more focused on short-term issues than planning for the future. However, chances are you’ll be successful, and you’ll “hit the wall”. How do you evolve your API without breaking the contract with your existing users?

In this talk, I’ll first show you some tips and tricks to achieve that: moving your endpoints, deprecating them, monitoring who’s using them, and letting users know about the new endpoints. The talk is demo-based, and I’ll use the Apache APISIX project for it.

 "Using GStreamer to build real-time applications with Golang" ( 2024 )

Saturday at 13:50, 35 minutes, H.1302 (Depage), H.1302 (Depage), Real Time Communications (RTC) devroom Dan Jenkins , slides , video

Everyone knows how to build up a GStreamer pipeline on the CLI - give gst-launch-1.0 a source and a sink and some steps in between and you've got yourself a pipeline doing something. But building an application with GStreamer is much more complex when it comes to building using bindings to the C level api for GStreamer.

Avi started building the Golang bindings back in 2020 but they'd started to become a little unloved with Pull Requests and issues becoming stale. Now the bindings have moved to their own github organisation and are getting some all important bug fixes and a new semver release of 1.0 coming soon.

Building a solution doesn't always fit into what's available with GStreamer's plugins - enter appsrc and appsink, your best friends in building custom solutions with GStreamer. In this session you'll hear about using appsrc and appsink to build custom real time applications, as well as the updates coming to GStreamer's Golang binding.

 "Transportr: the Past, the Present and the Future" ( 2024 )

Saturday at 13:55, 15 minutes, K.4.401, K.4.401, Railways and Open Transport devroom Mikolai Gütschow , slides , video

The vision of the free Android app Transportr is to provide easy access to accurate public transport data; without proprietary code, tracking, and ads. By simply switching the region, Transportr presents the same consistent user interface for daily commutes in Berlin as for holidays in Nicaragua. Thanks to shared code with its alternative Öffi, Transportr had support for official and third-party public transport APIs of more than 60 regions from Europe and other parts of the world at its peak. Apps such as Transportr have potential to ease the path into an ecological future with a seamless experience for public transport users regardless of their location.

This talk gives a recap of Transportr's history and some notes on its current state, but is mostly meant to be a starting point for discussion about the future of the app, the potential of combining efforts with similar projects, and a call for contributions to the community!

 "Updates from the PSC" ( 2024 )

Saturday at 13:55, 35 minutes, K.3.401, K.3.401, Perl and Raku devroom Paul Evans , video

A few words from the PSC; we'll look at some recent changes in Perl and take a look forward at what to expect from the next releases.

 "One SDN to connect them all" ( 2024 )

Saturday at 14:00, 30 minutes, UB2.147, UB2.147, Virtualization and Cloud Infrastructure devroom Miguel Duarte , slides , video

What if you need to connect your Kubernetes workloads to a physical network, or more than one network? You can attach multiple network interfaces using Multus, but you'll need to specify every detail.

Virtualized workloads have extra requirements from the network, given their stateful nature. For instance, they require their IP addresses to be preserved during their life-cycle, and also during live migration. Currently, since the network does not provide these features, the network-admin must deploy and configure extra services in the network.

But, what if you had a SDN (software defined network) to take care of that, and while doing so abstract how to bridge hybrid infrastructure, from bare metal, to virtualized, to public cloud environments?

Join us to learn and understand how these features can be used to provide Kubernetes workloads access to physical networks (protected by network policies) through a live demo. The multi-network feature is paramount to delivering non-cloud deployments with enough flexibility for their use cases: connecting to the physical networks of their data-centers is extremely important, since some of their services are not deployed in Kubernetes. For security reasons, access to/from the workloads running in Kubernetes should be governed by network policies. OVN-K multi-networking also provides an opinionated network fabric that can automate what users previously had to specify in detail, simplifying configuration and cost of operation for cloud providers and admins.

While any pod will benefit from the above, KubeVirt workloads (VMs) will get more juice out of this SDN implementation. While the feature-set available today is good enough to allow users of traditional virtualization platforms to lift-and-shift their existing workloads into KubeVirt, the features in the pipeline are game changers: VM workloads requires things from the network a pod wouldn’t normally ask for, such as preserving the IP during its life cycle, and also during migration (so the established TCP connection can survive being moved to a different Kubernetes node). These features are a really good match for OVN-Kubernetes since OVN already provides some migration-centered improvements used on other platforms (i.e. Openstack) which can be re-used to provide seamless live-migration of the VM workloads.

 "How we almost secured our projects by writing more tests" ( 2024 )

Saturday at 14:00, 30 minutes, UD2.218A, UD2.218A, Go devroom Alessio Greggi , slides , video

Since its early days (Go 1.2 - 2013), Go has offered great support for code coverage. Recently, the community also introduced the same support for integration tests. This feature gives projects written in Go better visibility about test coverage, resulting in enhanced stability and more. ARMO's experiment consisted of providing the complete test coverage percentage as a metric for generated Seccomp profiles. During the automated tests we hooked the system calls, collecting them into a security profile, by using eBPF. This allowed us to measure the generated profile reliability that was created with the system calls used during this time. Unfortunately, not all the experiments succeed. This talk will give an introduction to the research we did and end what are the limitations that we encountered during our journey.

 "VPP: 100Mpps of MPLS on a Linux PC" ( 2024 )

Saturday at 14:00, 20 minutes, UB5.230, UB5.230, Network devroom Pim van Pelt

In this talk, Pim will demonstrate high performance routing using open-source VPP and its underlying Data Plane Development Kit. This talk highlights the authors work on integrating the Linux Control Plane which makes BGP, OSPF, etc available with VPP, including smart ways to automate configuration of the router's data- and controlplane layers.

In 2023, Pim helped Adrian vifino Pistol to implement MPLS support in VPP's Linux ControlPlane plugin, and now folks can deploy a fully MPLS capable P-/PE router in excess of 100Mpps on a cheap PC.

 "OpenSCD: Everything Everywhere All at Once" ( 2024 )

Saturday at 14:00, 25 minutes, H.2214, H.2214, Energy: Reimagining this Ecosystem through Open Source devroom Tamás Russ , slides , video

In the era of interconnected systems and the growing demand for seamless communication between not just devices but organizations too, the OpenSCD team aims to provide a solution for the whole community. OpenSCD is an open-source, browser-based substation communication designer platform for editing IEC 61850 compatible Substation Configuration Language (SCL) files. IEC 61850 is an international standard defining communication protocols, guidelines and data model for intelligent electronic devices (IEDs) in electrical substations. This talk explores the main challenges of the project and the capabilities of OpenSCD, an open-source tool designed to bring about a paradigm shift in the way we perceive and manage substation configuration and its technical and organizational challenges.

Key Topics:

  • Interoperability: Delve into the mechanisms that OpenSCD employs to enable interoperability between teams.
  • Scalability: Uncover the scalability features of OpenSCD that enable a growing community.
  • International Collaboration: Explore OpenSCD's role in fostering collaboration among Transmission System Operators (TSOs) on a global scale, working together towards common goals, facilitated by the IEC 61850 standard.

Objective:

We aim to provide an easy-to-understand overview of the architecture, governance and practices surrounding the development of OpenSCD. Additionally, we will share our plans and vision for the project, highlighting opportunities for contribution.

Relevance:

Aligning with the conference theme, attendees can learn how to grow their projects in the energy sector without sacrificing development speed.

 "enioka Scan: say No! to vendor lock-in for your barcode scanners" ( 2024 )

Saturday at 14:00, 15 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Embedded, Mobile and Automotive devroom Antoine Gonzalez , slides , video

The barcode scanner market is a walled garden hostile to flexibility. Vendors enforce their proprietary SDKs or applications, documentation is often limited or missing, sometimes it is even required to sign a contract before getting software access to purchased devices. This locks the user inside a single ecosystem, as switching to a different option would mean rewriting software specific to the device.

enioka Scan is an open-source Android library enabling users to choose the device vendors that really fit their criteria at any given time. It exposes a single API compatible with all supported scanning devices, working on top of a vendor-specific SDKs made open-source whenever possible. The library handles per-device specifics, so the user can focus on the functional aspects of their application. It is also designed to be easily extended with more support for devices not yet compatible.

In this presentation, we will go over the causes of vendor lock-in in the context of barcode scanning devices. After a quick history of the project, we will have an overview of how the library works and how it manages to handle devices from different vendors. Finally, we will explain how you can contribute to this project, and why your help matters.

 "Feeding ML models with the data from the databases in real-time" ( 2024 )

Saturday at 14:00, 10 minutes, UA2.118 (Henriot), UA2.118 (Henriot), HPC, Big Data & Data Science devroom Vojtech Juranek , slides , video

In today's fast-paced business environment, and especially with the advent of machine learning (ML), organizations are seeking ways to derive better insights from their data as quickly as possible. However, implementing a complete ML pipeline can be quite challenging. It’s even harder if you want to process newly arrived data immediately or you have a legacy system which is not easy to connect with your modern infrastructure . Change Data Capture (CDC) has emerged as a technology for delivering real-time data changes from various sources, especially from the databases. In this talk we will introduce Debezium, a leading open source framework for CDC. We will discuss how it can be leveraged for ingesting data from the various databases into ML frameworks like TensorFlow and what the pitfalls are if you go this route.

Attendees will gain an understanding of how Debezium CDC works, how it can help them to ingest data from the source database into the ML framework in real time and also what are the possible challenges with this approach.

 "Flutter - about the nightmare of cross platform development targetting Linux mobile" ( 2024 )

Saturday at 14:00, 25 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), FOSS on Mobile Devices devroom The one with the braid (she/her) , slides , video

In recent years, Flutter as a cross platform development kit gained huge popularity across mobile developers. One in public only barely noticed feature : Flutter supports native Linux builds. No JVM, no JavaScript, no Electron. Native binaries.

This talk will be about the daily issues and the progress of using Flutter for targeting Linux mobile, featuring :

  • (very) short overview of Flutter for Linux developers
  • compiling Flutter projects for Linux aarch64
  • Flutter as FOSS - a nightmare of BLOBs from Chromium CI - and how to hopefully workaround them
  • distribution and packaging
  • prospect on goals of freeing Flutter - might contain traces of BSD

 "Best practices for research in open source ecosystems" ( 2024 )

Saturday at 14:00, 30 minutes, UB4.132, UB4.132, Open Research devroom julia ferraioli amanda casari , slides , video

Much of the existing research about open source elects to study software repositories instead of ecosystems. An open source repository most often refers to the artifacts recorded in a version control system and occasionally includes interactions around the repository itself. An open source ecosystem refers to a collection of repositories, the community, their interactions, incentives, behavioral norms, and culture. The decentralized nature of open source makes holistic analysis of the ecosystem an arduous task, with communities and identities intersecting in organic and evolving ways. Despite these complexities, the increased scrutiny on software security and supply chains makes it of the utmost importance to take an ecosystem-based approach when performing research about open source. This talk provides guidelines and best practices for research using data collected from open source ecosystems, encouraging research teams to work with communities in respectful ways.

 "Using your Laptop TPM as a Secure Key Store: Are we there yet?" ( 2024 )

Saturday at 14:00, 50 minutes, K.1.105 (La Fontaine), K.1.105 (La Fontaine), Main Track - K Building James Bottomley , video

The idea of using the comparatively new TPM2.0 as an infinite keystore was first proposed in 2016. Since then the base enabling work has been done inside the Linux Kernel and at the engine and provider layer of openssl and separately in gnupg (from 2.3). The main stumbling block in openssl, that of engine key enabling, has finally been mitigated by the openssl 3 move to providers. The big outlier is still openssh, which won't embrace either engines or providers, but the gpg-agent can be used to provide a TPM key based ssh-agent emulation. In this session, we'll review where we are and how to use a laptop TPM as a keystore (including a demonstration of ssh, gpg openssl and kernel based TPM keys), and where we're going including using TPM sealed keys with policy in the Linux Kernel to unlock disks under particular circumstances; the addition of localities to give keys which cannot be unsealed outside the kernel and the use of signed policies to try to counter the brittleness of PCR locking for measured boot (a signed policy key is a key that has a base policy, like locality, but which can have a set of signed policies that specify things like PCR values, which may be added to after the key was created).

 "Using chroots in a single Linux Container as an alternative to docker-compose" ( 2024 )

Saturday at 14:00, 30 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Containers devroom Aiden McClelland , slides , video

StartOS has devised a new strategy for supporting multiple rootfs images for a single application (e.g. nextcloud + postgres). We have elected to do so by creating a single LXC container for the application, that contains each rootfs image, and running each process in a chroot, using bind mounts for special directories such as /proc, /dev, /sys, and /run. This reduces the overhead of multiple containers, but could have drawbacks with respect to compatibility between processes from different distributions, and security within the application. As of the time of this talk, we will have tested an implementation of this strategy, and we will report our findings regarding its advantages and disadvantages.

 "Copyleft and the GPL: Finding the Path Forward to Defend our Software Right to Repair" ( 2024 )

Saturday at 14:00, 25 minutes, Janson, Janson, Main Track - Janson Bradley M. Kuhn , video

Since 1987, Copyleft licensing has been the primary strategy of the FOSS community to guarantee users' rights to copy, share, modify, redistribute, and reinstall modified versions of their software. In our earliest days, we naïvely thought that the GPL would work like magic pixie dust; we'd sprinkle it on our code, and our code would remain free as in freedom.

The reality check that we've received over the last 35 years has been painful on this issue. While this talk will cover the few huge successes in copyleft enforcement that have lead to real improvements to the rights and freedoms of users, we'll also face frankly the compromises made and false paths taken in the earliest days, that have now led to a simple but unfortunate fact: almost every Linux-based device for sale on the market today does not comply with Linux's license (the GPLv2).

This talk will not only discuss the primary past GPL enforcement efforts around the world, but also provide a whirlwind tour of how copyleft came to work in practice, how we wished it had worked, and discuss ideas, suggestions, and plans for the future strategies in copyleft that, informed by this history, are our best hope for software freedom and rights.

Have ever wondered how FOSS was actually was supposed stay FOSS for the long term? Have you ever been unsure or confused why — in a world where Linux is on nearly every device — most people cannot actually run an alternative OS build on their device? This talk will leave you informed on these questions and prepared to participate in the next policy steps our community must take to bring back software freedom and rights to the next generation of FOSS users, activists and developers.

 "GnuCOBOL, the Free Industrial-ready Alternative for COBOL!" ( 2024 )

Saturday at 14:00, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Fabrice LE FESSANT , slides , video

GnuCOBOL: Industrial Maturity and Competition with Proprietary Offerings

The GnuCOBOL project, as an open-source solution, has recently achieved industrial maturity, positioning itself as a serious contender against proprietary offerings. This presentation will explore the advancements and significant developments that have propelled GnuCOBOL to a level of stability, performance, and features that rival existing proprietary solutions. We will delve into the characteristics that have contributed to this maturity, highlighting the flexibility, reliability, and accessibility of the COBOL language in an open-source context. By showcasing real-world use cases and examples of success, we will demonstrate how GnuCOBOL meets industrial needs while providing a free and ethical alternative. This session is aimed at developers, open-source project contributors, and professionals looking to optimize their software infrastructure with cost-effective and high-performance solutions. Join us to discover how GnuCOBOL, with its industrial maturity, is emerging as a competitive option in the programming language landscape.

 "openDesk - The Open Source collaborative suite" ( 2024 )

Saturday at 14:00, 45 minutes, H.2213, H.2213, Collaboration and Content Management devroom Clément Aubin Wieland Lindenthal , slides , video

Today, Open Source alternatives are missing when it comes to the search of complete suites integrating the most common use-cases of collaboration: email, chat, document & knowledge management, issue tracking, user management. IT departments looking for such suites are forced to turn towards proprietary solutions such as Microsoft 365 or Google Workplace.

However, alternatives are in the building. Among them, openDesk, an initiative lead by the German Ministry of Interior, stands out.

This project aims at building a complete Open Source alternative to Microsoft 365, where the software, the integrations, and the infrastructure required for project are to be released under Open Source licences. At the core of this project are several European Open Source software vendors, including Univention (user management), Open-Xchange (email), Nextcloud (file management), Nordeck / Jitsi (video conferencing), Element (chat), Collabora (document editing), OpenProject (project management) and XWiki (knowledge management). Operations on the project are also coordinated by Dataport, a service provider for the German administration.

This presentation will focus on describing the project, its governance, and describe how its different actors organize in order to foster integrations within Open Source products, and thus create a usable platform on top of them. The last part of the talk will show a demo of the current version of openDesk.

 "Snap! workshop" ( 2024 )

Saturday at 14:00, 60 minutes, J.1.106, J.1.106, FOSDEM junior Jens Mönig

Snap! is a broadly inviting programming language for kids and adults that's also a platform for serious study of computer science.

Anyone aged 7 to 17 can visit the workshop and learn how to use Snap!.

Registration will be required for this session. Use the following link to register.

 "Cost-Effective AI Processing with Open Source Infrastructure" ( 2024 )

Saturday at 14:00, 60 minutes, AW1.121, AW1.121, BOF - Track C Shannon Wells

This discussion room will be a space for AI developers and enthusiasts to learn about and contribute to new open source networks and tools that provide cost-efficient and scalable AI + ML processing through decentralized physical infrastructure.

 "The Four Horsemen of Bad Rust Code" ( 2024 )

Saturday at 14:05, 40 minutes, H.1308 (Rolin), H.1308 (Rolin), Rust devroom Matthias Endler , video

In the right hands, Rust is an exceptionally powerful language. Yet, I frequently observe similar mistakes in Rust programming: treating it like C or Java and not fully utilizing its unique features. I've concluded that poor Rust coding often falls into a few distinct categories, which I've termed the '4 Horsemen of Bad Rust Code': Overengineering, Simplistic Design, Premature Optimization, and Neglect of Documentation and Testing. This talk will delve into these antipatterns and offer strategies to avoid them, aiming to share practical tips for writing more ergonomic and effective Rust code. During the talk, we will gradually refactor a Rust code example, transforming it from a less optimal version to a more idiomatic and efficient one.

 "Software needs of a volunteer operated heritage railway" ( 2024 )

Saturday at 14:10, 15 minutes, K.4.401, K.4.401, Railways and Open Transport devroom Nils Pickert , slides , video

Heritage railways are often operated by volunteers who are not computer experts, but they need software and digital services to support various tasks from ticketing, support in day to tay operations to fundraising. There is a need for close contact between the open source world and the heritage railway world. Volunteer run heritage railways operate on a tight budget and with little computer expertise. They need support in ticketing, project planning, customer communication, enterprise management, networking, internal communication, archiving, ... In this talk I will briefly show some of what we are using at Dampfbahn Fränkische Schweiz e.V., which problems we face. I will present an initiative to connect the IT experts with museum railways. Goal of the talk is to raise awareness in the open source communicty on the needs and challenges in heritage railways, as well as starting a dialogue between the two communities.

 "Type-safe Queries with Gleam & GraphQL" ( 2024 )

Saturday at 14:10, 20 minutes, K.4.601, K.4.601, Erlang, Elixir, Gleam and Friends devroom Harry Bairstow , video

Building a type-safe GraphQL server in Gleam, how it works and why gleam is the best option!

 "Warewulf: an overview, new features , and community updates" ( 2024 )

Saturday at 14:10, 10 minutes, UA2.118 (Henriot), UA2.118 (Henriot), HPC, Big Data & Data Science devroom Brian Phan , slides , video

Warewulf is a simple, lightweight, stateless cluster provisioning tool. This talk will cover a high-level overview of Warewulf and its features. It will also provide a sneak peak into features coming in version 4.5 such as grub netboot and disk provisioning with Ignition. Finally, we will provide some organizational updates within the project such as formalization of community engagement, establishment of a technical steering group, and how you can get involved in the project today.

 "Virtual Thread’s Next Steps" ( 2024 )

Saturday at 14:10, 40 minutes, UB5.132, UB5.132, Free Java devroom Alan Bateman , video

Virtual Threads graduated to a permanent feature in JDK 21 with huge interest and uptake in the Java ecosystem. There’s a lot more to do! This presentation will go through the current efforts on Java monitors, I/O, and other areas that will improve this feature in future JDK releases.

 "Codebase Conquest: How Nx Turbocharged Our React Workflow" ( 2024 )

Saturday at 14:15, 30 minutes, H.1301 (Cornil), H.1301 (Cornil), JavaScript devroom Nicolas Beaussart-Hatchuel , video

In this talk, I'll share my firsthand experience in leading the migration of Hasura's substantial React codebase to Nx, a journey marked by strategic decisions and innovative solutions. We'll explore why Nx emerged as the preferred choice over other tools, delving into its unique advantages for our project needs. I'll also walk you through our approach to executing this complex migration seamlessly, ensuring uninterrupted development workflow for our team. The session will highlight the tangible benefits we reaped from this transition, including drastic improvements in build times and overall development efficiency. Join me to learn about the challenges, decisions, and triumphs of transforming a large-scale React project with Nx, offering insights and inspiration for your own technology endeavors.

 "Ensuring Longevity: Strategies for Sustainable FLOSS Projects." ( 2024 )

Saturday at 14:20, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Cecilia Maundu , video

Join us for a dynamic lightning talk at FOSDEM, titled "Ensuring Longevity: Strategies for Sustainable FLOSS Projects." In this brief but impactful session, we'll tackle the critical issue of sustainability in Free/Libre and Open Source Software (FLOSS). Discover key strategies to overcome common challenges such as funding, contributor engagement, and community dynamics, essential for the enduring success of FLOSS projects. This talk is an essential snapshot for anyone involved in FLOSS, offering valuable insights into sustaining projects in a rapidly evolving open-source landscape.

 "Orchestrating Change: Automating GÉANT Network Migration" ( 2024 )

Saturday at 14:20, 20 minutes, UB5.230, UB5.230, Network devroom Simone Spinelli , slides , video

In June 2023, GÉANT announced the successful procurement of a new IP/MPLS layer for a next-generation network and the plan to automate the entire migration process using WorkflowOrchestrator (https://workfloworchestrator.org/) and Ansible with the aim to make the process quicker and at the same time more reliable and predictable.

This means orchestrated service management with minimal interaction needed from the operator: no more CLI to configure network devices, all OSS and BSS systems synchronised and a flexible service modelling that accommodates the customizations and optimizations needed in a R&E environment. The adoption of a different vendor, NOKIA in our case, poses significant challenges both in terms of low-level mechanics as well as in terms of service modelling and decomposition.

Now, we are sharing the results of this effort that has involved all the levels and parts of the organisation, profoundly changing our way of working. We are sure that a view into our current progress - especially considering the multi-vendor environment that we manage - will be valuable for anyone involved in the implementation and maintenance of IP networks in the community.

Particular attention will be reserved to the differences between orchestration and automation, how these two topics intersect with each other in managing complex environments and how much the mindset changes in terms of design and implementation process.

GAP - GÉANT Automation Platform - which now manages the new GÉANT network, is entirely based on open-source software and more specifically on the Workflow Orchestrator (created by SURF and ESnet): high-quality software written within the R&E community that works as a framework to orchestrate networks of whatever complexity and scale. GÉANT is contributing to and sustaining it to lower the barrier to adoption so that other organisations can benefit from it and join the initiative.

The other cornerstone of the platform, Ansible, is an open source automation framework with a vibrant community. While not initially created for network devices, Ansible fulfils all our needs and keeps the curve of adoption low. We are eager to share how we used and misused it to achieve our needs in terms of separation between data, design and operations.

 "The Small Device C Compiler (SDCC)" ( 2024 )

Saturday at 14:20, 15 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Embedded, Mobile and Automotive devroom Philipp K. Krause , slides , video

32- and 64-bit architectures are well supported by the popular compilers GCC and LLVM. The situation is different for 8-bit architectures. Here, the Small Device C Compiler (SDCC) is the FOSS compiler competing with a variety of non-free compilers. This talk shall present the current state of SDCC, recent improvements, current challenges, and plans for the future. https://sdcc.sourceforge.net/

 "HPC-oriented Large-scale Code Restructurings with Coccinelle" ( 2024 )

Saturday at 14:20, 10 minutes, UA2.118 (Henriot), UA2.118 (Henriot), HPC, Big Data & Data Science devroom Michele Martone Julia Lawall , slides , video

Once a codebase gets large, refactoring for performance is difficult. Challenges include: the sheer time to carry out a possibly complicated transformation globally; the risk of introducing defects; poor acceptance by collaborators or code owners (if doing the HPC-oriented update for others); coping with diverging 'performance' paradigms (different parallelism models, APIs for GPU, etc). The Coccinelle code transformation system can express a vast range of refactorings for C/C++ codebases as so-called 'semantic patches', that is programs in a special 'transformation' language. While 'semantic patches' are typically very short, they can radically transform arbitrarily large codebases, thus coping with the above mentioned 'challenges'. This talk introduces the usage concept and shows sound, self-contained examples of HPC-oriented refactorings, including latest and upcoming features.

 "CephFS at CERN in view of Disaster Recovery" ( 2024 )

Saturday at 14:20, 30 minutes, K.3.201, K.3.201, Software Defined Storage devroom Abhishek Lekshmanan , video

CERN operates multiple Ceph clusters for the provisioning of block, object, and file storage for the IT infrastructure of the Organization. CephFS at CERN (~11PB) serves the shared filesystems in HPC use cases and as well as a storage persistency layer in the Kubernetes and OpenShift offerings. In the past year we evaluated the usage of CephFS in the context of our Business Continuity and Disaster Recovery strategy. This talk looks at CephFS at CERN, the feature stability/perfomance impact observed when enabling features like snapshots, and the future outlook. We will also report on the increasing need for backups and on the development efforts of an OpenStack Manila driver to provide users with a self-service restic-based backup solution for CephFS

 "Closing Railways and Open Transport devroom" ( 2024 )

Saturday at 14:25, 5 minutes, K.4.401, K.4.401, Railways and Open Transport devroom Max Mehl Cornelius Schumacher Simon Clavier Loic HAMELIN Peter Keller , video

Closing the Railways and Open Transport developer room and reflecting the sessions.

 "Dependency injection: a different way to structure a project" ( 2024 )

Saturday at 14:30, 30 minutes, UD2.218A, UD2.218A, Go devroom Dylan Reimerink , slides , video

Dependency injection is an established technique in a lot of areas of software development, however, it’s often overlooked in Go. Let’s explore the advantages of dependency injection and a modular architecture in Go.

 "5G in ModemManager" ( 2024 )

Saturday at 14:30, 25 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), FOSS on Mobile Devices devroom Aleksander Morgado , slides , video

ModemManager is the default mobile broadband management system in most Free and Open Source Software systems, including not only standard distributions like Debian, Ubuntu, Fedora or Arch Linux , but also in mobile devices running postmarketOS, PureOS or Mobian.

Basic 5G support is already available in current versions of ModemManager, although there are key differences with earlier technologies like 3G or 4G that should be considered, e.g. with respect to network attach settings or multiple/concurrent access technology support.

Advanced 5G features, like 5G network slicing support, are not yet supported in ModemManager. These are in the roadmap for future releases, and open for discussion with the community on how to best implement them.

This talk covers past, present and future of the 5G technology support in ModemManager. How we have reached its current state, what technical debt we carry, and how the future implementation may look like.

 "Power to the People - Technology for Access to Energy" ( 2024 )

Saturday at 14:30, 25 minutes, H.2214, H.2214, Energy: Reimagining this Ecosystem through Open Source devroom Vivien Barnier Martin Jäger , slides , video

The world has made great progress in providing everyone with access to energy; however, recently, the number of unelectrified people on Earth has increased. Providing access to energy is a critical and complex challenge as most unelectrified people live in extremely remote and hard-to-reach areas, often having limited mobile network connectivity, unknown (future) demand patterns, and extreme weather conditions combined with very low purchasing power of the affected population. The power of Open Source is still completely underrepresented in technological innovations in this sector. We are working towards improving this situation and will showcase one of our flagship examples: An Open Source Battery Management System (BMS) specifically developed for off-grid energy application. Energy storage and its related technologies are key to any off-grid energy application and the Libre Solar BMS has been specially developed for this use case. We will deep dive into the design decisions and features, covering hardware, firmware and an app. The BMS was developed leveraging solely open source tools: The PCB is designed in KiCad, the firmware runs on Zephyr RTOS and the communication interfaces use the ThingSet protocol over various lower layers like Serial, CAN, WebSocket or MQTT. The hardware went through three design iterations and has been lab and field-tested by several organizations. We will conclude and show why this kind of Open Source technology is of such great importance to bring power to the people in both the sense of bringing electricity literally and also creating the grounds for local value creation in the affected geographies. We invite the whole Energy Open Source community to contribute with their efforts to where the contributions can be most impactful on various levels. The Open Source BMS is one great piece, but we need much more of those.

 "Deploy Kubernetes... From Kubernetes: an overview of Cluster API" ( 2024 )

Saturday at 14:30, 30 minutes, UB2.147, UB2.147, Virtualization and Cloud Infrastructure devroom Mathieu Tortuyaux , slides , video

Cluster API is a Kubernetes sub-project that eases the deployment of a Kubernetes cluster from an existing cluster. After introducing the underlying concept, Mathieu will deep dive with an example showing the OpenStack Cluster API provider to demonstrate how to deploy and operate Kubernetes cluster with CAPI.

 "How open source projects approach Functional Safety" ( 2024 )

Saturday at 14:30, 25 minutes, Janson, Janson, Main Track - Janson Nicole Pappler Philipp Ahmann , slides , video

Open Source is a winning solution for many industries already - and now even safety critical applications want to make use of it. While “security” is a capability of open source since many years, a few years ago using open source in safety critical applications seemed to be impossible even to think about. Nowadays it has become a valid option for upcoming applications. This kind of application that should save lives, or at least not harm anyone. However, with advancements in technology and safety integrity standards, open source is becoming a valid option for upcoming safety critical applications. This talk will provide an overview of how open source projects approach their integration to safety critical applications. Depending on the expectations of these applications, there are different solutions to address their needs. The talk will introduce example projects such as ELISA, the Zephyr Project, and the Xen Project, which are currently addressing these expectations with various mechanisms and approaches.

 "PHAIDRA - A Repository Where Research Data Goes to Live (Not to Die)." ( 2024 )

Saturday at 14:30, 15 minutes, UB4.132, UB4.132, Open Research devroom Raman Ganguly , video

Started by the University of Vienna Library Services in 2007, the PHAIDRA project builds on the popular FEDORA repository with a stack of additional open source tools and components aimed at delivering a more comprehensive toolset for building open, intuitive, self-service solutions for research data management, achieving FAIR data compliance, and promoting Open Access and Open Research. The simple objective was to make high quality data management easier for researchers.

This presentation will explore the real needs that researchers have from data management, before moving on to how the PHAIDRA project (https://phaidra.org/community/phaidra-partners/) has been built to address these needs. We will look at the challenges and lessons (still being) learned after 15 years of running a collaborative project in the space and end with a vision of how open source, open standards and, above all, community offer the only workable solution for both Open Research and the long-term preservation of research data and digital assets.

 "Building open source telephone agents using LLMs" ( 2024 )

Saturday at 14:30, 35 minutes, H.1302 (Depage), H.1302 (Depage), Real Time Communications (RTC) devroom Rob Pickering , slides , video

This talk is about our experience building LLM based telephone agents on top of open source telephony platforms. We will detail the issues and challenges in the real time media processing, STT, TTS and large language model handling that were discovered whilst developing the llm-agent server code base and playground, look at the results we were able to achieve and where development is likely to go next.

 "HPC Container Conformance" ( 2024 )

Saturday at 14:35, 10 minutes, UA2.118 (Henriot), UA2.118 (Henriot), HPC, Big Data & Data Science devroom Christian Kniep , slides , video

While containerization revolutionized the delivery and execution of software, it introduces new challenges as the usual practice with one big software file-system with a subsequent module load to rule all environments is not feasible with containers. This lighting talk introduces the 'HPC Container Conformance' Project which aims to provide guidance on how to build container images and how to annotate them so that end-users and system admins can integrate them in their workflows. In 2023 an OCI Working Group was formed to aim for changes to the image spec to allow for such information to be stored within the OCI standard.

 "Soft Reboot: keep your containers running while your image-based Linux host gets updated" ( 2024 )

Saturday at 14:35, 20 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Containers devroom Luca Boccassi , slides , video

systemd v254 added soft-reboot, a reboot type that keeps the same kernel running, but restarts the whole of userspace into a new rootfs, while serializing state across (e.g.: File Descriptor Store). In v255 the ability for select system services/portable services/containers to survive the reboot uninterrupted was added. On an image-based Linux system this allows atomically updating the rootfs without causing interruptions for workloads that run on discrete and separate filesystem images. This talk will briefly explore this new feature, listing new improvements from the latest version, and showing a demo of a soft-reboot being applied on an Azure Boost machine with two surviving critical portable services running without interruptions while the rest of the OS is restarted.

We will explore what container runtimes maintainers would need to do in order to support this feature. systemd-portabled already supports it for Portable Services.

 "Flying higher: hardware offloading with BIRD" ( 2024 )

Saturday at 14:40, 20 minutes, UB5.230, UB5.230, Network devroom Asbjørn Sloth Tønnesen , slides , video

Offload IP forwarding to a SmartNIC/DPU with tc-flower(8)

In order to conserve CPU cycles, it can be helpful to offload all or some of the Internet routing table, to the embedded switch within modern network cards. Linux have good support for doing this through the tc-flower(8) API, although it was originally aimed towards OVS-offloading, it's however also capable of IP forwarding.

In the first part of the talk we will go through how tc-flower(8) can be used to offload IP forwarding onto a compatible SmartNIC/DPU, by scripting some tc commands. In the second part of the talk we will introduce flower-route, a new daemon, which keeps a hardware-offloaded tc ruleset in sync, with routing changes from a routing daemon like BIRD (or FRR, ...). Thereby attaining BGP-based IP forwarding offload.

Our current focus is mlx5-based devices (aka. NVIDIA/Mellanox ConnectX 5+), but it will work on any other driver with support for the required offloads.

 "Web Performance: Leveraging Qwik to Meet Google's Core Web Vitals" ( 2024 )

Saturday at 14:45, 30 minutes, H.1301 (Cornil), H.1301 (Cornil), JavaScript devroom Ayoub Alouane , video

In this talk, we'll examine why the Qwik framework strategically aligns with Google's Core Web Vitals. We'll explore how the Qwik framework delivers the minimal time-to-interactive for websites by utilizing the concept of Resumability as an efficient alternative to hydration.

Qwik is a framework created by the creator of Angular, Misko Hevery, Qwik comes with a clear goal: achieving top performance, 0 javascript, pure HTML and great DX. Its philosophy is clear: make the fastest possible time-to-interactive. The framework delays the invocation of javascript as much as possible and invokes it only when it is needed.

Participants will learn how to enhance loading performance and interactivity, which are among the factors known as Core Web Vitals, the key metrics that Google uses in its ranking algorithm. In this session, we will provide a comprehensive overview and understanding of LCP (Largest Contentful Paint), FID (First Input Delay), and CLS (Cumulative Layout Shift).

By the end of this talk, attendees will possess the knowledge necessary to build performant and scalable websites.

 "Brewing Free Beer with ESPHome and Home Assistant" ( 2024 )

Saturday at 14:45, 15 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Embedded, Mobile and Automotive devroom John Britton , video

In 2023 I built an all grain brewing system for making beer following plans from The Electric Brewery. Unfortunately their plans for electrical control systems are labor intensive, expensive, and lack network connectivity.

In this talk, I'll give an overview of all-grain brewing, an introduction to the ESP32 microcontroller, and a deep dive into building an inexpensive and internet connected brewery controller with ESPHome and Home Assistant.

 "Updates and Innovations with the Apptainer Platform" ( 2024 )

Saturday at 14:45, 10 minutes, UA2.118 (Henriot), UA2.118 (Henriot), HPC, Big Data & Data Science devroom Forrest Burt , slides , video

Apptainer, an open-source containerization software built for HPC and used by over 25,000 computing sites worldwide, entered the Linux Foundation about two years ago. This was accompanied by a rebasing in version and a fresh roadmap of features for the software project moving forward. A significant amount of development has happened both on these features and on methods of utilizing Apptainer itself for greater efficiency in HPC since this changeover. This talk will explain these developments, including new support for fully rootless builds and installs of Apptainer, ways Apptainer now leverages the Linux user namespace for some of its features, innovations in using Apptainers with MPI and fabric adaptors, and the usefulness of ORAS protocol in software supply chain management and its current state of integration with OCI registries.

Apptainer Website Apptainer GitHub

 "Open Source DocOps" ( 2024 )

Saturday at 14:45, 25 minutes, K.4.601, K.4.601, Tool the docs devroom Lorna Mitchell , video

Every software project has a robust continuous integration/delivery setup, but many of our documentation projects are still playing catchup. In this talk you'll hear about a selection of tools that are good additions to your documentation pipeline, and how to use them both locally and in CI. We'll cover linting and validation of your source content, and look at tools that can help with consistent formatting. We'll also look at content quality tools, such as prose linting, link checking, and more. You'll see examples of projects that use some or all of these tools in anger, and we'll also discuss when too many tools is too many! This session is recommended for anyone who works on documentation platforms as either writer or engineer, and wants to make their world better.

 "Updating open data standards" ( 2024 )

Saturday at 14:45, 15 minutes, UB4.132, UB4.132, Open Research devroom Sara Petti , slides , video

Frictionless Data is a progressive open-source framework for building data infrastructure. At the core of the project are the Frictionless Data Standards, a minimum viable set of lightweight and comprehensive standards to significantly improve the transport of data.

In September 2023, 5 years after their v1 release, we kickstarted the Frictionless standards update together with a working group, made of members of the community coming from different academic fields, aiming at a v2 release in mid-2024.

In this talk we will share our main takeaways from this Standards update journey, including (but not limited to):

  • What makes a standard successful
  • How to coordinate a major standard update
  • What are the key elements to take into account

 "Introducing Ratatui: A Rust library to cook up terminal user interfaces" ( 2024 )

Saturday at 14:50, 40 minutes, H.1308 (Rolin), H.1308 (Rolin), Rust devroom Orhun Parmaksız , video

Have you ever wondered how terminal user interface applications are built? Join me in this talk as we explore Ratatui which aims to provide a wide range of widgets to make it possible to design beautiful interfaces and push the limits of the terminal using Rust.

 "Another approach to AI" ( 2024 )

Saturday at 14:50, 25 minutes, H.2213, H.2213, Collaboration and Content Management devroom Jos Poortvliet , slides , video

Progressively, there are more and more risks associated with computer intelligence, and as a transparent software company we have the responsibility to intervene and protect our users. Recently, Microsoft laid off its entire ethics and society team, the team that taught employees how to make AI tools responsibly. Nextcloud on the other hand, embraces the ethics and challenges that make up today’s AI and aims to take them head on.

The field of AI is moving fast, and many of the new capabilities face ethical and even legal challenges.

For example, there are problems with:

  • Privacy and security of user data
  • Discrimination and biases
  • Energy usage

In particular with neural networks based AI technologies, the mere availability of open source code is no longer enough to be able to say you are in control over your data or that the software is safe or ethical. The set of data and the software used in the training, as well as the availability of the final model are all factors that determine the amount of freedom and control a user has.

Until Hub 3, we succeeded in offering features like related resources, recommended files, our priority inbox and even face and object recognition without reliance on proprietary blobs or third party servers.

Yet, while there is a large community developing ethical, safe and privacy-respecting technologies, there are many other relevant technologies users might want to use. We want to provide users these cutting-edge technologies – but also be transparent. For some use cases, ChatGPT might be a reasonable solution, while for other data, it is paramount to have a local, on-prem, open solution. To differentiate these, we developed an Ethical AI Rating.

Our Ethical AI Rating is designed to give a quick insight into the ethical implications of a particular integration of AI in Nextcloud. We of course still encourage users to look more deeply into the specific solution they use, but hope that this way we simplify the choice for the majority of our users and customers.

I will describe how our Ethical AI rating works, and give a bunch of examples. And, as a bonus, show how it is integrated in Nextcloud and how it can help you get work done - without leaking your data!

I look forward to any feedback you wonderful folks in the audience have.

 "The Challenges of Running the Fuzion Language Natively on the OpenJDK" ( 2024 )

Saturday at 14:55, 20 minutes, UB5.132, UB5.132, Free Java devroom Fridtjof Siebert , slides , video

The Fuzion language is a hybrid functional and object-oriented language that in many respects behaves exactly diametrical to Java. Nevertheless, the JVM has turned out an excellent target platform for Fuzion and in this talk I will present why that is the case and what challenges had to be overcome.

Fuzion uses algebraic types, i.e., product types and tagged union types. All types can be parametric, but unlike Java not using type-erasure but monomorphisation.

Unlike Java, where user defined types have reference semantics, Fuzion has value semantics by default, reference semantics only for types that are explicitly declared so.

I will present how these are implemented in the new JVM byte-code back-end and what trade-offs and optimizations are made. In particular, I will

  • present several levels of optimizations for tagged union types when mapped to efficient to byte-code

  • show how product type with value semantics are implemented, where the JIT compiler creates surprisingly efficient code and how we all could profit form project valhalla

  • explain how type parameters (generics) are implemented using monomorphisation including support for basic types as type parameters and what benefits this brings.

  • analyze the JVM's black magic of method dispatch and its impact on implementing dynamic dispatch for multiple inheritance in Fuzion.

  • show how the classfile verifier helped to fix bugs in the C backend

Links: - github: https://github.com/tokiwa-software/fuzion - Fuzion portal: https://flang.dev

 "Deploying a hyper-converged infrastructure with Ceph across the Cloud-Edge Continuum" ( 2024 )

Saturday at 14:55, 30 minutes, K.3.201, K.3.201, Software Defined Storage devroom Victor Palma , slides , video

The cloud-edge continuum encompasses a diverse range of infrastructures with varying sizes, performance levels, energy consumption profiles, and resource constraints. Within edge nodes, constrained resources may require the use of hyperconverged storage solutions. OpenNebula has recently integrated Ceph as the foundational SDS solution for these edge deployments. This innovation enables the dynamic deployment of nodes through orchestrated infrastructure provisioning (based on Terraform), autoconfiguration of Ceph and virtualization subsystems (through Ansible), and cloud-edge management (using OpenNebula). This presentation discusses the seamless integration of these components to automate edge location management and to provision additional edge nodes in multi-provider edge cloud environments, highlighting the effectiveness of Ceph as an edge storage solution and showcasing a live technical demonstration of this innovative open source model.

 "Putting an end to Makefiles in go projects with GoReleaser" ( 2024 )

Saturday at 15:00, 30 minutes, UD2.218A, UD2.218A, Go devroom Denis GERMAIN , slides , video

When I started learning Golang a few years back, I quickly sought to automate various repetitive tasks, especially compilation. Coming from a background in C programming, I had previously used Makefiles to accomplish such actions.

While this approach is entirely functional, it may not be the most efficient in the Golang world. Achieving the same, and even more, can be done much faster with a tool called GoReleaser.

In this session, we will begin with a simple Go application, and I will demonstrate how to automate the building and distribution of our artifacts using GoReleaser, progressively adding features along the way.

 "Writing a consistent-hashing Loadbalancer for the Kong API gateway (ketama principle)" ( 2024 )

Saturday at 15:00, 30 minutes, K.4.201, K.4.201, DNS devroom Thijs Schreijer , slides , video

During this talk Thijs Schreijer will first explain what the ketama principle is, how it works and how it compares to other basic algorithms. Then he will explain how it was implemented on top of the DNS client in the Kong API gateway, and what was learned doing so.

The implementation is now part of the Kong API Gateway. The old repository (before it was integrated in the mono-repo) is available as well, and is available through the LuaRocks package manager.

 "Automating Spark (and Pipeline) Upgrades While "Testing" in Production" ( 2024 )

Saturday at 15:00, 30 minutes, UA2.118 (Henriot), UA2.118 (Henriot), HPC, Big Data & Data Science devroom Holden Karau , slides , video

With Spark 4 in the pipeline for this year, many of us are looking at what will be involved in upgrading to the latest and greatest Spark. This talk will look at the open-source tooling we use to automate upgrading thousands of our Spark pipelines (from Spark 2.X -> 3.4) and how to we used a variation of the write-audit-publish technique to validate the new pipelines in production for pipelines that might have less testing than ideal.

Seeing is a pre-requisite to believing, so the talk will include a short demo showing how the spark-upgrade tool works on a demo pipeline complete with "live" validation.

In this talk, you will learn how to: Upgrade your Spark pipelines without crying* Validating Spark (and other similar) pipelines even when you don't trust the tests (by extending the write-audit-publish pattern) on top of Iceberg, Hudi, or Delta Lake.

Time permitting, I will end with some exciting new (but non-backward compatible) changes coming in Spark 4 (tentatively scheduled for June, but it's software).

*Not a guarantee, some upgrades may still cause tears

Related links: https://github.com/holdenk/spark-upgrade - the upgrade tool being discussed https://scalacenter.github.io/scalafix/ - the code mod tool we used for scala https://pybowler.io/ - the python code refactoring tool we extended https://sqlfluff.com/ - the sql linting / cleanup tool we extended

 "Operating Kubernetes Across Hypervisors with Cluster API & GitOps" ( 2024 )

Saturday at 15:00, 30 minutes, UB2.147, UB2.147, Virtualization and Cloud Infrastructure devroom Alexandr Demicev Richard Case , slides , video

Do you struggle with managing Kubernetes across different hypervisors? How can you make sure things run smoothly no matter where your clusters are?

In this talk, we'll introduce you to Cluster API, a powerful tool designed to simplify the setup and management of Kubernetes across diverse environments. Through a live demo and a real-world example, we'll showcase how Cluster API, coupled with GitOps practices, maintains consistency, ensuring operational ease despite variations in underlying infrastructure. Our focus will be on demonstrating the creation of Kubernetes clusters using Proxmox and then replicating the same process on KubeVirt. This approach will illustrate how clusters can potentially scale across hundreds of servers and on different hypervisors while keeping operations consistent.

 "The best `case` scenario" ( 2024 )

Saturday at 15:00, 40 minutes, K.3.401, K.3.401, Ruby devroom Sandjiv , slides , video

With the arrival of pattern matching, Ruby's case got even sexier than it already was. Let's take a look at how it works, test its limits and look at some interesting pattern matching use cases

 "Sharing the operational cost of Europe's electricity grid: optimization and transparency through open source" ( 2024 )

Saturday at 15:00, 25 minutes, H.2214, H.2214, Energy: Reimagining this Ecosystem through Open Source devroom Peter Mitri , slides , video

Operating the electrical grid must comply with many constraints on its physical elements. To ensure grid security, TSOs (transmission system operators) have ways of relieving these grid constraints, commonly called "remedial actions". These actions may or may not be costly.
The European electricity grid is highly meshed, spanning upon multiple countries and TSOs. National grids are no longer independent: every event can have a spill-over effect across the whole continent. Two of the most important consequences are:
- TSOs can "pollute" other TSOs' grids with unnecessary electrical flows, putting a strain on their national grids;
- Optimizing the cost of grid operation (i.e. of remedial action implementation) is no longer a national problem, but a global one.

Thus, it becomes necessary to optimize the operation of the EU grid on a large scale and implement an agreed method to share its costs. Developing open-source tools to achieve these goals has benefits with robustness, transparency, auditability, and re-usability.

 "Thunderbird: Why Visual Change Is Good" ( 2024 )

Saturday at 15:00, 25 minutes, AW1.126, AW1.126, Open Source Design devroom Alessandro Castellani , slides , video

Thunderbird has been around for 20 years, and that’s like saying centuries when talking about user interfaces and accessibility. The visual and usability paradigms that were the golden standards when the first version of Thunderbird was released are looked at like today we look at carts and horses as the fastest means of transportation. When Thunderbird was first released, tabs weren’t even a thing. Can you imagine using your OS without tabs at all? This talk will explore the years of UI evolution (and stagnation) of Thunderbird, and explain the reasons that drove us to the decision of reworking it entirely from scratch, which modern UI/UX we’re implementing, what challenges are we facing, and how our community is responding to this drastic “life shattering” event.

 "Wikimedia projects and OpenStreetMap as an Open Research Infrastructure" ( 2024 )

Saturday at 15:00, 30 minutes, UB4.132, UB4.132, Open Research devroom Iolanda Pensa , slides , video

The Wikimedia and OpenStreetMap projects are an existing free software infrastructure that already produces citizen science and can be used by researchers to share and co-produce data and to produce - and reproduce - the results of research. The presentation specifically refers to the potential of data related to cultural heritage for studies in the humanities and in particular in museology, art, art history and history of architecture.

 "Documenting and Fixing Non-Reproducible Builds due to Configuration Options" ( 2024 )

Saturday at 15:00, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks RANDRIANAINA Georges Aaron , slides , video

A critical aspect of software development, build reproducibility, ensures the dependability, security, and maintainability of software systems. Although several factors, including the build environment, have been investigated in the context of non-reproducible builds, to the best of our knowledge the precise influence of configuration options in configurable systems has not been thoroughly investigated. This presentation aims at filling this gap. This presentation thus proposes an approach for the automatic identification of configuration options causing non-reproducibility of builds. It begins by building a set of builds in order to detect non-reproducible ones through binary comparison. We then develop automated techniques that combine statistical learning with symbolic reasoning to analyze over 20,000 configuration options. Our methods are designed to both detect options causing non-reproducibility, and remedy non-reproducible configurations, two tasks that are challenging and costly to perform manually. We evaluate our approach on three case studies, namely Toybox, Busybox, and Linux, analyzing more than 2,000 configurations for each of them. Toybox and Busybox come exempt from non-reproducibility. In contrast, 47% of Linux configurations lead to non-reproducible builds. The approach we propose in this presentation is capable of identifying 10 configuration options that caused this non-reproducibility. When confronted to the Linux documentation, none of these are documented as non-reproducible. Thus, our identified non-reproducible configuration options are novel knowledge and constitutes a direct, actionable information improvement for the Linux community. Finally, we demonstrate that our methodology effectively identifies a set of undesirable option values, enabling the enhancement and expansion of the Linux kernel documentation while automatically rectifying 96% of encountered non-reproducible builds.

 "A microkernel-based orchestrator for distributed Internet services?" ( 2024 )

Saturday at 15:00, 20 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Microkernel and Component-based OS devroom Alex Auvolat , slides , video

In the recent years I have worked a lot on building community Internet services using distributed systems, in the context of Deuxfleurs, a French self-hosting collective. We use distributed systems with nodes in different physical locations to help us tolerate temporary failures such as Internet links going down, as well as hardware failures of our low-cost, second-hand servers.

We built our platform as a set of microservices, taking the form of Docker containers orchestrated by Nomad (a smaller Kubernetes). This allows us to divide our workload in pieces that can be ran on one or many machines simultaneously, and that can in most cases be automatically moved from one geographical region to another in case of failure. This approach works relatively well, however I am frustrated to no end by the idiosyncraties of containers and the Linux/UNIX ecosystem in general which contains huge piles of legacy and is massively getting in our way for building a clean, declarative and resilient dynamic microservice architecture.

I have a dream that one day we can build an orchestrator for microservices that is built on a microkernel, component-based operating system. We just need a way to simply multiplex fundamental resources such as storage and networking (NOT a filesystem, and NOT a full TCP/IP stack with iptables or whatnot), and to schedule and run unikernels or tiny Linux VMs in a cluster of machines. How hard can that be?

I will do a brief talk at the beginning but I'm hoping for this session to be mostly just talking of what can be done in this direction.

 "Embiggen the Box: Extending NetBox" ( 2024 )

Saturday at 15:00, 15 minutes, UB5.230, UB5.230, Network devroom Jeff Gehlbach

Are you loving NetBox, the powerful source of truth for everything on your network, and wishing to customize it to meet your organization's unique needs? Join this beginner-level technical talk as we embark on a journey to demystify the why and how of NetBox extensions.

In Embiggen the Box: Extending NetBox, Jeff Gehlbach will guide you through the high points of extending NetBox to meet your specific requirements. The talk will cover essential topics for beginners including an overview of NetBox functionality, development environment basics, and determining whether your use case calls for a script, a plugin, a device type, or another kind of extension.

Key points:

  • Introduction
    • Brief Overview of NetBox capabilities and use cases
    • Importance of extensibility
  • Understanding NetBox extension mechanisms
    • Scripts
    • Plugins
    • Device Types
    • Other options
    • Evaluating a real-world example
  • Development environment basics
    • Virtual environment
    • Development server
    • Tips and tricks for debugging
  • Q&A session (5 min)
    • Open floor for questions

 "Droidian - Bridging the gap between various platforms with convergence" ( 2024 )

Saturday at 15:00, 30 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), FOSS on Mobile Devices devroom Bardia Moshiri , video

Introduction to Droidian by Bardia Moshiri

Overview

In this presentation, Bardia, the current lead of the Droidian project, introduces the audience to Droidian, a Debian-based GNU/Linux distribution designed specifically for mobile phones. The community is made up of FOSS and privacy enthusiasts dedicated to building an open and versatile system for smartphones.

Technical Aspects

  • Porting Process: Explains how Droidian is adapted to different mobile devices.
  • System Architecture: Discusses Droidian's unique approach to system design.
  • Components and Backends: Details various components used in Droidian, providing essential functionality.

Demonstrations

  • System architecture: Showcase Droidian's system architecture
  • Phone customizations: Showcase our customized components to ease usability

Future Plans and Challenges

  • New features: Plans to add new features and make the system more user friendly
  • Optimizations and cleanups: Continuing effort to optimize and improve the stack
  • Ongoing Maintenance: Continual efforts to refine and improve Droidian.
  • Challenges: Acknowledge issues that are yet to be solved
  • App Development: Focuses on libadwaita and other essential apps.

Community Involvement

  • Call for Active Maintainers: Encouraging more contributors to join.
  • Userbase Expansion: Strategies to increase the number of Droidian users.
  • New Device Support: Ongoing efforts to make Droidian available on more devices.
  • Enhanced Documentation: Working on better documentation to aid users and developers.

Join the Droidian project to contribute to a future of open and privacy-respecting mobile systems!

Droidian Website and Resources

Droidian Sources

Main Git Organization

Device Organization

Image Organization

Release Engineering Organization

 "Juggling with UIDs and GIDs: rootless container deployment with Ansible" ( 2024 )

Saturday at 15:00, 10 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Containers devroom Nicola Sella , video

This demo aims to share a convenient setup for maintaining a container environment using Podman and Ansible. The configuration is well-suited for home server applications as it enables the user to efficiently manage media files and execute sysadmin tasks without requiring root access. In particular, delegating the setup to a playbook that does not require root ensures that the system converges to the desired state without the need for a superuser. This short talk focuses on a common scenario where a rootless setup may require remapping UIDs and GIDs, which can be quite challenging to maintain over time. Due to the nature of these use cases, Ansible is frequently one of the best options for setting up, updating, and keeping a system up and running over time. Finally, this presentation covers other common needs of a container setup, such as the need to store secrets, manage services separated into logical units, and reproduce the setup on different systems.

 "Hactorscript in ART: Bug-free Software on Unhackable Hardware" ( 2024 )

Saturday at 15:00, 50 minutes, K.1.105 (La Fontaine), K.1.105 (La Fontaine), Main Track - K Building Blaine Garst , slides , video

As the Internet-of-Things moves into space the need for absolute security becomes paramount. Using inexpensive encrypted secure boot RISC-V devices and software minimalism we build first in the home for fun and then commercialize for space and ground based applications. Bug-free modules of actor components compete for efficiency in a distributed matrix of algorithms.

We present an overview of the multi-core memory safe language called Hactorscript and its widely ported Actor RunTime (ART) above minimal POSIX. With no threads, stacks, locks, or loops, the cores directly compete for work on lockless (“MPMC”) queues. These queues can be fed at “interrupt” levels.

Finite-state-machines are nearly direct Actor specifications (as is TLA) and form the first set of composable bug-free modules.

 "Introduction to the Public Code and Digital Public Goods devroom" ( 2024 )

Saturday at 15:00, 15 minutes, AW1.120, AW1.120, Public Code and Digital Public Goods devroom Jan Ainali Elena Findley-de Regt Amreen Taneja , slides , video

What is public code and Digital Public Goods? This session gives a frame for this devroom and all the talks in it.

 "Weblate BoF" ( 2024 )

Saturday at 15:00, 60 minutes, AW1.121, AW1.121, BOF - Track C Benjamin Alan Jamie

Gathering feedback, discussing Weblate plans, features, bugs, collaboration within the community, and anything Weblate. Everybody is welcome! Michal Čihař, Weblate Founder and Benjamin Jamie, Community Manager will be there for sure.

 "Privacy-respecting usage metrics for free software projects" ( 2024 )

Saturday at 15:00, 50 minutes, Janson, Janson, Main Track - Janson Will Thompson , video

Free software users and authors tend to be highly aware of the risks of large-scale collection of personal data, and often consider software telemetry to be incompatible with user privacy. But it is possible to collect anonymous data about how software is used in a way that respects its users and protects them from harm – and by doing so, the software's authors can make better-informed decisions about how to improve it.

In this presentation, I will make a case for why free software projects should want to collect data on how the software is used, and how this can be done in a privacy-respecting fashion. I will describe the anonymous metrics system in Endless OS, a desktop Linux distribution: our goals for the system, its design and implementation, the types of usage data we collect, and what we have learned from that data, as well as some shortcomings of both the system itself and the data we have.

I hope to encourage other free software projects, on the desktop or otherwise, to consider adopting similar techniques to better understand how their software is used.

 "Welcome to the Legal and Policy Issues Devroom" ( 2024 )

Saturday at 15:00, 5 minutes, UA2.220 (Guillissen), UA2.220 (Guillissen), Legal and Policy Issues devroom Karen Sandler Tom Marble Alexander Sander Bradley M. Kuhn Matthias Kirschner , video

Welcome to the Legal and Policy Issues Devroom Opening Legal and Policy Issues Devroom

 "Debug your stage-1 systemd with GDB and the NixOS test framework" ( 2024 )

Saturday at 15:05, 20 minutes, K.4.401, K.4.401, Debuggers and analysis tools devroom Ryan Lahfa Julien Malka Linus Heckemann , video

GDB is an amazing tool to debug ELF programs, but some of them are more challenging to debug than others. Systemd can be used as an implementation of the initrd, and in that case is run as PID 1 even before your system is finished booting. This talk will describe the process of debugging a crashing systemd in initrd using gdbserver running as the init script, gdb and the NixOS test framework.

 "RHEL and CentOS and the growth of openwashing in FOSS" ( 2024 )

Saturday at 15:05, 55 minutes, UA2.220 (Guillissen), UA2.220 (Guillissen), Legal and Policy Issues devroom Karen Sandler benny Vasquez Markus Feilner Liam Proven , video

In 2023, Red Hat changed how it handles Red Hat Enterprise Linux (RHEL) source code. The source code for RHEL spent many years being released for free as CentOS Linux, but is now only available through the Red Hat customer interface, limiting access to those who commit to following its user agreements. Those user agreements then limit the use and redistribution of that code. The situation is complicated: While Red Hat claims this is compliant with open source definitions, some NGOs and OSS opinions differ.

At the same time, we see an expansion of the adoption of open core, and even gatherings of opencore supporters at their own events (https://opencoresummit.com/). Organized by investment capital firms (https://oss.capital/) and defining "COSS" (commercial open source software) as the best OSS ever, these events celebrate a disruptive and highly commercial approach to open source. More and more companies are adopting the open core model with varying degrees of success, while Amazon and other companies are moving away from companies using the open core model, embracing "truly free" software.

One thing is for sure: many of the companies adopting open core model have very effective legal departments and a lot of experience. But how should we - the open source community handle this? Many of us volunteer for open source projects, and the very lucky ones are employed to work on open source projects, but that, too, can bring in a competing motivation.

From open source projects that are backed by commercial companies needing to provide value to continue to receive the very real funding the projects need, to projects with no commercial backing and massive contributor communities, the answer is likely to be nuanced. How do we ensure the success and continued adoption of open source philosophies while finding a way to call out and de-incentivize openwashing?

Host: Markus Feilner, Open Source Journalist Panel: Liam Proven, (The Register), author of many articles on the topic Karen Sandler, Executive Director, Free Software Conservancy benny Vasquez, Chair, Board of Directors @AlmaLinux OS Foundation

 "Dora-rs: simplifying robotics stack for next gen robots" ( 2024 )

Saturday at 15:05, 15 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Embedded, Mobile and Automotive devroom Tao xavier Philipp Oppermann , slides , video

Dora-rs aims at making robotic fast and simple. Current robotic stack are often overly complex, and hard to integrate with latest technologies.

dora-rs is a dataflow framework that can be programmed with Rust/Python/C/C++, it supports: - zero-copy messaging using shared memory with apache arrow format. - manages logs metrics and tracing using opentelemetry. - provide a ROS2 bridge to support legacy software.

We hope to make robotic just work! In the same sense that Web Dev, Game Dev, or
Cloud development most of the time just work.

And with the avent of Large Language Model (LLM), we can implement whole new way to interact with robot like implementing new functionality in real time by natural language!

Links: https://github.com/dora-rs/dora https://dora.carsmos.ai/

 "How do you change the governance model of an established open source project?" ( 2024 )

Saturday at 15:10, 30 minutes, UA2.114 (Baudoux), UA2.114 (Baudoux), Community devroom Ruth Cheesley , slides , video

Lessons learned from changing the governance model of an established open source project after ownership of the project was passed from a company to the community. Picture the scene, you're leading a popular open source project used by tens of thousands of businesses, and suddenly your founding company and primary funder steps back from the project. What will happen to the project? How do we move forward given that all of our governance model and decision making was tied up with the founding company?

This session will explore some of the governance challenges that faced Mautic when this situation arose back in April 2023, and in particular we'll dive into more detail on how we developed an entirely new governance model and decision making process.

We will touch on issues including how we actually went about creating a new community-driven governance model in a collaborative way, allowing members of the community to have a say, through to the practicalities of how we implemented our new Community Portal for democratic decision making.

This session is for you if you're curious about all things governance and open source, if you'd like to know more about collaborative decision making and how this can be facilitated with open source software.

 "ZIM Workshop" ( 2024 )

Saturday at 15:10, 60 minutes, J.1.106, J.1.106, FOSDEM junior Karel Rosseel

ZIM is a general Canvas Framework with simple, powerful JavaScript that lets everyone, from beginners to professionals, code creativity.

Anyone aged 7 to 17 can visit the workshop and learn how to use ZIM.

Registration will be required for this session. Use the following link to register.

 "Skynet: introducing local AI summaries in Jitsi Meet" ( 2024 )

Saturday at 15:10, 35 minutes, H.1302 (Depage), H.1302 (Depage), Real Time Communications (RTC) devroom Saúl Ibarra Corretgé , video

Ai and LLMs have hit the world by storm in 2023. The allow developers to provide features unattainable before. Today Jitsi is introducing Skynet, our AI core service which summarises meetings, locally, without sending your data anywhere.

 "Can we simplify charting libraries?" ( 2024 )

Saturday at 15:15, 25 minutes, H.1301 (Cornil), H.1301 (Cornil), JavaScript devroom Alexandre Fauquette , slides , video

Creating charting libraries might not be that hard (big mistake). I accepted the challenge for MUI to create @mui/x-charts.

After 6 months on this topic, I propose to discuss what makes charting libraries so special compared to other UI elements. What are the current solutions, and what could we try to improve the developer experience.

Hope that after this talk you will better understand how your charting library thinks.

 "ZeekJS: JavaScript support in Zeek" ( 2024 )

Saturday at 15:15, 15 minutes, UB5.230, UB5.230, Network devroom Arne Welzel , slides , video

Zeek (formerly Bro) is an extensible and scriptable Network Security Monitor. For decades, it has provided its own custom scripting language as the primary way for users to handle low-level network protocol events. With the release of Zeek 6.0, support for JavaScript as an alternative scripting language has been added by embedding Node.js via the ZeekJS plugin.

$ cat hello.js
zeek.on('zeek_init', () => {
  console.log('Hello, Zeek!');
});

$ zeek ./hello.js
Hello, Zeek!

This talk will give a short Zeek introduction followed by a technical overview of how JavaScript support in Zeek was realized as an external plugin and demonstrate use-case examples. There will be details about Zeek's plugin architecture, its IO loop concepts and ways to interact with the Zeek script interpreter. Each of these enabled an almost seamless way to load .js script files, adding Node.js's libuv IO loop as another IO source into Zeek's main loop, as well as patching in JavaScript functions as Zeek event and hook handlers. Astonishingly, no modifications to Zeek's core were needed to pull this off.

One area this feature opens up is Zeek interacting with external systems by using Node.js builtin functionality or off-the-shelf libraries through npm - something where the Zeek scripting language ecosystem pales in comparison or quickly requires a C++ implementation. Concrete examples are sending HTTP requests in reaction to certain events, rapid log exporter prototyping (Redis, ZeroMQ), or serving HTTP APIs directly from within Zeek.

 "Style as code: Using open source tooling to codify technical documentation style" ( 2024 )

Saturday at 15:15, 25 minutes, K.4.601, K.4.601, Tool the docs devroom Jack Baldry , slides , video

Defining style as code lets tools do the hard work of remembering the style and gives technical writers and engineers the feedback they need to produce better documentation.

Reading good documentation is deceptively easy, and writing good documentation which is easy to read is hard. Both native and non-native English speakers find communicating useful and clear information in technical documentation is a challenge. Style guides from Google, Microsoft, and many others exist, but those are huge amounts of documentation themselves and are very difficult to memorize.

In this presentation, we will cover:

  • Why consistent style is valuable in improving inclusivity, readability, and clarity of documentation
  • The challenges of ensuring consistency, including managing exceptions and defining priorities of style rules.
  • Creating clear explanations so that writers feel empowered with knowledge rather than berated with pedantry
  • Demonstrating open source tooling that solves these challenges using Vale, a configurable, open source tool, an extensible rule set, support for many markup languages, and editor and CI integrations.

We'll also demonstrate:

  • Getting started using existing rulesets
  • Specific rules written and open source by Grafana
  • Configuring Vale for a project
  • Introducing linting incrementally with reviewdog

 "Sustainable Open Source Development" ( 2024 )

Saturday at 15:15, 30 minutes, AW1.120, AW1.120, Public Code and Digital Public Goods devroom Sean Marcia , video

Contrary to the common belief that sustainably developing open source software is a near-impossible task, the human-essentials project serves as a compelling counterexample. Initiated in 2015 through a collaborative effort between Ruby for Good and the Portland Diaper Bank, this Digital Public Good (DPG) has achieved remarkable growth without employing any paid staff. Expanding its reach to hundreds of essentials banks and thousands of nonprofit partners across North America, human-essentials now plays a crucial role in supporting over 3 million children and 500,000 period supply recipients annually. Remarkably, this success has been driven by the contributions of nearly 300 volunteers.

Join us to uncover the secrets behind this project’s success. Learn about the innovative strategies and community-driven approaches that have enabled human-essentials to defy expectations and thrive as a sustainable open source software project.

 "What's new in Containerd 2.0!" ( 2024 )

Saturday at 15:15, 20 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Containers devroom Phil Estes , slides , video

Containerd is nearing its eighth birthday this year! During its lifetime the community has supported eight major release branches/versions of the 1.x codebase, and even introduced a long-lived LTS release based on 1.6. But as we enter 2024, containerd is continuing with pre-GA releases of a new 2.0 line that includes new features, deprecates a long history of older functionality and hopefully provides a solid basis to take containerd into the future, or at least the next eight years!

This talk will walk attendees through new functionality in 2.0, what's changing, and how we continue to make containerd a core, reliable runtime with lots of extensibility. We'll highlight adopters and use cases both old and new, including the new WASM shim, new lazy loading technology, and many others.

 "Using Generative AI and Content Service Platforms together" ( 2024 )

Saturday at 15:20, 25 minutes, H.2213, H.2213, Collaboration and Content Management devroom Angel Borroy , slides , video

Join us to learn from the integration of Generative AI (GenAI Stack) with a Content Service Platform (Alfresco).

Leveraging Open-Source platforms, we will explore different applications of Generative AI within Document Management ecosystem. From enabling conversational searching to generating concise summaries and facilitating intelligent categorization, this session aims to showcase practical approaches that combines the potential of Generative AI and Content Service Platforms.

Live demo and sample source code will be provided!

Join us to discover how this dynamic collaboration enhances document processing, retrieval, and organization, opening new avenues for efficient and intelligent information management.

 "OpenJDK Project Wakefield : The Wayland Desktop for JDK on Linux" ( 2024 )

Saturday at 15:20, 25 minutes, UB5.132, UB5.132, Free Java devroom Phil Race Aleksei Ushakov Niels De Graef , video

The Wayland-based desktop is replacing X11 on more and more Linux distros. But like many applications, JDK is still X11-based. OpenJDK Project Wakefield is an effort to first support JDK running on Wayland in X11 compatibility mode, and followed up by the much larger effort to have a complete Wayland-native implementation. This session will discuss the goals, the technology, who and what is involved, and include live demos of progress to date.

 "Platform engineering for dummies" ( 2024 )

Saturday at 15:20, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Donnie Berkholz, Ph.D. , slides , video

Platform engineering is taking the software development world by storm, but its terminology and concepts can be intimidating for newcomers. This lightning talk will break down the essential aspects of platform engineering in a clear and concise way, making it accessible even for "dummies."

We'll explore the three pillars of platform engineering:

  1. Platform Operations (SRE): Learn how platform engineers leverage Site Reliability Engineering (SRE) principles to ensure the platform's performance, scalability, and reliability. Discover how they automate tasks, monitor systems, and handle incidents, freeing up developers to focus on building amazing products.

  2. Platform as Product: Imagine your platform as a product itself, not just infrastructure. We'll dive into how platform engineers design and build a self-service platform that caters to developers' needs. Think single pane of glass management, easy provisioning, and seamless integration with existing workflows.

  3. Self-Service for Developers (IDPs): Forget the days of waiting for infrastructure or services. Platform engineering empowers developers with Internal Developer Platforms (IDPs). These tools give them the autonomy to provision resources, deploy applications, and manage their environments with minimal friction.

By the end of this talk, you'll understand the power of platform engineering and its potential to revolutionize your software development process. You'll be equipped with key takeaways and resources to explore further, even if you're starting from scratch. So, join us and discover a world where developers can build faster, better, and more independently!

 "A Modular Approach to Effortless and Dependency-Aware Unikernel Building" ( 2024 )

Saturday at 15:25, 20 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Microkernel and Component-based OS devroom Charalampos Mainas Anastassios Nanos , slides

One of the key aspects of Unikernels is modularity: each component can be considered a standalone library that users selectively incorporate into their Unikernel. This design flexibility empowers users to create minimal and specialized images tailored for individual applications. Despite the advantageous compartmentalization, the process of building a Unikernel remains monolithic. Users must download the Unikernel framework, along with any external dependencies, and engage in a build-from-scratch procedure, even with minimal code changes.

We propose Bunny, a novel build system that aims to simplify the process of building Unikernels. Bunny creates an alternative build process, making full use of the modular aspect of Unikernels. We structure Bunny using a layered approach, where each component represents a distinct layer. Users do not need to build each component from scratch; instead, each respective layer is fetched and can be used to produce the resulting Unikernel image. Moreover, Bunny keeps track of all the dependencies for each component, relieving users from the pain of manually identifying and building all the dependencies.

 "k8gb meets Cluster API" ( 2024 )

Saturday at 15:30, 20 minutes, UB5.230, UB5.230, Network devroom Jiri Kremser , slides , video

k8gb

k8gb is a Kubernetes native load balancing solution that enables arbitrary workloads to run in a disaster recovery mode as well as in the round robin fashion. It assumes geographically dispersed availability zones aka failure domains.

Luckily, there is another open-source standard that can help with setting up such Kuberneres clusters. Cluster API is a standard that unifies Kubernetes cluster lifecycle and day-2 operations across multiple cloud providers.

In this talk we will be talking about an open-source way to fully automated K8s clusters that can host workloads that can survive any failure, using pure DNS as the underlying tool for switching the communication among available Kubernetes clusters. No single vendor lock-in. Workloads can be deployed in AWS, Azure, GCP, on-prem. The only common denominators are Kubernetes and Cluster-API.


k8gb is DNS based global service load balancer that can interconnect multiple Kubernetes clusters into one resilient system. Join this talk to learn how it can handle a failover scenario when pods in one cluster go down and second cluster in different location saves the day.

k8gb is an open-source Kubernetes operator that is deployed in each participating cluster. It is comprised of CoreDNS, ExternalDNS and the k8gb controller itself. Using ExternalDNS it can create a zone delegation on a common cloud DNS server like Route53 or Infoblox so that the embedded CoreDNS servers work as an authoritative DNS. K8gb controller makes sure these CoreDNS servers are updated accordingly based on the readiness probes of the application.

In this sense this solution is unique, because it is using Kubernetes native tools with customisable probes and battle tested DNS protocol instead of HTTP pings or other similar approaches where single point of failure might be a problem. In k8gb architecture all k8s clusters are equal and there is no SPoF except the common edge DNS server.

Cluster API

Cluster API is an umbrella standard for multiple cloud providers that can easily create new clusters using Kubernetes patterns such as controllers and custom resources. Together with k8gb it provides very nice synergy to the k8s ecosystem and also enables deploying stuff into those newly created clusters because of its hierarchical nature (parent as a management cluster & child as the workload cluster).

So at the end of day we have two paradigms - k8gb representing the p2p decentralized solution while Cluster API representing the centralized architecture with single management cluster (SPoF). Believe it or not but these two above-mentioned paradigms complete each other and work together in synergy.

Come to this talk and you will learn more about this setup.

 "Love rr, Love rr, you're so good to me" ( 2024 )

Saturday at 15:30, 20 minutes, K.4.401, K.4.401, Debuggers and analysis tools devroom Vicențiu Ciorbaru , video

Its the way you move, back and forwards. meticulous in execution, repetition, repetition, watching everywhere. With no where to escape, bugs get squashed hard and fast.

RR, record and replay, has been invaluable in making MariaDB bugs, that have low reproducibility become captured through automation. Once captured, a smooth examination can say what set of steps when on, in what time order, to arrive at the bug point.

 "REST in Peace: using generics to remove REST boilerplate" ( 2024 )

Saturday at 15:30, 30 minutes, UD2.218A, UD2.218A, Go devroom Tanguy ⧓ Herrmann , slides , video

Copy pasting boilerplate about HTTP handlers is exciting and fun for the first 3 webservices you code in Go. After that, it gets pretty annoying.

Generics provide a way to abstract that while keeping a strong type system. RIP is an attempt to make REST in Go even simpler.

project: https://github.com/dolanor/rip

 "RDF Dataset Canonicalization: scalable security for Linked Data" ( 2024 )

Saturday at 15:30, 30 minutes, UA2.118 (Henriot), UA2.118 (Henriot), HPC, Big Data & Data Science devroom Sebastian Crane , slides , video

RDF is the technology that powers many of the world's biggest datasets, serving as the backbone of the Linked Data ecosystem: over half of all websites serve RDF data, and massive datasets on topics such agriculture and transport are available openly from national governments and EU institutions. However, with several different RDF serialization formats in use, the inherent complexity of graph database topology and the ever-present risk of naming collisions on the Semantic Web, you wouldn't be alone in wondering how to tackle RDF data security effectively at scale.

The W3C's RDF Canonicalization and Hash Working Group has been meeting since 2022 to answer this very question, by designing and standardizing a process to transform datasets into a single, canonical form. This talk will take you on a tour of the result of this work, the RDF Dataset Canonicalization algorithm:

  • learn how canonicalization makes protecting datasets from malicious interference easier, from ensuring basic integrity to using RDF in digital credentials

  • get an insight into the challenges posed by 'poison graphs' and how to guard against them in your data pipelines

  • see what it looks like to run the algorithm on the command line and in your scripts using a 100% FOSS technology stack

  • discover how the W3C's standardization process works and how to participate in the design of RDF specifications

 "Vehicle Abstraction in Automotive Grade Linux with Eclipse Kuksa" ( 2024 )

Saturday at 15:30, 25 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Embedded, Mobile and Automotive devroom Sven Erik Jeroschewski Scott Murray , slides , video

When building an automotive software stack, a central component is to establish an abstraction layer for uniformly exchanging data between deeply embedded vehicle-specific systems and high-level applications. This abstraction benefits many use cases by making it easier to build and port applications and transfer data away from the vehicle. The Automotive Grade Linux Project (AGL) adopted the data broker from Eclipse Kuksa.val as an abstraction layer to leverage the advantages of a standardized description of vehicle signals, like the COVESA Vehicle Signal Specification (VSS). In this talk, we explain the integration of Eclipse Kuksa in AGL by presenting several use cases. We further showcase ongoing developments in both projects, like a new Eclipse Kuksa Android SDK.

 "Quartz Solar OS: Building an open source AI solar forecast for everyone" ( 2024 )

Saturday at 15:30, 25 minutes, H.2214, H.2214, Energy: Reimagining this Ecosystem through Open Source devroom Rachel L'Abri Tipton peter dudfield Open Climate Fix Zak Watts , slides , video

Solar energy is predicted to be the largest form of power generation globally by 2040 and having accurate real-time forecasts is critical to anticipating power production. Unlike fossil fuels, renewable energies are unpredictable in terms of power generation from one hour to the next. In order to balance the grid, operators need an accurate daily estimate of when and how much PV and other renewable energies will be generated.

Open Climate Fix (OCF) is an open-source (OS) AI company using machine learning (ML) to respond to the need for accurate renewable energy forecasts. Connecting energy industry practitioners with ML researchers doing cutting-edge modelling is our aim, and one way we seek to do this is by making much of our code open-source (https://github.com/openclimatefix).

In the energy space, OCF’s first focus is on solar nowcasting (short-term forecasting). Our main deep learning model takes in real-time PV data, numeric weather predictions, satellite images, as well as regional grid data, and outputs probabilistic solar electricity nowcasts for solar production systems in the UK. What makes our approach unique is teaching cloud dynamics to the model using satellite data.

Our 36-hour forecast, Quartz Solar, is currently used by National Grid, the UK grid operator, as a decision-making tool in their control room. Building on this forecast, we are working on a new open-source model, Quartz Solar OS, that we want everyone (maybe FOSDEM attendees!), not just grid operators, to be able to use.

The talk OCF proposes will present the ML techniques used to develop Quartz Solar OS and the possible use cases and climate impact such a forecast could have. And yes, we’re hoping to have a demo!

 "Genode on the PinePhone on track to real-world usability" ( 2024 )

Saturday at 15:30, 25 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), FOSS on Mobile Devices devroom Norman Feske , slides , video

Since the introduction of Genode for the PinePhone at this developer room one year ago, this alternative mobile OS has matured to the point of real-world usability for a group of pilot users. In this talk, Genode developer Norman Feske is going to share the experiences made along the way, reiterate the many advances, demonstrate the current version, and ask: What should come next?

Description

Genode on the PinePhone realizes a new vision of a smartphone OS designed from the ground up for user autonomy. Following the announcement of the very first version at the FOSS-on-Mobile developer room in 2023, the system got into the hands of a group of pilot users. The talk will share this experience and highlight the key points we met towards our goal of real-world usability.

First, we found it important to attain a tight feedback loop between testers and us developers, which prompted us to create a system-update mechanism that allows for instantly updating the system, or rolling it back to any previous version. Now, a new version can reach the hands of testers in a matter of seconds.

With the quick way of testing new versions in place, the feedback we got regarding our attempts at implementing energy-saving measures - in particular screen blanking - was quite instructive to attain a refined solution. At a technical level, the solution is interesting as it combines a Forth-based custom power-management firmware with Genode's microkernel-based architecture. Don't worry, the talk will only briefly touch those eccentricities.

With the power drain reduced to a practical level, we turned our attention to the application level. The talk will briefly introduce our SDK named Goa, which streamlines the development to the point where almost unmodified Qt/QML-based applications can be targeted at the Genode-based phone. To stress the latter point, we made the Linphone VoIP stack available on this system.

The talk will be garnished by practical demonstrations. Besides being thrilled to present the current state, I'm eager to gather feedback from the community about the most worthwhile directions for the next year.

 "#snapsafety: de-duplicating state across Virtual Machine clones" ( 2024 )

Saturday at 15:30, 30 minutes, UB2.147, UB2.147, Virtualization and Cloud Infrastructure devroom Babis Chalios , slides , video

Virtual Machine snapshots intentionally duplicate the state of a running Virtual Machine, so that we can go back in time or spawn new, identical, VMs from it. However, snapshots capture state that is meant to be unique and/or secret, such as entropy seeds, UUIDs, network configuration etc.

Recently, Linux added support for Virtual Machine Generation ID to de-duplicate the state of its internal PRNG upon Virtual Machine clone events. However, other parts of the kernel and user-space components lack proper mechanisms for adjusting. This can lead to functional issues, e.g. two VMs in the same network with the same network configuration, as well as security concerns, e.g. two user-space CSPRNGs returning identical "random" streams of bits.

In this talk we will describe the snapshot safety problem and speak about existing mechanisms for tackling it and our efforts to extend those. Moreover, we will discuss why we believe that a solution to this problem calls for collaboration among the hypervisor, guest kernel and guest user-space. Finally, we will present our latest efforts for building mechanisms that allow tackling the issue end-to-end.

 "Reimagining Personal Computing with E ink: Community Insights and Design Challenges" ( 2024 )

Saturday at 15:30, 25 minutes, AW1.126, AW1.126, Open Source Design devroom Alexander Soto , slides , video

Modos is an open-hardware and open-source company building an ecosystem of E-Ink devices to reimagine personal computing with a focus on creating calm, inclusive, and humane technology.

In this talk, we will briefly discuss the underlying technology, present findings from our community survey, and discuss the design challenges and considerations in creating applications for E Ink displays.

Additionally, we'll introduce Modalix, a core framework in development that semantically restructures user interfaces and is designed to adapt to individual user needs.

 "DNS for I2P: Distributed Network without Central Authority" ( 2024 )

Saturday at 15:30, 30 minutes, K.4.201, K.4.201, DNS devroom Konrad Bächler , slides , video

A fully distributed network does not have - by definition - a central authority. Nevertheless overlay networks, like I2P ("Invisible Internet Project") do have the need for a DNS. Also, by definition, there is nothing like trust between peers of such a network. Typically such a problem might be solved using a distributed storage layer driven by a byzantine fault tolerant consensus algorithm.

After the first prototype in 2022 (presented at FOSDEM 2023) the project has improved and a new version of the storage layer and also the DNS logic is available for FOSDEM 2024.

 "Detecting Propaganda on Facebook and Instagram Ads using Meta API" ( 2024 )

Saturday at 15:30, 30 minutes, UB4.132, UB4.132, Open Research devroom Jean Lienard , slides , video

In the aftermath of the Cambridge Analytica scandal, Meta has taken steps to enhance transparency within its advertising network, notably through the Ads Library web portal and the API endpoint Ads Archive. Despite these initiatives, and potentially due to underutilization by the public and journalists, instances of exploitation endure on Facebook and Instagram. A recent illustration of this is the extensive RRN operation in 2023, involving hundreds of thousands of fake pages and advertisements 1 2.

This presentation aims to offer practical insights into navigating the API, highlighting current limitations and proposing effective workarounds. A key focus will be on Facebook’s categorization of “Social Issues, Elections or Politics.” Indeed, applying this label to an ad has two consequences : (1) heightened scrutiny by Meta moderation and (2) increased public accessibility to data such as cost and targeted audience. Deliberate mislabeling then becomes a standard modus operandi in foreign information manipulation and interference. This presentation will detail ongoing efforts to detect and quantify the prevalence of mislabeled ads using open semantic and network analysis libraries.

 "Chorus - Effortless Ceph S3 Petabyte Migration" ( 2024 )

Saturday at 15:30, 30 minutes, K.3.201, K.3.201, Software Defined Storage devroom Sirisha Guduru , slides , video

Efficiently migrating petabytes of object storage data between two production Ceph clusters posed a significant challenge with live data being written to both clusters, necessitating a seamless process to minimize disruptions. The migration strategy involved extracting user accounts, including access and secret keys, from the old cluster and seamlessly transferring them to the new one. The synchronization of buckets and live data has been improved by extending and enhancing powerful tools such as rclone, executed in parallel. This migration endeavor not only resulted in the successful transfer of vast amounts of data but also paved the way for the creation of a robust tool named Chorus. Chorus, specifically designed for synchronizing S3 data, emerged as a versatile solution capable of harmonizing data seamlessly across multiple cloud storage backends. This innovative tool is helpful in effective bridging of data between Ceph clusters, demonstrating the adaptability and scalability required for modern data management challenges. Key highlights of Chorus include persistence of migration, execution of migration on multiple machines, rate limiting RAM/network usage during migration.

 "WASM 101: porting a Sega Game Gear emulator to the browser" ( 2024 )

Saturday at 15:35, 20 minutes, H.1308 (Rolin), H.1308 (Rolin), Rust devroom Anisse Astier , slides , video

I wrote my first emulator while learning Rust. Then, I wanted to make it available on the universal platform, the web. Using WASM, we'll see how to port a desktop app in pure Rust to a webapp using WASM. We'll survey the WASM ecosystem: tools, crates, and share tips and hurdles found along the way. Most native languages nowadays can be compiled to WASM, and Rust is no exception. Using an emulator written in pure Rust, we'll explore the challenges of porting a desktop Linux app to the web platform. How hard can it be ? Following through the outline of the emulator, we'll go step by step, and expose which crates make that easy, discover how mature is the Rust WASM ecosystem and tools we need to use to port an app.

 "Orchestrating eBPF Applications in Kubernetes and Fedora" ( 2024 )

Saturday at 15:40, 30 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Containers devroom Daniel Mellado Dave Tucker , slides , video

Orchestrating eBPF Applications in Kubernetes and Fedora

Overview

eBPF stands as a groundbreaking technology enabling the execution of programs
in an isolated space within the kernel of the operating system, operating with
privileged access. This technology proves valuable for safely and efficiently
expanding the kernel's capabilities without necessitating alterations to the
source code or the loading of additional modules. This approach provides direct
access to the Linux kernel space, leading to notable improvements in
performance.

A key facilitator in this landscape is bpfd, a system daemon explicitly
designed to streamline the deployment and management of eBPF applications,
falling under the umbrella of Extended Berkeley Packet Filter.

Features

bpfd boasts an operator specifically crafted for utilization within
Kubernetes, allowing users to deploy eBPF programs using a Custom Resource (CR)
within a Kubernetes cluster.

Presentation Highlights

During our discussion, we will delve into the developmental journey of bpfd,
tracing its origins from Aya, a Rust library designed for eBPF development. Our
exploration will extend to practical aspects such as leveraging the operator,
deploying applications, and understanding how Fedora elevates the user
experience as a host.

Security Considerations

A significant focus will be placed on addressing security concerns pertaining
to pods designated for the execution of eBPF applications within Kubernetes.
Additionally, we will explore the challenges and outstanding tasks related to
integration with Kubernetes, along with insights on collaborative efforts within
the eBPF sig-group in Fedora.

Real-world Adoption

It's worth noting that eBPF has already been adopted in production environments
by prominent companies, including Google, Netflix, Shopify, and Cloudflare. Join
us for an insightful discussion on the evolving landscape of eBPF orchestration
in Kubernetes and Fedora.

Links

bpfman repo bpfd/bpfman documentation Fedora eBPF SIG

 "Taming the Beast: Managing High-Growth Postgres Databases at CircleCI" ( 2024 )

Saturday at 15:40, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Brice Nkengsa , slides , video

Databases are some of the most important contributing factors determining system reliability, scalability and maintainability. Most of CircleCI’s core services are data-intensive, storing millions of rows per week, and growing linearly with usage of our CI/CD platform. As a result they contributed to numerous reliability issues - from degraded RDS performance, long database migrations, and painful database upgrades.

In this presentation, the speaker will discuss how we reduced CircleCI’s operational risk by curbing our database growth by a third.

 "Building your own JavaScript runtime with Rust" ( 2024 )

Saturday at 15:40, 30 minutes, H.1301 (Cornil), H.1301 (Cornil), JavaScript devroom Leo Kettmeir , video

There are many reasons you may want to roll your own JavaScript runtime — building an interactive web app with a Rust backend, extending your platform with a composable plugin system, and more. Here's a gentle introduction to building your own JavaScript runtime with Rust, where we'll also provide a wide range of possibilities and directions in which you can take yours.

 "A front-end journey back to Rails" ( 2024 )

Saturday at 15:45, 30 minutes, K.3.401, K.3.401, Ruby devroom Kevin Vanzandberghe , video

After many years of building UIs with React, I've come home to Ruby on Rails to be amazed how much had changed, and how it now empowers engineers to build amazing front-ends with Turbo & Hotwire. Join me as I unpack my bags, rediscover the magic that first hooked me a decade ago, and convert all the lessons and practices I've learned in my time abroad so you can leverage them in your Rails application.

 "Meritocracy or Do-ocracy - why diversity is still hard and what can we do" ( 2024 )

Saturday at 15:45, 30 minutes, UA2.114 (Baudoux), UA2.114 (Baudoux), Community devroom Cheuk Ting Ho , video

A lot of open source project is led by meritocracy. However, we all agree that this may not be the best model to encourage diversity in the community. Recently there has been a rise of do-ocracy, which means anyone and stand up and do it. Is this the best alternative we can have? Are there downfalls?

Goal:

This talk can provoke thoughts about what is a better leadership model for open-source projects. We have come a long way to improve diversity and inclusion of the open-source ecosystem but the battle does not stop here. Hopefully, by providing more information and concerns about different types of open-source leadership models, it can help the audience to improve the model in their own project or help those who want to set up new projects a better place to start.

Target audiences:

Anyone who is involved in any open-source project, as a leader or participant. This talk is also useful for company leadership who wants to start an open-source project or make an existing project open-source.

 "Taming Abstraction" ( 2024 )

Saturday at 15:45, 25 minutes, K.4.601, K.4.601, Tool the docs devroom Richard Smedley , slides , video

Taming Abstraction: Tool-led d.r.y. vs sane and readable docs source without too much duplication

What is the best balance for a docs team who has to maintain the docs and outside contributors who need to understand before they can contribute? (And are there workarounds to help reviewers who are not so familiar with Antora or your chosen tool & methodology?)

[Examples will be shown from the many Apache-licensed, public docs repos at https://github.com/couchbase/ ]

 "Some updates on Public Code in Germany" ( 2024 )

Saturday at 15:45, 30 minutes, AW1.120, AW1.120, Public Code and Digital Public Goods devroom Marco , slides , video

In 2023, several projects in the public administration have chosen to take advantage of the benefits of FOSS. E.g., Germany's initiative to build an open office and collaboration platform (openDesk) has made great progress, the German developer portal (docs.fitko.de) got an upgrade and Germany developed standard contractual clauses for public sector open source projects (EVB-IT).

I would like to give a brief summary of this progress and would like to motivate to better organize our knowledge about foss in public administration.

 "Moving real-time AI inference to the edge with Infernos" ( 2024 )

Saturday at 15:50, 35 minutes, H.1302 (Depage), H.1302 (Depage), Real Time Communications (RTC) devroom Maksym Sobolyev , video

As the AI hardware, software and pre-trained models become more and more abundant, advanced and accessible, we see the growing need to have AI-centric edge real-time inference tool, allowing one to build very own custom real-time inference system to be easily integrated into existing RTC (SIP, WebRTC, MQTT) infrastructure. Infernos strives to fill in this role by providing a platform for running all kinds of models (TTS, STT, image classification etc) with a very little integration effort.

 "Bringing routes to Kubernetes nodes via BGP: introducing frr-k8s" ( 2024 )

Saturday at 15:50, 25 minutes, UB5.230, UB5.230, Network devroom Federico Paolinelli , slides , video

In this talk I am going to present frr-k8s, a kubernetes wrapper of the popular FRRRouting project that was just released. I will describe:

  • how the project can be used to deploy FRR on a kubernetes cluster in an effective way
  • what features of FRR (specifically, BGP related) can be leveraged in order to simplify cluster networking
  • how to use this project in combination of MetalLB (which is a spinoff of), to leverage a single FRR instance for multiple purposes
  • what are some of the network related problems that can be solved with this new component
  • a quick summary of the internals of the project

By using this new project, the listeners will be able to handle some of the networking they are probably already facing in a more scalable and maintainable way.

 "Run Node.js in a unikernel reliably" ( 2024 )

Saturday at 15:50, 20 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Microkernel and Component-based OS devroom Andreia Ocanoaia , slides , video

Unikernels bring a fresh perspective to how we deploy applications promising a significant increase in efficiency, security, and resource utilization. But how can we practically harness this power to run real-world applications? That's the question we'll answer together in this talk.

Whether you're a seasoned Node.js developer, a DevOps enthusiast, or just curious about the next frontier in cloud architectures, this talk is a great introduction to the challenges of running in a different and more lightweight architecture.

We'll explore real-world use cases, share best practices, and dive into the nuts and bolts of achieving optimal performance for lower-cost and lightweight deployments.

 "Web Accessibility and Environmental Sustainability and with Popular CMS" ( 2024 )

Saturday at 15:50, 45 minutes, H.2213, H.2213, Collaboration and Content Management devroom Mike Gifford , video

Web Accessibility has a lot of complexities, and most CMS do not have the capacity to invest in it sufficiently. Two years ago Funka organized a Cross-CMS initiative to look at supporting content authors in their efforts to produce accessible content. This EC funded initiative, the We4Authors Cluster brought together Drupal, Joomla, Plone, and Umbreco. This is the only cross-CMS accessibility event I am aware of where maintainers collaborated on common UI elements. It is also the only one I am aware of where user research was done on authors, to help evaluate accessibility. We need more of this.

Currently, Environmental Sustainability in the CMS space is given even less of a priority than accessibility. We are in a climate crisis, digital tools are contributing to it, global best practices are emerging, but adoption of these best practices isn't happening fast enough. Collaboration is needed to both raise awareness within our industry, but also find common solutions. Finding common approaches to measure the CO2 impact is an important starting point. Much more will be needed if we are to help the web make significant reductions in energy consumption.

These are two places where collaboration is key if we are able to make the advances which are needed for people with disabilities, as well as future generations. Where can we help to optimize our development process, code execution, and the cumulative impact of CO2 produced through the process.

 "Zeroing and the semantic gap between host and guest" ( 2024 )

Saturday at 15:50, 25 minutes, UB5.132, UB5.132, Free Java devroom Volker Simonis , video

Checkpointing and snapshotting solutions like CRaC or Snapstart become increasingly popular for reducing startup/warmup times. They serialize a warmed-up Java application to disk and allow users to quickly resume their application from that specific state at a later point in time. The smaller the serialized JVM/application image is, the faster it can be restored or transferred to a remote location.

This talk is about minimizing the memory footprint of the JVM before a snapshot/checkpoint. Uncommitting unused parts of the address space works well for CRIU but imposes challenges for full KVM snapshots because of the "semantic gap" between the guest and host operating system. We will demonstrate how zeroing and kernel features like init_on_free, Kernel Samepage Merging (KSM) and ballooning can improve the snapshot/restore process and will compare CRIU and Firecracker snapshot sizes.

 "Help us improve time manipulation with GDB" ( 2024 )

Saturday at 15:55, 20 minutes, K.4.401, K.4.401, Debuggers and analysis tools devroom Guinevere Larsen , slides , video

GDB has been capable of performing reverse debugging for many years now, but this feature has been relatively unknown and quite buggy for quite some time. With newly developed interest in the feature, this talk aims to show a bit of the implementation details, that there are bugs of all sizes to be worked on, and extend a helping hand for those that want to start contributing

 "Pipewire audio backend in QEMU" ( 2024 )

Saturday at 16:00, 30 minutes, UB2.147, UB2.147, Virtualization and Cloud Infrastructure devroom Dorinda Bassey , slides , video

One of the essential features of QEMU is its audio backend support, which enables virtual machines to communicate with the host system's audio devices. The Pipewire audio backend in QEMU provides a powerful and flexible solution for managing audio in virtual machines. In this presentation, we will discuss the Pipewire audio backend in QEMU. By understanding how Pipewire works and how to configure it in QEMU, users can improve the audio experience in their virtual machines.

The presentation is suitable for anyone interested in virtualization, audio systems, or QEMU. It is particularly relevant for system administrators, developers, and audio engineers who want to improve the audio experience in their virtual machines. The objective of this presentation is to provide an overview of the Pipewire audio backend in QEMU and discuss other audio backends.

Key points to be covered in the presentation include:

  • Introduction to QEMU audio backends and their importance in virtual machines
  • Overview of Pipewire and its role as a versatile audio backend in QEMU
  • Configuring QEMU to use Pipewire as the audio backend
  • Troubleshooting and common issues with QEMU audio backends
  • Best practices for optimizing audio performance in virtual machines

 "Zephyr and RISC-V: I Ain't Afraid Of No Ghosts" ( 2024 )

Saturday at 16:00, 25 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Embedded, Mobile and Automotive devroom Mohammed Billoo , slides , video

RISC-V's instruction set architecture (ISA) has enabled seasoned embedded software engineers to experiment with FPGAs since numerous open-source RISC-V cores can be flashed onto an FPGA. The Zephyr Project is rapidly emerging as a leading real-time operating system (RTOS). Zephyr integrates open-source and security best practices to ensure a vendor-neutral, secure, and reliable platform.

In this talk, Mohammed Billoo will describe the process of getting to Zephyr to run on the UPduino (https://tinyvision.ai/pages/the-upduino), flashed with the neorv32 RISC-V processor (https://github.com/stnolting/neorv32). He will walk through building and flashing the neorv32 RISC-V core on the FPGA, creating a Zephyr application that can output Hello World to the UART, and loading the application to the FPGA. Mohammed will also walk through the necessary Zephyr drivers to get the application running. This talk will demonstrate how combining RISC-V and Zephyr on an FPGA opens up new opportunities for embedded software applications. Using open-source software and firmware on a low-cost FPGA reduces the bar for entry for enthusiasts and hobbyists. The audience will learn the following in this talk:

  • Relevance of the RISC-V instruction set architecture for hobbyists
  • Overview and structure of the neorv32 RISC-V processor
  • Overview and structure of The Zephyr Project RTOS
  • RISC-V support in Zephyr
  • Relevant Zephyr drivers
  • Demo: From Empty Silicon To Zephyr Boot

 "Semantically-driven data management solution for I/O intensive HPC workflows" ( 2024 )

Saturday at 16:00, 30 minutes, UA2.118 (Henriot), UA2.118 (Henriot), HPC, Big Data & Data Science devroom Metin Cakircali , slides , video

Semantically-driven data management is an approach that focuses on the meaning and context of the data, rather than simply storing it. The semantic information can be used to drive workflows. The storage and retrieval of data can be optimized and specialised based on data semantics for different workflows.

DASI (Data Access and Storage Interface) is a semantically-driven data store developed by ECMWF as part of the EuroHPC project IO-SEA. Based on the FDB object store library developed and in operational use at ECMWF, DASI manages data using its domain specific and scientifically meaningful metadata keys, and separates data management from the underlying backend storage technologies. This allows very fast and efficient algorithms to search for and retrieve data (based on its semantic meaning) from large datasets. DASI is modular and is compatible with multiple backends (e.g., POSIX, CEPH, DAOS) through a diverse API (Python, C++, C). We will explain the concept of semantic description of data and demonstrate DASI as a data management solution.

 "The D Programming Language for Modern Open Source Development" ( 2024 )

Saturday at 16:00, 50 minutes, K.1.105 (La Fontaine), K.1.105 (La Fontaine), Main Track - K Building Mike Shah , slides , video

The D programming language has been quietly growing for well over two decades. This modern programming language supports multiple programming paradigms, a range of memory safety features, and an ecosystem with 3 open source compilers. So why should an open source developer consider learning or using the D programming language? In this talk I will show examples of how D has replaced all of my Python code for my projects, and why I think D truly is a language that allows you to "write fast, read fast, and run fast" code. I will introduce the language, several of my favorite productivity features, and tools in the D programming language ecosystem. Throughout the talk, the audience will also be pointed to several open source tools written in the D language to be inspired from. Audience members looking for a new language to learn, or otherwise the programming language enthusiast may also benefit from a tour of the D language and its features.

 "Figuring out trademark policy on the fly" ( 2024 )

Saturday at 16:00, 30 minutes, UA2.220 (Guillissen), UA2.220 (Guillissen), Legal and Policy Issues devroom Peter Eisentraut , slides , video

A story from the PostgreSQL project

Copyright, patents, and trademarks are the three pillars of intellectual property law. FLOSS was born out of a desire for a new arrangement of copyright. This has been very successful and ample information and support exists for contributors and projects. Software patents have been discussed extensively, and, well, there is an uneasy stalemate(?). Trademarks have, in my experience, not received the same amount of attention.

In the PostgreSQL project, we have for several years now worked to sort out how to deal with trademark issues, what and how to register, what uses to allow, how to allow them, and we have dealt with some unfortunate and tiresome conflicts. The PostgreSQL project is not sponsored by a single company or association, which makes all of this even more complicated. We had to figure a lot of this out on our own (with legal help), and there was not the same wealth of information available like for example for copyright. I want to share our experiences, get some feedback, and make some suggestions to the wider community about what kinds of resources would be (or would have been) useful.

 "Can open source development drive energy transition? PyPSA-Earth experience" ( 2024 )

Saturday at 16:00, 25 minutes, H.2214, H.2214, Energy: Reimagining this Ecosystem through Open Source devroom Ekaterina Fedotova , slides , video

The energy transition implies making decisions under deep uncertainties. Modelling is known to be effective in providing the evidence needed to shape the transformation of the energy sector in the most cost-effective way. Open source is a known approach to increase accessibility of the energy modelling tools. That led to a rapid increase in a number of available energy models whose development is mainly driven by the academic community. However, developments have focused on a few world regions, where awareness of climate change is high. There is still a coverage gap, especially for countries where the energy sector is still highly dependent on fossil fuels.

PyPSA meets Earth initiative aims to address this gap by building a global community focused on developing an ecosystem of Pythonic tools, including the modelling framework PyPSA-Earth. The framework may be utilised to build a ready-to-use regional power system model by extracting all the required data in a workflow orchestrated by Snakemake. A community approach enables the participation of regional experts in the development and brings modelling closer to real-life applications.

One of the issues found along this route was the lack of ready-to-use tools to integrate the effects of climate change into power system models. A climate development track in PyPSA-Earth addresses this task and aims to implement approaches to account for changes of climate inputs in a physically correct, yet computationally feasible way. To deal with the regional features of national power systems in a systematic way, a country-wise functionality testing has been carried out. As a result, PyPSA-Earth has been adjusted to be fully capable of building a power system model for any country in the world by a single line of code.

The presentation will give an overview of the challenges encountered along this way and guide trough the use cases of PyPSA-Earth to tackle the challenges of the energy transition around the globe.

 "Low code graphical apps with Go top to bottom!" ( 2024 )

Saturday at 16:00, 30 minutes, UD2.218A, UD2.218A, Go devroom Andrew Williams , slides , video

Building apps is hard and addressing multiple platforms is even worse. But with Go, Fyne and Fysion we can get built in no time and distribute for all devices easier than ever. And best is that all the functionality is built with Go, enabling creators to upskill and even learn development whilst building their app.

 "A Deep Dive into Tower" ( 2024 )

Saturday at 16:00, 40 minutes, H.1308 (Rolin), H.1308 (Rolin), Rust devroom Adrien Guillo , slides , video

Tower is a crate of “modular and reusable components for building robust networking clients and servers” widely used in prominent projects within the Rust ecosystem, including Hyper*, Axum, or Tonic. This ubiquity means Rust developers invariably engage with the Service trait, Tower's core abstraction, while working with these libraries. Despite its conciseness, reading and understanding code that abstracts over the Service trait proves challenging because of the heavy use of generics and intricacies of implementing non-boxed futures. This complexity raises the learning curve for beginner and intermediate Rust developers to become proficient in their favorite frameworks. In this talk, we will demystify the Service trait, explore practical examples from real-world codebases, and construct increasingly complex Tower layers from scratch.

*Hyper actually relies on its own very similar hyper::Service trait.

 "Algo-rollover for .nl" ( 2024 )

Saturday at 16:00, 30 minutes, K.4.201, K.4.201, DNS devroom Stefan Ubbink , slides , video

This is a talk about the algroithm rollover which happend in the summer 2023, what were the challanges we (as SIDN) faced and how did we handle them. For the signing of the .nl zone we use the open source components OpenDNSSEC, Bind and validns

 "Ingesting and analyzing millions of events per second in real-time using open source tools" ( 2024 )

Saturday at 16:00, 50 minutes, Janson, Janson, Main Track - Janson javier ramirez , slides , video

Teams of all shapes and sizes benefit from near real-time analytics. In this session, I will present a project template that can serve as the foundation to build one such high performing system, powered by Apache Kafka, QuestDB, Grafana OSS, and Jupyter Notebook.

The first step of a data pipeline is ingestion, and even though we could directly ingest into a fast database, I will use Apache Kafka to ingest data. We will see how to use Python, JavaScript, and Go to send messages into Kafka.

Now, we need an analytics database, and for real-time data, a time-series database seems like a good match. I will demonstrate how to use QuestDB, an Apache 2.0 licensed project, to ingest and query data in milliseconds or faster.

Data analytics often require a graphical dashboard. For this purpose, I will use Grafana OSS, where we will create a couple of real-time charts updating several times per second.

And, of course, it's 2024, so you might want to delve into some data science. No worries. I will demonstrate how Jupyter Notebook can be used to read from your database and perform interactive data exploration and time-series forecasting.

This will be a demo-driven presentation and I will share all the code I use so you can use it as a starting point.

 "Liquid Prompt: yes, we can drastically rethink the design of a shell prompt" ( 2024 )

Saturday at 16:00, 25 minutes, AW1.126, AW1.126, Open Source Design devroom nojhan , slides , video

The shell is quite an old piece of software. Old in a good way: it has been tested and upgraded to match a level of quality that allows for efficient work. But if you use the command line, you would most certainly benefit from using a good prompt system instead of the default one, because it will help you make sense of the state of your workflow. Among modern prompt systems, Liquid Prompt is the older one, surely the one with the best feature set, and probably the one having thought the most of about its design. This presentation will introduce the why and how of the "Dotmatrix" theme for Liquid Prompt, which drastically rethink how information is displayed to the user. It will discuss the impact on UX of accessibility, the ANSI color space, information significance and text-oriented visual grammar(s).

 "Wayland's input-method is broken and it's my fault" ( 2024 )

Saturday at 16:00, 25 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), FOSS on Mobile Devices devroom dcz , slides , video

I (re)designed the Wayland input-method protocol for Phosh. It worked! Until I tried to implement things like, you know, pre-edit, or moving to the next field. Then I had to switch to another project.

I'll describe what's wrong and where to find hope.

(Sorry.)

 "Unlocking Research Data Management with InvenioRDM" ( 2024 )

Saturday at 16:00, 15 minutes, UB4.132, UB4.132, Open Research devroom Javier Karolina Nicola , video

This proposal aims to give an overview of the capabilities of InvenioRDM, an open-source research data management platform designed to easily archive, preserve and share research. The talk will explore key features, user-friendly interfaces, and the overall impact of InvenioRDM on improving research workflows. Additionally, the session will briefly showcase how the new version of Zenodo, based on InvenioRDM, is helping the research community to share their data and software.

 "ε-serde / mem_dbg / sux / dsi-bitstream / webgraph: a Rust ecosystem for large graph processing" ( 2024 )

Saturday at 16:00, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Sebastiano Vigna , slides , video

In the last year, the authors of WebGraph (the de facto standard for web and social graph compression) and INRIA started a collaboration to port the technology developed by the project in Rust. In this talk, we present five open-source projects generated by the collaboration, some of which, like ε-serde, provide interesting functionalities presently not available in the Rust ecosystem.

 "Flathub / Flatpak BOF" ( 2024 )

Saturday at 16:00, 60 minutes, AW1.121, AW1.121, BOF - Track C Bartłomiej Piotrowski razze

Flathub is a build and distribution service for Flatpak applications. We'll be meeting here to discuss recent developments around metadata and build validation, other upcoming changes, and anything else on the minds of the attendees.

 "SMB for Linux with SMB3 POSIX extensions" ( 2024 )

Saturday at 16:05, 45 minutes, K.3.201, K.3.201, Software Defined Storage devroom Volker Lendecke , slides , video

While NFS is the canonical file protocol to mount remote file servers under Linux, BSDs and other Unix-like operating systems, SMB is the equivalent in the Windows world. Both NFS and SMB offer basically the same service: Remote access to files and directories. The Linux kernel has the ability to mount SMB shares from Samba and from Windows, but special Linux semantics is not properly covered. With the now deprecated SMB1 protocol there have been Unix extensions to make SMB1 a proper alternative to NFS.

For a couple of years now, work is going on to extend the current SMB3 protocol to make it a proper alternative to NFS with all semantics that Linux clients expect. This talk will present the current status and where we are with respect to SMB3 POSIX extensions.

 "MessageFormat: The future of i18n on the web" ( 2024 )

Saturday at 16:10, 40 minutes, H.1301 (Cornil), H.1301 (Cornil), JavaScript devroom Ujjwal Sharma , video

Internationalization in JavaScript and on the web platform is very complicated, but also vastly important for us developers in order to build accessible and intelligible interfaces. Thankfully, Unicode Consortium's MessageFormat working group and TC39 have been hard at work standardizing the next generation of i18n tooling that aims to unify analogous non-standard tools in use today while approaching this problem from a fresh perspective.

Join me along this tour of i18n in JavaScript, discover some of the newest additions to the toolkit and learn about the ongoing MessageFormat proposal and how it aims to radically improve the developer experience.

 "Easily Going Beyond MarkDown with Material for MkDocs" ( 2024 )

Saturday at 16:15, 25 minutes, K.4.601, K.4.601, Tool the docs devroom Kenneth Hoste Martin Donath , slides , video

I first used Material for MkDocs in April 2020, and it quickly became clear to me that this would become my tool of choice for all technical documentation I'm involved in.

Since then, I have been involved in using Material for MkDocs for both creating new and revamping existing documentation sites, in collaboration with others:

In this talk I want to try and convince you that you should be using Material for MkDocs too. I will present a high-level overview of the project, highlight the features that got me hooked, and share my personal experience with using it to produce technical documentation.

To demonstrate how easy it is to get started with Material for MkDocs from scratch, I will build a small documentation website step-by-step live during the talk to showcase some of its features. Material for MkDocs makes writing documentation easy and rewarding, and significantly lowers the bar to produce good looking yet practical technical documentation for free and open source software projects.

It features a broad set of features, including (but not limited to):

Material for MkDocs is open source first (MIT-licensed), and follows the sponsorware release strategy (see Insiders). This means that new features are first exclusively released to sponsors and later become part of the free community edition when specific funding goals are met, which helps making the project sustainable.

It is used by plethora of FOSS projects & beyond, like:

 "Multi-network in Kubernetes: No batteries included" ( 2024 )

Saturday at 16:15, 15 minutes, UB5.230, UB5.230, Network devroom Miguel Duarte Doug Smith , slides , video

Kubernetes has historically taken a very hands-off approach to the multi-network topic. If you’re a telecom and network jockey you know the problem: Without it, pods only have one interface. When it came to solving this in Kubernetes, rather than tackling the problem, it was left for the ecosystem to solve. Thus, projects like Multus CNI, CNI Genie and DANM came to be: they solved a community problem (“I want more than one interface in my pod!”) outside Kubernetes, following its API extension philosophy.

Fast forward a bunch of years: there’s a new KEP to provide an in-tree solution to multi-networking, which will allow people to express in a Kubernetes native way that their pods require more than one network.

We’re going to look at the problem from two perspectives, first a political one: What’s the community experience with working with the Kubernetes community and what kind of challenges have we faced over the years? We’ll share our stories of successes and, yes, of the failures. But because there’s only so much politics you can stomach, we’ll also look at it from the other end of the spectrum – the hands-on-a-terminal-perspective, looking directly at an implementation.

Together we’ll explore architecture and API changes for Pod interfaces as Kubernetes elements, along with a prototype implementation … in Multus CNI of all things. We invite you to participate in unifying advanced networking technology in Kubernetes.

 "GNU Health. Incorporating Digital Public Goods in the European healthcare system" ( 2024 )

Saturday at 16:15, 15 minutes, AW1.120, AW1.120, Public Code and Digital Public Goods devroom Luis Falcon Gerald Wiese , slides , video

GNU Health is a free/libre health and hospital information system with strong focus on public health and social medicine. It has been declared a Digital Public Good. In this talk we'd like to talk about the history of GNU Health, its adoption in health systems around the world, the importance of being a Digital Public Good and the integration with other sister DPG projects like Orthanc. We'd also talk about the current efforts to integrate GNU Health and other DPGs in the European healthcare system. We'll mention some projects like FSFE "Public Money, Public Code" and other initiatives like JoinUp to make Free Software a reality in the European public administration in general, and, specifically, in the healthcare system

 "Lift and shift: Modernising a legacy LAMP application with systemd-nspawn" ( 2024 )

Saturday at 16:15, 20 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Containers devroom Martin Lucina , slides , video

Tens of thousands of lines of PHP 4. MySQL 5.0.51a. Apache 1.3. No source control. All running on a single server, last updated with the release of Debian 5.0 "lenny" almost 15 years ago today. This talk will show you how to drag an application of yesteryear, kicking and screaming, into modernity.

Keywords: systemd-nspawn, Debian EOL, LAMP.

 "Making OpenRefine more reproducible" ( 2024 )

Saturday at 16:15, 15 minutes, UB4.132, UB4.132, Open Research devroom Antonin Delpeuch , video

OpenRefine is a data cleaning tool used in various fields such as data journalism, libraries, scientific research and the Wikimedia movement. Its point and click interface is appreciated for making sophisticated data cleaning operations accessible without programming. Although the tool already makes it possible to replay a series of operations on a new dataset, this feature lacks the robustness and flexibility it deserves. In this talk I will present our ongoing work on improving OpenRefine's reproducibility and seek feedback from the audience and broader community about design choices.

 "Using the NOVA Microhypervisor for Trusted Computing at Scale" ( 2024 )

Saturday at 16:15, 30 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Microkernel and Component-based OS devroom Udo Steinberg , slides , video

NOVA is a modern open-source ARMv8-A and x86_64 microhypervisor that can host and harden unmodified guest operating systems. In this talk I will give an overview of the new features that have been added to NOVA in 2023 to enable it to scale from small embedded devices (e.g., Raspberry Pi) to big-iron servers (e.g., AWS cloud instances). In the second half of the talk, I will present the implementation of Intel Trusted Execution Technology in NOVA and how NOVA leverages the TPM to establish a Dynamic Root of Trust for Measurement (DRTM) that extends all the way into a user-mode component-based OS.

Links:

 "Please Make It Make Sense: Product Management Methods to Make Your Project's Purpose Clear" ( 2024 )

Saturday at 16:20, 30 minutes, UA2.114 (Baudoux), UA2.114 (Baudoux), Community devroom Lauri Apple , video

In this talk I'll share lessons learned over years spent as a program manager and product manager contributing to open source projects, mostly in the cloud native space. I'll explain how backlog refinement, prioritization, roadmapping, user research and data collection, and project management basics can help your project stand out as uniquely valuable in a crowded landscape—drawing from real-world examples. To help you gain clarity on your project's goals and core attributes, I'll talk about how to overcome "assumption-driven development" to become a better listener to your users. Throughout, I'll also show you how incorporating product management methods can help you to avoid frustration and burnout, whether you're a maintainer or a contributor.

This talk will provide an overview of select techniques used by product managers to drive decision-making, focus, and results-oriented experimentation. These techniques will be presented in a manner that takes into consideration the realities and practicalities of trying to achieve development goals in the open source context. For those of you working in open source as part of your day jobs, I'll also discuss how to align your project's delivery objectives with your employer's product roadmap so that you increase the chances of getting the staffing, support, and recognition you want.

By the end, you will hopefully take away new knowledge and insights into how to tame your backlog, surface your core objectives and problems to be solved, make your users happier, and keep yourselves—and your fellow contributors—productive with purpose.

 "GDevelop" ( 2024 )

Saturday at 16:20, 60 minutes, J.1.106, J.1.106, FOSS Educational Programming Languages devroom Florian Rival

GDevelop is an open-source, no-code, lightweight and fast game engine. The goal of the project: make game creation radically more fast, simple, accessible.

In this presentation, we'll showcase GDevelop and, notably, its usage in education.

 "Besides Web: a Worker story." ( 2024 )

Saturday at 16:20, 40 minutes, K.3.401, K.3.401, Ruby devroom Philippe Van Eerdenbrugghe , slides , video

A vast majority of the ruby experience revolves around Web applications. During this talk, I'll tell the story of writing a non-web microservice, consuming messages from a queue for processing zip uploads. It heavily relies on dry-rb gems constellation, a useful but sometimes opaque set of tools.

 "Bespoke containers with Jlink and OpenShift" ( 2024 )

Saturday at 16:20, 20 minutes, UB5.132, UB5.132, Free Java devroom Jonathan Dowland Jayashree Huttanagoudar , slides , video

Customers want ever-smaller runtime containers. By combining Java's module technology with OpenShift (Enterprise Kubernetes by Red Hat) we can produce bespoke containers, with just the necessary OpenJDK modules for the application, in some cases shaving off half of the on-disk image size.

OpenShift's unique features enable us to configure a multi-stage pipeline, automatically triggered updated application source, base image or custom events of a user's choice, producing a corresponding lean runtime image ready for deployment.

In this talk we'll outline our approach integrating these technologies, explain some of the challenges and report on the results that can be achieved.

 "ROCgdb, GDB and AMDGPU debugging" ( 2024 )

Saturday at 16:20, 20 minutes, K.4.401, K.4.401, Debuggers and analysis tools devroom Lancelot SIX , slides , video

ROCgdb is the AMD ROCm debugger, based on the GNU debugger (GDB). This presentation will give on overview of the ROCgdb specific features allowing users to debug heterogeneous programs (built using the HIP programming model) running on AMD GPUs.

The presentation will also give a status of the upstreaming effort of the AMD GPU support in GDB.

 "Using elliptic curve cryptography for the purposes of identity" ( 2024 )

Saturday at 16:20, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Yarmo Mackenbach , slides , video

ASPs (or Ariadne Signature Profiles) are "online passports" secured by modern cryptographic standards that let you publicly prove your Fediverse accounts, your Matrix account, your git forge accounts, and many more. People can use websites like keyoxide.org to verify the validity of such online passports.

This talk walks you through the steps of getting started with elliptic curve cryptography and using it to create an online passport compatible with Keyoxide, providing snippets of Rust code for each step. This talk also hopes to convey that "cryptography-based identity" is a lot less daunting than it sounds!

 "Declarative Networking in Declarative World" ( 2024 )

Saturday at 16:30, 15 minutes, UB5.230, UB5.230, Network devroom Mateusz Kowalski , slides , video

Since the beginning of time, declarative APIs have been driving everything that can happen inside a Kubernetes cluster. Predefined CRDs, operators defining custom CRDs, everything is about declarative APIs. Write your YAML once, deploy it, forget it. That’s how you create a cluster, that’s how you deploy your workload.

But is it, for real, as simple as it sounds? How do you bring declarativeness to the imperative world? In the current state of things, host networking is one huge imperative nightmare. So how to happily marry an old-school Network Manager and brand new Kubernetes API? In this session we will demonstrate how NMState provides you with a Declarative Network API, finally allowing you to manage host networking in a declarative manner.

To make it more entertaining, we will show you how the Kubernetes cluster with NMState Operator manages networking on the nodes it deploys. It may sound like a chicken and egg situation, but trust us, it is not. Last but not least, we show how it protects itself from applying destructive network changes potentially taking your cluster down.

Join us and create the most complex network topologies on the fly.

 "Bootstrapping time on OpenBSD" ( 2024 )

Saturday at 16:30, 30 minutes, K.4.201, K.4.201, DNS devroom Otto Moerbeek , slides , video

Some systems (for example cheap boards with no real time clock or servers with an empty CMOS battery) have little idea of time on startup and try to set actual time using NTP. If that also involves DNSSEC validated DNS requests, we have a bootstrap problem, since validating DNSSEC answers requires a valid idea of time. This talk discusses they way OpenBSD's NTP daemon solves this problem, providing a trustworthy time from startup.

 "Carbon measurement and energy attribution for processes and hardware devices in the Linux kernel" ( 2024 )

Saturday at 16:30, 25 minutes, H.2214, H.2214, Energy: Reimagining this Ecosystem through Open Source devroom Aditya Manglik , slides , video

This talk details the recent carbon measurement infrastructure developments in power subsystems in the Linux kernel. The objective is to determine the energy consumption and link it to carbon emissions of hardware devices and software applications (processes). This infrastructure allows the programmers and users to see which hardware devices and processes are responsible for the system's energy consumption and carbon emissions. These statistics are extremely useful for both user-level applications and kernel developers.

Major objectives in this talk would include a detailed discussion on the development of the required infrastructure and multivariate regression models to determine application and hardware device energy consumption. FOSSDEM would be a great platform to present the work done so far to the open-source software developer community and get feedback to further improve and fine-tune models toward better predictions. There are also privacy concerns attached to this data, which need feedback from more developers.

 "Creating a multiplayer game in Go, from zero" ( 2024 )

Saturday at 16:30, 30 minutes, UD2.218A, UD2.218A, Go devroom Francesc Gil , video

Without having any previous experience on building any type of games, I entered on a journey to replicate a game I used to play and I never found a recent implementation of it: Tower Line Defence.Which is why, I decided to do it myself, like so many projects born out of frustration.

I will walk you through the path I took from creating simple games: snake, space aliens, shoot the enemy in order to learn Ebiten, and then creating the game I wanted including both the client & the server side for the multiplayer aspect of it.

Bonus:Including all the struggles I encountered during the process Bonus 2: You'll be able to play it too! :)

GitHub: xescugc/maze-wars URL: www.maze-wars.com

 "GPL’s Termination under German Law" ( 2024 )

Saturday at 16:30, 30 minutes, UA2.220 (Guillissen), UA2.220 (Guillissen), Legal and Policy Issues devroom Sebastian Steck , slides , video

This talk will first have a look at the previous German rulings on GPL-violations. We will see that the courts were only asked and only ordered that the defendant may not distribute the GPLed software in a GPL-violating way. This leaves one wondering whether the courts would order a defendant to no longer distribute the software at issue at all. This question essentially goes to section 4 of the GPLv2; the so called termination clause. A look into the German Civil Code (sect. 534) reveals us that such automatic termination clauses have to be read as rescission clauses (i.e. as manual termination). We will then look at the sections of the Civil Code which deals with rescission in generally and learn about the separation principle. The talk will conclude with a summary what the copyright holder faced with GPL-violations best does under German law.

 "RCTab Cloud Subscription Management System" ( 2024 )

Saturday at 16:30, 30 minutes, UA2.118 (Henriot), UA2.118 (Henriot), HPC, Big Data & Data Science devroom David Llewellyn-Jones , video

The Research Computing team at The Alan Turing Institute is responsible for allocating, managing and supporting access to HPC and Cloud services for a large number of researchers and projects. We provide access to all kinds of compute resources, from targeted Tier 2 HPC systems through to fungible credits for Cloud services that can be used for any available resource.

Managing these resources efficiently can be challenging, especially when budget controls offered by Cloud service providers are limited with no way to prevent overspend by users. This presents serious challenges for adoption in research organisations like The Alan Turing Institute that need to centrally disseminate Cloud resources to researchers with independent budgets.

In this talk we will present RCTab (Research Computing Tables), our open-source budget and subscription control system for Azure which enables central management of Cloud resources while enforcing strict budget controls. We will discuss the background to the tool and demonstrate its functionality, including budget allocation, usage monitoring and shut-down of resources when the budget has been consumed.

We will also discuss our experiences developing the code in Python using the Azure REST API, including our experiences in converting the codebase of internally-used tools to a deployable, customisable and open source application with broader applicability through the use of the Pulumi Infrastructure as Code provisioning environment.

Links: 1. The RCTab documentation 2. RCTab source code main repo 3. RCTab CLI repo 4. RCTab API repo 5. RCTab Function app repo

 "The Orthanc ecosystem for medical imaging" ( 2024 )

Saturday at 16:30, 20 minutes, AW1.120, AW1.120, Public Code and Digital Public Goods devroom Sébastien Jodogne , slides , video

Medical imaging plays a crucial role in modern healthcare, enabling accurate diagnoses and effective treatment planning. However, the management and accessibility of vast amounts of imaging data present significant challenges. Orthanc, a free and open-source, lightweight, and extensible software, has emerged as a recognized solution for medical imaging data management.

Orthanc serves as a vendor-neutral archive, facilitating the cost-effective storage, retrieval, and sharing of various imaging modalities, including X-ray, MRI, CT scans, and more. Its modular design allows seamless integration into existing healthcare systems. Orthanc's compliance with the DICOM (Digital Imaging and Communications in Medicine) and DICOMweb interoperability standards ensures compatibility across different imaging devices and platforms, fostering collaborative research and multidisciplinary healthcare approaches.

Key features of Orthanc include its user-friendly interface, scalability, and support for advanced functionalities like de-identification and encryption, ensuring patient data security and privacy compliance. Multiple Web viewers are integrated into Orthanc, such as OHIF, Kitware VolView, and the Stone Web viewer. Orthanc also comes with a REST API that can be used to script imaging workflows, which is widely used to set up auto-routing between local DICOM servers or between remote sites. Furthermore, its ability to incorporate machine learning algorithms for image analysis and processing opens avenues for automated diagnosis, treatment planning, and research advancements.

Digital Public Goods Alliance recognized Orthanc as a digital public good in August 2023. This underscores the commitment of the Orthanc community to contribute to Sustainable Development Goals 3 and 9 (health, innovation, infrastructure).

In conclusion, Orthanc stands as a robust, versatile, and adaptable software solution for the efficient management and utilization of medical imaging data. Its accessibility, interoperability, and capacity for customization position Orthanc as a valuable asset in advancing medical research, clinical workflows, and ultimately improving patient care outcomes.

Homepage of the Orthanc project: https://orthanc.uclouvain.be/ Source code: https://orthanc.uclouvain.be/hg/

 "AI-Driven Observability and Operations in Cloud-Edge Systems" ( 2024 )

Saturday at 16:30, 30 minutes, UB2.147, UB2.147, Virtualization and Cloud Infrastructure devroom Victor Palma , slides , video

Artificial Intelligence for IT Operations (AIOps) has emerged as a new model for automating and streamlining operating operational workflow in large-scale IT infrastructures using AI-supported methods and tools on different levels. AIOps platforms can collect and aggregate the increasing volumes of data generated by multiple IT infrastructure components, provide real-time monitoring and analysis of cloud and edge resources, detect significant events and patterns related to application performance and availability before they become critical, and even in some cases automatically resolve these issues without human intervention.

Based on these concepts, our presentation will introduce a new experimental AIOps framework developed in OpenNebula and its Prometheus integration for the evaluation of AI techniques in order to provide intelligent workload forecasting and infrastructure orchestration capabilities to automate and optimize the provisioning and deployment of geographically distributed edge/cloud infrastructures and applications. We will also present the results of the evaluation of AI-based time series forecasting techniques to predict the CPU usage of VMs, and optimization techniques for the placement of VMs on top of the physical infrastructure, based on CPU usage predictions.

 "Build your ENUM LCR Server using CGRateS" ( 2024 )

Saturday at 16:30, 35 minutes, H.1302 (Depage), H.1302 (Depage), Real Time Communications (RTC) devroom Arber Katellari , slides , video

DNS continues to be a significant component of our Internet core and it is no surprise that it has a high adoption rate within the modern telecommunications industry. In this talk, Arber will guide you through building your own DNS server using NAPTR records to return least cost routes to the DNS client, using only open-source technologies like CGRateS on server side and dig on client one. CGRateS is a battle-tested Enterprise Billing Suite and Routing System with support for various prepaid and postpaid billing modes.

 "Bad UX is Bad Security: Adventures in Qubes OS UX Design" ( 2024 )

Saturday at 16:30, 30 minutes, AW1.126, AW1.126, Open Source Design devroom Marta Marczykowska-Górecka , slides , video

There's little love for design and UX in many security-related FOSS projects. After all, why should anyone care about the looks of something created (mostly) for expert users? As long as it works, the user interface is not really important, isn’t it? Designers will often answer with indignation, appeal to possible wider audiences, or just give up on arguing with the hackers. However, bad UX is bad not just for the so-called "normal people". Even the experts are human, and as humans are susceptible to cognitive biases and mistakes; and while privacy and security are great, they are even better when available widely and comfortably, so that their users are not obviously recognizable as "people with something to hide".

For the last several years, I have been working on improving the UX of Qubes OS, a security-focused operating system. In this talk, I will share the insights this work brought me on how improving UX can lead to better security, discuss how user research methods can be used to improve not just the feel of the software, but also its security, and discuss insights from cognitive psychology that can help us create more secure designs.

Qubes OS website My article on security and usability

 "Node Reduction through Artificial Intelligence Inferences using Graphology and SigmaJS: A Case Study on Hypertextual Conversations in Freight Train Graffiti in the North American Region." ( 2024 )

Saturday at 16:30, 30 minutes, UB4.132, UB4.132, Open Research devroom Angel R. Abundis , slides , video

Embark on a journey into the intricacies of social sciences research, exploring the fusion of different platforms for a single project. Drawing from my hands-on experience in my Communication studies master's thesis, "Visualization of a hypertextual interaction field in the form of a network using computational processes. Case study: Graffiti on freight trains in North America", this presentation shares the challenges faced by social science students in developing robust programming projects without prior tech expertise.

It underscores the pivotal role of open source tools, and community, in overcoming these challenges, shedding light on the logical links facilitated by adaptable programming projects. This allows the integration between platforms and the possibility of creating logical connections between data and theoretical-methodological aspirations.

The synergy of spaCy, TensorFlow, Instagrapi, Graphology, and SigmaJS exemplifies the potential of open-source software. The presentation explores intricate adjustments made to spaCy, such as hashtag split, term indentification and graffiti entity identification (as writers and crews) without Named Entity Recognition (NER). It also share the application of custom object detection model in TensorFlow. The talk emphasizes the decision-making flexibility within Graphology/SigmaJS for network construction and visualization, with a focus on "reduction by inference" as a clear outcome resulting from the amalgamation of theoretical perspectives and different programming libraries or platforms.

In conclusion, the interplay between TensorFlow or spaCy, model inference in Python, the role of SQL as a link between platforms, and network formation with PHP to Graphology syntax, culminating in visualization with SigmaJS in JavaScript, underscores the significance of open-source tools. "Reduction by inference" emerges as a crucial aspect for identifying symbolic elements in social phenomena, exemplified by graffiti on freight trains. This achievement is made possible only through open-source tools and their potential for linkage through "data".

 "An open-source, open-hardware offline finding system" ( 2024 )

Saturday at 16:30, 25 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Embedded, Mobile and Automotive devroom Dominik George Pingu , slides , video

Offline-finding systems allow small devices that are not connected to a network to enable communication between a finder and the owner – the most well-known system is probably Apple's AirTag system. AirTags can be attached to anything, and constantly broadcast beacons that can be discovered by smartphones running the corresponding to communicate a geolocation to the owner of the tag.

Starting from an experiment at Teckids, we are building an open implementation, absed on ESP32, Rust, and elliptic-curve cryptography. In this talk, we would like to explain how such a ssytem works, our approach, and what we learnt while building it.

 "Why not run OpenCL-accelerated LLM on your phone?" ( 2024 )

Saturday at 16:30, 25 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), FOSS on Mobile Devices devroom David Heidelberg , slides , video

Many of us were drawn to Linux by the amazing possibilities and combinations we could create while running the operating system. Such things were often not possible back then with operating systems like Windows.

Now, history is repeating itself with Android and iOS. Most of the devices we buy are highly locked and restricted, limiting our ability to do what we want on these devices. Even after spending many hours recompiling the entire system or patching it, there's no guarantee of achieving satisfactory results.

Linux allows us to do incredible things, encouraging experimentation, play, and learning.

As a Mesa3D developer, I have chosen to share my journey of running an LLM model using OpenCL as an example.

 "Cristal: a new Wiki UI to rule them all" ( 2024 )

Saturday at 16:40, 25 minutes, H.2213, H.2213, Collaboration and Content Management devroom Ludovic Dubost Manuel Leduc , slides , video

In this talk, I would like to present a new project from the XWiki team "Cristal", building a new modular Wiki UI, fully in Javascript allowing to navigate Wiki content from different Wiki servers (XWiki, Github, File Systems, NextCloud). Modular and extensible, supporting offline, realtime and a slick VueJS based UI, this project will be build with reusability and integrability in mind.

During the talk we will look at the objectives of the project from a usage point of view, and also at the innovative technical architecture which will support the modularity and customizability of Cristal.

 "A beginner's guide to Backports" ( 2024 )

Saturday at 16:40, 15 minutes, UB5.132, UB5.132, Free Java devroom Jonathan Dowland , slides , video

"Backporting" is the process by which fixes from the coal-face of OpenJDK development are adapted and applied to earlier versions. Most backports are managed via the JDK Updates Project (JDK8u is an exception). Backporting is perhaps underappreciated, but it can be challenging, stimulating and fun, and is one option for anyone who is interested in getting started with OpenJDK development.

This talk is a gentle introduction to getting started with backports. We will cover identifying, filtering and ranking candidate bugs, the Backports process (or processes) involved, tools, tips, case studies, caveats and tricks to keep backporting effective and fun.

 "vscode-container-wasm: An Extension of VSCode on Browser for Running Containers Within Your Browser" ( 2024 )

Saturday at 16:40, 30 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Containers devroom Kohei Tokunaga , slides , video

One of the limitations of on-browser VSCode is the lack of Linux-based terminals and containers running completely within the browser.

In this talk, Kohei will introduce an on-browser VSCode extension "vscode-container-wasm" which enables users to run Linux-based containers completely within the browser and interact with them via the terminals. This is implemented using "container2wasm" which is a container-to-wasm image converter that enables running Linux-based containers on Wasm runtimes and browsers, using Wasm-compiled CPU emulators (Bochs for x86_64 and TinyEMU for RISC-V). The talk will cover the overview of vscode-container-wasm and container2wasm, how they work, and their integration status with tools in the community.

 "Timestamping with opentimestamps" ( 2024 )

Saturday at 16:40, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Timothy M. Redaelli , slides , video

This talk will be about timestamping, blockchain, opentimestamps and proofmode. I previously delivered this presentation in Italian at Linux Day Milano 2022, receiving a positive reception.

 "Docsy for documentation: looking back, looking forward" ( 2024 )

Saturday at 16:45, 25 minutes, K.4.601, K.4.601, Tool the docs devroom Erin McKean , video

Docsy, a Hugo theme intended to make creating technical documentation sites faster and easier, recently celebrated its fifth birthday. In this talk, we'll discuss what we've learned about maintaining a documentation tool, how users of docs tools are different than users of other open source projects, and how Docsy is likely to grow in the future, based on community feedback.

 "Embedding Servo in Rust projects" ( 2024 )

Saturday at 16:45, 20 minutes, H.1308 (Rolin), H.1308 (Rolin), Rust devroom Rakhi Sharma , video

Servo project have got a renewed activity since 2023 after a few slow years. One of the goals for this year has been making Servo a practical embeddable rendering engine, making easier to embed it in Rust projects. We’ve already come a long way in this area. A key achievement is our development of a minibrowser, which showcases how the Servo engine can be integrated.

In this talk, the main focus will be on the embedding of Servo. We will dive into the technical aspects of the minibrowser, demonstrating how our developments have streamlined the process of embedding Servo, the challenges we’ve faced, and the solutions we’ve developed. Additionally, we will also talk about the future direction of Servo embedding in Rust projects.

 "GDB on Windows: status & plans" ( 2024 )

Saturday at 16:45, 20 minutes, K.4.401, K.4.401, Debuggers and analysis tools devroom Pedro Alves , slides , video

This presentation will give an overview of the status of the Windows port [1] of GDB, and plans for it. We'll talk about:

  • Windows debug API particularities.
  • Non-stop mode, and how we're planning on implementing it on Windows.
  • Ctrl-C handling and what is different on Windows.
  • The GDB testsuite, why nobody is running it on native Windows, and what can we do about it.
  • PDB (Program Database), Microsoft's debug info format.
  • More.

[1] There's actually both GDB as a Cygwin program, and GDB as native Windows program, with MinGW, which could/should be considered two ports, though for some of the topics discussed, they're essentially the same.

 "I want my own cellular network! Having fun with LTE networks and Open5Gs." ( 2024 )

Saturday at 16:45, 20 minutes, UB5.230, UB5.230, Network devroom Alessandro Arcieri , slides , video

Have you ever wondered how your cellphone actually works? Yes, there are cell towers, big antennas, huge buildings with lots of cables inside. But what is the magic that makes everything work every day on a million user scale? This talk aims to keep a less theoretical and more pragmatic approach, explaining the practical aspects of LTE networks. The presentation will begin with an overview of specific binary protocols, detailing some of the main network functions, and eventually delving into the key role of both DNS servers and Diameter protocol.

Hopefully, at the end, everybody should be able to go home and fire up their own personal LTE network in a box with Open5Gs open-source core implementation.

 "Cryptography against AI: Deepfake resistant WebRTC videocalls" ( 2024 )

Saturday at 16:50, 20 minutes, H.1301 (Cornil), H.1301 (Cornil), JavaScript devroom Kelian Christophe , slides , video

With the surge of AI how do you know if the people on the other side of a call are genuine. In this talk, we'll build a simple WebRTC client/server application that uses the subtle crypto WebAPI (available natively in browsers and in Node.js) to authenticate peers using simple elliptic curve digitally signed challenges. We can further build upon those concepts to use end-2-end encrypted applications.

 "Unikernels Are Here: Building, Running and Deploying Application Unikernels With One Command" ( 2024 )

Saturday at 16:50, 20 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Microkernel and Component-based OS devroom Razvan Deaconescu , slides , video

Unikernels have been around for quite a while. The recently formed Unikernel Alliance consortium, as a direct result of this devroom (FOSDEM'23), aims to evangelize unikernels to technical, academic and commercial parties. Still, a common issue is one of usability and reaching parity with Linux-based and Docker-based deployment.

We're excited to announce that we are now there. We are now at the point where we can use unikernels as a drop in replacement for containers, improving performance, resource consumption, cost and security.

In this talk we take a tour on Unikraft, an open source unikernel development kit, and its companion tool, KraftKit. We demonstrate how to easily build, package, run and deploy common applications with Unikraft, benefiting from its focus on specialization. With its POSIX compliant interface, Unikraft allows seamless integration of existing Linux applications. KraftKit provides the tooling layer to allow every action to be one command line away: building your preferred application, running it natively or on a remote setup, starting a debug session and many more.

The talk will be practical, filled with demonstrations with different applications running on top of Unikraft and pointing out resources and information for integrating Unikraft and KraftKit into your workflow, be it research, hobbyist / professional or commercial.

 "OSPO4Good UN Event report & 2024 Call for Participation" ( 2024 )

Saturday at 16:50, 10 minutes, AW1.120, AW1.120, Public Code and Digital Public Goods devroom Jacob Green , video

Lighting night talk on the Jun 2023 Event - OPSO4Good; Building @ Designing Cooperative Digital Infrastructure.

Recapping the conference report: https://www.un.org/techenvoy/sites/www.un.org.techenvoy/files/OSPOs_for_Good_Report_1.pdf

FOSDEM Attendees will then be invited to join in & participate at the July 9&10 2024 event. The details to be announced the week before FOSDEM.

 "Exploring Samba on various File Systems: Bridging ideas and enthusiasts together" ( 2024 )

Saturday at 16:55, 30 minutes, K.3.201, K.3.201, Software Defined Storage devroom Shwetha Acharya , slides , video

Are you curious about how files from different operating systems talk to each other?

Samba is like a magic translator for computers that speak different file-sharing languages. It's a software that helps different types of operating systems, like Windows and Linux to talk to each other and share files and even printers!

Lets explore about Samba and its integration within the Samba in SIT Environment. This session illuminates a defined path for enthusiasts looking to dig deeper by introducing a hassle free integration of samba on various file systems like XFS, GlusterFS, CephFS etc. You can even see us demonstrating it!

Through the lens of SIT Test Cases, housed on GitHub, we'll explore tangible insights gained from experimenting with Samba across different file systems.

Join us as we unravel the possibilities. Try using Samba on your favorite file system. Contribute to Samba Integration Testing(SIT) environment and SIT Test Cases and help in making Samba best compliant on your favorite filesystems.

 "Compliance as a Community Effort: Engaging Contributors and Users" ( 2024 )

Saturday at 16:55, 30 minutes, UA2.114 (Baudoux), UA2.114 (Baudoux), Community devroom Alan Pope , video

In the Free and Open Source world, compliance often gets a reputation as a complex, back-end process, seemingly distant from the daily workflow of developers and contributors. However, in this talk, we’ll explore how compliance is not just a legal necessity but a communal responsibility that can significantly enhance open-source projects' trust, sustainability, and success.

We will delve into the idea that compliance should be a collective effort seamlessly integrated into the fabric of the open-source community. By engaging the core developers, occasional contributors, and end-users, compliance becomes an inclusive, transparent process that upholds the spirit of open collaboration and innovation.

 "Bare-Metal Networking For Everyone" ( 2024 )

Saturday at 17:00, 30 minutes, UB2.147, UB2.147, Virtualization and Cloud Infrastructure devroom Mateusz Kowalski , slides , video

Do you feel that networking can be overwhelming? You are not alone. Understanding container networking may feel like a superpower and Kubernetes on Bare Metal may sound like dark magic, but don’t get scared. We all know Bare Metal helps your AI/ML applications to run faster, but the learning curve can be steep.

Kubernetes manages host networking on the nodes it deploys. Isn’t it a chicken and egg situation? What exactly happens with the network traffic inside a Kubernetes cluster? Which host interfaces are used by Kubernetes? Where to look to troubleshoot network issues with your workload? Last but not least, how to make your network lightning fast?

In this session we will explain everything you need to understand how on-prem networking works. Loadbalancers, DNS, whatever you need. We will give you a simple way to deploy your workload, even on the most complex topologies.

To make it more entertaining, we will demo a cluster running on a platform that ultimately broke our understanding of what on-prem and what a cloud is, putting a question mark on some fundamental definitions. Join us and deploy your own bare metal cloud tomorrow.

 "Vector Search in Modern Databases" ( 2024 )

Saturday at 17:00, 30 minutes, UA2.118 (Henriot), UA2.118 (Henriot), HPC, Big Data & Data Science devroom Peter Zaitsev Sergey Nikolaev , slides , video

In this talk, we'll explore the emergent landscape of vector search in databases, a paradigm shift in information retrieval. Vector search, traditionally the domain of specialized systems, is now being integrated into mainstream databases and search engines like Lucene, Elasticsearch, Solr, PostgreSQL, MySQL, MongoDB, and Manticore. This integration marks a significant evolution in how we handle complex data structures and search queries.

 "Advanced Linux Power Management Evaluation using Perf" ( 2024 )

Saturday at 17:00, 15 minutes, H.2214, H.2214, Energy: Reimagining this Ecosystem through Open Source devroom Hagen Paul Pfeifer , video

Functioning power management is important for the entire spectrum of systems, from embedded to server systems. However, the presentation is specifically aimed at analyzing the Linux software stack - inclusive kernel - of embedded products. It shows how embedded Arm64 systems differ from Intel/AMD systems and what impact this has on the power management software design. The presentation gives concrete insights on how to identify wakeups, the impact of scaling governors and many other subsystems of the kernel. The talk is intermixed by numerous practical examples, which should enable the listener to autonomously analyze and optimize the power consumption for complex embedded systems.

The talk has no prerequisites for the audience. Topics such as scheduling or CPU frequency governors are introduced in the talk. Of course, the listener should have a basic understanding of a Linux system and at least a basic understanding of concepts such as processes and interrupts.

Even if the talk focuses on an embedded system, the knowledge provided can, with a few exceptions, also be transferred to a server system. So there is no reason for amd64 people to be left out!

In addition, a new power management kernel analyzer tool will be introduced and its use, which is not yet available in the kernel upstream tree. Further, discussions about a more flexible, eBPF based CPUIdle governor and other research topics are introduced and can be discussed.

 "Let's make people love domain names again" ( 2024 )

Saturday at 17:00, 30 minutes, K.4.201, K.4.201, DNS devroom Frédéric Grither Pierre-Olivier , video

Domain names are not just web addresses; they are the lifeline of digital navigation and identity. But how many professionals are fully conversant with the technical aspects of domains names? There's a lot of room for doubts and errors.

Often neglected, zones are complex to handle. Yet, they are nonetheless crucial, helping individuals to better control their private lives on the Internet.

HappyDomain aims at simplifying domain management, making them accessibles for everyone. From individuals safeguarding their private lives online, to experienced system administrators overseeing vast digital landscapes.

You’ll learn how we try to promote a domain for everyone, with an interface finally designed for humans.

In 2024, what features should we expect to help us in our DNS-related tasks?

 "Cryostat: JFR in the cloud" ( 2024 )

Saturday at 17:00, 20 minutes, UB5.132, UB5.132, Free Java devroom Chris Mah , video

Do you know how your Java workloads are performing in your cloud deployment? Are your services consuming too many resources or lagging in performance as load increases? Deep dive into your application’s performance by adding Cryostat to your arsenal of developer tools; a container-native application used to retrieve and analyze profiling data from your workloads running in Kubernetes.

 "[Replacement Talk] Having fun with MIDI and Go" ( 2024 )

Saturday at 17:00, 30 minutes, UD2.218A, UD2.218A, Go devroom Daniel Esteban , video

We'll celebrate 10 years of Go Devroom with a "party", learn how to play music using some TinyGo powered instruments. In this talk we'll discover how to make our own instruments with different sensors and the MIDI capabilities of TinyGo

 "From disconnected elements to a harmonious ecosystem : The Epiverse-TRACE project" ( 2024 )

Saturday at 17:00, 5 minutes, AW1.120, AW1.120, Public Code and Digital Public Goods devroom Hugo Gruson , slides , video

There is an increasing trend of packaging and sharing tools in the epidemiology research community. But these tools remain difficult to use and to integrate in a data analysis pipeline. There is a need for a more integrated approach, ensuring that the various tools work well with one another. For example, minimal data wrangling should be needed to transform the output of one tool before passing it to the next tool down the data analysis pipeline. Similarly, various alternatives for a single step of the pipeline should as much as possible use the same inputs and return the same outputs. In this talk, I will present how the Epiverse-TRACE project collaborates with many R package developers in epidemiology to integrate their tools in a unified universe. Indeed, the unique and challenging feature of Epiverse is that it doesn’t intend to create a unified universe from scratch, but instead aims at updating existing external pieces of software to better work together. This talk will explain how we identify the key parts that should be updated, and how we make these updates with minimal disruption to the individual package developers and established community of users.

 "Will the first Artificial General Intelligence (AGI) instance be free or open-source software?" ( 2024 )

Saturday at 17:00, 50 minutes, Janson, Janson, Main Track - Janson Pieter Libin , video

Over the past decade, the field of AI has grown spectacularly, with many ground-breaking milestones being reported, such as a reinforcement learning agent that learnt to play ATARI games, AlphaGo that beat the best Go player in the world, reinforcement learning agents that learn to mitigate epidemics, deep learning models that predict protein structures and large language models that demonstrate interesting capabilities. While research in AI has traditionally been driven by academia, in the recent years, research companies, such as Deepmind and OpenAI, have been involved in significant breakthroughs. While in academia, there is a culture of keeping the reproducibility of scientific methods in high regard, which often goes hand in hand with making algorithms available as free or open-source software, this is not always the case in research companies. In this talk, we explore the free and open-source software ecosystem in the AI research community and contrast this with closed source applications, of which we discuss the ethical implications from the perspective of the scientific community. As research companies such as Deepmind and OpenAI explicitly state that their mission is to develop Artificial General Intelligence (AGI), we look ahead whether the first AGI instance will be free or open-source software and discuss what the implications might be for the scientific community and society in general.

 "The Journey to Ubuntu Touch 20.04 on PINE64" ( 2024 )

Saturday at 17:00, 25 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), FOSS on Mobile Devices devroom Oren Klopfer , slides , video

This talk delves into the evolution of Ubuntu Touch on PINE64 devices since its release in 2020. Over the past several years there have been significant changes, both to the development team and the codebase.

The shifts in the UBPorts/PINE64 community stem from the original PinePhone port’s maintainer moving on from the project, which coincided with the release of the PinePhone Pro. This left the community at a crossroads: necessitating the search for a new maintainer and the development of a new port.

A key milestone in this journey was the showcasing of an early-stage community port for the PinePhone Pro running on Ubuntu Touch 20.04 at FOSDEM last year. Since then, a new maintainer has achieved remarkable improvements, including porting 20.04 to the original PinePhone and PineTab, as well as the newly released PineTab2.

This presentation will explore the challenges encountered in integrating new devices, updating existing ones, and the process of harmonizing mainline Linux with Ubuntu Touch. This is particularly crucial as Ubuntu Touch has historically leaned towards devices designed for Android/Halium-based devices, somewhat sidelining mainline Linux in the transition to 20.04. Furthermore, the discussion will extend to the future prospects of this port and its implications for Lomiri on mainline Linux across different distributions.

 "One way forward: finding a path to what comes after Unix" ( 2024 )

Saturday at 17:00, 50 minutes, K.1.105 (La Fontaine), K.1.105 (La Fontaine), Main Track - K Building Liam Proven , slides , video

Plan 9 was intended to be Unix, done better. It pre-emptively replaced a lot of what we now bodge together with VMs, containers, and even microkernels, and it did it more simply and cleanly. But it wasn't compatible enough to replace its ancestor. With off-the-shelf existing 21st century tech, we can fix that.

 "Qadence - A library for Digital Analog Quantum Computing" ( 2024 )

Saturday at 17:00, 30 minutes, UB4.132, UB4.132, Open Research devroom David "Yoric" Teller , video

Quantum Computing is an exciting field of research that is in the process of growing out of academic labs and trickling into both public discourse and general use -- and before that, towards the use of researchers from other fields.

One of the main blockers is the difficult realisation of physical devices that permit such computing. Step by step, this blocker is being resolved and real quantum hardware becomes accessible to users through cloud services. Another is making the paradigm sufficiently accessible that users without expert knowledge of the underlying physics can consider developing algorithms that take advantage of quantum hardware.

Qadence (https://github.com/pasqal-io/qadence/) is a recent open-source project designed to help users develop digital-analog quantum programs. It features tools both for designing such programs, visualizing them and simulating results before getting access to quantum hardware.

This presentation will talk you through the design, implementation and test of a simple algorithm using Qadence. It does not assume knowledge of quantum physics, quantum computing fundamentals, or the definition of digital-analog quantum computing. Some knowledge of Python will be helpful.

 "From an artificial nose weekend hack to a future-proof IoT device" ( 2024 )

Saturday at 17:00, 25 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Embedded, Mobile and Automotive devroom Benjamin Cabé , video

It was a long weekend in May 2020. Like many of my human siblings stuck at home with time on their hands due to an ongoing pandemic, I was busy trying to perfect my bread recipe. Fast forward to a few hours later, I had assembled an Arduino-based “artificial nose” that used a gas sensor and AI (so-called TinyML) to learn and detect scents (hence potentially the smell of a perfectly fermented sourdough starter). As I open-sourced and started to share the project on social media, it went viral… and I felt like an impostor, as most of the code powering it was, frankly, hackish. Or maybe it wasn’t, as it had the merit of having helped me invent something new, in literally a few hours.

In this talk I will walk you through some of the key features of the artificial nose, and how I eventually rewrote my original code to leverage Zephyr (an open-source real-time operating system) in order to make it easier for myself and the community to extend the project, and run it on a variety of hardware targets.

You will learn, among other things: * How to move from a complex “super loop” to well architected threads and event-based programming ; * How to run TinyML models (ex. TensorFlow Lite) while not compromising the rest of your embedded system ; * How to build an efficient and easy-to-maintain graphical user interface ; * How to leverage Zephyr hardware-abstraction layer.

All the code and demonstrations shown in the talk is open source and available on GitHub, and you are very much encouraged to go ahead and build your own artificial nose after the presentation!

 "Web-accessibility for open-source privacy & security tools" ( 2024 )

Saturday at 17:00, 25 minutes, AW1.126, AW1.126, Open Source Design devroom Raashi Saxena , video

This talk will share insights on interdisciplinary approaches for inclusive design that enhances the navigation capacity for people with disabilities. We explore disciplines that provide language support, privacy, data protection, security, and safety for the disability community. This talk relates to everyone involved in the design of digital technologies which includes standards, policies, applications, and more. Technology designers from different disciplines are increasingly confronted with the topic of accessibility for people with disabilities, yet are often unsure how to approach it. Sensitivities often prevent efficient interaction among designers from different disciplines. This workshop is open to all - designers, developers, digital rights activists, usability consultants, and accessibility consultants. One does not require specific expertise to participate. People with backgrounds in collecting feedback from users and open-source tool teams who have integrated and implemented usability and accessibility improvements based on user feedback are welcome.

The talk will share best practices and resources that comply with accessibility best practices and how one can achieve the desirable accessibility standard. The talk will also share the results or examples of feedback collected from people with disabilities, outlining specific gaps in the accessibility of current open-source tools such as BigBlueButton, Jitsi, RiseUp Pad, Crypto Pad, Tella, Destiny, CDR Link, Círculo, etc.

Participants will have a

Participants will also have a 1) Comprehensive understanding of the accessibility status of popular open-source tools by learning about the common accessibility myths.

2) Understand the dire need for adopting accessibility standards to foster digital inclusion for people with disabilities.

3) The socio-economic benefits of making privacy and security tools more accessible by incorporating principles of web-accessibility.

 "AlekSIS - What are the needs of a free school information system?" ( 2024 )

Saturday at 17:00, 30 minutes, AW1.121, AW1.121, BOF - Track C Jonathan Weth

AlekSIS is a free school information system helping with digitisation of school organisation. AlekSIS is currently mainly used by German schools, so we would like to get some additional feedback from people working in educational institutions around Europe and/or are interested in school digitisation on the following discussion points:

  • What features does a school information system need? What are you thinking about the features AlekSIS has implemented already?
  • What are the main challenges of school digitisation?
  • Which legal or organisational requirements does your country have for school digitisation?

With the feedback collected from this session, we would like to improve AlekSIS and make it usable for a broader, more international audience.

 "Fireside Chat on Further Restrictions, Imposed Downstream on Copyleft, Wreaking Havoc" ( 2024 )

Saturday at 17:00, 40 minutes, UA2.220 (Guillissen), UA2.220 (Guillissen), Legal and Policy Issues devroom Bradley M. Kuhn Krzysztof Siewicz , video

There are some great features in GPLv3/AGPLv3 Section 7, including the ability to create Additional Permissions — this allows licensors to use the v3 licenses to create fine-tuned weaker copylefts: even LGPLv3 itself is an Additional Permission set applied to GPLv3.  The licenses also permit removal of “further restrictions” that take away users' rights.

We've faced however a complex confluence of events related to Section 7. The community of copyleft experts are discussing and considering what to do.  Specifically, we have seen more than once vendors confusing their users: by adding further restrictions to GPLv3/AGPLv3 in a way that confuses users about their right to remove those “further restrictions” and the right to exercise their full software freedom.

This panel discussion will investigate the various different nuances of the issue, including some examples. The panel includes Bradley M. Kuhn, who authored an expert report in support of PureThink and John Mark Suhy in the Neo4j v. PureThink legal case, and Krzysztof Siewicz, the Free Software Foundation's licensing and compliance manager who will be presenting the FSF's stewardship of the GPL work to prevent confusing licensing.

 "The world of Passkeys" ( 2024 )

Saturday at 17:05, 30 minutes, K.3.401, K.3.401, Ruby devroom Helio Cola , slides , video

Can you recall a world without having to remember passwords? If Passkeys becomes widely available, that world is a few steps away in our future. Instead of remembering passwords, we will use our biometrics, already available in our phones, laptops, and desktops, and public key encryption! To a future with no passwords!

 "Legislation Editing Open Software (LEOS) - an innovative open-source solution for drafting legislation​" ( 2024 )

Saturday at 17:05, 5 minutes, AW1.120, AW1.120, Public Code and Digital Public Goods devroom Fernando Nubla , video

LEOS (Legislation Editing Open Software) is a project under Interoperable Europe initiative of the European Commission for a reinforced public sector interoperability policy, funded by the Digital Europe Programme (DIGITAL).

LEOS  focuses on supporting the co-development, co-design, and co-deployment of an ‘IT eco-system centred on augmented LEOS’ and its is available for free under EUPL licence (version 1.2 or – as soon they will be approved by the European Commission - subsequent versions of the EUPL (the "Licence")).

In this presentation, we will deliver a brief introduction to LEOS that will cover the main features of LEOS, governance model and a short glance at our open-source journey.

 "OpenRAN & Open Source: The Cool Kids of Telecom - Shaking Up 5G/LTE Networks" ( 2024 )

Saturday at 17:05, 20 minutes, UB5.230, UB5.230, Network devroom Jakub Duchniewicz , slides , video

Join me for a quick but exciting dive into how Open Source and OpenRAN are reshaping the telecom world, especially in 5G and LTE networks. Imagine being part of a tech revolution that's ramping up, but with less drama and more practical solutions.

We'll touch on quite fresh topics like containerization and eBPF technologies, and let's not overlook the L1 layer – the real powerhouse, energized by projects like FlexRAN, ARM RAL, and OpenAir Interface.

Also, we'll spotlight emerging projects like Sylva and L3AF, demonstrating how they're innovating in network deployment.

And here's the main course: we'll delve into where open source can truly shine, particularly in hardware-focused areas like L1, where every microsecond is an eternity and dragons in the form of proprietary algorithms and software roam.

Join in for a session that's informative, straightforward, and sprinkled with a bit of fun. Let's explore how we're not just using technology, but actively evolving with it.

 "Thunderbird: How to Exchange Rot For Rust" ( 2024 )

Saturday at 17:10, 40 minutes, H.1308 (Rolin), H.1308 (Rolin), Rust devroom Brendan Abolivier Ikey Doherty Sean Burke , slides , video

Thunderbird has gone through a lot of changes recently, notably through the Supernova release, which was published in the summer of 2023, and is still rapidly evolving. Part of the work we have been doing in the background to enable this evolution is adding support for Rust to the Thunderbird code base.

In this talk, we'll tell the story of how we achieved this and what lessons we learned along the way. We’ll also show how we’re using Rust to both improve the existing code architecture, and build new features for Thunderbird such as support for Microsoft Exchange.

 "Online Debugging and ABI Data Services" ( 2024 )

Saturday at 17:10, 20 minutes, K.4.401, K.4.401, Debuggers and analysis tools devroom Frank Ch. Eigler , slides , video

Tools requiring broad access to metadata about program and library binaries continue to proliferate. Debuggers are an obvious example, but so are instrumentation tools such as systemtap, profiling tools such as sysprof, and analysis tools such as abigail. We will review some recent developments in this area, including cross-distro adoption.

 "SecSIPIdX - Library, CLI tool and RESTApi server for STIR/SHAKEN" ( 2024 )

Saturday at 17:10, 35 minutes, H.1302 (Depage), H.1302 (Depage), Real Time Communications (RTC) devroom Daniel-Constantin Mierla Federico Cabiddu , slides , video

STIR/SHAKEN are extensions from IETF for Session Initiation Protocol (SIP) to secure caller identity and combat origin number spoofing for telephony services. SecSIPIdX is an open source project implementing STIR/SHAKEN that offers Go and C libraries, a CLI tool and a HTTP RESTApi server. The presentation goes through the C API that can be used to add STIR/SHAKEN capabilities to exiting applications, exemplifying with how it was done for Kamailio SIP Server. Several use cases for the CLI tool will show how it can be used to test other STIR/SHAKEN implementations or validate related values, plugging in the mix examples with the HTTP RESTApi server that could facilitate rapid addition of STIR/SHAKEN to existing VoIP systems without needing to write code.

 "From Excel to Grist: the example of a massive transition towards open-source software and contribution by a French government agency" ( 2024 )

Saturday at 17:10, 5 minutes, AW1.120, AW1.120, Public Code and Digital Public Goods devroom Florent FAYOLLE Vincent Viers , video

The French government agency ANCT recently started using the open-source collaborative spreadsheet Grist, with so far a great positive feedback from users. As the needs grow, ANCT now hires people to contributes to the product either as developers or as designers, not only for their own benefits but also for the greater community. We'll talk about our use cases, what is Grist and why we chose it and refused to fork, how tightly we collaborate with the editor behind the product, and what are our prospects for the future.

 "Pushing Tiki to its limits" ( 2024 )

Saturday at 17:10, 25 minutes, H.2213, H.2213, Collaboration and Content Management devroom Jean-Marc Libs , slides , video

A low-code database web app for a mission-critical project.

Tiki provides a database abstraction layer. It is very flexible but how does it scale and how to organize the project infrastructure up to the production server? Thanks to a concrete example project which has been expanding for 3 years, we have learned a lot.

As we start a similar project we obviously took time to recap our lessons learned, improvements, best practices, traps to avoid. I plan to share this experience as much as I can.

 "Is Toro unikernel faster for MPI?" ( 2024 )

Saturday at 17:15, 20 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Microkernel and Component-based OS devroom Matias Vara Larsen , video

MPI applications are parallel applications that require CPU, memory and high-throughput channels to communicate. These applications are usually deployed on top of a general purpose operating system that provides services like memory allocation, process creation, inter-process communication and networking. The resources like memory or CPU are shared with other processes in the system and with the OS itself. The MPI application competes for host's resources thus limiting its scalability. In this talk, we present the recent effort to build an implementation of the MPI standard on top of the Toro unikernel. In this deployment, we provide a minimalist implementation of the MPI standard as a library that compiles with the application and the kernel thus resulting in a single binary that can be deployed as microVM. Such a library leverages the parallelism that Toro proposes to effectively deploy a MPI application. Some of the benefits of using Toro are one instance per core, cooperative scheduler without preemption and local resources. To benchmark our implementation, we port some the OSU Micro-Benchmarks and run them in the Intel Xeon Gold platform. We report the benefits of our architecture when comparing it with existing MPI implementation on Linux.

 "Gno.land: Improve Your Understanding of Our World" ( 2024 )

Saturday at 17:15, 5 minutes, AW1.120, AW1.120, Public Code and Digital Public Goods devroom Manfred Touron , video

In an age of information saturation and distortion, society needs a platform for censorship-resistant truth discovery. That’s why we’re building Gno.land, the first open-source smart contract system. Through a community of aligned contributors, we can recreate a society with open-source distributed tools and timeless code to enforce accountability and effective governance.

 "Drop the docs and embrace the model with Gaphor" ( 2024 )

Saturday at 17:15, 20 minutes, K.4.601, K.4.601, Tool the docs devroom Frank Vanbever , slides , video

Napoleon reportedly said that a good sketch is better than a long speech. This might make him the first practitioner of model based system engineering. MBSE is an approach to system engineering where document based communication is exchanged for building a domain model. This is typically done through graphical languages like UML or SysML. A model gives us the opportunity to query it, run tests against it and verify it's validity.

This talk will demonstrate how a model can be built with Gaphor and how it's integration with the wider Python ecosystem can help us to prevent mistakes. It won't prevent you from attempting to invade the Russian Empire in wintertime but it will help you make sure your system architecture is sane.

 "Zero-touch Infrastructure for Container Applications" ( 2024 )

Saturday at 17:15, 30 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Containers devroom Thilo Fromm , slides , video

Container applications are deployed by creating an instance of a pre-defined container image from declaratively configured properties. This eases automation and reproducibility of deployments, which in turn reduces operational risk.

What if we extend these properties to node provisioning, treating the OS itself like a containerised app? What if, instead of making general purpose operating systems fit our needs we radically re-think our approach, from the ground up, on how an OS should handle and work in a cloud native environment?

Applying the same expectations we have towards handling of container applications we present an alternative approach to OS provisioning, configuration, and lifecycle management. Leveraging a strict separation of OS and applications, we show how a zero-touch, immutable, image-based OS can be built. And extending this concept, we make builds attestable and deployments cryptographically secure, thus helping to secure your infrastructure’s supply chain. In this talk we will cover some of the latest thinking in operating systems, going beyond the established concept of a Container Linux to a future based on the latest developments in systemd’s composable images and a generic model for image-based architectures.

 "TruBudget - a DPG to support the project workflow in international multi-stakeholder environments" ( 2024 )

Saturday at 17:20, 5 minutes, AW1.120, AW1.120, Public Code and Digital Public Goods devroom Dr. Jure Zakotnik , video

TruBudget represents a significant leap in public sector management through its use of blockchain technology in an open source application. This talk will explore TruBudget’s role in improving transparency and efficiency in public financial management. We will briefly discuss its key features, including a secure, user-friendly platform for real-time workflow management, and share insights from its global implementations. The presentation aims to highlight TruBudget’s impact in fostering trust and reducing corruption, underscoring its potential as a innovative digital public good in the public sector.

 "How can Open-Source help the Wind Power industry?" ( 2024 )

Saturday at 17:20, 15 minutes, H.2214, H.2214, Energy: Reimagining this Ecosystem through Open Source devroom Marco Berta , slides , video

Why is digitalization becoming one of the main assets for wind power energy? Wind farms today boast higher capacity factors, indicating that they are producing more energy relative to their installed capacity. Improved design, coupled with advancements in predictive analytics and control systems, have optimized the performance of wind turbines, making them more reliable and productive. The interest in renewable energy and, particularly, in wind power accelerated dramatically as the war in Ukraine took place. For the first time in history the investment in renewables was the primary response to an energy crisis. The increase in wind power capacity involves some new challenges. Older wind turbines are more prone to failure due to aging and at the same time this must be predicted as accurately as possible for the newer ones, based on data collected in real-time in the field. Predictive maintenance can save a lot of time and money by having the right number of spare parts in stock in the right location. Applying DevOps principles to Big Data predictive analytics can help optimize the use of resources and workflows. This produces major improvements to the spare part recommendation based on IoT data. This presentation illustrates how DevOps practices and related Open-Source tools help build an efficient software infrastructure where wind turbines lifetime predictions and spare part stock recommendations are delivered regularly to service engineers.

 "All Things Astro" ( 2024 )

Saturday at 17:20, 30 minutes, H.1301 (Cornil), H.1301 (Cornil), JavaScript devroom Elian Van Cutsem , video

Astro 4 has just been released and brought some amazing new features with it. In this talk, we’ll take a look at some of the newly released features in Astro 4 and how 2023 was such a crazy & amazing year for Astro.

We'll dive deeper in some Astro concepts, like Islands architecture, view transitions, and how they changed the future of website development.

Of course, we'll do some live coding and have some fun. After that, let's take a look at what’s coming next for Astro.

 "The JVM vs. WebAssembly: An In-Depth Comparative Analysis" ( 2024 )

Saturday at 17:25, 20 minutes, UB5.132, UB5.132, Free Java devroom Shivansh Vij , slides , video

The JVM vs. WebAssembly: An In-Depth Comparative Analysis

This session contrasts, in extreme detail, the Java Virtual Machine (JVM) and WebAssembly (Wasm), two platforms that have reshaped the landscape of software development. While their basic architecture of a "virtual machine" draws parallels, their design, intentions, bytecode formats, and future directions reveal considerable differences.

Differences in Intent and Bytecode Adaptations

We'll examine the underlying intentions behind the creation of the JVM and WebAssembly. While the JVM was initially designed to support the Java language, it has since accommodated other languages like Scala, Groovy, and Kotlin, and has been provided with implementations for dynamic languages like Ruby and Python. WebAssembly, on the other hand, was designed from the outset to support multiple languages, aiming to serve as a compact binary format for the web. We'll analyze how these intentions have influenced the way other languages have been adapted to their respective bytecode formats, by carefully examining the pain points found in JVM and Wasm implementations across the same source languages

Bytecode Differences, Implementation, and Control Flow

Here we will delve into the technical details of each platform's bytecode. While the JVM uses stack-based bytecode, WebAssembly uses a structured stack machine model. The implications of these different approaches will be discussed, with particular attention to aspects like performance, security, and portability. We'll also explore their respective implementations and control flow mechanisms through the use of detailed code examples, as well as high-level expositions.

Standardization Processes, Stakeholders, and Incentives

An important part of this talk will focus on the standardization processes of both the JVM and WebAssembly. While the JVM’s specification is controlled by Oracle, with community input through the Java Community Process (JCP), WebAssembly is an open standard developed by the World Wide Web Consortium (W3C). We'll discuss the various stakeholders involved in each process and explore the incentives that drive the evolution of these systems.

The Future of WebAssembly

We'll discuss the future direction of WebAssembly, touching on upcoming proposals such as garbage collection, and the Component Model. Additionally, we'll look at the development of runtimes like Wasmtime, the WebAssembly Micro-Runtime (WAMR), and GraalWasm, and discuss how these work to extend the reach of WebAssembly in new and interesting ways

JVM and the Universal Compilation Target

In our closing discussion, we'll tackle the common assertion that WebAssembly is "just the JVM again", and explore why the JVM didn’t quite become the universal compilation target it was often touted years ago. Factors such as the JVM's resource usage, security issues, specific design details have all played a part, and we'll discuss how and what WebAssembly has learned from these challenges.

This session's ultimate goal is to give attendees a detailed understanding of the JVM and WebAssembly, enabling more informed decisions in software development and a clearer perspective on the futures of these two technologies.

 "Intro to Janssen: Managing inter-domain trust and security" ( 2024 )

Saturday at 17:25, 5 minutes, AW1.120, AW1.120, Public Code and Digital Public Goods devroom Michael Schwartz , video

Janssen Project is a distribution of digital identity components that enables large organizations to self-host an identity federation service which supports high concurrency, multi-cloud deployments and has the flexibility to solve almost any custom functional requirements. It is used for person authentication, web single sign-on, mobile authentication and for OAuth-based API access management. Janssen is not one piece of software--like Linux, it's a distribution of software , all of which is community-governed and published under a permissive open source license.

 "Hedy" ( 2024 )

Saturday at 17:30, 60 minutes, J.1.106, J.1.106, FOSS Educational Programming Languages devroom Jesús Pelay Pink van de Hel , slides

Hedy is a gradual programming language to teach children programming. Gradual languages use different language levels, where each level adds new concepts and syntactic complexity. At the end of the Hedy level sequence, kids master a subset of syntactically valid Python.

 "NFD: Simplifying Cluster Administration through Automated Node Labels, Taints, and Annotations" ( 2024 )

Saturday at 17:30, 30 minutes, UA2.118 (Henriot), UA2.118 (Henriot), HPC, Big Data & Data Science devroom Carlos Eduardo Arango Gutierrez , video

Kubernetes is being used in more diverse use cases that require specialized hardware and system configurations per node. The Node Feature Discovery (NFD) project was initially created as a simple node labeler daemon to tackle the difficulties of heterogeneous clusters. However, recently, NFD has acquired numerous new capabilities, from custom node labeling to extended resources, node tainting, annotations, and topology discovery.

NFD has a broad range of built-in capabilities to detect hardware and system configurations and has various extension points for third-party plugins. Additionally, NFD provides a CRD-based rule system that is expressive and flexible for updating node properties according to its discovered capabilities.

This talk will demonstrate how NFD can be utilized to simplify cluster administration by automating aspects of node management, such as labeling and tainting.

 "Moodle: Empowering educators to improve our world" ( 2024 )

Saturday at 17:30, 5 minutes, AW1.120, AW1.120, Public Code and Digital Public Goods devroom Noel De Martin , slides , video

Moodle is the world's most customisable eLearning solution, and it is used all around.

As a registered DPG, and a certified B-Corp, we are in a unique position to contribute to the important Sustainable Development Goal of quality education. Ensuring inclusive and equitable quality education and promoting lifelong learning opportunities for all.

In this presentation we'll share what Moodle is, what we're doing to achieve our mission, and how you can start using Moodle today.

 "Single-vendor is the new proprietary" ( 2024 )

Saturday at 17:30, 30 minutes, UA2.114 (Baudoux), UA2.114 (Baudoux), Community devroom Thierry Carrez , slides , video

As more and more software companies decide to abandon open source licenses to adopt source-available or non-compete licenses, it is time to take a step back. Is open source less interesting than it was when the Open Source Initiative was created 25 years ago? Or is it just a short-sighted, investor-driven move to extract incrementally more value to the detriment of the whole ecosystem?

In this talk, Thierry Carrez, General Manager at the OpenInfra Foundation and vice-chair at the Open Source Initiative, will look critically at those recent developments. He will replace them in historical context, explain the origin and value of the permissionless innovation that we currently all enjoy, and reassert the virtue of software developed in an open collaboration, compared to single-vendor software.

 "Navigating the Networking Maze of Kubernetes: A Journey of Discovery, Confusion, and (Hopefully) Enlightenment" ( 2024 )

Saturday at 17:30, 15 minutes, UB5.230, UB5.230, Network devroom Antonio Ojea , slides , video

Kubernetes networking is often perceived as a labyrinth, where pods, services, and ingresses exchange data packets. While Container Network Interfaces (CNIs) undoubtedly play a pivotal role, the networking landscape extends far beyond these plugins.

We'll embark on a journey beyond the confines of CNI, exploring the realm of the kube-apiserver, the central control plane that orchestrates the entire Kubernetes ecosystem. We'll uncover the secrets of the kubelet, the node agent that receives instructions from the kube-apiserver and is responsible for managing the lifecycle of pods and containers on that node.

This talk goes beyond the basics, exploring the hidden gems and dirty secrets of Kubernetes networking.

 "Smartwatch firmware... in Go? On TinyGo, small displays, and building a delightful developer experience" ( 2024 )

Saturday at 17:30, 30 minutes, UD2.218A, UD2.218A, Go devroom Ayke van Laethem , video

Building a nice and responsive GUI is no easy task. It is especially difficult when you're working with a small microcontroller and the existing graphics libraries have various limitations. So I set to work to fix that by building my own graphics library for small embedded systems.

A year ago I started working on a firmware for the Pine64 PineTime, using TinyGo of course. My goal was to have a usable firmware for the watch, while improving the surrounding TinyGo ecosysteem wherever I could. My end goal is to make developing firmware as simple as writing any desktop application.

In this talk I'll describe how I initially added support for the PineTime in TinyGo with some low level hardware details, how low cost displays work, and how I improved the performance of these displays under TinyGo. But I'll also describe how I built a somewhat accurate simulator as part of the hardware abstraction layer, how I implemented a very fast graphics library using generics, and of course how I used all of these to write firmware that can run on the PineTime and any similar smartwatch supported by TinyGo.

While this talk may get technical sometimes, I'll make sure it's still easy to follow even if you're not an embedded developer.

 "Linux CAN upstreaming on MMU-less systems" ( 2024 )

Saturday at 17:30, 25 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Embedded, Mobile and Automotive devroom Dario Binacchi , slides , video

This talk describes the issues and challenges I faced during the development of the bxCAN driver on stm32f4/7 architectures for the Linux kernel. Focused on the design and development of the driver, I soon realized that the classic user space tools used for testing a CAN interface (i. e. iproute2 and can-utils) could not be compiled on MMU-less systems.

The lack of MMU prevents the use of the fork() system call used by many Linux applications. Currently in buildroot, for example, about half of the packages are not supported on MMU-less systems. Furthermore, considering that busybox also does not support the 'ip link' command for the CAN interface, it was evident that the number of difficulties to overcome had increased so that, in addition to the driver development, the user space also needed to be patched. My target expanded: I definitively wanted to overcome the limitations of the user space and make it available to the open-source community.

How has the development of the bxCAN driver evolved? Was it later merged into the Linux kernel? Which packages needed to be patched to test it? What patches were applied? What happened to them? The talk addresses these and other questions that we will explore.

 "dnsconfd: system integrated DNS cache" ( 2024 )

Saturday at 17:30, 30 minutes, K.4.201, K.4.201, DNS devroom Petr Menšík Tomas Korbar , slides , video

Multiple DNS caches exist on Unix(like) systems, but only few have decent system integration. systemd-resolved has a good integration, but poor DNS protocol implementation. Advanced DNS resolvers have many good features, but each has different configuration syntax even for basic settings like forwarding.

We think missing integration can be provided by dnsconfd daemon, which would provide glue between Network Manager and resolver running on localhost. Would provide unified DBus and command line interface for different cache implementations.

 "Advances in Garage, the low-tech storage platform for geo-distributed clusters" ( 2024 )

Saturday at 17:30, 40 minutes, K.3.201, K.3.201, Software Defined Storage devroom Alex Auvolat , slides , video

Garage is a self-contained, low-tech storage system for building geo-distributed storage clusters. Garage is developped by Deuxfleurs, an experimental self-hosting collective.

Garage targets primarily home-grown clusters composed of second-hand commodity hardware, spread over multiple physical locations for redundancy. Garage is built from scratch to tolerate slow nodes, high latency between nodes and temporary network failures or node crashes while still providing satisfactory quality of service.

Since our last talk at FOSDEM 2022, Garage has matured significantly, with a v1.0 release on the horizon. This talk will cover major changes in recent Garage versions and present our findings on the best practices for deploying and scaling storage clusters.

 "Instant Ramen: Quick and easy multi-cluster Kubernetes development on your laptop" ( 2024 )

Saturday at 17:30, 30 minutes, UB2.147, UB2.147, Virtualization and Cloud Infrastructure devroom Nir Soffer Adam Litke , slides , video

Kubernetes is increasingly being used for mission critical applications where uptime and data protection are of primary importance. Virtual machines run alongside containers thanks to the KubeVirt project. When disaster strikes one data center, you can recover by failing over to another data center. The RamenDR project handles data protection and orchestrates disaster recovery flows for containers and VMs alike. All of this is powered by open source projects and many contributors. But how can you develop and test a complex software stack that is designed to run on multiple racks of hardware in a data center?

In this talk we introduce a virtual machine disaster recovery software stack that runs on three Kubernetes clusters. We will demonstrate a disaster scenario using a tool, drenv, which can create a multi-cluster environment including Rook Ceph storage, KubeVirt, and RamenDR on your laptop with one simple command. Attend this talk if you: are interested in complex Kubernetes environments, want to learn how drenv can help your project, or if you like watching risky live demos at conferences.

 "Towards a bright future with Mobian?" ( 2024 )

Saturday at 17:30, 25 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), FOSS on Mobile Devices devroom Arnaud Ferraris , slides , video

Mobile Linux is no longer a new thing, and we reached a point where many users daily drive Linux-based phones, which are getting more usable over time. Despite being a significant improvement, there are still a lot of challenges to overcome and many more problems to solve.

This talk will highlight the progress and latest developments in Mobian, emphasizing the specific community-wide issues those try to address. We will also present and discuss our plans for the foreseeable future, as well as the improvements we're contributing to the wider ecosystem in the process.

 "Science without secrets – how Galaxy democratizes data analysis" ( 2024 )

Saturday at 17:30, 15 minutes, UB4.132, UB4.132, Open Research devroom Polina Polunina Mira Kuntz , video

In the realm of scientific research, challenges arise from the domain-specific nature of compute and data requirements, leaving many researchers grappling with the complexities of diverse platforms. Often, limited computing skills and constrained access to infrastructure exacerbate the struggle. Galaxy, an open-source platform, addresses these hurdles through a community-driven approach, emphasizing transparency, reproducibility, and reusability. Acting as a multi-user environment, Galaxy facilitates seamless sharing of tools, workflows, and data, fostering collaboration and making result replication accessible for verification. Galaxy's versatility spans diverse scientific domains, such as life science, materials science, astrophysics, and climate science, showcasing its adaptability and garnering popularity across disciplines. The open ecosystem allows communities to include continuous tooling with low-threshold and thus enables dynamical and interdisciplinary work, the inclusion of new research fields, and preserving research contexts for reproducibility. With a user base exceeding 83,000 on the European Galaxy Server, one of the biggest among over 300 Galaxy servers, users benefit from a seamless experience in data analysis and effective resolution of computational challenges. Scalability is ensured by utilizing High Performance Compute and Cloud-based infrastructures as well as distributed computation and storage technologies.This approach enables research teams to utilize their own computational infrastructure and store data on-premise, proving especially advantageous for ensuring compliance with GDPR requirements. Containerization strategies and package/environment management systems, such as Conda, play a crucial role in ensuring reproducibility. By encapsulating applications and managing dependencies, they contribute to the creation of a more reliable environment for scientific research within Galaxy. Galaxy's impact extends to collaborations with European Open Science Cloud (EOSC) and ELIXIR, demonstrating its integration into broader research infrastructures. Moreover, Galaxy's commitment to Research Data Management (RDM) is a pivotal aspect, providing tools for data import, organization, sharing, annotation, and export. This emphasizes Galaxy's role in addressing challenges associated with data storage and access, including cloud storage solutions like NextCloud or S3. Additionally, Galaxy's open infrastructure, free compute and training resources, as well as Training Infrastructure as a Service (TIaaS) contributes to breaking down barriers for researchers with varying technical backgrounds, fostering flexibility and independence from funding constraints.

 "Fiscal sponsorship for / and FOSS projects" ( 2024 )

Saturday at 17:35, 10 minutes, AW1.120, AW1.120, Public Code and Digital Public Goods devroom Angela Okune , video

As sustainability continues to command the attention of open technologists, we propose a discussion of models of shared infrastructure in the nonprofit open ecosystem. Fiscal sponsorship, or the extension of the U.S. 501(c)3 tax exempt status to select groups with affiliated missions, poses particular promises to open software, open hardware, and open infrastructure projects, especially those put to the service of the public interest. We explore models of fiscal sponsorship and relate specific examples from our experience as a fiscal host to a portfolio of 15 open projects.

 "Poke all the microcontrollers!" ( 2024 )

Saturday at 17:35, 20 minutes, K.4.401, K.4.401, Debuggers and analysis tools devroom Mohammad-Reza Nabipoor , video

This is the story of GNU poke and GDB coming together to help embedded developers!

The whole talk will be around a live demo starting from how to build GDB with GNU poke integration, and continuing on examples of board bring up, peripherals testing and verification, and program testing strategies. The idea is to show the possibilities through examples, while not going deep into the details.

This whole magic is possible because of libpoke, the core of the GNU poke project. It enables integration of Poke computing environment (the incremental compiler, IO space management and Poke Virtual Machine (PVM)) into any application.

 "Energy optimisation: smart home meets smart district" ( 2024 )

Saturday at 17:40, 15 minutes, H.2214, H.2214, Energy: Reimagining this Ecosystem through Open Source devroom Pierre Kil Don , slides , video

The energy transition is causing major issues on our local network infrastructure as well as individual households to become self sufficient. A know problem for everybody attending. However a practical combined approach is new...

In this talk we will be presenting several operational use cases, addressing the combined energy optimisation at household level and maximum self consumption within a district or microgrid (to prevent local congestion). Moreover, we are addressing ways how two worlds, can meet in the middle: the one at grid level with DSO's, system integrators and large (industrial, commercial) users) with the one at the home level (consumers, energy providers, consumer products). In addition we like to share and discuss how the merging of two traditionally separate domains (heating and electricity) will impact optimisation.

We will present and show (live demos) the following operational use cases, fully build on open source: - Nottingham City Council - Microgrid optimisation at Eastcroft depot, with V2G, solar, storage, and agile tariffs - Amsterdam Sporenburg - Preventing network congestion involving 500 households, as well as controlling (public) charging infrastructure; preparing for energy sharing - Athens - Energy cooperation with shared solar plant, optimising self consumption with the community members smart homes

 "Experimenting with AI and LLM to make docs searchable through a chat application" ( 2024 )

Saturday at 17:40, 25 minutes, K.4.601, K.4.601, Tool the docs devroom Frank Delporte , video

ChatGPT is considered to bring the end to search engines. But it's also a pretty good liar, just making stories up. As chat-based search engines, powered by machine learning and artificial intelligence, use an LLM (Large Language Model), they have no other knowledge than an algorithm that predicts the most likely word that should follow the previous ones. On top of that, these LLMs are not up-to-date, as they are generated with a "snapshot" of available data at a specific date when the LLM is being developed.

But how do we cope with the challenge that our managers and end-users want us to provide a chat-based user interface that produces correct results?

At Azul, all our public knowledge about Java and the products we deliver is combined on docs.azul.com. It's a "classic documentation" website, generated as a static website based on AsciiDoc files. As Java lovers, we experimented with several free, open-source tools to make our docs chat-searchable. Join this session to learn if we can dump traditional docs and enter the chat age...

 "Backtracie and the quest for prettier Ruby backtraces" ( 2024 )

Saturday at 17:40, 30 minutes, K.3.401, K.3.401, Ruby devroom Ivo Anjo , video

A backtrace is one of those Ruby features that is extremely useful, but we never think about it. They're just always there in our time of need -- be it when an error happens, when exploring our code inside a irb or a debugger, or even when profiling our app.

In this talk, I’ll do a deep dive of how Ruby backtraces work inside the Ruby VM. If you’ve ever been curious about how this part of the Ruby VM works, this talk is for you!

I’ll then show how I’ve used this knowledge to build the backtracie gem. The backtracie gem is an experimentation ground for creating prettier backtraces; during this talk I will discuss the extra information it can provide, and in what cases it may be useful. Finally, I’ll show how you can start using backtracie in your Ruby apps, today!

 "How to get rid of Confluence: Comparing Open Source Knowledgemanagent Systems" ( 2024 )

Saturday at 17:40, 25 minutes, H.2213, H.2213, Collaboration and Content Management devroom Markus Feilner , slides , video

Atlassian, the proprietary Australian vendor and market leader of Knowledge Management recently has been massively raising prices and pushing their customers into their cloud. Apart from data protection and legal issues, many companies can not afford that loss of digital sovereignty. But there is alternatives, and excellent ones, completely open source.

Many vendors of free alternatives have been reporting a huge migration of former Atlassian customers to their products, and a large interest from customers in comparisons. This presentation is giving an overview on which systems to choose, what features they deliver and who benefits the most from which product.

The presentation will include but may not be limited to (in alphabethical order): BlueSpice, BookStack, DokuWiki, Foswiki, MediaWiki, OpenKM, Outline, PmWiki, Wiki.js and Xwiki.

I also intend to do a short "How to get started with knowledge management in your company" section. ("Agile & Recursive" KM)

 "News from the Hermit Crab — From Soundness Foundations to GPU Virtualization" ( 2024 )

Saturday at 17:40, 20 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Microkernel and Component-based OS devroom Martin Kröning , slides , video

The Rust-based Hermit operating system project allows you to compile your application against our modular library operating system to create a unikernel image, which can run in a VM.

This unikernel image is much more lightweight than traditional VM images, which contain a full-blown Linux Distribution. We are talking Megabytes in size instead of Gigabytes. That's because the unikernel image can be specialized to the application that runs and the environment that the image runs in. Having only one application per VM also allows Hermit to be a single address space operating system. That means we don't have to do any context switches between user space and kernel spaces and every system call becomes a function call into the library operating system.

In this talk, we will present the highlights of last year's developments in Hermit. These are the topics we will cover:

  • Interesting Internals
    • Soundness Foundations (hermit-sync)
    • async-Driven In-Kernel Network Stack Architecture
  • New Platform Support
  • Enhanced Architecture Support
    • AArch64 (ARM64)
    • 64-bit RISC-V
  • Accessible Application Development Workflow
    • stable Rust Toolchain Release Channel Support
    • Windows Host Support
  • Advanced Applications
    • GPU Virtualization with Cricket
    • Profiling through Instrumentation with rftrace

 "The new Swiss Open Source Law: "Public Money Public Code" by default" ( 2024 )

Saturday at 17:40, 30 minutes, UA2.220 (Guillissen), UA2.220 (Guillissen), Legal and Policy Issues devroom Matthias Stürmer Rika Koch , slides , video

The Swiss Parliament passed a new law in March 2023 that requires federal government agencies to publish all government software under an open source license. The new "Federal Law on the Use of Electronic Means for the Fulfillment of Official Tasks" (EMBAG, Article 9 "Open Source Software" https://www.fedlex.admin.ch/eli/fga/2023/787/de) went into effect on January 1, 2024. It is the result of 12 years of lobbying by the Swiss Parliamentary Group for Digital Sustainability to ensure that the law not only allows governments to publish open source code, but actually makes it the default process (https://www.ti8m.com/en/blog/open-source-gesetz-schweiz). The presentation will outline the history of the legislative process and present the current open source activities of Swiss government agencies, also in the context of the ongoing political debate on digital sovereignty (https://www.inside-it.ch/lasst-uns-die-digitale-souveraenitaet-nicht-verschlafen). The subsequent discussion will focus on what the Swiss government should do next to successfully implement the law. Suggestions such as establishing an Open Source Programme Office (OSPO) like the EU and launching a national Open Source development platform like OpenCoDE in Germany are on the table. More input is needed since Switzerland lacks a strong open source culture compared to other European countries.

 "What can digital open source projects do to reduce our environmental footprint" ( 2024 )

Saturday at 17:45, 5 minutes, AW1.120, AW1.120, Public Code and Digital Public Goods devroom Mike Gifford , video

The world is slowly waking up to the realities of our climate crisis. We know that digital solutions have been growing exponentially, and so has their environmental footprint. The internet has led to a great deal of this growth, and this has gone in-step with the growth in open source software.

There are a number of new initiatives to help track the environmental impact of our digital world. Even better, there are a several that have been actively developed which are under a permissive license.

More is needed though to ensure that public code is being built in a way which does not contribute to climate change.

This presentation focus largely on the web, and will address the new draft Web Sustainability Guidelines.

 "Securing 1M+ devices: My learnings from working as an IoT Architect" ( 2024 )

Saturday at 17:45, 15 minutes, UB5.230, UB5.230, Network devroom Bhavin , video

In this talk, I want to share my experience building cloud based software to manage IoT devices at scale using PKI. I'll break the topic down into 3 parts:

  1. Creation of certificates using PKI
  2. Distribution of certificates using SCEP
  3. Rotation and revocation of certificates using CRLs and OCSP

I'll talk about these topics from the lens of challenges faced at scale

 "Workflow managers in high-energy physics: enhancing analyses with Snakemake" ( 2024 )

Saturday at 17:45, 15 minutes, UB4.132, UB4.132, Open Research devroom Jamie Gooding , slides , video

Workflow management tools have long been used in scientific computing to organise and operate workflows. Many such tools, e.g., Snakemake, Luigi, and Toil, have grown from the foundation of Make (wherein users define simple rules with interdependent inputs and outputs), incorporating additional features to suit increasingly complex user needs. Initially seeing a widespread uptake in bioinformatics, workflow managers have become commonplace in many fields, for example, high-energy physics (HEP).

Analyses in HEP typically consist of many non-trivially related processes with widely varying requirements. Workflow managers can vastly simplify such analyses, providing user-friendly methods to define, review and run analysis workflows. Snakemake has emerged as a leading workflow manager for HEP, with an established user base spread across major experiments. Dialogue between developers and HEP has led to integrations for distributed storage/transfer frameworks, e.g., XRootD, FTP and Amazon S3, and scheduling frameworks, e.g., HTCondor, Slurm, and DRMAA. These integrations enable analysts to better leverage the distributed computing resources made available by experiments, significantly improving the efficiency of HEP analyses. Further collaboration between analysts and developers has seen Snakemake form the core of several standardised analysis frameworks aimed at improving analysis reproducibility such as REANA.

This contribution discusses the current use of workflow managers in HEP, including best practices for their application. Additionally, the anticipated requirements of analysts are considered within the context of ever-increasing data scales in HEP.

 "Inner Workings of Safepoints" ( 2024 )

Saturday at 17:50, 15 minutes, UB5.132, UB5.132, Free Java devroom Johannes Bechberger , slides , video

A Java thread in the JVM regularly checks whether it should do extra work besides the execution of the bytecode. This work is done during so-called safepoints. There are two types of safepoints: local and global. This allows the JVM to do activities like method deoptimizations or stop-the-world garbage collections, where the amount of concurrency should be limited. But how do they actually work?

This talk covers the implementation of global and local safepoints in the OpenJDK

 "Modern Build Systems for Containers" ( 2024 )

Saturday at 17:50, 30 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Containers devroom Adrian Mouat , slides , video

Are you still building images like it's 2015? This talk will get you up-to-speed with modern build technology and techniques and building images in seconds rather than minutes. This can make an enormous difference in CI/CD where a small improvement can reduce costs and speed up delivery.

We'll start by taking a look at what an OCI container image is, before delving into the different options for assembling them. After understanding why things are the way they are, we'll dive into some of the options for achieving vastly faster build times and smaller images. We'll also look at supply chain concerns such as SLSA, SBOMs and attestations.

We'll explore buildkit, buildpacks, Dagger, ko, Apko, Rockcraft and Nix amongst other technologies.

Come along and learn how to move beyond the plain Dockerfile!

 "Provide VoLTE/VoNR using OpenSIPS 3.5" ( 2024 )

Saturday at 17:50, 35 minutes, H.1302 (Depage), H.1302 (Depage), Real Time Communications (RTC) devroom Răzvan Crainea Liviu Chircu , video

This presentation shows how you can provide VoLTE and/or VoNR in IMS using OpenSIPS as a fully flavored CSCF.

 "Open Terms Archive" ( 2024 )

Saturday at 17:50, 5 minutes, AW1.120, AW1.120, Public Code and Digital Public Goods devroom Matti Schneider , slides , video

A 5 minutes presentation of Open Terms Archive (opentermsarchive.org), a DPG that publicly records every version of the terms of digital services to enable democratic oversight.

Big Tech services benefit from the opaqueness of their terms. We make them transparent. We establish partnerships to track the terms of many industries, in several languages and jurisdictions. Tools created by the community to shift the power balance from big tech towards regulators and end users —maybe the next ones will be started at FOSDEM? :)

 "Better Bee Be Better: spot more bugs than TS with less than JS" ( 2024 )

Saturday at 17:55, 25 minutes, H.1301 (Cornil), H.1301 (Cornil), JavaScript devroom Yvan Sraka , video

In this presentation, I will showcase a minimalistic toy programming language^1 that I’ve been working on time to time over the past year.

The Bee catchphrase is: a language that is easy to learn and helps you write bug-free programs. By this, I mean a language with syntax and semantics that have fewer corner cases and traps than JavaScript, and with user-defined dependent types that can spot errors TypeScript miss.

This might sound ambitious, but in this talk, I aim to demonstrate that writing a compiler from scratch isn't that hard, with the good tricks, and well-defined abstractions.

 "Fighting cancer with Rust" ( 2024 )

Saturday at 17:55, 20 minutes, H.1308 (Rolin), H.1308 (Rolin), Rust devroom Enola Knezevic , slides , video

Biospecimens and high-quality clinical data are essential for cancer research. At the same time, health data is highly sensitive with regards to data protection, hence, instead of centralizing all the data, federated information systems enable researchers to locate and work with data/biospecimens having certain characteristics, e.g. specimen type, diagnosis, and molecular markers, across hospitals, countries, or even continents. At the German Cancer Research Center (DKFZ), Germany’s largest biomedical research center, we develop, operate, and maintain such national infrastructures in hospitals and biobanks around Germany, Europe and the world, using 100% FLOSS. Recently, we have re-implemented and open-sourced key components in Rust with great benefits towards stability, safety and performance. In particular, we report on Beam, a distributed task broker for efficient communication across strict network environments, and Focus, a federated query dispatcher protecting patient privacy using differential privacy.

 "OpenFisca" ( 2024 )

Saturday at 17:55, 5 minutes, AW1.120, AW1.120, Public Code and Digital Public Goods devroom Matti Schneider , video

A 5 minutes introduction to OpenFisca (openfisca.org), the most widely adopted free and open-source engine to write rules as code. OpenFisca is a DPG that enables collaboratively modelling laws and regulations and making them computable over open APIs for developers, datascientists and researchers.

 "How the Kubernetes Community is Improving Kubernetes for HPC/AI/ML Workloads" ( 2024 )

Saturday at 18:00, 30 minutes, UA2.118 (Henriot), UA2.118 (Henriot), HPC, Big Data & Data Science devroom Kevin Hannon , slides , video

Kubernetes has become the platform of choice for container orchestration. High Performance Computing (HPC) workloads are underserved by the Kubernetes community. Various problems exist and a work group was established to identity and implement features in Kubernetes. In this talk, we will give a brief overview of the different components of Kubernetes and explain what work is being done to improve the experience of a HPC user on a Kubernetes cluster. The major focuses of this talk will be on the enhancements made to the Job API in Kubernetes. Various features for the Job API that will be expanded upon are Indexed Jobs, Suspended Jobs, Pod Failure Policy, and the Pod Replacement Policy. Even with this features in Job API, there is a need for an API that can represent a collection of Jobs. I will also present the JobSet project and give examples of how one can use this to run some common HPC patterns.

 "First Aid Kit for C/C++ Server Performance" ( 2024 )

Saturday at 18:00, 50 minutes, K.1.105 (La Fontaine), K.1.105 (La Fontaine), Main Track - K Building Vladislav Shpilevoy , video

Enhancing server performance typically entails achieving one or more of the following objectives: reduce latency, increase number of requests per second (RPS), and minimize CPU and memory usage. These goals can be pursued through architectural modifications, such as eliminating some network hops, distributing data across multiple servers, upgrading to more powerful hardware, and so forth. This talk is not about that.

I categorize the primary sources of code performance degradation into three groups:

  • Thread contention. For instance, too hot mutexes, overly strict order in lock-free operations, and false sharing.
  • Heap utilization. Loss is often caused by frequent allocation and deallocation of large objects, and by the absence of intrusive containers at hand.
  • Network IO. Socket reads and writes are expensive due to being system calls. Also they can block the thread for a long time, resulting in hacks like adding tens or hundreds more threads. Such measures intensify contention, as well as CPU and memory usage, while neglecting the underlying issue.

I present a series of concise and straightforward low-level recipes on how to gain performance via code optimizations. While often requiring just a handful of changes, the proposals might amplify the performance N-fold.

The suggestions target the mentioned bottlenecks caused by certain typical mistakes. Proposed optimizations might render architectural changes not necessary, or even allow to simplify the setup if existing servers start coping with the load effortlessly. As a side effect, the changes can make the code cleaner and reveal more bottlenecks to investigate.

 "Verrou : a valgrind tool dedicated to floating point error diagnosis" ( 2024 )

Saturday at 18:00, 20 minutes, K.4.401, K.4.401, Debuggers and analysis tools devroom LATHUILIERE Bruno , slides , video

Verrou ( https://github.com/edf-hpc/verrou ) is a valgrind tool dedicated to the floating-point error diagnosis. After a brief reminder of stochastic arithmetic (the key mathematical ingredient of verrou), the presentation will focus on the non-intrusive localization technics based on delta-debug algorithm.

 "Netfilter or eBPF? Use both with bpfilter!" ( 2024 )

Saturday at 18:00, 15 minutes, UB5.230, UB5.230, Network devroom Quentin Deslandes , video

For a significant period, bpfilter wasn't more than an empty usermode helper and an abandoned patch series. However, it has recently undergone active development as a userspace daemon, which can be found on GitHub at https://github.com/facebook/bpfilter. This daemon now offers userspace services a swift and user-friendly interface to generate packet-filtering BPF programs dynamically. This discussion aims to provide further insights into bpfilter, including its current capabilities, performance, and ongoing development efforts.

 "Open Neuroscience: practical suggestions for conducting open neuroscience research" ( 2024 )

Saturday at 18:00, 30 minutes, UB4.132, UB4.132, Open Research devroom Danielle Kurtin , slides , video

When I approach the intersection between neuroscience and Open Research, I am often met with a guiding principle summarised by the statement "as open as possible, as closed as necessary". Yet, a pithy phrase rarely delivers practical suggestions to champion Open Research in the day-to-day tasks of a computational neuroscientist. This talk goes beyond one-liners, and shares open science tools to facilitate neuroimaging research at every stage of the research process and its dissemination. The talk will conclude by noting areas in need of development, and early initiatives working to address them. Neuroscience research is relevant to everyone - we all have brains, and a better understanding of how they work enables a healthier future for us all. Thus, while the content of this talk focuses on neuroscience, the principles of open research that structure the content are of interest across disciplines and industries.

 "Developing in Public : Open Source Tech Education" ( 2024 )

Saturday at 18:00, 30 minutes, AW1.120, AW1.120, Public Code and Digital Public Goods devroom Germán Bencci , video

Code Your Future is a free programming school for refugees and other people excluded from education. All our classes are free, and our teachers are volunteers. Since 2016 we have supported over 250 people into great careers in tech. Our one-year part-time programme, the Software Development Course (SDC) and our 16 week immersive engineering programme (CYF+) are both Digital Public Goods.

https://app.digitalpublicgoods.net/a/10951 SDG4: Quality Education,SDG5: Gender Equity,SDG8: Decent Work and Economic Growth,SDG10: Reduced Inequalities

 "Go Without Wires Strikes Back" ( 2024 )

Saturday at 18:00, 30 minutes, UD2.218A, UD2.218A, Go devroom Ron Evans , video

"Go Without Wires Strikes Back" is the next exciting chapter in the "Go Wireless Saga".

In "Go Without Wires", we wrote code that runs directly on Bluetooth devices.

In "Go Further Without Wires", we connected to WiFi networks, and consequently to the Internet itself.

In "Go Even Further Without Wires", we connected to LoRaWAN networks, and the big wide world.

But if you thought we were done with the wireless Internet, you haven't seen anything yet.

This talk will include several actual demonstrations, including a flying object.

 "Flutter, Buildroot, and you!" ( 2024 )

Saturday at 18:00, 25 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Embedded, Mobile and Automotive devroom Adam Duskett , slides , video

Flutter is an open-source UI Software Development kit created by Google using the BSD-3-Clause license. It is used for developing multi-platform applications with a single codebase. While traditionally, Flutter has been used for Android and iOS development, it has been steadily gaining market share in the embedded Linux world. While the meta-flutter layer for Yocto has been usable since version 1.17.0 on March 31st, 2020, the Buildroot embedded Linux SDK has only recently added support, starting with Flutter version 3.13.9 on Buildroot version 2023.11.

This talk will cover three main points.

  • The first is a brief history of the numerous difficulties that had to be overcome when adding the Flutter packages and infrastructure to Buildroot. This topic covers several idiosyncrasies of obtaining the source code and cross-compiling Flutter, such as how the source code is downloaded, how it is not currently possible to create an automated reproducible tarball when downloading the source code, and generating a tarball because of a reliance on .git files, how every third-party dependency is bundled into the source tarball, and even a patched clang is included in the source tarball that must be used when compiling.

  • The second point covers the advantages and disadvantages of Flutter compared to Qt QML and LVGL.

  • The final point covers how to start and integrate an existing Flutter project into an existing Buildroot infrastructure using the flutter-gallery package as a reference. This includes using an external tree for development purposes, how to profile an application for performance, and problems/concerns to be aware of.

If you use or are interested in using Buildroot for your embedded Linux project and are interested in using Flutter for your next project, then this talk is for you!

 "Daily blogging embedded Gecko development" ( 2024 )

Saturday at 18:00, 25 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), FOSS on Mobile Devices devroom David Llewellyn-Jones , video

The Gecko rendering engine is used in many weird and wonderful places. For over a decade it has been the stock rendering engine for the default browser on Sailfish OS, a Linux-based mobile operating system for use on mobile phones and tablets.

The browser implementation was originally developed around the EmbedLite/xulrunner API, which is no longer officially supported. This provides interesting challenges for keeping the browser up-to-date with the latest Gecko changes.

For the last 92 days (maybe more depending on when you're reading this) I've been daily-blogging about my experiences upgrading the ESR 78 Gecko rendering engine used on Sailfish OS to ESR 91. Once ESR 91 is complete the plan is to move to ESR 102 and beyond. Eventually we hope to reach a stable rhythm alongside the official Gecko releases.

This has been a communal effort, with other members of the Sailfish OS community helping with the development, from submitting changes to tooling to creating AI-generated images to liven up the blog posts. Many users from the community are now involved all with the singular aim of getting our Gecko upgraded. The breadth of technologies involved (Rust, C++, JavaScript, Python) makes it a fascinating project to work with and write about.

We've learnt a lot about the Gecko codebase in the process as well as the challenges in deploying Gecko to unusual mobile and embedded platforms. Our hope is that once we reach the latest version, we'll be able to look into contributing more changes upstream to help maintain our Gecko deployment more easily in the future. We'd love to discuss the best way to achieve this.

In this talk I'll share my experiences of working with Gecko in an open way and in collaboration with the community, before opening it out to a discussion about how best to work with upstream.

Links: 1. Daily dev diary 2. EmbedLite source 3. Sailfish Browser source and issue tracking

 "Domain: A modular Rust DNS toolkit" ( 2024 )

Saturday at 18:00, 30 minutes, K.4.201, K.4.201, DNS devroom Martin Hoffmann , slides , video

The "domain" crate is a Rust library that aims to provide a wide range of building blocks that are necessary or useful when building specialised DNS applications.

In this talk we will look at the history, current state, and future of the crate and how it differs from other offerings in the Rust ecosystem. We will explore how the crate aims to leverage Rust’s type system to make it easier to model the complexities of the DNS in a straightforward way that helps make it easier to build correct and efficient applications.

 "A journey accross the environmental materiality of digital services" ( 2024 )

Saturday at 18:00, 25 minutes, H.2214, H.2214, Energy: Reimagining this Ecosystem through Open Source devroom Benoit PETIT David Ekchajzer , slides , video

This talk is about the state of the art of the environmental impacts assessment of digital services based on the open-source and open-data assets co-constructed over the last three years in open source communities, research networks and public and private organizations. Using the case of a typical tech service, we propose to take you on a journey to assess the environmental materiality of digital services, from the energy consumption of its infrastructures to the lifecycle impacts of digital equipment it uses.

 "Linux Binary Compatible Unikernels with Unikraft" ( 2024 )

Saturday at 18:00, 20 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Microkernel and Component-based OS devroom Simon Kuenzer , slides , video

Application-specific unikernels have the reputation for being complicated to create. Instead, being binary compatible with Linux promises that you can use a unikernel as a simple drop-in replacement, especially for running container workloads. But how can we avoid redeveloping Linux for compatibility reasons? What about fork, clone and co. while maintaining a single address space? Where can we still specialize and keep performance benefits?

In this talk we will dive into our efforts over the last year with Unikraft for binary compatibility with Linux. We'll discuss the challenges we have solved, the lessons we have learned, and the optimizations we have been able to make. In all of this, we have set the goal of not requiring to recompile any application code.

 "Learning from disaster response teams to save the internet" ( 2024 )

Saturday at 18:00, 25 minutes, Janson, Janson, Main Track - Janson Hannah Aubry , slides , video

Not to sound like an alarmist, but the free internet is in crisis. Corporations and bad actors treat people like products and mine their personal data and passions for profit. So we must convene as a community to save the internet — but how, when by virtuous design we as a community are distributed and decentralized? By learning from the distributed teams who have been responsible for reacting in crisis situations for centuries. In this talk, I’ll explore how we can apply social network analysis findings gleaned from studying disaster response teams in laboratory and field settings to empower leadership and strengthen community ties in pursuit of our collective goal: to ensure the internet is free, open, and safe for all, forever.

 "The Challenges of Creating a FOSS Fact-Checking Platform for the Brazilian Community" ( 2024 )

Saturday at 18:10, 25 minutes, H.2213, H.2213, Collaboration and Content Management devroom Mateus Batista Santos , slides , video

AletheiaFact.org is a movement for the democratization of fact-checking in Brazil, which aims to empower ordinary citizens to check and monitor information in order to prevent the harmful spread of fake news and create a digital community engaged in teaching, learning and sharing knowledge on the subject. We are also a technological platform that offers tools in workflow format to make fact-checking processes accessible and feasible for everyone.

In an era where misinformation can spread rapidly, establishing robust and reliable fact-checking platforms is crucial. This presentation delves into the unique journey of developing a Free and Open Source Software (FOSS) fact-checking platform specifically for the Brazilian community. We explore the intersection of technology, journalism, and civic engagement in the context of Brazil's diverse and dynamic information landscape.

Brazil, with its rich cultural and linguistic diversity, presents unique challenges in misinformation management. Our project aims not only to address these challenges but also to harness the power of the open-source community in creating a transparent and accountable fact-checking tool. We will discuss the technical hurdles in building a scalable and effective platform, including aspects like real-time data analysis, integration with various media formats, and ensuring user-friendly interfaces that cater to a broad audience.

Additionally, we focus on the vital role of community engagement in the development and adoption of the platform. The talk will cover strategies for fostering an active open-source community around the project, encouraging collaboration, and ensuring the platform evolves in response to the community's needs.

 "Embeddable code playgrounds for fun and profit" ( 2024 )

Saturday at 18:10, 25 minutes, K.4.601, K.4.601, Tool the docs devroom Peter Zaitsev Anton Zhiyanov , video

According to the popular classification, there are four document types: tutorials, how-to guides, technical references, and explanations. Often these documents include static code examples to help the reader understand the material.

We believe that making these code examples interactive benefits both the reader and the author. To prove our point, we'll show how to make any type of documentation interactive - from programming languages to databases, frameworks and tools, and even individual packages.

We will demonstrate our approach using the open source tooling (https://github.com/nalgeon/codapi).

 "Java… to unlock GPU acceleration for Polyglot Language Runtimes" ( 2024 )

Saturday at 18:10, 25 minutes, UB5.132, UB5.132, Free Java devroom Thanos Stratikopoulos , slides , video

Polyglot programming has been re-ignited by the Truffle Language Implementation Framework to enable the interoperability of Java with other programming languages, such as Python, JavaScript, Ruby, etc. A polyglot runtime system that can interoperate with multiple programming languages can increase not only maintainability but also the performance of the underlying runtime.

This talk aims to showcase the interoperability of Java with Python via polyglot programming. Additionally, it aims to go one step ahead, and explain how TornadoVM - an open-source software technology for boosting the performance of Java programs - can be used as leverage to deliver hardware acceleration in various other polyglot language runtimes. In particular, this talk will show how developers can build high-performance libraries (e.g., a k-means implementation, matrix vector multiplication, etc.) in Java with TornadoVM, and exploit them from other programming languages, such as Python, JavaScript, Ruby, etc.

 "Hot Topics: Organizers of the Legal & Policy DevRoom discuss the issues of the day" ( 2024 )

Saturday at 18:10, 50 minutes, UA2.220 (Guillissen), UA2.220 (Guillissen), Legal and Policy Issues devroom Karen Sandler Tom Marble Alexander Sander Bradley M. Kuhn Matthias Kirschner , video

The organizers of the Legal and Policy DevRoom discuss together the issues most relevant to software freedom today and look forward together about the future of policies in the field of software freedom. Topics we expect to cover include GPL enforcement, issues around so called generative AI and the future of copyleft. If something relevant hits the news around the time of FOSDEM, we'll cover it!

 "Packet Where aRe You - An eBPF based tool for diagnosing Linux networking" ( 2024 )

Saturday at 18:15, 20 minutes, UB5.230, UB5.230, Network devroom Jef Spaleta , slides , video

Software is eating the world, and networking is no exception. Gone are the days when there was a distinct boundary between the application servers and the networking connecting them together. In the cloud native era that we live in, much of traditional networking between applications ends up being defined entirely within the Linux kernel networking stack, sometimes enhanced by eBPF programs, to provide highly scalable and efficient connectivity between Linux containers. When network packets go missing, its no longer sufficient to capture packets with tcpdump, or trace the path through the Linux firewall rules. You may have to look deeper into the Linux kernel's networking subsystem and trace the packet flow through each of the kernel networking functions watching for packet filtering or modifications.

Cilium's Packet Where aRe You (PWRU) was purpose built to help discover problems deep in the Linux kernel's network subsystem. It is a great diagnostic tool to reach for when you've ruled out DNS or an obvious firewall rule blunder. In this talk I'll review how PWRU works, and walk through a few usage examples.

 "Deploy Your Next Ruby App with WebAssembly (Wasm): Smaller, Safer, Faster" ( 2024 )

Saturday at 18:15, 25 minutes, K.3.401, K.3.401, Ruby devroom Dan Phillips , video

In this talk, we'll focus on the unique advantages of using WebAssembly (Wasm) for deploying Ruby applications (yes, on the server). Moving beyond traditional deployment methods, Wasm offers a groundbreaking approach that promises smaller, faster, and more secure server applications. We'll explore how Ruby can run in server-side Wasm environments, emphasizing the performance, security, and architectural innovations it brings.

Overview:

Introduction to WebAssembly: Briefly introducing Wasm, particularly its relevance and benefits for server-side deployment.

Ruby and Wasm - How: Exploring how Ruby applications can be efficiently deployed on servers using Wasm, leading to more compact and faster server applications than traditional deployments with VMs or Containers.

Enhanced Performance and Security: Highlighting the improved startup times and robust security features that Wasm brings to Ruby server applications.

Server-Side Innovation with Wasm: Looking deeper into how Wasm is transforming server-side programming, offering new possibilities in server architecture and performance.

Practical Examples: Referencing projects like WebAssembly/Ruby, Artichoke/Ruby, and, my own oss project, wasm-vfs, that demonstrate the practical applications of Ruby and Wasm on the server side.

Target Audience:

Server-side developers, Ruby enthusiasts, and IT professionals interested in innovative deployment and infrastructure technologies.

This session will provide a focused look at how WebAssembly is reshaping the landscape of server-side application deployment, particularly for Ruby, by offering a more efficient, secure, and innovative approach compared to traditional methods.

 "MicroCeph: Get Ceph Up and Running in Minutes" ( 2024 )

Saturday at 18:15, 15 minutes, K.3.201, K.3.201, Software Defined Storage devroom Peter Sabaini , slides , video

Deploying Ceph can be a complex and time-consuming task that often requires specific expertise and troubleshooting skills. MicroCeph aims to make installing and operating Ceph an effortless and quick process. Get up and running with a single-node MicroCeph installation in minutes for your testing, development, learning, and proof of concept needs! Due to it's self-contained nature, MicroCeph is a great choice wherever you need repeatable installs and ease of operation, such as edge clouds, labs or remote sites -- situations where typically there won't be a team of trained experts at hand round the clock.

The talk will cover:

  • Why MicroCeph.

  • Design and internals: Architecture, API, building blocks

  • Use cases and demos

  • Install, bootstrap and clustering.

  • Scaling from 1 to N nodes.

  • Providing S3 storage for development.

  • Integration into Github workflows with a custom action.

Source can be found on github, latest docs are here

 "The journey of hacking in a new serde dataformat" ( 2024 )

Saturday at 18:20, 40 minutes, H.1308 (Rolin), H.1308 (Rolin), Rust devroom Paul Horn , slides , video

The latest version of neo4rs—a Rust driver for the Neo4j graph database developed under the "Neo4j Labs" incubator—changes its API for reading data to use serde. Serde is a library for serialization and deserialization of any user-defined type into and from a number of different data formats. Most material about serde focuses on the user-defined types, though for this talk, I want to present the—still ongoing—journey of building a new bolt dataformat for serde. Follow me down the rabbit hole and peek under the hood of serde to show how the various types and traits interact, what gotchas and caveats await and how to craft an API that is more than just 1:1 struct <--> data mapping.

 "Support Dynamically Linked Executables via Linux ld.so and Implement ENA Driver to Expand Application of OSv" ( 2024 )

Saturday at 18:20, 20 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Microkernel and Component-based OS devroom Waldemar Kozaczuk , slides , video

From the beginning, OSv has been designed to implement a subset of the Linux flavor of POSIX API. Initially, most Linux applications had to be re-compiled from source as shared libraries. Starting with the release 0.54.0, it has become possible to run unmodified Linux position-independent executables (so-called "PIEs") and position-dependent executables "as-is".

In my presentation, I will talk about how OSv has been enhanced to support running statically linked executables. Not only that, the same improvements make it possible to execute dynamically linked executables via Linux dynamic linker. I will also briefly describe a newly added strace-like capability aimed to help analyze system calls on the fly.

In addition, I will explain how we have implemented the ENA networking driver and thus made it possible to run OSv on AWS Nitro EC2 instances.

Finally, I will briefly cover the upcoming build configuration tool, based on Xconfig, aimed to let the user select OSv kernel components to be included or excluded and various parameters to be configured.

 "From Containers to Unikernels: Navigating Integration Challenges in Cloud-Native Environments" ( 2024 )

Saturday at 18:25, 30 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Containers devroom Georgios Ntoutsos Ioannis Plakas , slides , video

Containers have undoubtedly taken the lead in the landscape of cloud-native applications, but their security limitations have prompted a revisit to conventional VMs. This renewed interest revolves around implementing additional security measures, particularly by confining containers within VM or microVM sandboxes. While this approach offers enhanced security, it introduces complexities in effectively optimizing resources on physical nodes.

On the other hand, unikernels emerge as a compelling alternative —- a streamlined application kernel that preserves the benefits of VM isolation. However, the challenge lies in seamlessly integrating unikernels into the existing container ecosystem.

In this talk we present urunc, a CRI-compatible container runtime that spawns unikernels, packaged in OCI images. We dig in the internals of urunc, providing insights into support for various hypervisors, network and storage handling, as well as the integration with high-level orchestration frameworks (such as k8s). At the same time, we elaborate on the network setup implications when unikernels and generic containers are mixed in the context of k8s.

 "Who's testing the tests? Mutation testing with StrykerJS" ( 2024 )

Saturday at 18:30, 30 minutes, H.1301 (Cornil), H.1301 (Cornil), JavaScript devroom Nico Jansen , slides , video

Have you ever wondered: "Who's testing the tests"? Of course, tests are only valuable if they catch bugs, but how would one validate that? Well, let me tell you about mutation testing!

Mutation testing is the act of testing your tests by verifying that they catch bugs. Of course, you can do this manually by inserting bugs and running the tests, but a mutation testing framework can do this for you!

Join me and learn the basics of mutation testing and how to use StrykerJS, the mutation testing framework for JavaScript and friends. At the end of this talk, you'll be the one who is testing your tests, and it won't even cost you much time!

 "Open Source Railway Designer (OSRD): why SNCF Réseau start an open source project ?" ( 2024 )

Saturday at 18:30, 30 minutes, AW1.120, AW1.120, Public Code and Digital Public Goods devroom Loic HAMELIN , video

Thanks to EU and French state founding, SNCF Réseau, the French Railway Infrastructure Manager start to develop an open source project (www.osrd.fr) with 40 peoples. But SNCF Réseau's challenge is to keep pace with the decarbonization of transport, and thus ensure more traffic, by optimizing infrastructure investments. If we want to be competitive with air and road, we need to have the most efficient railway system. These investments require long studies, simulation tool to design the right infrastructure delivering the expected services. This challenge is shared by all the infrastructure managers and the tools different and closed. We decided to propose a commun tool to improve the quality of the studies and the transparency of the usage of public money both for the software and the infrastructure. Collaboration with other infrastructure manager around OSRD is already planned to add value in the software but also in the business. Here is our Github: https://github.com/osrd-project

 "Google Home, But Better: Building our own Smart Home Display with Flutter" ( 2024 )

Saturday at 18:30, 25 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Embedded, Mobile and Automotive devroom Moritz Theis , slides , video

We may not have realized it yet, but Flutter could become the next big player on embedded devices.

This talk aims to show the potential of Flutter on embedded devices, to give a practical guide on how to start developing Flutter with a Raspberry Pi on embedded Linux, and to showcase a project where Flutter connects to the Internet of Things.

What's currently supported and what custom Embedder can we use to achieve this? How do we communicate between Flutter and the embedded hardware? How can we integrate and use Flutter in the Maker-Community to open up to the world of IoT?

All of these points will be answered in the talk which is accompanied by a working-code example that can be checked out afterwards.

 "The first 13 years of blockchain name systems" ( 2024 )

Saturday at 18:30, 30 minutes, K.4.201, K.4.201, DNS devroom Eyal Ron (Neiman) , slides , video

In the spring of 2011, Namecoin, a blockchain-based DNS system, was launched. It was the first blockchain created after Bitcoin, and the only one supported by Satoshi before his disappearance.

Namecoin uses a blockchain both to hold the names registry data and to automate the registration process itself. In the 13 years that passed since its inception, the field had additional strides of innovation, courtesy of projects such as Handshake or ENS. Recently, blockchain name systems have surged in popularity, with each blockchain having its own name system, some with a thriving developer's base and users communities.

In this talk, we survey the evolution of blockchain name systems from Namecoin to the present day. The talk will focus on projects contributing technical or conceptual innovations to this field.

 "Magic and Software" ( 2024 )

Saturday at 18:30, 25 minutes, Janson, Janson, Main Track - Janson Steven Goodwin , video

Software development is one large puzzle – how do I make my computer do this task, using that software, or this language. Luckily, we can search for the answer to our problems on sites like Google and StackOverflow. Magicians can't. The secrets to magic aren't readily available in any format, making study and search very difficult.

In this talk-come-magic show, the speaker, who is also a magician, discusses some of the history of secrets and magic, and covers the problems of creating searchable taxonomies for magic, the cases of IP law which have surprising parallels to software, and even performs a few routines to keep you on your toes!

 "Kubernetes and HPC: Bare-metal bros" ( 2024 )

Saturday at 18:30, 30 minutes, UA2.118 (Henriot), UA2.118 (Henriot), HPC, Big Data & Data Science devroom Vanessa Sochat , slides , video

The high performance computing (HPC) community has an often tumultuous relationship with cloud, with advocates from both sides facing off in a West Side Story style fight. The costs, historical lack of focus on performance, and lack of transparency about supply of cloud resources is problematic. The lack of consistent, automated orchestration on HPC poses challenges for running complex emerging workflows. Cloud is growing rapidly and is projected to be the largest sector of computing by revenue 2025. Cloud's market-favored position makes it a primary source and beneficiary of innovations, allowing it to address limitations of HPC. HPC needs a strategy for integrating cloud technologies and collaborating with the cloud community. If our HPC community cannot successfully integrate cloud technologies and techniques we (and our science) will be left behind.

To establish this foundation the community must adopt a new strategy - converged computing, or creating environments and technologies that combine the best of both worlds. In this talk I will discuss our innovative work toward this goal – implementing HPC technologies inside of Kubernetes, the de-facto standard workload orchestration framework, and Kubernetes inside of HPC. I will provide a brief history of our early work, including improving the default Kubernetes scheduler by way of testing more sophisticated graph-based scheduling (a project called Fluence), and implementing the entirety of an HPC workload manager inside of Kubernetes (the Flux Operator). Finally, I present the ultimate turducken - allowing for running machine learning and HPC applications (including the Flux Operator itself) inside of Kubernetes, inside of Flux. With this approach, we imagine a collaborative future where HPC users can deploy workloads seamlessly across environments, and encounter equality of automation and performance.

LLNL-PRES-859106

 "Power profiling my entire house with the Firefox Profiler" ( 2024 )

Saturday at 18:30, 25 minutes, H.2214, H.2214, Energy: Reimagining this Ecosystem through Open Source devroom Florian Quèze , slides , video

After showing last year how built-in power profiling features in Firefox can show very precisely how much power is used by code running in the browser, I will now show how I repurposed this tool to understand how power is used in my house.

I will explain how I installed various power meters in my house, how the data is collected, stored locally, then visualized. I will share how much 'just worked' and how much I had to adapt in the Firefox Profiler to make the visualization suit my needs, and finally show examples of interesting profiles revealing unexpected power use patterns.

 "PineTime: A Programmer's Toy and Beyond" ( 2024 )

Saturday at 18:30, 25 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), FOSS on Mobile Devices devroom Jozef Mlich Jean-François Milants , slides , video

Discover the secrets of PineTime ⌚ and InfiniTime, the smartwatch and its open-source operating system. Learn how to begin hacking, enhance its capabilities with Ubuntu Touch, and understand the coexistence of various mobile ecosystems. Explore the synergy between hardware hacking and 📱 mobile development.

 "MiniMill: a miniature Field Mill Electrometer for airborne platforms" ( 2024 )

Saturday at 18:30, 30 minutes, UB4.132, UB4.132, Open Research devroom Lilly Daskalopoulou , slides , video

A robust, miniaturized and open-source version of an electrostatic fieldmeter sensor, the MiniMill, is presented. The sensor is designed for a fast-response detection of the atmospheric electric field strength, an intrinsic parameter of the Global Electric Circuit (GEC) that electrically links the Earth’s surface to the upper levels of the atmosphere. Such a field varies greatly with the various weather conditions due to the re-distribution of charged or uncharged aerosols and terrestrial radioactive particles. Field mill electrometers have been consecutively used for ground-based measurements of such fields under diverse conditions, but sparse iterations of the sensor exist that can be tethered to airborne measurement platforms. The lightweight, disposable and easily reproducible design of the MiniMill allows the use on agile platforms, such as weather balloons, UAVs or even campaign aircrafts, and achieves a measurement accuracy of a few V m-1 on DC fields. MiniMill performance has been tested in vertical profiling measurements during scientific experiments in 2019 and 2022, where sensor “constellations” were launched on-board meteorological radiosondes under both fair weather conditions and large tropospheric dust events originating from the Sahara Desert. The sensor’s response exhibits a clear influence to the vertical large scale electric field when charged dust particles are present in the atmospheric circulation, which is a significant research achievement. Also, we would like to share the inherent challenges of such a sensor (or, you know, lots of sensors) implemented entirely within the academic and research community. Let's brainstorm ways to make these sensors even more awesome together!

 "Penpot 2.0 is here!" ( 2024 )

Saturday at 18:30, 25 minutes, AW1.126, AW1.126, Open Source Design devroom Pablo Ruiz-Múzquiz , video

Penpot, the Open Source Design Tool for Design and Code Collaboration, is about to release 2.0, a massive leap forward. We've got a new UI, a revamped design components system, Grid CSS Layout on top of Flex Layout and many performance improvements. As it has now become a tradition for the Penpot team, major announcements happen first at FOSDEM. Whether you are a designer, a developer or a product manager, come to enjoy a hands-on presentation on what Penpot 2.0 is all about!

 "Go Lightning Talks" ( 2024 )

Saturday at 18:30, 30 minutes, UD2.218A, UD2.218A, Go devroom Maartje Eyskens , video

Come speak! As every edition the last half hour of the Go Devroom will be open for 5 minute lightning talks. The CfP for this will open shortly before the event and close 90 minutes before the session starts.

 "Container Storage Interface Addons: Extending CSI specification to provide advanced storage operations" ( 2024 )

Saturday at 18:35, 25 minutes, K.3.201, K.3.201, Software Defined Storage devroom Rakshith R , slides , video

The aim of this session is to discuss about Container Storage Interface , its specification and details on additional advanced operations provided by CSI-Addons. CSI specification defines an interface along with the minimum operational and packaging recommendations for a storage provider (SP) to implement a CSI compatible plugin. The CSI-Addons project hosts extensions to the CSI specification to provide advanced storage operations. By adding new procedures to the CSI-Addons Specification, additional operations for storage systems can be provided. The reference implementation is done on Kubernetes, and maintained in the Kubernetes CSI-Addons repository. Some of the advanced storage operations that are currently supported are reclaim space, network fence and volume replication.

 "Apache Maven 4.0.0 - Current State" ( 2024 )

Saturday at 18:40, 20 minutes, UB5.132, UB5.132, Free Java devroom Karl Heinz Marbaise , video

I would like to present the current state of the upcoming Apache Maven Version 4.0.0 development. The intention is to summarize the most important changes and get an overview for the audience. Also the different improvements for the future Apache Maven 4.0.0 release. Things like Consumer/Build pom. Improvements for the reactor. Version handling and improvement for better CI/CD support. Furthermore the improvements related to bom packaging and enhancements for support of different pom formats etc.

 "Streamlining application development for Genode with Goa" ( 2024 )

Saturday at 18:40, 20 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Microkernel and Component-based OS devroom Johannes Schlatow , slides , video

The Genode OS Framework is certainly not a newcomer and has seen continuous improvements in its quarterly releases for more than 15 years. Sculpt, the Genode-based desktop OS, has been around for more than five years and has proven itself to be fit for day-to-day use. Moreover, Sculpt OS has more recently been adapted to the PinePhone. With this solid foundation, application development for Genode comes brightly into the picture. For this purpose, the Goa tool has been initiated by Norman Feske in 2019 as a side project. By moving Goa under the umbrella of Genode's core developer team, the tool has seen various improvements over the past year.

In this talk, I will present the concepts behind Goa and walk you through the streamlined application development process: from importing 3rd-party source code, over test-running on the host system, to packaging and publishing the result for Sculpt OS.

 "Closing Energy: Reimagining this Ecosystem through Open Source devroom" ( 2024 )

Saturday at 18:55, 5 minutes, H.2214, H.2214, Energy: Reimagining this Ecosystem through Open Source devroom , video

Closing a day of great talks.

 "MIT App Inventor" ( 2024 )

Sunday at 09:00, 60 minutes, H.1301 (Cornil), H.1301 (Cornil), FOSS Educational Programming Languages devroom Vishwas Adiga Evan Patton Diego Barreiro Perez , video

Anyone can create iPhone and Android apps with global impact. MIT App Inventor is an intuitive, visual programming environment that allows everyone – even children – to build fully functional apps for Android phones, iPhones, and Android/iOS tablets. Those new to MIT App Inventor can have a simple first app up and running in less than 30 minutes. And what's more, our blocks-based tool facilitates the creation of complex, high-impact apps in significantly less time than traditional programming environments. The MIT App Inventor project seeks to democratize software development by empowering all people, especially young people, to move from technology consumption to technology creation.

 "Welcome to Testing and Continuous Delivery devroom" ( 2024 )

Sunday at 09:00, 5 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Testing and Continuous delivery devroom Alex Todorov Fabrizio Manfredi Cyril Hrubiš Anders Roxell Jan Willies Olivier Vernin Carlos Panato , video

Welcome notice and some basic rulese.

 "20 Years of Open Source building XWiki and CryptPad" ( 2024 )

Sunday at 09:00, 50 minutes, K.1.105 (La Fontaine), K.1.105 (La Fontaine), Main Track - K Building Ludovic Dubost , slides , video

This talk is about our Journey as an Open Source creator, project maintainer and company, from being alone creating the Open Source software XWiki and the associated company, to the first users and contributors, first hires, first clients, growing the company over the years to more than 50 people, fully bootstrapped. It is about the struggles to compete with proprietary software and then having customers asking to transition from their provider forcing them to a 5x more expensive offer. It is about creating a new product CryptPad and running 2 open source communities and our journey providing a privacy protecting software. It is about licenses and the temptation to close some code to be able to be more successful and finally finding other ways. It is about the joys of building Open Source together as a team, how you meet other FOSS people, at FOSDEM, in local communities or in business conferences, and collaborate and share your passion and beliefs. It is about Digital Sovereignty. It's also about what we could have done differently if we knew. It is about how you can live from Open Source, while respecting your contributors, your users , your customers and your employees. I hope this talk, sharing our experience will help other FOSS lovers be able also to live from Open Source and push them to move to full time Open Source. As for many companies, our story is somewhat a roller coaster with its set of successes and failures. Open Source success takes time, but good things can come for those who are resilient enough.

 "Where Did All the Fun Go? And How to Bring it Back with FOSS!" ( 2024 )

Sunday at 09:00, 50 minutes, Janson, Janson, Main Track - Janson Bogomil Shopov - Бого , video

After three days at a metal festival, I realized something sad. In the software world, we don’t have fun at work anymore. I am not talking about the HR-inspired fun; I am talking about the joy that comes from the inside. I want to change that and challenge you to bring back our fun using FOSS.

My career in IT started as a servant to programmers, fixing a line or two in the code, and now I am a director in a vast international privacy company. If I look back, it was different. Oh gosh, we had so much fun in the past.

Do you remember the chair rowing? Do you remember us singing IT songs and directing movies about Java while writing funny RFCs?

Recently, most of the world decided that IT is an elite profession that needs to produce only value no matter what.

This is a great tragedy, and we should rectify it. Why do we have feelings, emotions, and personalities if we no longer have fun?

In this talk, I will take you on a retrospective journey through the years to see what went wrong and how we fix it together. It's more like an art provocation than talk, so please keep your mind open to learn something new.

I will cover the epoch of the world before Agile to the era of the Artificial Immigrant (AI), who is here to take your jobs away.

Last, I will cover how to use your free and open-source skills and attitude to bring more fun to your life.

 "UKIs, TPMs, immutable initrds and full disk encryption – What Distributions Should Keep in Mind when Hopping onto the System Integrity Train" ( 2024 )

Sunday at 09:00, 55 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Distributions devroom Lennart Poettering , video

Traditional Linux support for an integrity protected boot process has been relatively weak. Beyond the minimum effort to provide basic SecureBoot compatibility most distributions haven't (yet) delivered tangible benefits to users. In this talk I'd like to give an overview on how distributions can reasonably jump on the system integrity train, that makes the boot process and OS somewhat proof to offline attacks, and allows them to catch up with similar functionality that other commercial OSes have already been providing for a while.

This talk will be from a systemd perspective, and focus on the various OS integrity components we now provide, and how to put them together, with a focus on keeping things nicely generic, democatric, and modular without compromising security.

Specifically, we'll touch immutable initrds, UKIs, full disk encryption policies, TPM, and Measured Boot vs. Secure Boot, and more,

→ systemd Homepage

 "How to Use Private Data in Generative AI: End-to-End Solution for Retrieval Augmented Generation with CrateDB and LangChain" ( 2024 )

Sunday at 09:00, 25 minutes, UD2.218A, UD2.218A, Python Devroom devroom Marija Selakovic Christian Kurze , slides , video

This talk focuses on the synergistic combination of CrateDB (https://github.com/crate/crate) and LangChain (https://github.com/langchain-ai/langchain): it helps to get started with using private data as context for large language models through LangChain, incorporating the concept of Retrieval Augmented Generation (RAG). CrateDB as an open-source distributed SQL database helps to streamline data management by supporting a wide variety of data models ranging from documents over time series and full-text search towards recently added support for vectors and similarity search. Thus, it helps to avoid technology sprawl in modern data architectures that need to cope with structured, semi-structured, and unstructured data while not sacrificing the convenience of having a standard SQL interface. LangChain, an open-source framework written in Python, is specifically designed to facilitate the development of applications using large language models (LLMs). LangChain enables seamless integration of language models with various data sources and services, acting as a bridge between AI language capabilities and private data.

During the talk we will demonstrate CrateDB's proficiency in storing and handling vector data, and how this can be utilized by large language models (LLMs) through LangChain, further enhanced by RAG for richer contextual insights. Through live coding demonstration, we will illustrate firsthand the process of extracting data from CrateDB and integrating it into LLMs using LangChain, thereby enriching language models with new data. This integration finds practical applications in semantic search, content recommendation, and data analytics, just to name a few.

The talk will appeal to anyone keen on leveraging Large Language Models, enhanced by Retrieval Augmented Generation, to unlock new insights from their private data. Participants will also learn how to leverage the CrateDB database to efficiently store vector data and utilize vector search in advanced analytics applications.

 "How do you write an emulator anyway ?" ( 2024 )

Sunday at 09:00, 45 minutes, UB5.230, UB5.230, Emulator devroom Anisse Astier , slides , video

Emulators for computers and game consoles feel like magic. Pure software that behaves like hardware ? Understanding how they work goes a long way into lifting the veil of mystery. Let's explore what is needed to write an emulator, by looking at how one would write one for an 8bit console.

 "Welcome to the RISC-V devroom" ( 2024 )

Sunday at 09:00, 15 minutes, AW1.126, AW1.126, RISC-V devroom Björn Töpel , slides

Welcome to the RISC-V devroom

 "Yet another event sourcing library" ( 2024 )

Sunday at 09:00, 20 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), Declarative and Minimalistic Computing devroom Robert Pofuk , slides , video

Combination of CQRS and Event Sourcing offers a seamless synergy. Beauty of it motivated us to craft a library that embodies simplicity, remains entirely within our control, and empowers the development of robust enterprise systems. The primary objectives were:

  • Database Abstraction: Constructing a database access layer that strikes the right balance between abstraction for seamless application testing and granting developers the autonomy to structure and access data as needed.

  • Business Logic Purity: Striving for purity in business logic to ensure most functions are inherently testable, promoting a more robust and reliable system.

  • Traceability of Data Changes: Elevating the tracking of data changes to a pivotal role within our system, treating it as a fundamental aspect of our architecture.

  • AWS Lambda Compatibility: Ensuring the seamless operation of our solution within the AWS Lambda environment for scalability and efficient execution.

 "Welcome to the Modern Email DevRoom 💌" ( 2024 )

Sunday at 09:00, 5 minutes, H.2213, H.2213, Modern Email devroom , video

Opening of the Modern Email devroom. With introductions, announcements and a few words about the state of email.

 "The importance of Web Performance to Information Equity" ( 2024 )

Sunday at 09:00, 25 minutes, H.2214, H.2214, Web Performance devroom Bas Schouten , video

Nobody likes a website that performs poorly. When thinking about web performance it is tempting to think in terms of improving conversion rates and helping your bottom line. Web Performance, however, also plays a vital role in ensuring equal access to information and services for those with slower devices, and more expensive data contracts. We will take some time to discuss how Web Developers can help to build a global web that is equally accessible to all.

 "An Introduction to Open Source AI" ( 2024 )

Sunday at 09:00, 30 minutes, UB2.252A (Lameere), UB2.252A (Lameere), AI and Machine Learning devroom William Jones , slides , video

This talk provide a gentle introduction to AI and Machine Learning, and the open source ecosystem around surrounding it. We start from the beginning, with no pre-existing knowledge is assumed. Topics include:

  • What are AI and Machine Learning?
  • What types of problems can I solve?
  • What free tools and datasets exist?

 "Welcome to the Devroom and Announcements" ( 2024 )

Sunday at 09:00, 15 minutes, UB2.147, UB2.147, Software-Defined Radio and Amateur Radio devroom Marcus Müller , video

This talk serves a couple of small missions, which shouldn't take much room individually

  • starting off the day, introducing the team behind the devroom,
  • announcing related events in the 12 months to come
  • setting rules of play

and hoping everyone has a grand time.

 "Welcome to the Open Hardware devroom" ( 2024 )

Sunday at 09:00, 10 minutes, H.1308 (Rolin), H.1308 (Rolin), Open Hardware and CAD/CAM devroom Seth Hillbrand , video

Introduction to the Open Hardware devroom

Provides overview of the day's talks, devroom goals and general guidelines

 "Units of composition: recipes, overlays, and packages" ( 2024 )

Sunday at 09:00, 25 minutes, H.1302 (Depage), H.1302 (Depage), Nix and NixOS devroom Tom Bereknyei , slides , video

This talk introduces a way to talk about and structure large and small projects. There are common patterns in use in Nixpkgs that are there to provide a great deal of power and flexibility, but they are often challenging for beginners. This talk examines an approach that can smoothly introduce the relevant concepts and provide an easier learning curve.

Recipes are those things we find throughout Nixpkgs and are normally targets of callPackage. We need a name for these, in order to talk about them, manage, manipulate, inherit, and organize them. By adding this to our vocabulary and to the standard output of the flake schema, we gain many benefits. This talk will

  • introduce and describe callPackage
  • present overlays and the potential pitfalls
  • describe package sets within Nixpkgs (perlPackages, pythonPackages, etc)
  • propose a recommended flake structure
  • present a solution to the “system” problem
  • present a solution to lockfile bloat.

 "How to Win 1st Place in the Kernel Patch Statistics - Tools and Workflows" ( 2024 )

Sunday at 09:00, 30 minutes, UB5.132, UB5.132, Kernel devroom Uwe Kleine-König , slides , video

Every three months, the kernel community produces a new kernel version by integrating more than 400 pull requests coordinated between maintainers. For "simple" changes to a single subsystem, ad-hoc submissions work fine. But when changes affect a lot of subsystems, the submitter needs to take more of the matter in their own hands.

Uwe has completed a few cleanup quests in the kernel involving hundreds of patches and there is no shortage of further ideas. In this talk he presents the tools and workflows for mainline contributions he uses to keep on top of things. This covers everything from patch creation, selecting the right recipients, sending out series, to tracking patch application by the respective subsystem maintainers. Tools mentioned include: git (e.g. notes, filter-branch, rebase), coccinelle, notmuch, b4 and scripting around these.

 "Welcome to the Identity and Access Management devroom!" ( 2024 )

Sunday at 09:00, 15 minutes, K.3.401, K.3.401, Identity and Access Management devroom Alexander Bokovoy Iker Pedrosa , slides , video

Welcome to the devroom, rules and initial setup

 "Welcome to the Translations DevRoom" ( 2024 )

Sunday at 09:00, 5 minutes, K.3.201, K.3.201, Translations devroom Paulo Henrique de Lima Santana , video

Introduction and welcome to the devroom. Let's have a great morning talking about translating FOSS projects!

 "MicroBlocks Workshop" ( 2024 )

Sunday at 09:00, 60 minutes, J.1.106, J.1.106, FOSDEM junior Kathy Giori

MicroBlocks is a blocks programming language for physical computing inspired by Scratch. It runs on microcontrollers such as the micro:bit, Calliope mini, AdaFruit Circuit Playground Express, and many others.

Anyone aged 7 to 17 can visit the workshop and learn how to program microcontrollers with MicroBlocks.

Registration will be required for this session. Use the following link to register.

 "Welcome to the SBOM devroom" ( 2024 )

Sunday at 09:00, 5 minutes, K.4.401, K.4.401, Software Bill of Materials devroom Alexios Zavras (zvr) Adolfo García Veytia Kate Stewart , video

Introduction to the topics and the structure of the devroom.

 "Welcome to the GCC dev room" ( 2024 )

Sunday at 09:00, 5 minutes, K.4.201, K.4.201, GCC devroom David Malcolm Thomas Schwinge , video

Welcome to the GCC dev room from the organizers

 "Beyond Joins and Indexes" ( 2024 )

Sunday at 09:00, 50 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), PostgreSQL devroom Bruce Momjian , video

My presentation Explaining the Postgres Query Optimizer covers the details of query optimization, optimizer statistics, joins, and indexes. This talk covers 42 other operations the optimizer can choose to handle complex queries, large data sets, and to enhance performance. These include merge append, gather, memoize, and hash aggregate. It explains their purpose and shows queries that can generate these operations.

 "Welcome to the Monitoring & Observability devroom" ( 2024 )

Sunday at 09:00, 5 minutes, UA2.220 (Guillissen), UA2.220 (Guillissen), Monitoring & Observability devroom Richard "RichiH" Hartmann , slides , video

Welcome!

 "Opening and Welcome — Introducing the Open Website Alliance and Today's Program" ( 2024 )

Sunday at 09:00, 15 minutes, K.4.601, K.4.601, Designing Futures of FOSS Content Management with the Open Website Alliance devroom , video

A brief welcoming session where we introduce the contributors, participating FOSS CMSs, the Open Website Alliance and today's program.

 "Welcome to the EU Policy Workshop Devroom" ( 2024 )

Sunday at 09:00, 10 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Simon Phipps Enzo Ribagnac Maarten Aertsen Axel Thévenet Deb Bryant Alexander Sander Gijs Hillenius , video

Meet the Devroom managers and find out about the schedule today, which comprises four workshops of two hours each featuring a meeting between European co-legislators and open source community members.

 "[Protocols] Security of STARTTLS in the E-Mail Context" ( 2024 )

Sunday at 09:05, 20 minutes, H.2213, H.2213, Modern Email devroom Fabian Ising , slides , video

TLS is one of today's most widely used and best-analyzed encryption technologies. However, for historical reasons, TLS for email protocols is often not used directly but negotiated via STARTTLS. This additional negotiation added complexity and was prone to security vulnerabilities such as naive STARTTLS stripping or command injection attacks in the past.

We performed the first structured analysis of STARTTLS in SMTP, POP3, and IMAP and introduced a semi-automatic testing toolkit (EAST) to analyze email clients. We used EAST to analyze 28 email clients and 23 email servers, resulting in over 40 STARTTLS related issues. Only 3 out of 28 clients and 7 out of 23 servers did not show any STARTTLS-specific security issues. We conclude that STARTTLS is error-prone to implement, under-specified in the standards, and should be avoided.

 "GCC for new contributors" ( 2024 )

Sunday at 09:05, 30 minutes, K.4.201, K.4.201, GCC devroom David Malcolm , slides , video

This talk will be a fast-paced overview of GCC's internals, aimed at plugin authors and at people wanting to get involved in GCC.

I'll give a tour of the various parts of GCC, showing what each stage of the compiler does to your source code, places that warnings can be added, and show ways of debugging the compiler.

 "Localization of Open Source Tools into Swahili" ( 2024 )

Sunday at 09:05, 20 minutes, K.3.201, K.3.201, Translations devroom Cecilia Maundu , video

The localization of open-source tools is pivotal for expanding their utility, particularly in countries from the global majority. It ensures that individuals worldwide, irrespective of their language or cultural background, can effectively utilize these tools. By localizing them, we not only widen the reach of these tools but also create an opportunity to engage more volunteers who become integral members of the open-source community.

 "Streamlining Developer Experience: The Power of CI/CD Standardization and Interoperability" ( 2024 )

Sunday at 09:05, 30 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Testing and Continuous delivery devroom Jeremy Meiss , video

In this talk, we delve into the core aspects of CI/CD which can significantly impact Developer Experience: Pipeline Standardization and Interoperability. We'll explore the pivotal role of standardized practices in CI/CD pipelines, fostering consistency and reducing friction in the development lifecycle. We will also look at how well-defined pipeline architecture and standardized configurations, can empower developers with a smoother and more efficient workflow.

We will also discuss the critical importance of interoperability in CI/CD systems. Enabling seamless collaboration across the diverse toolsets and environments that exist today is a core advantage of interoperability. This enhancing flexibility, and allows teams to leverage their preferred tools without compromising the overall development pipeline.

The attendees will walk away with a roadmap to creating a collaborative and efficient development culture which prioritizes Developer Experience through innovative CI/CD practices. We will use a few OSS projects as examples: Argo, Flux, Spinnaker, and Backstage.

 "SPDX 3.0 - a migration journey" ( 2024 )

Sunday at 09:05, 25 minutes, K.4.401, K.4.401, Software Bill of Materials devroom Gary O'Neall , slides , video

SPDX 3.0 supports several new use cases, such as security vulnerability analysis, AI and Data compliance as well as increased flexibility in how the SPDX data is shared. Although many of the changes are compatible with previous versions of SPDX, there are also some "breaking changes" that require migration. In this talk, we will be discussing our real-world experience migrating the SPDX Java tools to support the 3.0 specification. Although the talk is centered on Java, the information will be useful for any software development project interested in supporting SPDX 3.0.

 "CRA & PLD: [begin workshop] How will the open-source community adapt to the new EU Cyber Resilience Act and Product Liability Directive" ( 2024 )

Sunday at 09:10, 5 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Maarten Aertsen , video

This is the start of a two hour workshop exploring reactions to the PLD and CRA.

 "Cracking the Code to Executive Support: Open Source Edition" ( 2024 )

Sunday at 09:10, 30 minutes, UA2.114 (Baudoux), UA2.114 (Baudoux), Community devroom Addie Girouard , video

Obtaining funding for the sustained development of open source software is a significant challenge. As the majority of development happens within organizations, it falls to the leadership of an organization to prioritize open source software. This presentation proposes a strategic approach to address this issue by strategically selecting executives, aligning with the organization, and forming a coalition.

 "Multi-disciplinary geometry (libraries) in BIM and the IfcOpenShell software library" ( 2024 )

Sunday at 09:10, 30 minutes, H.1308 (Rolin), H.1308 (Rolin), Open Hardware and CAD/CAM devroom Thomas Krijnen , slides , video

The construction sector encompasses diverse disciplines, each operating on a unique perspective on the geometrical nature of built structures. This diversity often hampers effective information exchange within Building Information Modeling (BIM).

At the same time, it's worth noting that open-source CAD/CAM has limited options when it comes to available geometry libraries. In the latest version of IfcOpenShell, a combination of OpenCASCADE and CGAL is used to realize the best of both worlds in terms of performance, expressiveness and robustness. The presenter also uses voxelization and trees of halfspaces to cater to specific requirements.

This presentation describes challenges by various disciplines in the construction sector and explores solutions by leveraging a diverse ecosystem of open-source geometry libraries and discusses the benefits and challenges of a hybrid usage of geometry libraries.

 "Auto Instrumentation for your NodeJS Application on Kubernetes." ( 2024 )

Sunday at 09:10, 25 minutes, UA2.220 (Guillissen), UA2.220 (Guillissen), Monitoring & Observability devroom Yuri Oliveira Sa , slides

Node.js applications are fast becoming more frequent and complex through Kubernetes deployments. With that being said, developers are more concerned about generating useful logs, gathering metrics, and thus maintaining the application with precise data about the performance baseline.

Therefore, to help developers enhance this instrumenting approach, the OpenTelemetry project leverages analytical capabilities by expanding the possibilities to collect and export telemetry data from Node.js applications.

In this talk, I will share an easy way how the audience can achieve the auto-instrumenting of a Node.js application using the OpenTelemetry Operator.

  • OpenTelemetry Collector https://opentelemetry.io/docs/collector/
  • OpenTelemetry Operator https://github.com/open-telemetry/opentelemetry-operator
  • Grafana Tempo https://github.com/grafana/tempo
  • Grafana Loki https://github.com/grafana/loki

 "SpiceDB: mature, open source ReBAC" ( 2024 )

Sunday at 09:15, 30 minutes, K.3.401, K.3.401, Identity and Access Management devroom Jimmy Zelinskie , slides , video

As more folks deploy cloud-native architectures and technologies, store ever larger amounts of data, and build ever more complex software suites, the complexity required to correctly and securely authorize requests only becomes exponentially more difficult.

Broken authorization now tops OWASP's Top 10 Security Risks for Web Apps. Their recommendation? Adopt an ABAC or ReBAC authorization model. This talk establishes the problems with the status quo, explains the core concepts behind ReBAC, and introduces SpiceDB, a mature and widely adopted open source ReBAC system inspired by the system internally powering Google: Zanzibar.

 "MAMBO - Dynamic Binary Modification Tool for RISC-V" ( 2024 )

Sunday at 09:15, 45 minutes, AW1.126, AW1.126, RISC-V devroom Igor Wodiany John Alistair Kressel , slides , video

MAMBO is the first dynamic binary modification (DBM) tool optimized for 64-bit RISC-V (RV64GC) and Arm. DBM tools allow developers to inspect, instrument and even modify running binaries (for example to detect memory issues or trace executed instructions) by sitting in-between the operating system (OS) and user application. Examples of those tools include Intel PIN, DynamoRIO, MAMBO - subject of this talk. This talk presents MAMBO from the developer perspective, discussing how it can assist developers in implementing efficient dynamic binary analysis and instrumentation tools. The presentation describes MAMBO API - that provides callbacks invoked by the DBM tool at different points of the lifetime of the hosted application - and its plugin infrastructure, used to implement those callbacks and perform aforementioned tasks. This talk shows a number of concrete plugin examples and the live demo to present described capabilities in action.

 "Compressive Progress: A Very Sparse Update on GNU Radio" ( 2024 )

Sunday at 09:15, 10 minutes, UB2.147, UB2.147, Software-Defined Radio and Amateur Radio devroom Marcus Müller , video

What's happened in GNU Radio-land?

Quick review about things happening in core GNU Radio and a shout out to a few of the contributors to the ecosystem.

In this talk, I'll shorty run down what's been going on in GNU Radio for the last 2 years (since last time we had a devroom!), and how you would get started using GNU Radio in 2024, and what you would look into if you wanted to know how the GNU Radio future looks like.

 "CRA: 40 new ways the CRA can accidentally harm open source" ( 2024 )

Sunday at 09:15, 5 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Tobie Langel , slides , video

Following the agreement reached in early December 2023, and pending formal approval by both the European Parliament and the Council, the CRA will be adopted shortly.

What's going to happen next?

The EU Commission will issue a standardization request to European standardization organizations to develop multiple technical standards (about 40!) defining how to apply the requirements of the CRA. As usual, the devil is in the details, and these standards will substantially shape the future of software in Europe, and as a result, of open source.

The problem?

The EU standardization organizations which will be tasked with developing those standards (CEN-CENELEC and ETSI) are very formal structures that are as arcane and antithetical to open source communities as the EU legislative process itself was only a few months ago.

There's a very serious risk that this upcoming standardization process might happen again with little or no consultation of the impacted open source communities and lead to additional harm as a result, further damaging Europe’s standing in the open source community and its ability to host, foster, contribute to, and leverage open source projects essential to its sovereignty.

The goal of this session is to preempt this scenario by proactively engaging with policy makers and carving out a path forward that leads to better outcomes for both Europe and open source.

 "Defend FOSS: From innovation to world-wide positive change" ( 2024 )

Sunday at 09:15, 60 minutes, K.4.601, K.4.601, Designing Futures of FOSS Content Management with the Open Website Alliance devroom Mathias Bolt Lesniak Jeffrey A. "jam" McGuire , video

Open Source technology, practices, and thinking have revolutionized how we innovate, collaborate, and do business. The impact goes beyond our daily work — it is everywhere — we won! But there's a downside: We have forgotten to tell people what makes us and Open Source different.

We must remember how radical and important Open Source is. It is extraordinary that we build international communities of experts sharing our best ideas, building businesses, and creating value.

Open Source — and we — have the potential to create more positive change in the world. And we need to tell the world, again.

At the same time, proprietary systems and vendors are winning pitches in government and elsewhere that should be no-brainers for Open Source solutions.

What comes next, and what do we have to do to make sure we can continue to make a positive difference with Open Source in the future?

This session will explore open source at different scales, from small but meaningful, to vast and vital to our future. What has open source made possible? What have we done with it in the last 24 years?

A look back at our origins, the changes and opportunities open source has enabled from small and personal to large. What could applying open source philosophy and practices — "thinking open source" — bring to society, the world, and the future beyond our daily work and business, from promoting peaceful and democratic societies to providing international development aid?

Openness and sharing, good governance and democracy. Can open source practice teach us how to live in a peaceful, free, and democratic society?

SAID ABOUT THIS TALK:

“This session came with the best value I've experienced myself for ages. I'm so glad I went there, the impact of FOSS principles to our societies is totally underrated. It was overwhelming!”

 "The Old Remains New" ( 2024 )

Sunday at 09:20, 20 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), Declarative and Minimalistic Computing devroom K.S. Bhaskar , slides , video

Subtitle: Continuous Evolution Keeps 1960s Technology Alive

Short Abstract:

M is a conceptually simple language tightly coupled to a conceptually simple database. Originally developed in the mid to late 1960s, the technology has evolved to stay relevant in the 21st century. The talk reviews the history of the technology, the conceptual simplicity of both the M language and M database, and how the technology survives by evolving to adapt to the changing world of computing. Portability was a goal since its earliest days.

Longer Description:

M first ran on a PDP-7 and was a complete software stack: an operating system, a database, and a language. To run on such limited hardware, M seamlessly coupled a minimalistic database with a minimalistic language. It was based on a small number of concepts.

Fast forward more than a half century. While M is not mainstream software technology, it is the language and database of the largest real-time core-banking and electronic medical record systems. For example, a nation-scale medical record system in Jordan runs a complete FOSS stack developed in M. To robustly and securely serve such large-scale, mission-critical systems that require "five nines" availability, M has retained its core principles of a minimalistic language and efficient implementation, which allows it to scale down as well as up: the YottaDB implementation of M delivers thousands of database accesses per second even on a Raspberry Pi Zero with a consumer grade MicroSD card.

To remain relevant with changing economics and technology, M had to evolve. It moved from days when the cost of the hardware dominated, programmers were economical, and software was freely bundled with the hardware, to today. It has done so without compromising its foundational values. It ceased to be an operating system as it was ported to other computing platforms. A production grade implementation was released under a copyleft license in 2000/2001. While the M language retains its conceptual simplicity, the tight coupling of M, the language, with M, the database, now extends to other languages, C, Go, JavaScript, Lua, Perl, PHP, Python, and Rust. The talk will use examples from lua-yottadb, which tightly binds a highly capable minimalistic language and a highly capable minimalistic database.

Links:

  • Project base: https://gitlab.com/YottaDB
  • Source code for database with M anc C APIs: https://gitlab.com/YottaDB/DB/YDB
  • Source code for Lua API: https://github.com/anet-be/lua-yottadb
  • Source code for G, Python, Rust APIs: https://gitlab.com/YottaDB/Lang
  • Source code for Perl API: https://gitlab.com/oesiman/yottadb-perl
  • Source code for PHP API: https://github.com/chrisemunt/mg_php
  • Source code for three JavaScript APIs: https://github.com/chrisemunt/mg-dbx-napi / https://github.com/dlwicksell/nodem / https://github.com/chrisemunt/mg-dbx
  • User documentation (GNU FDL): https://yottadb.com/resources/documentation/
  • Company home page: https://yottadb.com/

 "PLD: When software causes harm – who pays and why?" ( 2024 )

Sunday at 09:20, 5 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Robert Carolina , video

The new EU Product Liability Directive (PLD) is set to create the most significant change to software liability ever witnessed by re-defining software as a “product.” This lightning talk will introduce and compare two liability frameworks: fault-based negligence (which has always applied to software actors) and no-fault liability for defective products (which has never before applied to software actors, but soon will).

 "[Protocols] Things we wish we knew before starting an IMAP library" ( 2024 )

Sunday at 09:25, 35 minutes, H.2213, H.2213, Modern Email devroom Damian Poddebniak Simon Ser , video

IMAP is a lot. It's a stateful protocol that doesn't lend itself to a simple implementation and can be intimidating. IMAP's syntax is branched, subtle, and has various issues. Above that, the syntax is intertwined with business logic, making separating concerns difficult. It doesn't help either that there are more than 70 extensions, with any of them potentially breaking your understanding of how IMAP operates.

In this talk, Simon and Damian recapitulate what they learned about IMAP while implementing/maintaining go-imap and imap-codec.

After the talk, you will have a much better understanding of IMAP and, hopefully, will avoid making the same mistakes we made.

About the speaker(s)

Simon started writing go-imap v1 7 years ago. Of course, misunderstandings happened, and mistakes were made. Thus, he started working on go-imap v2 earlier this year to fix these mistakes and design a better API informed on everything he learned while maintaining this library.

Damian started imap-codec during a STARTTLS research project. imap-codec was born out of frustration. He struggled to construct syntactically valid IMAP messages while analyzing IMAP clients for a specific behavior. imap-codec helped to prevent the same errors from being made twice.

 "CRA & PLD: panel" ( 2024 )

Sunday at 09:25, 40 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Cheuk Ting Ho Maarten Aertsen Benjamin Bögel Omar Ennaji , video

How do recent instruments such as the Cyber Resilience Act (CRA) and Product Liability Directive Revision affect you, your project and your future. The CRA & PLD panel is a discussion between speakers from the European Commission, European Parliament, open-source developers and the audience looking ahead at implementation of these landmark legislations.

 "Using GPU for real-time SDR Signal processing" ( 2024 )

Sunday at 09:30, 25 minutes, UB2.147, UB2.147, Software-Defined Radio and Amateur Radio devroom Sylvain AZARIAN , slides , video

GPU processors have become essential for image or AI processing. Can they bring anything to real-time signal processing for SDR applications? The answer is yes, of course, but not all classic algorithms (FIR, DDC, etc.) can be used "as is", sometimes a different approach must be taken. In this presentation, I will share the solutions that I implemented to achieve multi-channel DDC on NVIDIA Jetson GPU and will make a comparison with "classic CPU" approaches.

 "A universal data model for localizable messages" ( 2024 )

Sunday at 09:30, 30 minutes, K.3.201, K.3.201, Translations devroom Eemeli Aro , video

One of the results of the Unicode Consortium's work on defining the MessageFormat 2 specification is a data model for messages that's intended to be sufficiently powerful to represent all known features of all known localization formats. Let me show you what it looks like, why this is important, and what you might be able to do with it even if you never use any other part of MF2. Oh, and we're already building open-source tools for working with the data model in JavaScript and Python. Formatting runtimes are available in JavaScript as a polyfill for the proposed Intl.MessageFormat API, and in C++ and Java as a part of this spring's ICU 75 release.

 "A murder party with Lea" ( 2024 )

Sunday at 09:30, 25 minutes, UD2.218A, UD2.218A, Python Devroom devroom Pierre Denis , slides , video

Lea is a Python module helping to calculate probabilities on situations presenting uncertainties. It is meant to be open, intuitive, and easy.

Lea can deal with discrete variables, interdependent events, conditional probabilities, probabilistic programming (PP) and many more. Unlike most of other probability toolkits, it is open to different probability representations, including fractions and symbols (using the SymPy library). These features make Lea ideal for education, to learn the theory of probability, from basics to advanced concepts.

The talk will present classical or non-classical problems in probability, and how these can be solved easily using Python and Lea. These include games (dice roll, RPG combats, etc.) and funny paradoxes (non-transitive dice, boy or girl paradox, etc.). The “murder party” case will demonstrate how uncertain information can help to find out the most probable perpetrator of a murder. These examples will switch between probabilities as float numbers, fractions and symbols, i.e. returning formulas instead of numbers—and demonstrating practically Python’s “duck typing” at work.

The talk will conclude with a revival of the “bullshit generator”, a 15 years-old, non-serious precursor of ChatGPT (300 lines script, including data)!

 "Let's build a RUM system with open source tools" ( 2024 )

Sunday at 09:30, 25 minutes, H.2214, H.2214, Web Performance devroom Tsvetan Stoychev , video

I would like to share what I've learned while working on Basic RUM - an open source Real User Monitoring system.

I combined a few open source projects (Grafana, ClickHouse, Traefik and Boomerang JS) and I was able to build a data pipeline that processes web performance metrics and visualises trends which helps webmasters to understand the performance metrics.

During the talk I would like talk about the internals of a RUM system, to stress on the performance data handling, why I've chosen ClickHouse as timeseries database, why I've chosen Grafana as a visualisation platform and how all the components of the system are related.

 "Fortifying the Foundations: Elevating Security in Nix and NixOS" ( 2024 )

Sunday at 09:30, 25 minutes, H.1302 (Depage), H.1302 (Depage), Nix and NixOS devroom Dominic Mills-Howell , slides , video

Securing NixOS and Nixpkgs is critical for widespread adoption. As one of the nine recently selected Sovereign Tech Fund projects, this talk discusses the mechanisms in place to reduce reliance on external binaries, ensuring code integrity during compilation, and implementing mechanisms for delivering up-to-date, secure software sustainably. We discuss the implementation by the Nix security team that focuses on streamlining processes, enhancing NixOS and Nixpkgs security, and transparently communicating vulnerability patch timelines to users, delving into the strategies implemented in phase one of this project to fortify NixOS and Nixpkgs security efficiently and effectively.

 "From OpenLLM-France to OpenLLM-Europe: Paving the way to sovereign and open source AI" ( 2024 )

Sunday at 09:30, 15 minutes, UB2.252A (Lameere), UB2.252A (Lameere), AI and Machine Learning devroom Michel-Marie Maudet , slides , video

Large language models (LLMs) are strategic productivity assets for businesses that will impact the lives of citizens around the world. For this reason, we firmly believe that it is essential to promote sovereignty, transparency, and openness in this strategic field. Having built the OpenLLM-France open source community (https://www.openllm-france.com/) with more 360 individual/company members, LINAGORA is now looking to expand this vision to the whole of Europe, taking into account the numerous languages that it represents. This talk will present associated challenges and show how we plan to address them. It will also include a call to all stakeholders at the Europe level interested in testing, experimenting with, and implementing open source LLMs to join us in this community.

 "Overview of SPDX tooling and how SPDX3 gets adopted" ( 2024 )

Sunday at 09:30, 15 minutes, K.4.401, K.4.401, Software Bill of Materials devroom Maximilian Huber , video

This presentation will give an overview over recent developments in tooling. It will showcase especially Python and the new TypeScript library, but will also mention Java and other supported ecosystems. It will also show how the native support for SPDX generation and integration gets adopted.

This all plays towards support for SPDX3, where use of maintained libraries will ease the migration towards supporting it. The presentation will also cover the current state of support for SPDX3 via tooling.

 "Streamlining kernel hacking with mkosi-kernel" ( 2024 )

Sunday at 09:35, 30 minutes, UB5.132, UB5.132, Kernel devroom Daan De Meyer , slides , video

mkosi (https://github.com/systemd/mkosi) is a general purpose image builder that can be used for all kinds of workflows, including kernel hacking! The mkosi-kernel project (https://github.com/DaanDeMeyer/mkosi-kernel) intends to make hacking on the kernel as streamlined and painfree as possible. This talk will give a brief introduction to mkosi and mkosi-kernel, explaining how it can be used as a day to day tool for building and testing patches to the Linux Kernel.

Unlike alternatives like virtme(-ng), instead of booting from the host rootfs, mkosi-kernel will always build a custom image and boot into that. This image can be of any distribution, with any number of packages required to test kernel changes. Additionally, this image can be booted in a virtual machine as a disk image, cpio, unified kernel image or using virtiofs. Furthermore, mkosi-kernel can build various associated userspace projects like xfstests and make these available in the booted virtual machine for easy access to integration tests. Of course mkosi-kernel will also build the kernel itself for you if requested, but a prebuilt kernel can also be provided.

 "How to bring up GCC for your new chip" ( 2024 )

Sunday at 09:35, 25 minutes, K.4.201, K.4.201, GCC devroom Jeremy Bennett , slides , video

You have designed your new processor. But to be any use it needs a compiler. In this talk I will give a guide to the GCC machine description, and how you create a new one to support your processor.

This talk is created from a much larger training course for professional compiler engineers. It will give you sufficient information and understanding that you should be able to then create a new back-end for GCC to work with your processor.

 "declarative calcs and visualization with calculang" ( 2024 )

Sunday at 09:40, 20 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), Declarative and Minimalistic Computing devroom Declan Naughton , video

calculang is a language for calculations, pure-functional and portable in concept, currently compiling to Javascript.

In this talk I'll show some examples that demonstrate language design principles: - input inference - modularity and specific features: - inheritance of parent functions and overriding

These work together so that calculang functions (or 'formulae') are flexible, concise and understandable, and maintainable.

I will also demo calcuvizspec, a declarative visualization API for calculang models based on vega-lite.

calculang and calcuvizspec are free software.

calculang is currently available on GitHub. Updates @calculang on Fosstodon.


Slides: link calcuvizspec Visualization API based on Vega-Lite presentation: link (but, calculang is non-opinionated!)

 "Ghosting the hardware" ( 2024 )

Sunday at 09:40, 25 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Testing and Continuous delivery devroom Rémi Duraffort , slides , video

LAVA the Linaro Automation Validation Architecture is now the de facto standard system for testing software (from bootloader to kernel or userspace) on both virtual and real hardware. It's used by many projects to build large testing systems like kernelci or LKFT (Linux Kernel Function Testing project from Linaro). In order to build a stable CI system, we have to ensure that LAVA itself does not regress from one version to another.

In this talk I will present how the LAVA team is intensively using mocking to test LAVA on devices that none in the team ever saw.

 "Dune 3D - the making of a maker's tool" ( 2024 )

Sunday at 09:40, 20 minutes, H.1308 (Rolin), H.1308 (Rolin), Open Hardware and CAD/CAM devroom Lukas , slides , video

Not being entirely satisfied with the available options in the open-source 3D CAD landscape, I thought "how hard can it be" and started putting together a 3D CAD application based on solvespace's solver, Open CASCADE and Horizon EDA's 3D view.

In this talk, I'll go into my motivation for starting the project, it's overall architecture, some noteworthy implementation details and my long-term plans for it.

 "AI DevRels - Risks of Neglecting Open Source Talent in AI Critical Infrastructure" ( 2024 )

Sunday at 09:45, 30 minutes, UA2.114 (Baudoux), UA2.114 (Baudoux), Community devroom AnaJS , video

While investment in AI compliance and strategy continues to grow, numerous layoffs of open source talent are happening within organizations. This talk aims to explore the critical role of open source talent in providing stewardship and building bridges between an organization's AI strategy and its critical infrastructure. The talk will also highlight the risks to the software (and AI) supply chain arising from inadequate support for open source communities, potentially creating vulnerabilities in the entire cycle. Open source is integral to software development, and AI models are no exception. The open source community, leveraging its collaborative model, has significantly contributed to the AI ecosystem. This includes the development of frameworks used to build models, standards, or the sharing of datasets that train these models. Such contributions have enabled the creation of both open source and proprietary AI models, as evidenced by organizations like OpenAI, Hugging Face, and NVIDIA.

While investment in AI compliance and strategy continues to grow, numerous layoffs of open source talent are happening within organizations. This talk aims to explore the critical role of open source talent in providing stewardship and building bridges between an organization's AI strategy and its critical (open source projects) infrastructure. The talk will also highlight the risks to the software (and AI) supply chain arising from inadequate support for open source communities, potentially creating vulnerabilities in the entire ecosystem.

 "Building Open Source Language Models" ( 2024 )

Sunday at 09:45, 15 minutes, UB2.252A (Lameere), UB2.252A (Lameere), AI and Machine Learning devroom Julie Hunter , slides , video

LINAGORA, as a leader in the Open LLM France community, has made it a priority to pull the curtain off of the process of building Large Language Models (LLMs). While most LLMs in use today – even the “open” ones – reveal few to no details about their training, and especially the data on which they are trained, we have decided to share it all. In this talk, we discuss why using an open model trained on traceable data is important for business and research alike and examine some of the difficulties involved in pursuing an open strategy for LLMs. We bring to the table our experience with data collection and training of LLMs, including the Claire family of language models.

For links to the Claire models:

Dataset & Code:

 "Agama: Low-Code Web Identity Orchestration" ( 2024 )

Sunday at 09:45, 30 minutes, K.3.401, K.3.401, Identity and Access Management devroom Michael Schwartz , video

Web authentication is more complex then ever. While out-of-the-box 2FA features are helpful, sometimes developers need to customize authentication flows to meet specific business requirements, like registration, credential recovery, or adaptive security to step-up authentication based on risk scores. All IDPs have some kind of black magic to implement customizations--normally some script or code interface. But at the Janssen Project, we saw how hard it is to write, maintain and transfer this custom authentication code, and we wanted something more re-usable. So in early 2021, we introduced Agama, a low-code programming language to simplify the development of web identity journeys. Agama defines a standard way to build web identity journeys in a potentially vendor-neutral way. It’s both a programming language and a project archive format. In 2023, Gluu launched Agama Lab, a free developer tool. Agama Lab takes low code to a new level by enabling developers and architects to graphically white board identity journeys and to release deployable Agama archives directly to a GitHub repository. The Agama Lab Explore Catalog enables developers to fork working projects and adapt them more specific business requirements. Low code may seem silly--yes you can also just write the code. But low code can reduce the time to knowledge-transfer customizations to the next team. And graphical tools faciliate communciation with the non-identity team to help explain the various flows and how they relate.

 "FOSS for FOSS: DejaCode is your new FOSS control center for SBOMs" ( 2024 )

Sunday at 09:45, 15 minutes, K.4.401, K.4.401, Software Bill of Materials devroom Philippe Ombredanne , slides , video

Open source code is the main concern for SBOMs. So, why are so many of the available solutions proprietary software or proprietary data?

Use DejaCode instead! DejaCode is a new open source tool to manage all your SBOMs in one place and ensure software supply chain integrity: - Export, import, merge, and combine SBOMs, with detailed attribution documentation and custom reports in multiple file formats and standards, like SPDX. - Apply usage policies and curated catalogs to enforce the consistent use of open source packages across teams and projects for licenses, provenance, and vulnerabilities. - Run reports and analytics with a consistent view of packages, licenses, and security risks across products.

In this talk, Philippe will discuss how DejaCode enables low-effort, low-friction open source compliance automation across teams with different mandates - all while using open source software.

 "Panda3DS: Climbing the tree of 3DS emulation" ( 2024 )

Sunday at 09:50, 45 minutes, UB5.230, UB5.230, Emulator devroom George Poniris Paris Oplopoios Davit Markarian , slides , video

Researching the Nintendo 3DS software and hardware stack while exploring new possibilities in emulating it, now with more pandas. Panda3DS is a new high-level Nintendo 3DS emulator for Windows, Linux, MacOS and Android, aiming to provide good compatibility, intuitive UX and explore new concepts in 3DS emulation. Despite only being a year old, it's already capable of playing many games and it's only going to get better!

In this talk, we'll be dissecting the Nintendo 3DS architecture on both the software and hardware level. Join us to discover the inner working of the 3DS, find out about the various efforts involved in emulating it and discuss various innovations that could be applied to 3DS emulation (Ubershaders, virtualization, scripting/hacking/debugging tools, and more).

 "When Prometheus Met OpenTelemetry" ( 2024 )

Sunday at 09:50, 25 minutes, UA2.220 (Guillissen), UA2.220 (Guillissen), Monitoring & Observability devroom Pavol Loffay , slides , video

In this session we will deep dive into metrics collection with the OpenTelemery project. Prometheus has been de-facto standard for metrics instrumentation and collection for a long time. Everybody is well familiar with the /metrics endpoint, the Prometheus pull approach and {Pod,Service}Monitors. In this session, we will show how OpenTelemetry can scrape Prometheus metrics using the OpenTelemetry collector, and target allocator with the OpenTelemetry operator on Kubernetes. The audience will not only learn how the setup works but also understand the benefits and shortcomings of each solution.

 "`New` Workflow Orchestrator in town: "Apache Airflow 2.x"" ( 2024 )

Sunday at 10:00, 25 minutes, UD2.218A, UD2.218A, Python Devroom devroom Jarek Potiuk , video

Efficient and well managed Orchestrating your Data processing Pipelines is crucial to provide the back-bone of the modern Data processing needs. With all the new rage of LLMS and AI, it's more important than ever to make sure that you can wrap your head around all the old, new and upcoming data processing tools and services you use, but also track the provenance, lineage of the data, and make it easy to author and mange those for distributed teams.

This talk will bring to the light how modern Airflow 2.7+ provides proven and also modernised, easy nd nice to use ways on how to do it. Quite often you hear about the "new" orchestrator that aims to solve your orchestration needs. You can also often hear how it compares to Airlfow. However those comparisions often overlook the fact that since Airflow 2.0 has been introduced, it continues to evolve and piece-by-piece modernize itself and respond to the needs of processing even more data, and interacting with even more systems that were not even existing a year ago (think LLMs) - while continue harnessing the powers of other tools you already used in the past and bind them all together.

New UI, New ways of writing your orchestration tasks, new ways to test them, tracking lineage, simpler authoring and intracting with object storages. And the comparision often overlook that if you start your journey with Airflow today, your experience will be quite a bit different than even 2 years ago (what usually most comparisions talk about). This talk will highlight some of the important ones.

Also you might be surprised but this is all happening without breaking compatibility - hence you can still you use it in the "old way". But maybe it's time to learn new ways?

 "trx-control - modern software to control amateur radio transceivers and other hamradio hardware" ( 2024 )

Sunday at 10:00, 25 minutes, UB2.147, UB2.147, Software-Defined Radio and Amateur Radio devroom Marc Balmer , video

The trx-control project is a modern, modular, and, extensible software system to control transceivers, usb relays, rotators and other ham related gear. Client-server by nature, supporting plain TCP/IP and WebSockets on one side, offering a flexible way to attach hardware and transceivers on the other side. Internally fully multi-threaded and asynchronous. trx-control is a completely fresh approach at controlling transceivers. It provides a rock-solid, multi-threaded, asynchronous framework to control different classes of hardware. It supports transceivers that are able to send status updates on their own as well as transceivers that need polling.

A main goal of the development was that adding drivers for new transceivers (or other types of hardware) is easy and can be done in an easy-to-learn, easy-to-understand scripting language, Lua in this case.

This talk will - given the limited time available - describe the project without going too much into details. For those interested, the full source code is available on GitHub under a liberal open source license.

 "You too could have made curl!" ( 2024 )

Sunday at 10:00, 50 minutes, K.1.105 (La Fontaine), K.1.105 (La Fontaine), Main Track - K Building Daniel Stenberg , slides , video

Daniel has taken the curl project to run in some 20 billion installations. He talks about what it takes to succeed with Open Source: patience, time, ups and downs, cooperation, fighting your impostor syndrome - all while having fun. There's no genius or magic trick behind successful open source. You can do it. The talk will of course be spiced up with anecdotes, experiences and stories from Daniel's 25 years of leading the curl project.

 "Better than loading fast… is loading instantly!" ( 2024 )

Sunday at 10:00, 25 minutes, H.2214, H.2214, Web Performance devroom Barry Pollard , video

For years, web performance optimization has sought to improve websites by shaving off as much of their load time as possible. But have we been thinking too small? Is a "fast" website good enough? Or should we be aiming for one better and loading websites instantly instead?

In this talk, Barry will explain some of the steps the Chrome team is taking to enable this nirvana of an "instant web", and how you can use these technologies on your own websites to also achieve instant page loading, leading to near-perfect Core Web Vitals, and happier users.

 "My experience as a first time contributor to GCC's LTO" ( 2024 )

Sunday at 10:00, 15 minutes, K.4.201, K.4.201, GCC devroom Rishi Raj , slides , video

Bypass assembler when generating LTO object file

This summer, I worked with my mentor Jan Hubicka and Martin Jambor on a project to bypass assemblers when generating LTO object files. Link Time Optimization (LTO) enables GCC to dump its internal representation (GIMPLE) to disk so that a single executable can be optimized as a single module. The current implementation creates an assembly file, and the assembler creates the final LTO object file from the provided binary contents. This project aims to create Link-time-optimization (LTO) object files directly from the compiler to improve compile time performance significantly by bypassing the assembler. The GCC's LTO infrastructure has matured enough to compile large real-world applications. Thus, this project will significantly reduce their compile time once completed. In this presentation, I will discuss the current state of my project and future direction. Additionally, I will delve into my journey, discussing the challenges I encountered as a beginner working with GCC (GNU Compiler Collection) and how I overcame them with the community's help.

 "[Protocols] Unicode in email: RCPT TO:<grå@grå.org>" ( 2024 )

Sunday at 10:00, 20 minutes, H.2213, H.2213, Modern Email devroom Arnt Gulbrandsen , video

This talk covers what unicode in email is (basically: UTF8 everywhere and fewer weird encodings), what RFCs are involved, why the design is as it is, why the obvious alternative failed, and of course how to test compliance, from unit tests to interop testing.

If I'm feeling grumpy that day, I may also talk about why Microsoft does this better than the open source community.

 "LinTO Studio as Your Ultimate Open Source AI-driven Media Management Solution" ( 2024 )

Sunday at 10:00, 15 minutes, UB2.252A (Lameere), UB2.252A (Lameere), AI and Machine Learning devroom Damien Laine , video

We explore the seamless integration of AI, ML, and Large Language Models (LLMs) within LinTO Studio, a productivity tool designed to anchor your media recordings within a robust, enterprise-grade, media management platform. LinTO Studio effortlessly converts routine meeting recordings into transcriptions, employing our Open Source transcription models as well as OpenAI's Whisper. Our implementation ensures precise word-level timestamping, facilitates human correction and incorporates speaker diarization/turn detection. Beyond transcription, LinTO Studio unveils powerful features including indexation and NLP-driven extraction of valuable insights, automatically identifying topics, action items, keywords, and more. Build annotated data lakes from your transcriptions and explore innovative interactions with this data through LLM prompts and chat.

 "Lessons from porting software to RISC-V @ RISE" ( 2024 )

Sunday at 10:00, 45 minutes, AW1.126, AW1.126, RISC-V devroom Ludovic Henry , slides , video

As the RISC-V architecture continues to gain momentum in the realm of open-source hardware, the challenges of porting software become increasingly apparent. This talk dives into the experiences and insights gained from porting software as part of the RISE (RISC-V Software Ecosystem) initiative. Ludovic, an active participant in the initiative and lead for the Language Runtimes WG, will share firsthand accounts of the hurdles faced, breakthroughs achieved, and the broader implications for the RISC-V community.

Attendees can expect to gain valuable insights into the intricacies of porting software to RISC-V, covering aspects such as compiler optimizations, and architecture-specific testing. Real-world examples will be used to illustrate the practical challenges encountered and the creative solutions devised during the porting process. Furthermore, the talk will highlight the collaborative nature of the RISE Initiative, emphasizing the importance of community engagement and knowledge sharing in building a thriving RISC-V ecosystem.

In summary, this talk aims to provide attendees with a deeper understanding of the nuances involved in porting software to RISC-V. By sharing experiences, lessons, and best practices, the speaker seeks to contribute to the collective knowledge base of the RISC-V community, fostering a collaborative spirit that propels the ecosystem forward into new frontiers.

 "For Want of Anneal: Examining The Unseen Changes Concerning Changes To VCS Assets and The Need For More Graph Centric Approaches" ( 2024 )

Sunday at 10:00, 20 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), Declarative and Minimalistic Computing devroom Jonathan McHugh , video

The behaviour of repos over time will be examined from the perspective of semantic graphs and qualifying annotations. The focus will not only be concerning direct diffs within a specific commit but emphasizing greater contextualization of what was taking place. For example, understanding the relationship of a commit in the context of a project's sections; functionality; or symbiotic repos.

Through the use of logic programming (SWI-Prolog) and the useful of (RDF) principles, demonstrations will include: * How historic changes to files in a VCS should not be treated as logs of affect but additionally as components for adapting other coding and knowledge assets; * How failure to preemptively describe the desired outcomes from a successful commit mean that there is a failure to provide preparatory automation behaviours.

The aforementioned logic programming and RDF expositions will demonstrate the evolution of the (historically NLNet funded) project Icebreaker. It shall be mixing its parsing syntaxes from seperate projects (kanban boards and knowledge-management with syntaxes for time series analyses of repos). There will be a showing of how task management; documentation; and coding intersect using perspectives from how annotations from the "Recursive-Modelling-Language" Qiuy intersect over time.

Anybody who has lost an afternoon because of a 1 character mistake in their coding understands the grim insights from the proverb "For Want of a Nail". However, for non coding activities such errors or omittances are more subtle, as the fallout from things tends to be less direct (such as for lost capacity, imprecision or diminished returns). To return to the proverb, the nail is the instigator of a chain of events, rather than a technical or procedural. People are unlikely to posit "For Want of Annealing" to highlight the pernicious effects of qualified deficiencies. The consequence of this presentation will be to demonstrate how underutilized qualitative and graph orientated approaches are for modern project management.

 "Comprehensible Open Hardware: Building the Open Book" ( 2024 )

Sunday at 10:00, 20 minutes, H.1308 (Rolin), H.1308 (Rolin), Open Hardware and CAD/CAM devroom Joey Castillo , slides , video

We live in an era where technology, especially as shipped by large companies, can be an inscrutable black box to the end user. Your smart phone arrives in your life as a fully formed slab of glass and silicon: something meant to be used, but not understood. This kind of technology diminishes users' agency and disempowers them from using the technology on their own terms.

The Open Book is an open hardware e-book reader that can be built from scratch and understood, at least in broad strokes, by the average user. In this talk I'll walk through strategies that I've used when designing both the Open Book and other open hardware projects, to make objects that open themselves up not just to the developers that work on them, but to the users that work with them.

 "Adapting Your Project: Making Changes Without Breaking Linux Distributions" ( 2024 )

Sunday at 10:00, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Distributions devroom Fernando Fernandez Mancera , slides , video

As a member of the NetworkManager team, I understand the impact that changes in a free software project's behavior can have on various setups and environments, especially within the diverse landscape of Linux distributions.

In our session, we'll navigate the challenges of evolving software behavior without causing disruptions across different distributions. We'll delve into best practices and strategies that ensure seamless transitions, drawing on real-world use cases to illustrate effective approaches.

Whether you're a seasoned developer or an open-source enthusiast, this discussion aims to provide valuable insights into maintaining project stability while embracing necessary changes.

 "Packaging Bazel and Bazel-based packages" ( 2024 )

Sunday at 10:00, 25 minutes, H.1302 (Depage), H.1302 (Depage), Nix and NixOS devroom Guillaume Maudoux , slides , video

Bazel is a build system to rule them all. It tries to enforce purity on it's own, and has not been built around the idea that it could be used inside another build system, like... Nix! This makes it really difficult to package, and even more difficult to make it cooperate with Nix to build other packages.

This talk will build upon on my experience packaging and testing Bazel 7.0.0 for nixpkgs. Going through the most interesting fixes required to make it work, we will also discuss hermeticity in both build systems, dependencies pinning with lockfiles, sandboxing, caching, remote execution and then some more.

Packaging Bazel for Nix has been an intense experience, and you will get all the nice bits without the hard work !

 "Opening up communication silos with Matrix 2.0 and the EU Digital Markets Act" ( 2024 )

Sunday at 10:00, 50 minutes, Janson, Janson, Main Track - Janson Matthew Hodgson , slides , video

Section 7 of the EU Digital Markets Act requires that today’s large proprietary messaging providers must allow third party interoperability by March 2024 (for DMs), with group conversations following in 2026, all while preserving end-to-end encryption.

Matrix is an open source project defining an open standard for E2EE interoperable communication, and we’ve been following DMA closely. In the run up to March 2024 we’ve been doing a lot of work to ensure today’s Matrix can help with the immediate interoperability challenges - and also contributing heavily to the IETF More Instant Messaging Interoperability (MIMI) working group to provide IETF-track longer-term interoperability specifically for DMA.

By requiring open APIs (or open standards) for communication, the European Commission is effectively creating an entirely new industry on top of today’s communication platforms - which if executed correctly could supplant the public telephone network with a genuinely open communication fabric for everyone: effectively extending Matrix and/or its derivatives to a multi-billion user network.

In this talk, we’ll explain the work we’ve done with with end-to-end-encryption-preserving Matrix bridges, our contributions to MIMI - and the possibility that Matrix 3.0 (yes, 3.0) might end up evolving into compatibility with MIMI, while adding in the full richness and decentralisation of today’s Matrix.

Meanwhile, since introducing the idea of Matrix 2.0 at FOSDEM 2023 (https://archive.fosdem.org/2023/schedule/event/matrix20/), the Matrix core team has been slogging away along the road to actually shipping it: providing secure, open, decentralised communication which can compete with the mainstream proprietary centralised alternatives. As ever, the path has had some unexpected twists and turns along the way - and we’d like to share our progress.

We’ll also cover the latest updates on converging on matrix-rust-sdk as the flagship 3rd generation Matrix client SDK (as showcased by Element X and Fractal 5); rolling out instant login, sync & launch via Sliding Sync; transitioning to OpenID Connect for all authentication; implementing full E2EE scalable VoIP and video via MatrixRTC and LiveKit; and major new Matrix reliability projects including trafficlight (full-end-to-end testing of Matrix clients covering both chat and VoIP) and complement-crypto (a full E2EE torture-test suite exercising matrix-rust-sdk and matrix-js-sdk).

Finally, we’ve also been maturing our governance processes: ensuring the Matrix.org Foundation is operationally independent of other companies (e.g. Element) with Josh Simmons joining as the Foundation’s first employee and Managing Director - we’ll cover the work Josh is doing in formalising a Governing Board and getting the Foundation to stand on its own two feet.

 "Compiler Options Hardening for C and C++" ( 2024 )

Sunday at 10:00, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Thomas Nyman , slides , video

C and C++ are consistently the preferred languages for systems programming, embedded systems, and various performance-critical applications. C and C++ are also susceptible to various defects, such as memory-safety issues, that account for a significant portion of security vulnerabilities in C and C++ software. Addressing the memory-safety challenge has recently received new focus as leading cybersecurity organizations from various countries have collectively emphasized the significant risks posed by memory-safety issues.

With the ubiquitous use of C and C++ in the embedded device, industrial controls, and IoT space, the chances of removing and replacing C and C++ are virtually nil. To improve software to be more memory-safe, a series of techniques will need to be undertaken to gradually evolve the quality and security of the code:

  • migration to memory-safe alternatives, such as Rust, especially for critical software
  • easier to use tooling for debugging, diagnostics and application security testing
  • pro-active vulnerability mitigation and prevention in software though the use of compiler-based binary hardening mechanisms

In November 2023, the Open Source Security Foundation (OpenSSF) published the Compiler Options Hardening Guide for C and C++ that is focused on helping developers make informed choices regarding compiler options to harden their software against prevalent software defects. Compiler flags are powerful tools that can significantly enhance the security of C and C++ code without requiring expensive refactoring or rewriting in newer, more memory-safe languages. Many such compiler features are also useful for discovering memory safety issues during debugging and testing.

In this talk, Thomas will give an introduction to the OpenSSF Compiler Options Hardening Guide for C and C++. He will talk about how the guide came into existence in the OpenSSF, its current structure and future extensions. This talk particularly intends to actively invite feedback and call for collaboration.

 "Isolation Levels and MVCC in SQL Databases: A Technical Comparative Study" ( 2024 )

Sunday at 10:00, 50 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), PostgreSQL devroom Franck Pachot , video

As a developer, it is crucial to understand Isolation Levels and Multi-Version Concurrency Control (MVCC) to create scalable applications without compromising data integrity due to race conditions. Although the default isolation level in most databases is usually adequate, it is important to know and use it correctly in your application. This technical session explores the implementation of these concepts in popular SQL databases such as Oracle, MySQL, SQL Server, PostgreSQL, and YugabyteDB. We will also examine why traditional SQL standard definitions may not be suitable for MVCC databases and why this knowledge is essential for developers. By the end of the session, you will be able to navigate these subtleties with ease and make informed decisions in your application design without getting too academic.

 "Panel discussion: Software Naming" ( 2024 )

Sunday at 10:00, 30 minutes, K.4.401, K.4.401, Software Bill of Materials devroom Alexios Zavras (zvr) Philippe Ombredanne Aeva Black Kate Stewart , video

The naming of software packages is a difficult matter. In the world of SBOMs (and related tooling), package identifiers are an integral part. OmniBOR, Package-URL (PURL), SWHID, as well as CPE, SWID and others are all identifiers for packages.

The panelists will discuss the pros and cons of the different package identification schemes and how to decide when to use which one.

The discussion will be moderated by Kate Stewart.

 "NLnet office hour" ( 2024 )

Sunday at 10:00, 60 minutes, AW1.121, AW1.121, BOF - Track C Ronny Lam

Ask NLnet everything you want to know about Open Source (NGI0) grants. What are the requirements, how you can apply, and more... Current active grants are NGI0-Core, NGI0-Commons, and NGI0-Review.

 "Pushing test lab to its limits: performance tracking techniques" ( 2024 )

Sunday at 10:05, 25 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Testing and Continuous delivery devroom Paweł Wieczorek , slides , video

How often do you stress test the systems your developers depend on? You'd better do that before hitting the limit and breaking developers' workflows! In this talk Paweł will present how Collabora tracks performance of its LAVA instances. He will show how the bottlenecks are located and how to push LAVA to manage even higher workloads. Detailed lessons learned will be shared to encourage discussion on this topic or inspire attendees to share their experience in testing systems performance optimization area.

 "CoderDojo" ( 2024 )

Sunday at 10:10, 60 minutes, H.1301 (Cornil), H.1301 (Cornil), FOSS Educational Programming Languages devroom Nuala McHale , video

At CoderDojo, we want to help kids and teens realise that they can build a positive future through coding.

We believe that:

An understanding of programming languages is important in today's world and everyone should have the opportunity to learn to code. The CoderDojo movement is formed of a global network of Dojos and the community of volunteers and children that make them happen.

 "libvpoll: create synthetic events for poll, select and friends" ( 2024 )

Sunday at 10:10, 20 minutes, UB5.132, UB5.132, Kernel devroom Luca Bassi Renzo Davoli , slides , video

Many programs use poll/select system calls to wait for events that are triggered by file descriptor I/O events. For instance, to write a library able to behave like a network stack (e.g. lwip and picoTCP) or a device, it's possible to implement functions like my_socket, my_accept, my_open and my_ioctl, as drop-in replacement of the system call counterparts. Additionally, it's possible to use dynamic library magic to rename/divert the system call requests to use their virtual implementation provided by the library. Unfortunately this approach cannot be applied to poll/select system calls because Linux doesn't have a system call that permits to generate synthetic generic events for a file descriptor, so it is not possible for libraries to provide file descriptors suitable for select/poll system calls.

libvpoll permits to define file descriptors whose I/O events can be generated at user level. This permits to generate synthetic events for poll, select, ppoll, pselect, epoll, etc. The libvpoll library can use two different supports: a module that provides a virtual device and a kernel patch extending the eventfd system call. When neither are availables, a feature-limited emulation is provided as a fallback: based on pipe it manages only POLLIN and POLLOUT. This approach allows mixing real file descriptors with others provided by libraries as parameters of poll/select system calls. For example libvpoll has been used in picoxnet, a user-level network stack implemented as a library for the Internet of Threads. libvpoll, as well as the kernel device module, are already available in Debian.

 "Happy translating! It is possible to overcome the language barrier in Open Source!" ( 2024 )

Sunday at 10:10, 30 minutes, K.3.201, K.3.201, Translations devroom Wentao Liu , slides , video

Back to more than decades ago, when Wentao worked in a college as a professor, he translated English Textbooks to Chinese students. Later he joined Apache Openmeetings project and translated the software into Chinese, including edit check, manual, website, and language framework. As a senior translator in some of China's largest open source communities, recently he is involved in a review role in translating the latest Linux Foundation Research report "Standing Together on Shared Challenges" on the 2023 Open Source Congress into Chinese, and also working on video subtitle and review of Deep Dive AI sessions by OSI into Chinese. In the talk, the speaker will share his translation experience and lessons he learned, how to recruit new people to translate his project, how to motivate volunteer contributors via rewarding methods, how to translate Openmeetings website, tools such as DeepL, Google Translator, Crowdin and Youtube will be discussed. Though this is not a technical session about how to do translation, but we assume the audience should have basic translation and open source knowledge.

 "CoderDojo" ( 2024 )

Sunday at 10:10, 60 minutes, J.1.106, J.1.106, FOSDEM junior Bart Mathijssen

A Dojo is a free, volunteer-led, community-based computer club for young people. Anyone aged 7 to 17 can visit the Dojo and learn to code, build a website, or create an app or game. Dojos are a space for kids and teens to explore technology in an informal, creative, safe and social environment.

In this session, we won't be covering a specific topic, so you can use whatever technologies you want. There will be champions and mentors from both CoderDojo Belgium and CoderDojo Netherlands. They can answer any questions you might have.

Developers of multiple open-source projects are present, and they will also be able to answer any questions.

Anyone aged 7 to 17 can visit the workshop.

Registration will be required for this session. Use the following link to register.

 "Improving Infrastructure Security Through Access Auditing" ( 2024 )

Sunday at 10:15, 15 minutes, K.3.401, K.3.401, Identity and Access Management devroom Scott Fryer , slides , video

The Adoptium project utilises infrastructure from a variety of providers, and due to the publicly open nature of the project, ensuring the supply chain infrastructure is secure is a key objective. This talk will discuss the implementation of tools to enable effective access audits, and how they have been implemented within the wider secure software development objectives at the project.

 "Open source leadership at scale, how 1300+ people improved Drupal’s multilingual features" ( 2024 )

Sunday at 10:15, 45 minutes, K.4.601, K.4.601, Designing Futures of FOSS Content Management with the Open Website Alliance devroom Gábor Hojtsy , slides , video

If you want to gather a crowd to implement ideas in open source projects, you need good people skills. It is not enough to have funding but especially important if you don't have funds. Get a glimpse at how Drupal’s multilingual initiative involved 1300+ people over 4.5 years under my leadership in dramatically improving multilingual features.

 "Unicode Support for GCC Rust" ( 2024 )

Sunday at 10:15, 20 minutes, K.4.201, K.4.201, GCC devroom Raiki Tamura , slides , video

The Rust programming language supports Unicode similarly to other modern languages. To handle Unicode characters efficiently and in a user-friendly way, Rust uses various techniques in parser and mangler.

I worked on Unicode support for GCC Rust last summer during Google Summer of Code 2023. At present, GCC Rust adequately handles Unicode characters, although there are still a few tasks left to be completed. In this talk, I will share my knowledge about Unicode and how modern compilers handle it.

 "LangChain From 0 To 1: Unveiling the Power of LLM Programming" ( 2024 )

Sunday at 10:15, 30 minutes, UB2.252A (Lameere), UB2.252A (Lameere), AI and Machine Learning devroom Stefano Fancello , slides , video

Unlocking the realm of Artificial Intelligence has never been more accessible than with LangChain and its seamless integration of external APIs or locally hosted OS Language Model Models (LLMs). In this talk, we embark on a journey from zero to Retrieval Augmented Generation (RAG).

Our hands-on exploration will guide you through the basics of LangChain and LLMs, demonstrating how just a few lines of code can transform any application into an intelligent powerhouse. We'll delve into the construction of a simple Python application, serving as a springboard for grasping more intricate functions and concepts within the LangChain framework.

Key Takeaways:

  • Querying LLMs via APIs: Witness the simplicity of tapping into the vast capabilities of Language Models through straightforward API calls.

  • Textual Data Handling: Learn to load text from a diverse array of documents, enabling your application to process information from various sources.

  • Text Splitting Techniques: Explore the world of text splitting, understanding different methods to break down textual data into meaningful units.

  • Introduction to Embeddings: Gain insights into the fundamental concept of embeddings, unraveling why they are pivotal in enhancing the intelligence of applications.

  • Vector Databases: Navigate the landscape of vector databases and understand their role in optimizing data retrieval and manipulation.

  • RAG (Retrieval Augmented Generation): Witness the transformative power of RAG as we leverage it to query LLMs over your dataset, showcasing a synergy between retrieval and generation.

  • Chains and other notable use cases

Join us in this concise yet comprehensive session, where we demystify LangChain and empower you to harness the full potential of LLM programming. Whether you're a novice or an experienced developer, this talk is your gateway to building intelligent applications with ease.

 "CRA & PLD: workshop" ( 2024 )

Sunday at 10:15, 45 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Tobie Langel Ciarán O'Riordan , video

This devroom is not like others! It is to develop future EU policy, not open source code! We seek to stimulate a genuine and open discussion that will become the fuel for good legislation in the future. We are building workshops where accepted participants will be grouped together with EU policy experts for a journey from the current state to a future state in each topic area. We aim to produce a report in each policy area arising from each workshop.

This block represents the full-participation content of this block.

 "How to create the universal operating system" ( 2024 )

Sunday at 10:20, 20 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), Declarative and Minimalistic Computing devroom Rutger van Beusekom , video

We foresee, moving into the future, the need to be able to connect anything and everything. This will lead to a scale of things that will become incomprehensible by mere mortals if we apply current day approaches. The main reasons for the predicted incomprehensibility are: combinatory logic complexities, further conflated by state and concurrency. In this talk I will discuss the different ingredients of the Dezyne language that aim to dispel these, among which is the formal basis for the language expressed in the mCRL2 formal language framework.

 "Open Source in 2024: boundaries, burnout, business" ( 2024 )

Sunday at 10:20, 30 minutes, UA2.114 (Baudoux), UA2.114 (Baudoux), Community devroom Mike McQuaid , slides , video

In this talk I will discuss how maintainers and contributors can enforce and respect boundaries, avoid and heal from burnout and how the "business" aspects of open source software e.g. open source businesses, raising funds, joining a non-profit/fiscal host can be done and help the project.

This will be done on the backdrop of my experiences maintaining Homebrew and, until recently, working on open source at GitHub and, now, trying to build a business around commercialising some aspects of my open source work.

 "Mind the gap: Building a cultural commitment to documentation maintenance" ( 2024 )

Sunday at 10:20, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Fiona Peers Artiaga , slides , video

In this talk, we'll discuss how Grafana Labs has maintained and evolved a culture that's committed to good technical documentation as projects evolve and mature. We'll review the challenges faced in engaging a wide swath of contributors while maintaining a docs-as-code model.

We'll share our challenges, both expected and unexpected with: - Integration to developer processes - Engaging with non-engineering contributors - Identifying tools that make sense - Determining the "No" - Using data to support cultural commitment - Expanding the contributor community

 "FreeCAD - state of the union" ( 2024 )

Sunday at 10:20, 30 minutes, H.1308 (Rolin), H.1308 (Rolin), Open Hardware and CAD/CAM devroom Yorik van Havre , slides , video

A general and generic (but, we promise, not annoying) talk to show recent advancements in FreeCAD, and what we are working on.

 "[JMAP] JMAP: Getting Started" ( 2024 )

Sunday at 10:25, 20 minutes, H.2213, H.2213, Modern Email devroom Ricardo Signes , slides , video

JMAP (RFC 8620, 8261, &c.) is a new protocol meant to replace IMAP, CalDAV, CardDAV, and to handle more kinds of data in the future. It keeps the most important technical properties of those protocols, but ditches many things that hold back improvements and hamper developers. It's built on commonly understood and implemented standards, which makes it easy to get up and running and easy to benefit from modern systems like push notifications. It's built as a syncing protocol, providing easy sync features in a data agnostic way.

JMAP is still young, but there are multiple implementations of both client and server. The most notable install of JMAP is at Fastmail, where it's the primary interface to all customer data.

This talk will cover what JMAP looks like, the principles under which it operates, and how to get started working with it. We will discuss the likely next steps in JMAP's rollout and how Fastmail uses JMAP internally for its own datatypes.

 "Data workflows: translating dbt to Apache Airflow" ( 2024 )

Sunday at 10:30, 25 minutes, UD2.218A, UD2.218A, Python Devroom devroom Tatiana Al-Chueyr , slides , video

This talk will discuss why and how to use dbt Core and Apache Airflow, open-source tools that support the development of data pipelines.

On the one hand, dbt is an extremely valuable tool for analytics engineers to build data transformation pipelines with SQL. On the other hand, Apache Airflow is a consolidated orchestration platform that supports the development, scheduling, and monitoring of batch-oriented workflows written in Python.

This talk discusses the benefits and reasons to use these two tools and a few approaches to integrate them, including using the open-source library Cosmos: https://github.com/astronomer/astronomer-cosmos

 "Remediating thousands of untracked security vulnerabilities in nixpkgs" ( 2024 )

Sunday at 10:30, 25 minutes, H.1302 (Depage), H.1302 (Depage), Nix and NixOS devroom Pierre Bourdon (delroth) , slides , video

Through vendoring, many packages in nixpkgs end up including obsolete and vulnerable versions of their dependencies. This is especially prevalent for Rust, Go, JavaScript, Java and .NET software using strict lockfiles. How bad is the current situation really? What can nixpkgs contributors do to improve it?

 "Covert Ground Based Synthetic Aperture RADAR using a WiFi emitter and SDR receiver" ( 2024 )

Sunday at 10:30, 25 minutes, UB2.147, UB2.147, Software-Defined Radio and Amateur Radio devroom Jean-Michel Friedt , video

Using a WiFi emitter as radiofrequency source illuminating a scene under investigation for slow movement (e.g. landslides), a Ground-Based Synthetic Aperture RADAR (GB-SAR) is assembled using commercial, off the shelf hardware. The dual-channel coherent Software Defined Radio (SDR) receiver records the non-cooperative emitter signal as well as the signal received by a surveillance antenna facing the scene. Spatial diversity for azimuth mapping using direction of arrival measurement is achieved by moving the transmitter and receiver setup on a rail along a meter-long path -- the longer the better the azimuth resolution -- with quarter wavelength steps. The fully embedded application runs on a Raspberry Pi 4 single board computer executing GNU Radio on a Buildroot-generated GNU/Linux operating system. All development files are available at https://github.com/jmfriedt/SDR-GB-SAR/

 "Keyboard Interactions" ( 2024 )

Sunday at 10:30, 20 minutes, H.2214, H.2214, Web Performance devroom Patricija Cerkaite , video

Imagine typing a cheerful "hello😁" on your keyboard, expecting a smooth and quick response, but instead, the browser stumbles, struggling to keep up with your spirited greeting and emoji. This talk will cover the technical aspects of measuring keyboard interactions in Chromium and how these interactions influence the Interaction to Next Paint metric.

 "Role of IGA in Access Management with Multilateral Identities" ( 2024 )

Sunday at 10:30, 30 minutes, K.3.401, K.3.401, Identity and Access Management devroom Slavek Licehammer , slides , video

Identity Governance and Administration (IGA), as a natural extension of Identity Management, is a core component of any IT infrastructure. It automates user processes (joiner, mover, leaver) and their accounts in the whole infrastructure. Access Management (AM) is an inherent partner of IGA. It provides authentication and, to some extent, authorization for end users. To reach the full potential of both IGA and AM, it is necessary to interconnect them. 

This talk will focus on open-source IGA midPoint and show how it can deliver extra features when well-integrated with an AM system. We will cover basics like providing information about users and their access to the AM. Then, we will focus on how information from AM can flow to IGA and enable features like just-in-time provisioning even to systems that do not support it natively. Moreover, the data from AM, like login timestamps, can enhance IGA reporting capabilities and even enable the preparation of complex access policies. That can further automate your processes for managing accounts and use to tighten security and even save money for usage and licencing costs.

Ultimately, we will examine the partially implemented feature of midPoint for managing multilateral identities and use them to create a unified user profile. It envisioned this feature would interlace traditional on-premise identities (HR, student registry, customer databases, etc.) with identity federations, social, national and other IDs.

 "SBOM: What's next?" ( 2024 )

Sunday at 10:30, 15 minutes, K.4.401, K.4.401, Software Bill of Materials devroom Vasu Chandrasekhara , slides , video

The Software Bill of Materials (SBOM) has frequently been cited as a crucial component in securing the software supply chain. Its value proposition is the ability to answer critical questions such as, "Am I vulnerable to CVE-XYZ?". In theory, SBOM should simplify risk assessment by prioritizing the remediation of vulnerable applications. However, when considering the software supply chain as a whole and the myriad potential threat vectors (https://slsa.dev/spec/v1.0/threats), it's clear that SBOM provides limited utility when securing end-2-end software delivery from producer to consumer.

How is an SBOM produced? How is it delivered? Does it bundle the artifacts it describes? Can you verify the provenance of the SBOM? These questions lead us to ask whether the SBOM has any real utility as a standalone entity.

In this session, we shall introduce the Open Component Model (OCM, https://ocm.software), an open standard and tooling that supports establishing a secure software supply chain, from producer to consumer. OCM's dedicated tooling packages security and compliance-relevant metadata, such as SBOMs, alongside the software artifacts. It includes support for signing operations, as well as secure transport of artifacts ensuring their integrity and provenance. Our session is ideal for those who find these questions intriguing and are eager to explore possible answers!

 "Enhancing Linux Accessibility: A Unified Approach" ( 2024 )

Sunday at 10:30, 55 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Distributions devroom Vojtech Polasek Lukáš Tyrychtr , slides , video

Join us for a discussion aimed at supporting Linux distribution developers in enhancing accessibility. As blind software engineers, we believe we can bring a unique perspective to this essential endeavor. We'll explore the challenges faced by blind users when using the Linux desktop environment, with a focus on constructive solutions. We will discuss two main topics: lack of preinstalled assistive technologies and accessibility problems of basic components of desktop environments. Our goal is to offer guidance and encouragement to developers, empowering them to create more inclusive experiences for all users. In our vision for the ideal accessibility scenario, Linux distributions seamlessly accommodate the needs of blind users. To achieve this, we'll stress the importance of collaboration among developers and upstream projects, ensuring that accessibility becomes a fundamental consideration in the development process. Additionally, we'll introduce the "Linux Accessibility Guide", a valuable resource that can assist developers in making graphical applications more accessible. This guide will offer practical insights and best practices to support their efforts. Join us as we embark on a journey to improve the accessibility of Linux distributions, fostering an environment where accessibility is a shared goal, benefiting blind users and the entire Linux community. Together, we can create a more accessible and inclusive Linux desktop experience.

 "WebAssembly, WebComponents and media filters all at once: a proposal to open the Web to variety of formats" ( 2024 )

Sunday at 10:30, 25 minutes, UB4.132, UB4.132, Open Media devroom Jerome Gorin , slides , video

The recent re-architecture of GPAC yielded a simple and modular way to create dynamic media pipeline for almost all use cases related to media content handling. However, the project mainly targets statically-compiled platforms since it is written in C.

The Bevara open-source project encapsulates this new GPAC architecture into the WebAssembly and Webcomponents framework in order to extend its use to browsers. This combination allows dynamic support of formats which aren’t natively supported by browsers.

Our project delivers the script for integrating this new syntax in common HTML5 web pages, and additionally includes an SDK to generate new decode and playback filters and a visual studio code plugin that aids in determining the right combination of decoders for given file format. These tools leave enough room for inserting any combination of container, codec, or features in your websites to support legacy, current, or experimental media formats. This is suitable not only for novice website designers, but for professionals from the open-source community who want to ensure that content is easily accessible on all browsers.

 "Strategic Sampling: Architectural Approaches to Efficient Telemetry" ( 2024 )

Sunday at 10:30, 25 minutes, UA2.220 (Guillissen), UA2.220 (Guillissen), Monitoring & Observability devroom Benedikt Bongartz Julius Hinze , slides , video

Microservices in distributed systems can produce huge amounts of telemetry data. But not all of this information is equally valuable when analyzing the broader system. Picking only data points that describe your system well is key for understanding your system while staying cost effective. Based on a real world example, this session discusses different sampling techniques such as head based and tail based sampling, and helps you find a suitable strategy to match your telemetry data. We will guide you through incrementally building architectures that evolve with your operation, empowering your system to adapt seamlessly.

After this session, you will be able to select the most valuable data points from your telemetry data and design an architecture around it.

 "What can Compiler-Explorer do for GCC" ( 2024 )

Sunday at 10:35, 15 minutes, K.4.201, K.4.201, GCC devroom Marc Poulhiès , slides , video

Compiler-Explorer is a website which main usage consists in entering a program in a text field and getting the corresponding assembly output, for a given set of user selected compilers. Compiler-Explorer has more than 2000 compilers installed and executes 4M compilations/week. Yet Compiler-Explorer can do much more than simply displaying the assembly: sharing a compilation, using libraries, executing the program, using various tools (on source code or on resulting binaries), visualizing the CFG, accessing its services through an API, etc.

For a compiler user, the website is useful to test how a given language construct is compiled, to optimize for size and/or performance, etc. For a compiler developer, the website can be used to share bug reproducer, test if a bug applies to other versions of the compiler, inspect IR dumps, use scripts to automate some tasks, etc.

I'm proposing a short presentation focused on how Compiler-Explorer can be used around GCC: compare the results of different compilations, inspect the Tree/RTL dumps, check the result for other compiler versions/arguments, etc. I'm also interested in getting some feedback and/or ideas for new features.

 "Performance testing and why even the imperfect one is important" ( 2024 )

Sunday at 10:35, 30 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Testing and Continuous delivery devroom Ondrej Babec , slides , video

In a growing world of data-driven applications and pipelines, performance testing should always be part of your roadmap to ensure that your application or pipeline provides your organization with the efficiency, reliability, and throughput needed to support your needs.

This session will discuss the concept of an "imperfect" performance test, what are common pitfalls, and what are some best practices to deliver solid performance tests to tackle real-world scenarios, highlighting how the "imperfect" performance test can provide invaluable insights into how your code will behave under stress, resource limitations, and unexpected usage patterns.

By the end of this talk, participants should have a broader and more in-depth understanding of the importance of performance testing, why it is essential to strive for perfection during such tests, and most importantly, that there are many lessons and benefits that even the most "imperfect" performance test can share.

 "More flexible user namespaces" ( 2024 )

Sunday at 10:35, 40 minutes, UB5.132, UB5.132, Kernel devroom Stephane Graber Aleksandr Mikhalitsyn , slides , video

The user namespace has been around for over a decade at this point yet it's adoption has been somewhat lagging. This can be tracked down to a lot of complexity that comes with it, from having to decide what uid/gid maps to use for what container, punching holes through the map to pass host resources, handle mapping of the owner of various files on the filesystem, ...

In this talk, we'll be looking at the current state of the user namespace, its most common limitations and annoyances, and then go over a proposed design for a second generation of user namespaces. Those rely on recent kernel features to provide a massively simpler and more flexible experience which should unblock the use of user namespaces for many!

Expect a rather demo filled talk, highlighting the current mechanics of the user namespace and the proposed improvements to it.

 "How much math can you fit in 700K?" ( 2024 )

Sunday at 10:40, 20 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), Declarative and Minimalistic Computing devroom Christophe de Dinechin , video

Last year, I presented DB48X, an open-source firmware for the DM42 and DM32 calculators from SwissMicros. The goal is to create the best scientific programmable calculator for engineers, based on (and improving upon) the user experience of calculators such as the HP48 series.

The DM42 has a serious limitation: there is about 700K of available flash space for the program, and about 70K of available RAM. So the question is: how much math can we fit in 700K.

This year, I would like to demonstrate what already works, including support for variable precision numbers (integers and decimal numbers), based numbers, complex numbers, vectors and matrices, symbolic computations, numerical integration and solving, engineering units, plots and charts, data processing, and quasi-complete support for RPL programming and debugging.

The focus of the talk would be on how to use C++ to write really compact and efficient code, notably three interesting points:

1/ C++ and garbage collection? Huh? (The DB48X object model)

2/ Using template meta-programming to generate data tables representing symbolic expressions and RPL programs

3/ Performance tuning vs. code space

I will also share some of the funniest or most interesting bugs I ran into (e.g.: It runs on USB power, but halts when on battery)

 "A Lazy Developer’s Approach to Building Real-Time Web Applications" ( 2024 )

Sunday at 10:40, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Markus Renschler , slides , video

Sometimes we need web applications to update their content in near real-time. Of course, we could write server-side components to do this, but modern message brokers can do the heavy lifting right out of the box by providing their service with web sockets. Experience how easy it is to use these web sockets on a web page with a few lines of javascript.

 "Breathing Life into Legacy: An Open-Source Emulator of Legacy Apple Devices" ( 2024 )

Sunday at 10:40, 30 minutes, UB5.230, UB5.230, Emulator devroom Martijn de Vos , slides , video

This talk presents QEMU-iOS, an open-source emulator of legacy Apple devices. I outline the process of emulating an iPod Touch 2G, discussing the technical challenges and reverse engineering methodologies applied. The talk starts with an overview of the project's goals and then outlines the reverse engineering process, utilizing tools like Ghidra for disassembling the Apple bootloader, XNU kernel, and other binaries. Then, I describe QEMU, a popular framework for emulation, and show how essential iPod Touch peripherals such as the touchscreen, storage, and display have been implemented. Finally, this talk touches upon the implications of open-sourcing this project, its contribution to the emulation and reverse engineering landscape, and its potential for future efforts to emulate newer Apple devices.

 "ML Guided Optimizations in LLVM" ( 2024 )

Sunday at 10:45, 30 minutes, UB2.252A (Lameere), UB2.252A (Lameere), AI and Machine Learning devroom Mircea Trofin , video

We motivate using ML policies to replace fine-grained compiler optimization decisions, otherwise made by heuristics, and discuss:

  • the current infrastructure available in the main repository of an open source compiler, Clang/LLVM;
  • lessons learned from the practical application of ML on two optimizations over the last few years: a register allocation policy, and a size-optimizing inliner policy, both trained with an open source solution, on both internal and open-source projects, such as Chrome and Fuchsia;
  • what we discovered as obstacles to the broader application of ML optimizations, and to broader community adoption.

We'll conclude with current status and investigation directions.

 "Unleashing RISC-V in Managed Runtimes: Navigating Extensions, Memory Models, and Performance Challenges in OpenJDK" ( 2024 )

Sunday at 10:45, 45 minutes, AW1.126, AW1.126, RISC-V devroom Robbin Ehn , slides , video

Explore the intricacies of incorporating RISC-V ISA into OpenJDK as we delve into the challenges and optimizations within a managed runtime environment. This FOSDEM talk explores the complexities of handling cross-modifying code and coping with the maze of RISC-V extensions. Additionally, we navigate multiple memory models, identify extensions through the hwprobe syscall, and delve into the need for trampolines. We look at the application of compressed instructions in the OpenJDK. Furthermore, we shed light on the default signed extension when crossing ABIs and dive into canonical NaN. Come and find out how to effectively use the RISC-V ISA!

 "[JMAP] OpenXPort JMAP: a PHP library for Data Portability" ( 2024 )

Sunday at 10:45, 10 minutes, H.2213, H.2213, Modern Email devroom Hans-Jörg Happel Joris Baum , slides , video

JMAP offers a standardized way to access data in email and groupware accounts covering email messages, address books, calendars, tasks and even more.

OpenXPort JMAP is a PHP library which can be used to, e.g., lift data from legacy systems (e.g., vCards on a server) for portability and migration or to add JMAP functionality to existing systems. E.g., OpenXPort JMAP is used in extensions that provide JMAP address book and calendar APIs to Roundcube Webmail and Nextcloud.

 "Protobom: The Universal I/O Layer of SBOM" ( 2024 )

Sunday at 10:45, 15 minutes, K.4.401, K.4.401, Software Bill of Materials devroom Adolfo García Veytia , video

In 2022 the Department of Homeland Security, an agency of the US government, announced the formation of an SBOM task force, formed by seven startup companies with a mission to create basic building blocks for the software bill of materials ecosystem.

Out of this effort, the protobom project was born.

Protobom is a project that offers a universal, format-neutral SBOM I/O layer designed to work with SBOM data in a unified way. The project frees developers from caring about the nuisance of ingesting and writing SBOMs. Through a single interface, applications can handle any SBOM format when reading, writing and transforming the data. Protobom is defined in protocol buffers which makes it ideal for storing and transmitting SBOM data. It also means that the project is multilanguage.

On top of the I/O layer, protobom has a rich graph API helping developers query, remix, diff and filter information read from SBOMs. The project is young, but it is already at the core of various supply chain security projects under the OpenSSF umbrella, including SBOMit and OpenVEX.

Join us and explore how protobom abstracts and puts SBOMs at your fingertips!

 "KiCad Status Update" ( 2024 )

Sunday at 10:50, 40 minutes, H.1308 (Rolin), H.1308 (Rolin), Open Hardware and CAD/CAM devroom Wayne Stambaugh , slides , video

An update of the happenings in the KiCad project since FOSDEM 2023.

 "Lessons learnt as a translation contributor the past 4 years" ( 2024 )

Sunday at 10:50, 30 minutes, K.3.201, K.3.201, Translations devroom Tom De Moor , slides , video

Over the past four years, 1000+ contributors helped us shipping 21 languages, including 2 right-to-left languages and two variants of Chinese and several Cyrillic languages.

Learn how we nurture our community to keep people on board and make them grow

Learn from our mistakes and reduce the workload of your translators and your developers.

Learn how to avoid developers creating text hard to translate

Learn how modifying our documentation site almost became a gigantic task for our translators

 "Web Performance at Mozilla and Wikimedia" ( 2024 )

Sunday at 10:50, 10 minutes, H.2214, H.2214, Web Performance devroom Dave Hunt Peter Hedenskog , slides , video

A brief introduction about the web performance work at Mozilla and Wikimedia.

 "Where are the limits of open communities?" ( 2024 )

Sunday at 10:55, 30 minutes, UA2.114 (Baudoux), UA2.114 (Baudoux), Community devroom Anezka Muller , slides , video

Being an open organization or open community has many benefits, described countless times. Even some risks, mostly cultural, are sometimes being mentioned. But let's take a look at what questions (or risks) an open approach may carry.

  • What does being an open community actually mean?
  • How to ensure information security in an open community?
  • How to set up communication in the community that is both open and efficient?

In the Česko.Digital community, we have more than 6000 members from different areas. There are volunteers, people from non-profits or public administration, representatives of various businesses, supporters, and more. Since the beginning, we have built our community on open principles in many aspects of our functioning. However, we have reached a point where we are running into the possible limits of this approach. In the past months, we have been looking for answers to (not only) the questions stated above, and I would like to share with you the insights from our journey.

 "[JMAP] Intro to Ltt.rs a JMAP client for Android" ( 2024 )

Sunday at 10:55, 10 minutes, H.2213, H.2213, Modern Email devroom Daniel Gultsch , slides , video

Ltt.rs (pronounced "Letters") is a proof of concept JMAP client for Android. It is build using Android Jetpack and a headless email client / JMAP library simply called "jmap-mua". It features native Autocrypt and UnifiedPush support. Ltt.rs is merely a side project but aims to demonstrate how modern protocols and libraries can simplify the development process a lot.

 "Unlocking Secret Analysis in GCC Static Analyzer" ( 2024 )

Sunday at 10:55, 25 minutes, K.4.201, K.4.201, GCC devroom Pierrick Philippe , slides , video

GCC Static Analyzer (SA) is a highly promising tool aiming to enhance the compiler with extensive analysis capabilities, such as through the use of a plugin API. We used it to implement an analysis targeting constant-time vulnerabilities. Most of the existing tools rely on formal methods and remain barely used (see Jancar et al.). This study conclude that compiler-based tools are well-received among cryptographic developers.

Our initial tests highlighted that the primary design of the analyzer's inner state machines heavily relies on pointer-related analysis, which leverages alias analysis. However, it was triggering undesirable side effects in our case. The needs for our analysis is to also be able to track state for lvalue, alongside rvalue, depending of the target's type.

The subject of this talk is to introduce a practical case where this behavior would allow such analysis to be done, especially since the SA codebase is already heavily prepared for it. A proof-of-concept to give this ability to the SA has been implemented and aims to be merged after feedback from the community on the idea. Problems caused by some aspects of C semantics arise and will be interesting to discuss (e.g., the thin frontier between arrays and pointers).

Source code of the project is publicly available here: https://gitlab.inria.fr/pphilipp/gcc-plugin-ct.

Prior knowledge for attending: GCC internals and GCC SA basic knowledge, C semantics.

 "OpenPrinting - We make printing just work!" ( 2024 )

Sunday at 11:00, 50 minutes, K.1.105 (La Fontaine), K.1.105 (La Fontaine), Main Track - K Building Till Kamppeter , slides , video

Conference attendees to Till:

Printing works better than under Windows or Mac!

Michael Tunnell, TuxDigital, says in one of his videos:

There is no such thing like a pain-free experience of printing under Windows ... Linux printing is ridiculously good ...

Till Kamppeter, leader of the OpenPrinting project, will give an overview of his work.

Going through OpenPrinting's history the components of the printing infrastructure of modern Linux (and other Posix-style) operating systems will get shown.

  • How did the Internet Printing Protocol (IPP) with the printing system CUPS being an implementation of it simplify printing a lot?
  • The printer driver challenge, good and bad cooperation with manufacturers, packaging and distributing ...
  • Desktop integration, GUI toolkits, print dialogs, setup tools, portals, ...

Especially also the New Architecture of all-IPP printing and scanning and also the integration in immutable OS distributions will be treated ...

And we will also give a short update on Microsoft's reaction to all the development, the introduction of their new Windows Protected Print architecture, going all IPP and dropping support for classic printer drivers as we do with CUPS 3.x, to make printing more secure and easier to use ... So IPP Everywhere (driverless IPP printing) is actually everywhere now ...

OpenPrinting web site
Monthly OpenPrinting News

Destination Linux Interview of Till Kamppeter and Michael Sweet

 "FusionIAM - a full Open Source Identity & Access Management solution" ( 2024 )

Sunday at 11:00, 30 minutes, K.3.401, K.3.401, Identity and Access Management devroom Clément OUDOT , video

The goal of the FusionIAM Community is to put together open source software used to build a global IAM (Identity and Access Management) solution.

Most of the time all the softwares present in the FusionIAM community are well know separately but never in the context of a global IAM solution. FusionIAM project will provide an easy way to deploy and configure the whole stack: * LDAP directory * Management interface * White pages * Web Services * Authentication portal * Access control * Synchronization connectors

FusionIAM provides containers for an smooth deployment, either on a virtual machine or on a kubernetes server.

 "Design of a follow-up QO-100 payload -" ( 2024 )

Sunday at 11:00, 25 minutes, UB2.147, UB2.147, Software-Defined Radio and Amateur Radio devroom Frank Zeppenfeldt , slides , video

The satellite amateur community has often spurred innovations in the field of satellite communications. The QO-100 payload in geostationary orbit has opened up a new community that is familiar with SDRs and experiments with waveforms.

The satellite communications group of the European Space Agency (ESA) would like to support the collection of requirements, ideas and designs for a follow-up of - in collaboration with IARU and various AMSAT communities.

We would like to collect lessons learned and ideas on a QO-100 follow up, and trade-off some design together with amateurs, industry and ESA.

This talk will present some first ideas, but is in particular meant to reach out to the SDR community on this initiative.

 "Alexandria3k: Researching the world's knowledge on your laptop" ( 2024 )

Sunday at 11:00, 50 minutes, Janson, Janson, Main Track - Janson Diomidis Spinellis , slides , video

Sustained exponential advances in computing power, drops in associated costs, and Open Science initiatives allow us to process on a personal computer the metadata from most major international academic publishers. Alexandria3k is an open-source software library and tool that builds on this capability to allow the conduct of sophisticated bibliometric and scientometric studies as well as systematic literature reviews in a transparent, repeatable, reproducible, and efficient manner. In total the Alexandria3k system provides relational access to 1.9 TB of data comprising more than 4.2 billion records of published works, authors, institutions, patents, and journals. Diverse examples demonstrate the system's use through ad hoc queries and the population of domain-specific databases to look into questions such as the disruption brought by new scientific findings, hyper prolific authors, researcher collaboration during the COVID-19 pandemic, articles written by thousands of authors, the evolution of scientific publishing, and the dependencies between scientific fields. The system's implementation is based on SQLite virtual tables and some interesting tricks regarding table indexing and population.

 "Making FOSS CMS easier to teach with shared competency standards" ( 2024 )

Sunday at 11:00, 45 minutes, K.4.601, K.4.601, Designing Futures of FOSS Content Management with the Open Website Alliance devroom Florian Schmitt , slides , video

Though underlying technologies and principles are shared and overlap, teaching FOSS CMS solutions is a divided matter, each built on separate documentations, publications, and certifications. This hampers accessibility for both students, who want to familiarize themselves with a CMS project, and teachers, who want to define an effective curriculum.

Having access to concise skill definitions for a CMS project helps teaching it, helps identify required learning goals and shows what a person already knows when starting to learn about CMS. SkillDisplay wants help creating a shared standard, highlighting similarities and synergies between different CMS projects, offering people easier access to FOSS technologies.

 "A slow migration from Django templates to Vue+GraphQL" ( 2024 )

Sunday at 11:00, 25 minutes, UD2.218A, UD2.218A, Python Devroom devroom Jonathan Weth Dominik George , slides , video

The AlekSIS® project, a free and open school information system helping with digitisation of school organisation, originally had a frontend based on the server rendered Django template engine as a reliable and easy solution. As our frontends got more complex and we had to built interactive components like a timetable builder, we ran into limits of this system. In addition to that, the UI framework we had been using got out of support. So we decided to develop a completely new frontend as a single page application based on Vue.js and the UI framework Vuetify, connecting to the Django backend using a GraphQL API.

But because of our large, modular ecosystem with many different apps, we knew we never would be able to migrate everything to the new frontend within one release. Therefore, the team faced the challenge to integrate pages with the old frontend together with new pages in the new single page application. The core of this system is an abstraction layer that allows daisy chaining the Vuetify views with server-rendered pages, including sugar that lets legacy Django pages communicate with the client-side UI framework.

We would like to share our experiences about this complex migration and what problems to expect and how we solved them.

(Allergen declaration: May contain traces of JavaScript.)

 "Scheme in the Browser with Guile Hoot and WebAssembly" ( 2024 )

Sunday at 11:00, 20 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), Declarative and Minimalistic Computing devroom Robin Templeton , video

Guile Hoot is a free and open source WebAssembly toolchain and Scheme compiler that is opening doors for all programming languages to run within Wasm environments. The Guile Hoot project is being developed by the Spritely Institute, a 501(c)(3) nonprofit organization, as part of its mission to build the next generation of decentralized infrastructure for networked communities.

In this talk, I'll cover:

  • What is WebAssembly and why is it important?
  • How does Guile Hoot work? What Wasm 2.0 features have influenced its design, and how do these features simplify implementation of other high-level programming languages?
  • How might recent Wasm proposals further improve Wasm as a compilation target for high-level languages?
  • What features does Guile Hoot currently support, and what's next?
  • How you can get involved with these efforts?

Along the way, I'll show code examples and live demos of applications built with Guile Hoot.

 "Understanding how the web browser works, or tracing your way out of (performance) problems" ( 2024 )

Sunday at 11:00, 25 minutes, H.2214, H.2214, Web Performance devroom Alexander Timin , slides , video

Event tracing and browser engineering — tales about and from 8 years of Chromium engineering and using event tracing as a part of browser development, including: - chrome://tracing and Perfetto (perfetto.dev): past, present and the future - Understanding and instrumenting complex components (task scheduler, IPC, process model) though tracing - (trying to) understanding this web thing - Something that vaguely resembles inspiration for other complex projects

 "Know Your Ingredients: Security Starts With the SBOM" ( 2024 )

Sunday at 11:00, 30 minutes, K.4.401, K.4.401, Software Bill of Materials devroom Stephen Chin , slides , video

One of the most neglected parts of application security is the ingredients that go into developing software. Over 80 percent of code used in enterprise applications comes from open-source dependencies, but how much attention goes towards the software bill of materials that tells you the provenance and security of those packages?

This is analogous to a restaurant where you invest in modern decor, professional chefs, and world-class service. But if you don’t get fresh, quality ingredients delivered daily, the taste and hygiene of the food will suffer and the restaurant won’t be successful. Securing the software supply chain is a huge undertaking for the entire tech industry, and we will talk about some of the ongoing efforts by open-source projects, foundations, and corporations to help us all know the SBOM of our ingredients.

 "Nix for genetics : powering a bioinformatics pipeline" ( 2024 )

Sunday at 11:00, 5 minutes, H.1302 (Depage), H.1302 (Depage), Nix and NixOS devroom Alexis Praga , slides , video

Diagnosing genetic diseases presents significant challenges. Modern sequencers produce vast amounts of data, requiring intensive processing and filtering before analysis. The intricate mechanisms in rare diseases necessitate a high level of expertise from biologists to identify potential causes. This is why it is crucial to demonstrate these results come from accurate, efficient, and reproducible bioinformatics pipelines. Indeed, accuracy is vital for patient diagnosis, efficiency is needed to handle the growing data volume and patient backlog, and reproducibility is essential to ensure the quality of the results.

This talk is aimed at a diverse audience and will give feedback on Nix integration in our workflow. It will focus on how Nix significantly improved reproducibility and discuss some challenges we encountered, especially with large databases and running on high-performance computing architectures.

 "CRA & PLD: CRA conformance for Open Source Projects" ( 2024 )

Sunday at 11:00, 5 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Marta Rybczynska , video

Last year's FOSDEM has seen much discussion about the impact of CRA on Open Source projects. This year, we can discuss changes made in the draft and their consequences. Marta will discuss two of them: the introduction of the concept of "stewards" in the Cyber Resilience Act and the challenge of making the conformance work in the open and not proprietary.

 "GStreamer: State of the Union 2024" ( 2024 )

Sunday at 11:00, 25 minutes, UB4.132, UB4.132, Open Media devroom Nicolas Dufresne , slides , video

GStreamer is a popular multimedia framework making it possible to create a large variety of applications dealing with audio and video. Since the last FOSDEM, it has received a lot of new features: Improved Rust support, a lot of new elements written in Rust, RTP improvements for WebRTC, new elements for hardware accelerators and more. I will go over those major improvements and explain who they can be most useful for. Finally, I'll will look forward at the next releases.

GStreamer is a highly versatile plugin-based multimedia framework that caters to a whole range of multimedia needs, whether desktop applications, streaming servers or multimedia middleware; embedded systems, desktops, or server farms. It is also cross-platform and works on Linux, *BSD, Solaris, macOS, Windows, iOS and Android.

This talks targets everyone who cares about Free and Open Source multimedia on embedded systems. GStreamer is the standard multimedia framework, not only on the Linux desktop, but most importantly, in embedded Linux systems.

 "Reducing Costs and Improving Performance With Data Modeling in Postgres" ( 2024 )

Sunday at 11:00, 50 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), PostgreSQL devroom Charly Batista , slides , video

In this session we'll unravel the intricacies of PostgreSQL's internal data organisation, shedding light on the Free Space Map (FSM) mechanism. Delving into the heart of PostgreSQL's data architecture, we'll explore ways to strategically reorganise the data model capitalising on data alignment within blocks. The goal? To demonstrate techniques that not only optimise disk space usage but also enhance memory efficiency, potentially leading to significant cost savings and performance improvements.

Discover the art of aligning data inside blocks, a crucial facet often overlooked in PostgreSQL optimisation. By strategically aligning data, we can wield the power to reduce the footprint of stored information on both disk and memory. As we navigate through practical examples and insightful strategies, you'll gain a new understanding of how these optimisations directly impact your budgetary considerations and system performance.

 "Unpack Phabricator, Welcome Phorge - Forking the Opinionated Open Source Project Manager" ( 2024 )

Sunday at 11:00, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Valerio Bozzolan , slides , video

Phabricator® was the Libre and Open Source suite for Collaboration on Software Projects. Unfortunately it was discontinued in June 2021.

Sail for adventure through legacy, to community, and let's explore Phorge, that is, the fork of Phabricator.

Is Phorge adorable, beloved, superlative? Is Phorge opinionated, over-engineered, Libre and Open Source suite, for Collaboration on Software Projects? Is Phorge supporting Git, Subversion, Mercurial? Is Phorge supporting many components and 60+ shiny happy databases holding hands? is Phorge adopted by Wikimedia Foundation?

Join this session, and join a thrilling narrative started from a popular blue proprietary social network (Serious business), to a community loving software, Easter eggs and cowsay.

The talk is presented from (originally) a random casual Phorge contributor who becomed Maintainer to share this experience at FOSDEM, especially to newcomers and curious.

For hackers: bring your patch for a fast review.

For newcomers: bring your questions.

Contents

  • is Phorge good for my Organization?
  • differences between Phorge and GitLab, GitHub, Launchpad, Mantis, ...
  • what's new in Phorge (that is not in Phabricator)
  • practical workflows and pitfalls
  • how to join the Phorge community
  • how to propose code patches

All of this is possible only thanks to the original author of Phabricator: Evan Priestley, that always blesses our code. We will conclude with a thanksgiving to Evan (probably without Evan), a group photo (probably without Evan), and esoteric stickers.

Resources

  • https://we.phorge.it/project/members/3/ - blessed committers
  • https://we.phorge.it/w/installation_and_setup/ - installation tips
  • https://en.m.wikibooks.org/wiki/Phabricator_Administrator's_Handbook - Administrator handbook

If you take Photos, please tag #Phorge in the Fediverse. Thank you!

 "Telemetry BOF" ( 2024 )

Sunday at 11:00, 60 minutes, AW1.121, AW1.121, BOF - Track C Alasdair Kergon

Implementing telemetry well is hard. On the one hand, some projects would like to know as much as possible about their users so they can focus their development efforts where they would be the most effective. On the other hand users are rightly reluctant to give up what is their private data. Data can range from configurations and use of features to performance.

Numerous projects have tried, some more successfully than others. The Linux Foundation's Telemetry and Data Collection Policy provides one example of a framework for projects to operate within. A recent example of the tensions can be seen in the discussions following a proposal to introduce telemetry into the Fedora Desktop.

Meanwhile various sophisticated techniques are being developed that try to square the circle of obtaining detailed telemetry while simultaneously preserving privacy and making it hard for people to deliberately skew the data. One example is the IETF's Distributed Aggregation Protocol and another is Google's RAPPOR.

This session is an opportunity for projects interested in these developments to share experiences and consider what might be gained by collaboration.

 "Automatic boot assessment with boot counting" ( 2024 )

Sunday at 11:05, 5 minutes, H.1302 (Depage), H.1302 (Depage), Nix and NixOS devroom Julien Malka , video

Ever had the bad surprise of accidentally killing your server by rebooting in a bad NixOS generation and needed physical intervention ? Boot counting is a feature of systemd-boot that will save you from these unfortunate situations and that is now available in NixOS. This talk will consist of quick explanation and demo of the feature.

 "CRA & PLD: rapporteur playback" ( 2024 )

Sunday at 11:05, 10 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Mirko Boehm , video

This devroom is not like others! It is to develop future EU policy, not open source code! We seek to stimulate a genuine and open discussion that will become the fuel for good legislation in the future. We are building workshops where accepted participants will be grouped together with EU policy experts for a journey from the current state to a future state in each topic area. We aim to produce a report in each policy area arising from each workshop.

During this session, our rapporteur for the block Mirko Boehm, will share the take-aways he collected as he listened to speakers, participants and their interactions.

 "Unifying Observability: The Power of a Common Schema" ( 2024 )

Sunday at 11:10, 25 minutes, UA2.220 (Guillissen), UA2.220 (Guillissen), Monitoring & Observability devroom Christos Markou Alex Wert , slides , video

Embark on a journey with us at FOSDEM 2024 as we delve into the profound impact of a common schema in observability. Drawing from our firsthand experience as part of the collaborative efforts between ECS and OpenTelemetry projects, we'll unveil the challenges, triumphs, and the incredible community spirit driving this convergence. Together, let's explore how this unified schema is reshaping the landscape of logs, metrics, traces, and security events, and why community involvement is at the heart of this transformation.

 "squash the flakes! - how to minimize the impact of flaky tests" ( 2024 )

Sunday at 11:10, 30 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Testing and Continuous delivery devroom Daniel Hiller , slides , video

Flakes aka tests that don’t behave deterministically, i.e. they fail sometimes and pass sometimes, are an ever recurring problem in software development. This is especially the sad reality when running e2e tests where a lot of components are involved. There are various reasons why a test can be flaky, however the impact can be as fatal as CI being loaded beyond capacity causing overly long feedback cycles or even users losing trust in CI itself.

For the KubeVirt project we want to remove flakes as fast as possible to minimize the number of retests required. This leads to shorter time to merge, reduces CI user frustration, improves trust in CI, while at the same time it decreases the overall load for the CI system.

We start by generating a report of tests that have failed at least once inside a merged PR, meaning that in the end all tests have succeeded, thus flaky tests have been run inside CI. We then look at the report to separate flakes from real issues and forward the flakes to dev teams.

As a result retest numbers have gone down significantly over the last year.

After attending the session the user will have an idea of what our flake process is, how we exercise it and what the actual outcomes are.

 "Typhon: Nix-based continuous integration" ( 2024 )

Sunday at 11:10, 5 minutes, H.1302 (Depage), H.1302 (Depage), Nix and NixOS devroom Paul-Nicolas Madelaine Lucas Franceschino , slides , video

Typhon is a prototype for Nix-based continuous integration, iterating over the concepts of Hydra and introducing actions to replace plugins. It is fully declarative and comes with a webapp.

 "rix: an R package for reproducible dev environments with Nix" ( 2024 )

Sunday at 11:15, 5 minutes, H.1302 (Depage), H.1302 (Depage), Nix and NixOS devroom Bruno Rodrigues , video

{rix} is an R package that provides functions to help you write Nix expressions: these expressions can then be used by the Nix package manager to build completely reproducible development environments. These environments can be used for interactive data analysis or running pipelines in a CI/CD environment. Environments built with Nix contain R and all the required packages that you need for your project: there are currently more than 80.000 pieces of software available through the Nix package manager, including the entirety of CRAN and Bioconductor packages. The Nix package manager is extremely powerful: it not only handles all the dependencies of any package extremely well, it is also possible with it to reproduce environments containing old releases of software. It is thus possible to build environments that contain R version 4.0.0 (for example) to run an old project originally developed on that version of R.

With Nix, it is essentially possible to replace {renv} and Docker combined. If you need other tools or languages like Python or Julia, this can also be done easily. Nix is available for Linux, macOS and Windows (via WSL2).

 "CONFEDSS: Concolic execution and the puzzling practice of peripheral emulation" ( 2024 )

Sunday at 11:15, 45 minutes, UB5.230, UB5.230, Emulator devroom Jeffrey Rongen Luke Serné , slides , video

One of the tasks at the device forensics team of the Netherlands Forensic Institute is the reverse engineering of soft- and hardware devices for the judicial system. This task spans a lot of different abstractions in the IT ecosystem, from network protocols, to filesystems, encryption algorithms etc. One very active topic of research is the reverse engineering of low level firmware. This topic proves to be quite a bit more difficult than a lot of others on the list.

One of the big challenges in the reverse engineering of low-level firmware is the lack of hardware abstractions and known interfaces (e.g. syscall interfaces and libraries with known exported functions). Furthermore, this type of firmware is oftentimes found in on-die ROM, which provides a good incentive to keep it's size small, as this type of memory can be expensive. This usually means there is not a lot of space for (debug) strings either.

These factors making static reverse engineering quite a tough challenge, which in turn makes dynamic reversing more attractive. However, this is not an easy task. The lack of hardware abstractions and the presence of memory-mapped peripherals makes emulation no small feat. Outside of some OSINT and cross-referencing, the best one can do is guess at the working of some of these unknown peripherals. But is there a smarter way of guessing?

In this talk, we present CONFEDSS, a project for Concolic Firmware Emulation using Dynamic State Selection. This project aims to make it easier for reverse engineers to dynamically reverse low-level firmware by emulating it and using dynamic state selection as an approach to peripheral simulation. We will give a detailed insight into the problems usually encountered with low-level emulation and show it's workings with a live demo, which will hopefully inspire you to use it the next time you want to emulate some BIOS logic for exotic hardware or find where that weird driver quirk comes from.

 "[Servers] Exchanging Microsoft: Implementing 27 MS Exchange Protocols & APIs in OSS with grommunio" ( 2024 )

Sunday at 11:15, 20 minutes, H.2213, H.2213, Modern Email devroom Jan Engelhardt , slides , video

A few years ago, in Vienna, we founded grommunio. With the help of many tools, from Dovecot to Postfix and many more, a revolutionary open-source groupware was born. On top of the classic mail server stack, we implemented APIs and protocols of Microsoft's Exchange (and later MS 365 server) in free, opensource versions, one by one. This way, we built a "drop-in"-replacement for MS Exchange that supports unmodified, plugin-free clients with Outlook, Android, Apple and Web clients out of the box. It comes with chat, video conferences, file sync, administration, domain, user and account management and much more. Most recently, we implemented Exchange Web Services. In this talk, we will have a look at how we re-implemented the protocols and how it works with clients. We'll talk about problems, solutions and quirks of our work and the challenges of both supporting many older versions and following Microsoft's newest developments. Our support for Microsoft Exchange (and other) protocols follows the protocol specifications of EWS, EAS (Exchange ActiveSync), OXCRPC/OXCROPS, MAPI/HTTP and others.

 "Practical Introduction to Safe Reinforcement Learning" ( 2024 )

Sunday at 11:15, 15 minutes, UB2.252A (Lameere), UB2.252A (Lameere), AI and Machine Learning devroom Kryspin Varys , slides , video

This talk is about the basics of safe reinforcement learning and its use cases. I will discuss what makes a reinforcement learning algorithm safe and the motivation for pursuing safety. Furthermore, the role of open-source software such as Gymnasium, SUMO and Melting-pot in developing reinforcement learning algorithms will be highlighted. Finally, I will present two practical scenarios detailing how one might implement safe reinforcement learning algorithms.

For this talk I do not assume any knowledge of reinforcement learning and all the necessary background information will be provided.

 "FOSS policy engagement: [begin workshop] OSS Exchange with policy makers and policy support of OSS developers two faces of the same coin?" ( 2024 )

Sunday at 11:15, 10 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Alexander Sander , video

How should the open source community exchange with policy makers? How can policy makers support open source development? This is the start of a two hour workshop.

 "RISC-V Bootstrapping in Guix and Live-Bootstrap" ( 2024 )

Sunday at 11:20, 20 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), Declarative and Minimalistic Computing devroom Ekaitz , slides , video

Status report for 2023, and what's coming up next This talk is a status report of the RISC-V bootstrapping effort in Guix and Live-bootstrap. Following my previous talk on the subject, here I will explain what we did, what is left to do and how the RISC-V Bootstrapping process can be an interesting piece of work for other software distributions. The talk mentions GNU Mes, TinyCC, GCC, live-bootstrap, GNU Guix and other related projects.

 "Snap!" ( 2024 )

Sunday at 11:20, 60 minutes, H.1301 (Cornil), H.1301 (Cornil), FOSS Educational Programming Languages devroom Jens Mönig Jadga Huegle , video

Build Your Own Blocks - Build Your Own Mind

Snap! is a broadly inviting programming language for kids and adults that's also a platform for serious study of computer science, jointly developed by the University of California, Berkeley and SAP Walldorf. In this talk the developers invite the audience on a lab-tour showcasing current developments of both the language and the pedagogy, focusing on demystifying generative artificial intelligence and using computational methods to explore societal insights.

visit Snap! at https://snap.berkeley.edu

 "geOrchestra Spatial Data Infrastructure" ( 2024 )

Sunday at 11:20, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Emilien Devos , slides , video

geOrchestra is a powerful open-source solution for managing and sharing geospatial data. It’s a ready to use, complete, Spatial Data Infrastructure.

geOrchestra is a software composed of well known open source components interconnected with each other: GeoNetwork, GeoServer, Mapstore and PostgreSQL.

The project geOrchestra started back in 2009 when the Brittany spatial data infrastructure was under construction. Users and developers decided to place the source code under an open license on GitHub. It has since received many contributions, and it is now used by hundreds of spatial data infrastructure around the world.

In this talk, I'll present the geOrchestra software, rapidly cover all of its components and the use cases.

 "Yacking about Bison" ( 2024 )

Sunday at 11:20, 20 minutes, K.4.201, K.4.201, GCC devroom James Lowden , video

Lessons and scars from slaying the COBOL dragon with Bison, or How I learned to live with Dangling Else.

COBOL grammar is a master class in parsing challenges. This is a rubber-meets-the-road talk about real-world parsing problems solved with real-world tools.

 "Preparing a 30 year-long project with Nix and NixOS" ( 2024 )

Sunday at 11:20, 5 minutes, H.1302 (Depage), H.1302 (Depage), Nix and NixOS devroom Rémi (minijackson) , slides , video

Designing particle accelerators does come with its challenges. One of those is the very long life of the project. In this talk we're going to discuss how we're using both Nix and NixOS, and most notably its reproducibility properties to go the distance, and some of the difficulties we've encountered so far.

In this presentation I'm going to present:

  • the particle accelerator project
  • the software components that goes inside, and the EPNix packaging project
  • how we integrated those components with Nix and NixOS
  • how we can cache dependencies to ensure their availability

 "Linux Kernel TPM security and Trusted Key updates" ( 2024 )

Sunday at 11:20, 40 minutes, UB5.132, UB5.132, Kernel devroom James Bottomley , video

The Linux Kernel TPM subsystem has been somewhat static for a while. For TPM2 (the standard TPM nowadays) it is used for IMA (PCR extensions), Periodic random number seeding and Trusted Keys (effectively TPM sealed data which may be piped securely to userspace because it can only be unwrapped by the kernel). The big upcoming change is adding encryption and HMAC security to all TPM transactions because of the threats from Interposers (hardware corrupted to snoop the TPM bus). This will be completely transparent to users, but infrastructure can be added to detect interposer compromises. This talk will outline how this works and the null seed scheme for detecting interposers.

TPM keys (really TPM sealed data) have been around for a long time and can be used for things like storing the symmetric key for LUKS based dm-crypt. A recent innovation for the kernel was to adopt the standardised form for ASN.1 keys (so other tools can seal and unseal them) and the latest innovation will be to add TPM policy (including signed policies) to kernel keys. This talk will detail what TPM policy is, how it works and how it can be used by the kernel.

 "Hedy Workshop" ( 2024 )

Sunday at 11:20, 60 minutes, J.1.106, J.1.106, FOSDEM junior Jesús Pelay Pink van de Hel

Hedy is a gradual programming language to teach children programming. Gradual languages use different language levels, where each level adds new concepts and syntactic complexity. At the end of the Hedy level sequence, kids master a subset of syntactically valid Python.

Anyone aged 7 to 17 can visit the Hedy workshop and learn to how to use Hedy.

Registration will be required for this session. Use the following link to register.

 "FOSS policy engagement: a CRA retrospective." ( 2024 )

Sunday at 11:25, 10 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Enzo Ribagnac Maarten Aertsen , video

Coming soon.

 "Running NLnet on NixOS" ( 2024 )

Sunday at 11:30, 25 minutes, H.1302 (Depage), H.1302 (Depage), Nix and NixOS devroom Jos van den Oever , slides , video

In this presentation, we explain how and why NLnet runs its systems on NixOS. NLnet has grown from a small organization handling tens of grants per year to one that handles hundreds of grants per year. The number of funding proposals is more than five times as high. Still, NLnet runs mostly on Free Software. In the last years we have moved most of our systems to NixOS and keep our system setups in a single git repository handled with nixos-rebuild. In this presentation, we explain how and why we do so.

 "Django migrations, friend or foe? Optimize them for testing" ( 2024 )

Sunday at 11:30, 25 minutes, UD2.218A, UD2.218A, Python Devroom devroom Denny Biasiolli , slides , video

Django migrations are a great tool for keeping track of changes you made to your models over time. After years of changes in a project they can become very numerous and you may notice that it takes a long time to create the test database.

  • inspecting django migration commands
    • makemigrations
    • migrate
    • showmigrations
    • sqlmigrate
  • analyzing test performances
  • optimizing migrations

 "Add user self-management, brokerage and federation to your infrastructure with Keycloak" ( 2024 )

Sunday at 11:30, 30 minutes, K.3.401, K.3.401, Identity and Access Management devroom Alexander Schwartz , slides , video

Once an organization has rolled out single-sign-on, some of the next challenges are how to enable user self-management, integrating the user base of other organizations, and using social logins.

Keycloak is an Open Source Identity and Access Management (IAM) solution that is well-known for its single-sign-on capabilities based on OpenID Connect and SAML. It also provides among other features like identity brokerage, federation, and user self-management. With the latest additions around dynamic user profiles, this is getting even more powerful.

This talk demos Keycloak's features and shows how it hides the configuration and complexity of these integrations from the client applications which only need to support either OpenID Connect or SAML.

Keycloak homepage: https://www.keycloak.org/

 "Long Term Effort to Keep Translations Up-To-Date" ( 2024 )

Sunday at 11:30, 30 minutes, K.3.201, K.3.201, Translations devroom Andika Triwidada , slides , video

We will compare efforts to keep Indonesian translation up-to-date in last 5+ years for GNOME, LibreOffice, and Ubuntu among others. How many translators needed? How much work?

 "SPINO - Versatile telecommunication solution suitable for nanosatellites and Cubesats." ( 2024 )

Sunday at 11:30, 25 minutes, UB2.147, UB2.147, Software-Defined Radio and Amateur Radio devroom Christophe Mercier , slides , video

SPINO is a versatile telecommunication solution suitable for nanosatellites and Cubesats. Operating in UHF and VHF bands, it features tight integration with amateur radio service and the worldwide amateur radio community. The SPINO SC board will be a pre-validated open source brick available off the shelf for any nanosatellites mission. The development of the SPINO SC board was initiated by enthusiats involved in non-profit / educational space projects. Since 2019, the project is supported by the joint efforts of two non-profit organizations: AMSAT-Francophone (site.amsat-f.org) and the hackerspace Electrolab (electrolab.fr). Thanks to the support provided to "UVSQ-SAT" mission by the amateur radio community (data collection, ground segment support, spectrum coordination support...), LATMOS offered to integrate this experimental board into its new satellite "INSPIRE-Sat 7” as an additional payload. The SPINO SC board features functions dedicated to the spacecraft infrastructure: Receiver function for remote control commands from ground… Managed or Autonomous beacon (support for OBC failure) Data stream (uplink and downlink) Antenna deploy support And functions dedicated to the amateur radio community: a versatile digital transponder a digital mailbox service A SPINO Groundstation Control Software is also part of the project By the way, the goal is to maximize compatibility (standardized interfaces with UART, I2C, SPI, CAN FD, and standardizerd PC-104 "like" form factor), and maximize reliability (wide supply voltage range, fail-safe on key points, low power consumption, especially in idle to face failure situations). SPINO SC operates in the Amateur Radio service bands, and features two full transceivers :

VHF : TX (+30dBm) and RX 144-146MHz UHF : TX (+27dBm) and RX 430-440MHz

 "The State of Funding Free & Open Source Software" ( 2024 )

Sunday at 11:30, 30 minutes, UA2.114 (Baudoux), UA2.114 (Baudoux), Community devroom Kara Sowles , slides , video

Join me in taking a look at the current state of free and open source software funding, what the potential paths to financial sustainability currently look like for maintainers, and what new models are being explored.

  • What options do projects have when looking to be financially sustainable long-term?
  • What organizations are funding free and open source software, and how do they allocate it?
  • What does it looks like to have funding that isn't subject to unstable corporate budgets and interests?
  • What’s missing from our current models of funding?

I’ll include info from some of the top Open Source Program Offices currently funding corporate dependencies; government-funded initiatives aimed at sustaining digital public goods we all rely on; and user-sustained projects that rely on the goodwill of individuals. We’ll touch on what place Accelerators and Grants have in this, and peeling away the growth-curve expectations from investors who may, or may not, understand the needs of free and open source.

Let’s start 2024 with the crucial question: how do we ensure the software our societies depend on is sustainable long-term?

 "Fast JavaScript with Data-Oriented Design" ( 2024 )

Sunday at 11:30, 25 minutes, H.2214, H.2214, Web Performance devroom Markus Stange , slides , video

Let’s squeeze the last bits of performance out of JS so that we can crunch massive amounts of data!

In this presentation I will describe what I learned while optimizing the Firefox Profiler. The Firefox Profiler is a web application which needs to handle large profiles containing hundreds of thousands of samples. Thanks to its use of data-oriented design, it’s fast no matter what you throw at it. Algorithms are written with memory bandwidth in mind, and most core data structures are made up of densely-packed arrays of numbers.

In this presentation we will optimize a small example project and see how these principles can be applied to your own project.

 "The State of Enterprise Linux 2024" ( 2024 )

Sunday at 11:30, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Distributions devroom Scott McCarty , slides , video

There's been quite a bit of excitement around Enterprise Linux over the last few years, and that's made some people quite nervous, and others downright angry. This has left many confused about the state of Enterprise Linux. In open source, transparency, and sharing of ideas is critical. But it's more than just what you share, it's how you share it. This talk will delve into the state of Enterprise Linux from Red Hat's perspective and share it in a community driven way.

The upstream and downstream relationships that make up the RHEL supply chain contribute to what is arguably the largest and most sophisticated open source supply chain in the world. This large, sophisticated supply chain, and all of the Independent Software Developers (ISVs) involved, give RHEL a lot of gravity, probably more than any other open source product.

For years, I think many of us in the open source world assumed that we knew everything there was to know about open source, but the truth is, we’re all still learning. In the last couple of years, there have been some big changes in the Red Hat Enterprise Linux (RHEL) supply chain, often referred to as Enterprise Linux or EL for short. This talk will try to share a representative opinion from Red Hat about where we see Enterprise Linux today, where we think it's going, and where we'd like to take it.

 "Make your software products trustable" ( 2024 )

Sunday at 11:30, 15 minutes, K.4.401, K.4.401, Software Bill of Materials devroom Marco Rizzi Dejan Bosanac Phil Cattanach , slides , video

As organizations start their software supply chain security (SSCS) journey, more and more documents (like SBOMs and VEXs) are being created. But having these documents produced will get us just a half-way through. We need ways to store, index, search and analyze potentially large numbers of SSCS documents to become aware of our vulnerabilities and be able to react to them quickly. Meet trustification (https://trustification.io), an open source project that allows us to store and analyze our security data at scale. Trustification allows users to manage their portfolio of applications, containers and products throughout their lifecycle. Providing transparency of their technical make up and dependencies as well as highlighting their vulnerabilities.. In this session, we will describe the Trustification project in detail. We'll start by covering basic requirements for this kind of system. Having a S3 compatible storage, flexible vulnerability collectors, support for powerful query language and ability to find the relationship between different components is the key. We'll go through the architecture and all the services needed to achieve these goals. We'll end up with a brief demo of the working system. After the session you should be able to start using Trustification to make your software products more trusted.

 "LibrePCB Status Update" ( 2024 )

Sunday at 11:30, 25 minutes, H.1308 (Rolin), H.1308 (Rolin), Open Hardware and CAD/CAM devroom Urban Bruhin , slides , video

A short overview about the progress and the current state of the LibrePCB project, including some live demonstrations of its capabilities.


LibrePCB is an Open-Source EDA software to design PCBs, providing the following advantages:

  • Cross-platform: Windows/Linux/MacOS/Others | x86/ARM
  • Intuitive & easy-to-use UI
  • Powerful library concept
  • Human readable file format

 "Streaming live using RIST On Demand to thousands, how you can have your cake and eat it too" ( 2024 )

Sunday at 11:30, 25 minutes, UB4.132, UB4.132, Open Media devroom Sergio Ammirata, Ph.D. , slides , video

Streaming live using RIST On Demand to thousands, how you can have your cake and eat it too … We will present a real world method on how we architected a solution that has both low latency (500 ms glass to glass) and scalability. It is time to have a paradigm shift regarding which protocol to use when live streaming. Progressive udp transmissions with packet recovery, such as RIST and QUIC, are now mature and have been shown to be the best option for reliable and scalable distribution of video streams.

 "Open Discussion on AI and Machine Learning" ( 2024 )

Sunday at 11:30, 30 minutes, UB2.252A (Lameere), UB2.252A (Lameere), AI and Machine Learning devroom , video

This session will be an open discussion on AI, Machine Learning, and Open Source.

We will structure this as three mini sessions. Each of which will have a speaker introduce a topic of their choice for a few minutes, before opening the floor to discussion.

 "A framework for RISC-V SBI verification and ISA extension validation" ( 2024 )

Sunday at 11:30, 30 minutes, AW1.126, AW1.126, RISC-V devroom Andrew Jones , slides , video

kvm-unit-tests is a test framework which, as the name suggests, targets the Kernel-based Virtual Machine, but the targets for kvm-unit-tests have outgrown the framework's name over the years. What was originally a test framework for x86 KVM is now a test framework which can test KVM for five different architectures and bare-metal for two (and soon to be three). RISC-V support for kvm-unit-tests has recently been merged and its ability to run from EFI supporting bootloaders will be merged soon. Since RISC-V is new to kvm-unit-tests, actual tests are missing, but it's expected that SBI tests will be getting added soon as kvm-unit-tests will be used for the SBI verification framework. Furthermore, as QEMU is a popular platform for RISC-V developers, RISC-V kvm-unit-tests can already be used for TCG validation tests. When the EFI support is merged, kvm-unit-tests will be able to do CPU validation as well, allowing tests to be run on both TCG and real hardware, possibly exposing that one or both are broken. We introduce RISC-V kvm-unit-tests and demonstrate a few tests in the hopes we'll encourage developers to write and post tests as SBI and ISA extensions evolve.

 "[Servers] Aerogramme, a multi-region IMAP server" ( 2024 )

Sunday at 11:35, 20 minutes, H.2213, H.2213, Modern Email devroom Quentin Dufour , slides , video

In order to achieve competing quality of service, it is often recommended to deploy not only in multiple availability zone, but also on multiple region. Especially if you can't trust the datacenter or if you are not hosted in a datacenter at all. However, due to the geographical distance, latency-sensitive protocols like Raft or Paxos can't be used. In this talk, I will present the design choices of Aerogramme to make it natively multi-region ready.

 "FOSS policy engagement: The impact of the NGI Open Source projects on EU policy and values" ( 2024 )

Sunday at 11:35, 10 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Jean-Luc Dorel Clementine Valayer , slides , video

The ambition of the Next Generation Initiative (NGI) is to drive the internet technologies towards a human centric internet fully in-line with European values such as protection of privacy, inclusion, transparency, openness, decentralisation, and offer more choices to users. After 5 years, the NGI programme has funded more than 1000 open source projects and takes stock of the outcomes. Gartner and DG CONNECT will present insights from their study on the impact of the NGI in key areas such as EU policies and digital rights and values, standardization, sustainability.

 "Self-hosting and autonomy using guix-forge" ( 2024 )

Sunday at 11:40, 20 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), Declarative and Minimalistic Computing devroom Arun Isaac , slides , video

As free software programmers, whether we like it or not, we often host our projects on large centralized and proprietary software forges such as GitHub. In theory, it is perfectly possible to host our own forges using free software such as GitLab, Gitea, etc. But, life is short, and setup and maintenance of these services is more work than it seems at first.

GNU Guix is well-known as a package manager, for the high quality of its packages, and for the strong reproducibility guarantees it provides. But, it is much less appreciated for its services, system definitions and deployment features. That's such a shame since these features can let you summon and dismiss entire systems at will—be they bare-metal or virtualized—with nothing but a declarative plain text configuration file.

In this talk, I will speak about guix-forge, a Guix channel that provides Guix services for easy setup and maintenance of a software forge. guix-forge uses existing free software such as cgit and/or klaus for serving git repositories on the web, laminar and webhook for continuous integration, uacme for managing TLS certificates, etc.

 "Can the mold linker be /usr/bin/ld?" ( 2024 )

Sunday at 11:40, 30 minutes, K.4.201, K.4.201, GCC devroom Rui Ueyama , video

mold is an open-source, fast, and portable linker for ELF. I'm the creator of the mold linker as well as the LLVM lld linker. It looks like mold is rapidly gaining importance among the GNU toolchain users because it's the only modern linker that supports all GCC features. In contrast, GNU ld is too slow for large projects, GNU gold lacks adequate maintenance, and LLVM lld does not support GCC LTO.

If mold is better than GNU ld, why can't we use it as /usr/bin/ld? In most instance, we actually can, except one major use case: kernel/embedded programming.

In this talk, I'll discuss the current status of the project, how we achieved the speed and while porting it to 15+ targets in just a few years, and our plans for supporting kernel/embedded programming.

 "0 A.D. game: Vulkan API" ( 2024 )

Sunday at 11:40, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Vladislav Belov , slides , video

0 A.D. is a free and open-source game of ancient warfare (https://play0ad.com/). I'll present a story how Vulkan was added to 0 A.D. for all of our platforms. How does it work? What was it worth? Does everyone need Vulkan?

https://wildfiregames.com/forum/topic/104382-vulkan-new-graphics-api/

 "Breaking Barriers: Content Management Systems and Accessibility" ( 2024 )

Sunday at 11:45, 45 minutes, K.4.601, K.4.601, Designing Futures of FOSS Content Management with the Open Website Alliance devroom Martin Helmich Lukas Fritze , video

Accessibility is a key requirement in modern web applications — not only because of new legislative requirements (like the European Accessibility Act), but because it is also a human right and a cornerstone of an inclusive society.

This presentation aims to shed light on the on the different kinds of barriers a user might encounter in a modern web application (especially in the context of the "usual suspects" of content management systems like Wordpress or TYPO3), and also show that there are some barriers that all users may encounter, regardless of their physical or mental ability. Instead, some barriers may arise from the technology available to a user (who possibly only has access to a low-end device, works with a spotty network connection or does not have access to a required input device), the education of a user, their language comprehension and many other factors. We will explore key accessibility principles to allow users to overcome these barriers and share real-world practical examples to illustrate the impact of accessible design on user experience and inclusivity.

We will provide actionable strategies for developers and UX designers to enhance accessibility working with or on these CMS frameworks. Attendees will gain insights into optimizing software and content for diverse user needs, ensuring compliance with global accessibility standards and regulatory requirements (like the European Accessibility Act), and leveraging the latest technologies to create a more inclusive digital landscape.

 "From "Free-Lunch" to Dog-Fooding: A Culinary Journey in Crafting IaC for Kairos Testing and Building" ( 2024 )

Sunday at 11:45, 15 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Testing and Continuous delivery devroom Mauro Morales Dimitris Karakasilis , slides , video

Kairos is a meta-distribution. As such, we try to constantly increment the number of flavors that we build and test. As an open-source project, we can make good use of free runner time on platforms like GitHub. But I guess there's no such thing as a free-lunch because those runners lack the performance we need to run our test suite. This is why in 2023 we decided to dog-food Kairos and used it to build our infra as code. Allow me to share this culinary experience with you and show you how we test and build every Kairos release!

 "FOSS policy engagement: EU FOSS Act" ( 2024 )

Sunday at 11:45, 10 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Ciarán O'Riordan , video

New legislation: * EU FOSS Act - market regulation for software who's source code is FOSS (e.g. most software) * Public Sector Software Act - the "must-use-FOSS" laws of the past decade have often failed, and it's the same issue each time. Success is mostly down to political will. Tighter drafting changes nothing, but there are also structural remedies that should be tried. * Patent Transparency Act - if the SEPs Reg doesn't get the job done, the idea of a patent register should be given its own text. Should also create a mechanism to ensure that patent problems clearly disappear in any category which the new court rules is not valid patentable subject matter.

 "Can SBOMs become first-class citizens in Open Source ecosystems?" ( 2024 )

Sunday at 11:45, 15 minutes, K.4.401, K.4.401, Software Bill of Materials devroom Salve J. Nilsen , video

European laws have come a-knocking to Open Source "supply chains".

From now on, volunteers are expected to step up and make new metadata available across projects and communities, and open the doors for populating new SBOM objects so we can track all kinds of parameters along these "chains," across ecosystem boundaries, and well into the back-rooms of businesses.

The goals are good. The problem space seems daunting. How does one even start to approach this mountain of madness?

In this talk, Salve J. Nilsen will summarize the CPAN perspective – The Comprehensive Perl Archive Network has been around since 1995, and with much history embedded in its bones, has over the decades shown it is a dependable partner for developers. But with the establishing of the CPAN Security Working Group, changes are looming. Let's share some thoughts and ideas, and explore the problem space together!

 "Linux load average and other silly metrics" ( 2024 )

Sunday at 11:50, 25 minutes, UA2.220 (Guillissen), UA2.220 (Guillissen), Monitoring & Observability devroom Franck Pachot , video

Software, including databases, is predominantly run on Linux operating systems, both in the cloud and on-premises environments. Metrics such as %CPU, load average, I/O wait, and free memory are commonly used to measure performance. However, interpreting these metrics correctly can be challenging. In this interactive live demo, we will run a workload and explore the intricacies of performance monitoring together using the "top" command. We will also discuss the limitations and common misinterpretations that can occur when relying solely on these metrics.

 "[Servers] Apache James: Modular email server" ( 2024 )

Sunday at 11:55, 20 minutes, H.2213, H.2213, Modern Email devroom TELLIER Benoit , video

Apache James was born in 2003 as an Apache top level project with the ambition to bring the "mailet" serlvet-for-mail.

20 years later, mailets are still well alive and still proposes a high flexible way to express and overload your email possessing. But Apache James now allows even more extensions: overriding the SMTP stack, listening to mailbox events, adding WebAdmin HTTP endpoints, customizing IMAP commands, and much, much more.

The project also provides a unique toolkit for building your own email server.

 "ngspice circuit simulator - stand-alone and embedded into KiCad" ( 2024 )

Sunday at 11:55, 40 minutes, H.1308 (Rolin), H.1308 (Rolin), Open Hardware and CAD/CAM devroom Holger Vogt , slides , video

The talk will report on the current status and ongoing developments for ngspice. There are a lot of enhancements for simulation during IC design: New optional matrix solver KLU enables simulating circuits with > 200k transistors and speeds-up simulation by more than 3x. Verilog-A compact device models for modern devices (FinFET etc.) are supported. Open-Source PDKs are supported (Skywater, GF, IHP, ASAP7 ...). C-code may be embedded during simulation, as well as digital Verilog (compiled with Verilator). The preferred user interface for IC design is XSCHEM.

On the discrete, PCB based simulation side the user interface for embedding ngspice into KiCad has made a large jump forward when looking at 7.99 (upcoming KiCad 8). Setting up simulations has been completely revised, new ways of evaluating simulation data are available. Besides the traditional sim setpus (op, dc, tran, noise etc.) now als IBIS (interface) simulation may be used.

Some simple live setups may show how to make use of this KiCad/ngspice interface.

 "FOSS policy engagement: panel" ( 2024 )

Sunday at 11:55, 35 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Alexander Sander Jean-Luc Dorel Clementine Valayer Jules Obry Walter van Holst , video

Decision makers discuss together with the Free Software community how their demands can best be represented. We want to learn from best practice examples, but also from mistakes and experiences how we can better represent our interests in Europe in the future. The panel will turn into a fishbowl conversation.

 "Arm64EC: Microsoft's emulation Frankenstein" ( 2024 )

Sunday at 12:00, 45 minutes, UB5.230, UB5.230, Emulator devroom Peter Cawley , slides , video

Arm64EC ("Emulation Compatible") is Microsoft's latest answer to emulating x86_64 on arm64, allowing code from both architectures to coexist in a single address space, so that an application can be incrementally ported from x86_64 to arm64. I'll cover what Arm64EC is, postulate on why it is the way it is, and lessons learnt from porting LuaJIT to it. What if there was a CPU (and associated C toolchain) capable of executing both x86_64 and arm64 instructions, cheaply switching back and forth at any function call boundary? While there isn't such a thing, Arm64EC emulates such a CPU - any x86_64 code is emulated, and any arm64 code needs to contort itself slightly to allow cheap switching in to and out of the emulator. The result is something of an emulation Frankenstein, but just maybe it'll help adoption of Windows on arm64.

Speaking about a Windows feature at an open source event might seem initially odd, but things can be intellectually interesting regardless of origin, and open source tooling such as Wine and LLVM have started to add some support for it, and open source developers might want to port their applications to it (as I have done for LuaJIT).

Related resources: * Out of tree LuaJIT support for Arm64EC * My Arm64EC ABI notes

Note that I have no association with Microsoft or with ARM.

 "Introducing 'Refiners' – A Micro-Framework for Seamless Integration of Adapters in Neural Networks" ( 2024 )

Sunday at 12:00, 30 minutes, UB2.252A (Lameere), UB2.252A (Lameere), AI and Machine Learning devroom Benjamin Trom , slides , video

Check out our docs!

In the evolving landscape of artificial intelligence, we're witnessing a significant shift in deep-learning design patterns, particularly with the advancement of foundational models. A key innovation in this area is the concept of 'adapters' – small yet powerful add-ons that enhance an existing neural network with new capabilities without retraining its core layers.

However, this innovation brings a hefty software engineering challenge, mainly when we discuss creating an open-source library encompassing a diverse range of these adapters. Neural networks, by their nature, are built using frameworks that procedurally encode their operations. Every time a new adapter is introduced, it often requires a substantial rewrite or rethinking of the existing code base.

To address this challenge, we've developed 'Refiners' – a streamlined micro-framework built on top of PyTorch, one of the most popular machine learning frameworks. The goal of Refiners is to serve as a comprehensive collection of foundational models and their respective adapters. Its primary design pattern sets it apart: envisioning all neural networks as a 'Chain' of primary layers, neatly nested one after the other. Furthermore, we've integrated the 'Context API,' a feature that allows the implementation of complex models, including those that don't follow a simple linear structure. By doing so, Refiners simplifies the integration of new adapters, making it easier for developers to build and enhance neural networks without the need to overhaul their entire code base each time. This approach saves time and opens up new possibilities for innovation in AI development.

 "Maia SDR: an open-source FPGA-based project for AD936x+Zynq radios" ( 2024 )

Sunday at 12:00, 25 minutes, UB2.147, UB2.147, Software-Defined Radio and Amateur Radio devroom Daniel Estévez , slides , video

Maia SDR is an open-source project with the main goal of promoting FPGA development for SDR and increasing the collaboration between the open-source SDR and FPGA communities. Currently it provides a firmware image for the ADALM Pluto and other radios based on the AD936x and Zynq. This firmware can display a real-time waterfall at up to 61.44 Msps in a WebSDR-like interface using WebGL2 rendering, and record IQ data in SigMF format in the SDR DDR. The FPGA design is implemented in Amaranth, an Python-based HDL, and the software stack is implemented in Rust, targetting the embedded ARM CPU and WebAssembly.

The first firmware version was released in February 2023, and the project was presented in June in the Software Defined Radio Academy. In this talk we cover the progress since the summer, including the addition of support for devices such as the Pluto+ and AntSDR. We focus on the technical details of the project and the possibilities for re-using some of the components in other projects.

 "Powerflexible cryptography with Python and Flightbox!" ( 2024 )

Sunday at 12:00, 55 minutes, UD2.218A, UD2.218A, Python Devroom devroom Pascal Chambon , video

Cryptography is a bit scary, especially when we've always delegated everything to HTTPS and web frameworks to manage this aspect of security. But that's a shame, with a pinch of extra encryption, many massive thefts of personal data could be avoided; and in the age of GDPR, why deprive yourself!

In this presentation, we'll take a look at a few important concepts: symmetric and asymmetric encryption, signatures, key guardians...

Then we'll see how to combine these concepts to create a great tool: Flightbox, an "Encryption-Based Access Control" (or EBAC) algorithm.

And finally, we'll look at some of the reasons for and ways of using this, via the reference implementation of Flightbox, which is of course in Python!

This presentation is aimed at both novices and experienced developers/cryptoanalysts.

 "From Google AdSense to FOSS: Lightning-fast privacy-friendly banners" ( 2024 )

Sunday at 12:00, 20 minutes, H.2214, H.2214, Web Performance devroom Tim Vereecke , video

I run Scalemates.com, the largest and fastest scale modeling website in the world. As such, I need a fast and privacy-aware advertisement solution to best serve my user base.

5 years ago, just before GDPR became applicable I decided to replace my existing Google Adsense solution. While easy to set up, AdSense and other vendors were in hindsight too slow or not meeting my privacy expectations.

The cornerstone of the new architecture became the popular, free and open source (GNU GPL) Revive Adserver (previously known as OpenX). Without leaking information, it allows me to serve targeted ads without degrading Largest Contentful Paint (LCP), Cumulative Layout Shift (CLS) or other Web Vitals.

In this talk you will learn about my design choices as well as interesting techniques and best practices to serve and monitor banner ads performance.

 "Spritely, Guile, Guix: a unified vision for user security" ( 2024 )

Sunday at 12:00, 25 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), Declarative and Minimalistic Computing devroom Christine Lemmer-Webber , video

Spritely is building the future of decentralized networks and community infrastructure all on a paradigm called "object capability security". And that's not all... Guile and Guix are at the core of our vision and toolkit! This talk presents a unified vision of how Spritely, Guile, and Guix can work together to bring user freedom and security to everyone!

 "How to Build an Open Source School Cloud for 5 Million Users" ( 2024 )

Sunday at 12:00, 25 minutes, Janson, Janson, Main Track - Janson David Walter , slides , video

In Bavaria, an open source solution is running the file and collaboration cloud for 6300 schools, all their pupils, parents and teachers of the German Bundesland -- thanks to ownCloud's newest product, Infinite Scale, initially developed at CERN, together with the science community. Infinite Scale was completely written in Go, with microservices and an infinitely scalable cloud-native architecture.

Deploying some 100.000 new users each week in the Bavarian School Cloud (ByCS) is done with multi-tenant Kubernetes, monitored by Grafana Open Observability and it's based on open source cloud technology in accordance to Gaia-X standards. ByCS features a user-centric UX for web, mobile and desktop clients (plus collaborative web Office), the totally new and flexible concept of Spaces for collaboration and a flexible and efficient cloud native architecture.

This talk gives an in-depth look at ByCS-Drive’s architecture, focusing on how it leverages cutting-edge technologies to enhance storage efficiency, data security, and accessibility, insights into the scalability of ByCS-Drive, demonstrating its capability to handle growing data demands without compromising on performance and shows both robust security and compliance measures as well as the intuitive user interface and ease of integration.

More than a million concurrent, daily users have been activated during the last months. The talk will give an update and shows the future roadmap.

 "Ipa-tuura: FreeIPA connector for Keycloak" ( 2024 )

Sunday at 12:00, 30 minutes, K.3.401, K.3.401, Identity and Access Management devroom Alexander Bokovoy Francisco Triviño García , slides , video

The FreeIPA and SSSD teams have collaborated on a project to enable Keycloak to get a unified access for users and groups in FreeIPA/LDAP/Active Directory. It consists of a new Keycloak plugin and a bridge service to access the identity providers (FreeIPA/AD/LDAP). The bridge project, ipa-tuura, is based on the SCIMv2 API and provides an improved integration for classic directory services to cloud environments with an easy deployment. The bridge can also be used in a variety of different scenarios, from migration to synchronization of identities across different providers.

 "Clevis/Tang: unattended boot of an encrypted NixOS system" ( 2024 )

Sunday at 12:00, 25 minutes, H.1302 (Depage), H.1302 (Depage), Nix and NixOS devroom Julien Malka Camille Mondon , video

If you use, or want to use, full-disk encryption on your server, you might have been bothered by the problem of unattended reboots. Clevis is a decryption framework which binds secrets against a secure resource (a secure cryptographic protocol to reach a remote Tang server or a TPM) to mount the root partition. Clevis is now part of NixOS, available in the initrd and can be set up declaratively for LUKS, ZFS and Bcachefs.

This talk will briefly explain the Clevis-Tang protocol and show you how to set it up on your NixOS machines.

 "AlmaLinux: How to make a RHEL compatible distribution" ( 2024 )

Sunday at 12:00, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Distributions devroom Andrew Lukoshko , slides , video

Creating a Linux distribution, even one based on RHEL, can be a challenge, especially if the goal is to maintain full compatibility with the latter. The presentation will focus on obtaining and modifying source code, building packages and checking their binary compatibility, maintaining security advisories, building all images possible, as we do for AlmaLinux OS.

 "Building the world's virtual classroom" ( 2024 )

Sunday at 12:00, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Fred Dixon Steven Muegge , slides , video

BigBlueButton is an open source virtual classroom platform whose adoption skyrocketed during covid. Started in 2007, during covid it quickly became localized in over 55 languages and helped deliver billions of minutes of virtual classes. This lighting talk will cover how the BigBlueButton project team managed the growth, the project's pedagogical approach to virtual classes (hint: video alone is not sufficient), and the future of BigBlueButton as a platform for empowering educators to deliver effective virtual classrooms that measurably improve learning outcomes for students.

 "SCION, hitting the future Internet road: Next-generation Internet ecosystem and burgeoning opportunities" ( 2024 )

Sunday at 12:00, 50 minutes, K.1.105 (La Fontaine), K.1.105 (La Fontaine), Main Track - K Building Jordi Subirà Tilmann Zäschke , slides , video

The Internet is witnessing the appearance of fundamental innovation at the network layer thanks to the real-world deployment of the SCION [1] next-generation Internet. SCION is a clean-slate, secure and robust Internet architecture, designed to provide route control, failure isolation, and explicit trust information for end-to-end communication. The SCION real-world deployment is rapidly expanding, pushed by several entities that have adopted SCION for their critical use cases.

This talk will be divided into two main parts. Firstly, we will present the latest status of SCION production deployments. One example is the SCION Education, Research and Academic Network (SCIERA) [2]. The SCIERA Network connects via native SCION (i.e., “BGP free”) 12 R&D institutions on 3 different continents (including the National University of Singapore, Princeton University, University of Virginia, among several others). The planned expansion will include several additional institutions, bringing native SCION connectivity to over 500,000 users by mid-2024.

Secondly, we will provide an up-to-date overview of the SCION AWESOME projects [3]. This curated list encompasses projects from various realms, e.g., Path-aware-networking API (in Golang and Java), Python and C/C++ bindings, applications using SCION, SCION network tools, SCION SEED emulator, among many others.

[1] SCION official site: https://scion-architecture.net/

[2] SCIERA official documentation site: https://sciera.readthedocs.io/en/latest/.

[3] AWESOME SCION: https://github.com/scionproto/awesome-scion

 "SPDX in the Yocto Project" ( 2024 )

Sunday at 12:00, 15 minutes, K.4.401, K.4.401, Software Bill of Materials devroom Joshua Watt , slides , video

SPDX 2.2 has been implemented in the Yocto Project (YP) as the standard of SBoM of choice. From 2023 the YP's reference distribution, Poky, is generating it by default in each distribution build. With numerous questions posted about the feature, it seems that many people are using it.

The story does not end here, however. Joshua and Marta will explain the experience of SPDX 2.2, elements that worked and those that did not. The year 2023 has brought also the proof-of-concept implementation of the upcoming SPDX 3.0 addressing pain points of 2.2 and adding new features. This will be the other part of this talk: the proposed architecture, expected new features and decisions to be made on the actual data to output to make the SBoM the most useful for users.

 "The state of video offloading on the Linux Desktop" ( 2024 )

Sunday at 12:00, 25 minutes, UB4.132, UB4.132, Open Media devroom Robert Mader , slides , video

While efficient video playback has long been possible in the embedded Linux world, desktop applications have been lagging behind other platforms. In the last years, and 2023 specifically, various developments made it possible to let the two worlds converge, offering various advantages for both.

The talk aims to give a short overview over recent developments in various components such as Gstreamer, Gnome, Gtk and Chromium that make video playback either more efficient - or efficient playback easier to use, including short demos. And, if time allows, give a short outlook what to expect regarding HDR playback.

 "NetworkManager community meetup FOSDEM 2024" ( 2024 )

Sunday at 12:00, 60 minutes, AW1.121, AW1.121, BOF - Track C Fernando Fernandez Mancera

Let's meet and talk about NetworkManager!

There is no fixed agenda or schedule. Everybody is welcome, and we will have an open discussion about problems, improvements, use cases and ideas for NetworkManager. Bring a topic you'd like to discuss, or just join to meet people.

See https://networkmanager.dev/community/ for how reach the community.

 "Clustering in PostgreSQL: Because one database server is never enough (and neither is two)" ( 2024 )

Sunday at 12:00, 50 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), PostgreSQL devroom Umair Shahid , slides , video

In the world of database management, high availability and disaster recovery are key considerations for any organization that wants to ensure reliable access to its critical data. Clustering in PostgreSQL is one of the most effective ways to achieve both. In this talk, we will explore the ins and outs of PostgreSQL clustering, including the benefits and challenges of different clustering approaches, and how to set up a highly available and disaster-resilient PostgreSQL cluster.

We will dive into topics such as synchronous vs. asynchronous replication, load balancing, failover, and disaster recovery. We will also touch on some open source tools that are readily available to aid in PostgreSQL cluster management.

 "The Many Hats of a Maintainer: Organizational Design That Helps Reduce Them" ( 2024 )

Sunday at 12:05, 30 minutes, UA2.114 (Baudoux), UA2.114 (Baudoux), Community devroom Paris Pittman , video

We’ve heard it for decades - being an open source maintainer is full-time job in itself. Writing features and maintaining the project are expected, but a project needs more than good features to create a robust community around it. Open source organizational design is usually an after thought but it doesn’t have to be. Taking the time to define those “hats” early on can help a project grow and be sustainable enough to not rely on a few maintainers to do it all. In this session, Paris Pittman will share her experience helping maintainers avoid burnout, handle governance operations, increase adopters, and building plans for community.

Is moderating your mailing list or chat platform something you want to do for the duration of the project as a lead maintainer? What about creating and writing all of the onboarding materials needed for contributors and users alike? In this session, we will draw from open source projects like Kubernetes, Swift, and others so that audience members will take away an action plan on building out intentional community roles, groups, and more so the many hats of maintainers are shared.

 "Linux Matchmaking: Helping devices and drivers find each other" ( 2024 )

Sunday at 12:05, 30 minutes, UB5.132, UB5.132, Kernel devroom Ahmad Fatoum , slides , video

Devices identify themselves. Drivers probe matched devices for compatibility.

What appears straight forward on the outset, can be quite serpentine on the everyday System-on-Chip: Devices may refuse to self-identify, require interaction to be addressable, or have - possibly circular - dependencies on other devices. Failure to account for this leads to unchaperoned devices, probe deferrals, and if one is very unlucky, runtime issues up to a bricked system.

Ahmad has debugged a fair share of such issues, either during initial hardware bring-up, after kernel updates or when porting Linux drivers to the barebox bootloader. In his talk, he will introduce the Linux driver model with a focus on tracking dependencies and discuss how to debug and address common issues with tools like ftrace, dev_err_probe and fw_devlink.

 "Practical CI/CD Observability with OpenTelemetry" ( 2024 )

Sunday at 12:05, 30 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Testing and Continuous delivery devroom Dimitris Sotirakis Giordano Ricci , slides , video

A reliable CI/CD pipeline is the backbone of every modern project, yet there's limited visibility into its processes, often requiring manual review and analysis of build outputs. By leveraging OpenTelemetry standards we want to bring observability to our pipelines, making the software delivery process fully observable. Join our journey redefining CI/CD observability, learn how you can start implementing the techniques we are using at Grafana Labs to ensure your pipelines are more reliable and stay performant over time, how to identify flakiness, bottlenecks, and how we envision a future where - no matter your system or your observability solution - we can effortlessly have full visibility over our software delivery process. You will learn what it takes to make CI/CD fully observable, how we think OpenTelemetry is going to play a major role in this, what obstacles we encountered, what are the challenges ahead and how anyone can help shape the future of CI/CD observability.

 "Build Distribution for Maintaining the Famous GCC 4.7" ( 2024 )

Sunday at 12:10, 15 minutes, K.4.201, K.4.201, GCC devroom Oliver Reiche , slides , video

Many GNU Linux distributions start their own bootstrap process with a set of binary seeds. Because, how do you build a modern C/C++ compiler without a C/C++ compiler? To solve this chicken-and-egg problem, an approach taken by some distributions is to rely on opaque, pre-build binaries. However, in order to increase trustworthiness in software, we should be able to produce every part of it from source, or at least reduce the size of the initial binary seed to the absolute minimum.

In the bootstrappable builds movement, the GCC version 4.7 plays an important role: it is the last GCC version that can be built with only a C compiler. Therefore, this compiler is a stepping stone for bootstrapping everything that relies on the C++ language and above. Another important metric for trustworthiness is the capability to build reproducibly, independently of the build directory, which we addressed with patches, as it is not a native feature of this compiler version. Furthermore, additional patches were required for bringing this compiler version up to date, i.e., adding support for more recent C libraries (e.g., the musl libc) and for obtaining a compiler installation that works independently of its install prefix.

We would like to present a build description (for the JustBuild build system), used to patch and bootstrap a GCC version 4.7 on a minimal x86_64 Linux system, which only needs a POSIX shell, coreutils, and a C library (GNU, musl) installed. To achieve this, the bootstrap process starts by building Busybox, GNU Make, and Binutils from scratch before those are used to bootstrap GCC 4.7. We can furthermore show how that compiler can then be used to bootstrap additional build tools (Make, CMake, Python) and even the most recent compilers (GCC 13.2, Clang 17), all from source on the exact same minimal system. In doing so, we basically bootstrap an extremely minimalistic Linux distribution for building compiler toolchains. All of that is strictly defined within a single JustBuild project, which is publicly available under an open-source license at: https://github.com/just-buildsystem/bootstrappable-toolchain.

 "Using Open Source AIs for Accessibility and Localization" ( 2024 )

Sunday at 12:10, 25 minutes, K.3.201, K.3.201, Translations devroom Nevin Daniel , slides , video

We all prefer to have a host of resources in our native language, but sometimes, there maybe a limit to the amount of resources available out of the box.

Using Open Source AI tools, we can generate better translation, localization and accessibility to resources and documents for non-native speakers. This includes a broad range of resources, such as videos, audio and text documents, and appropriate mechanisms can be utilized to make it inclusive to all who seek these resources while ensuring the capabilities to have them run locally.

 "[Servers] Mox: a modern full-featured mail server" ( 2024 )

Sunday at 12:15, 20 minutes, H.2213, H.2213, Modern Email devroom Mechiel Lukkien , slides , video

Mox is a relatively new full-featured email server, with a focus on security and ease of use. The goal is to make it easy to run your own modern mail server, so you can stay in charge of your email and keep email decentralized! Mox handles SMTP including SPF/DKIM/DMARC/DANE/MTA-STS, IMAP4, ACME (TLS), junk filtering, webmail, Internationalization, autoconfig and more! All in a lean, consistent, tested code base, cross-referenced with RFCs. We'll look into how mox achieves its goals, have a quick demo, and dive into a few topics of modern email and software development, and look at the roadmap.

 "How to make SPDX industry standard for AI/ML" ( 2024 )

Sunday at 12:15, 15 minutes, K.4.401, K.4.401, Software Bill of Materials devroom Cheuk Ting Ho , video

With SBOMs being required and SPDX meeting ISO/IEC 5962:202. It is beneficial for developers to adopt SPDX to generate the SBOM for their software. However, with AL and ML taking more and more centre stage in modern applications, how can we make sure SPDX can be useful to AI/ML applications?

Background

Recently since the bill from the US government has made SBOM the standard in software distributions, all developers have started to think about how they can automate and generate SBOM with all the components stated as required. SPDX is one of the obvious choices for all as its specification is recognized as the international open standard for security.

The stable release of SPDX 2.3 is good enough for most applications. Looking forward, as modern software applications are getting more and more complicated and there are more and more components involved - with the popularity of big data and AI/ML, many applications will involve data and data pipelines. These would need to be considered when generating SBOM in the future.

In this talk, we will look into what has SPDX 2.3 achieved, what is added in SPDX 3.0 for data and AI, and how we can encourage the AI/Ml community to consider SPDX in their applications.

Goal

Bring awareness of SBOM and SPDX to the developers and data community. Suggest some strategies in getting more adoption, especially the adoption of SPDX 3.0 to AI/ML communities.

Target Audiences

Developers and engineers who work with data. Community leaders who are interested in encouraging the community to build safer software.

Outline

  • Introduction of SBOM and SPDX
  • What SPDX 2.3 has achieved and why it is a good tool
  • What is new in SPDX 3.0 and why they are needed
  • How to get the AI/ML and data community to adopt SPDX 3.0
  • Conclusion and Q&A

 "Attempt at building a transit app in Africa" ( 2024 )

Sunday at 12:20, 20 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Tarek TOUATI , slides , video

Late 2017 during my studies in France, I was fascinated by how easy it was to get transit information, and how it made travelling through the city enjoyable.

Months later, I was back in Tunisia and found absolutely nothing similar.

The idea of building a transit app started knocking around my head. At that time, there was no easily available data.

In this talk, I will share with you the story of how I was able to get in touch with the companies that had the data I needed, establish some rudimentary collaboration and produce a workable web app. Even though it only had three users, I still learned a lot, whether on human or technical aspects.

The takeaways are the stereotypical fact that when you put your mind to something you can usually accomplish it, and that unfortunately if you build it they won’t necessarily come.

 "Insights from the RUM Archive" ( 2024 )

Sunday at 12:20, 25 minutes, H.2214, H.2214, Web Performance devroom Robin Marx , slides , video

The RUM Archive is the Real User Monitoring-focused counterpart to the synthetic results from the HTTP Archive. It contains (aggregated and anonimized) measurements from millions of end users, as seen by the mPulse RUM tool on the Akamai CDN network. Containing over 1.5 years of data, the RUM Archive doesn't just provide insight into current real-world performance aspects, but also help us to understand trends and evolutions over time, for a variety of metrics and data dimensions.

In this talk, we will first discuss how the RUM Archive works underneath; the data it holds and some examples on how to extract it yourself. We then move to analyzing some of the data contained within, looking at differences between for example browsers, operating systems and devices, and how those can impact performance metrics. We also discuss RUM-specific challenges, such as dealing with noise in the measurements, and show how this can make a big difference in the conclusions we draw from the data.

We end with some critical discussion on the state of Web performance testing, emphasizing the need for both synthetic and RUM measurements, and taking a long hard look at our over-reliance on CrUX, the Google Core Web Vitals and Chromium.

 "Five years of Teal: minimalism versus growth in language design" ( 2024 )

Sunday at 12:25, 20 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), Declarative and Minimalistic Computing devroom Hisham Muhammad , video

Teal is a typed dialect of Lua whose genesis was chronicled in three talks at this devroom: "Minimalism versus types" (2019), "Minimalistic typed Lua is here" (2020) and "What's Next for Teal" (2021). From a being just a wild idea back in 2019, the language has grown into a small community of users (roughly measured by its ~1.8k GitHub stars). With growth, the language's strengths and weaknesses became more evident, and with those come feature requests. How to keep the language small and still address the needs of users, while remaining faithful to the spirit of Lua and not falling into pitfalls from the past? In this talk we'll discuss some pragmatic choices in Teal's design that were made to balance those concerns: to make it more powerful, while keeping it small.

 "Sega Dreamcast Homebrew with GCC" ( 2024 )

Sunday at 12:25, 20 minutes, K.4.201, K.4.201, GCC devroom Falco Girgis , video

One of the greatest strengths of GCC is the sheer volume of architectures which it can target, many of which are niche or legacy platforms. But how has this support translated into real-world utility? How well are some of these platforms still supported? Using the Sega Dreamcast and its SH4 CPU as a case-study, we take a look at just how far GCC is allowing its homebrew community to take the platform, providing modern C23, C++23, Objective-C, D, and even some Rust to the 1990s game console.

 "Youth Hacking 4 Freedom" ( 2024 )

Sunday at 12:25, 5 minutes, H.1301 (Cornil), H.1301 (Cornil), FOSS Educational Programming Languages devroom Bonnie Mehring , slides , video

You like programming and tinkering with software or hardware? And you are up for a challenge? Then “Youth Hacking 4 Freedom” is the perfect competition to test your skills. The third round of the FSFE's programming competition “Youth Hacking 4 Freedom” has just started and we are open for late-registration. "Youth Hacking 4 Freedom" is a programming competition for European teenagers from 14 to 18 years old. The participants have the chance to work on their own project idea with the guidance of experts from the Free Software universe. There are no limitations for the projects as long as they are published under a Free Software license. In this competition young people can test their skills, learn how to work on a project under a deadline, and most importantly have fun while meeting different people from Europe. Hear all about the competition and how to participate in this lightning talk. For more information come and visit the FSFE booth at FOSDEM.

 "quickstream: a new SDR framework" ( 2024 )

Sunday at 12:30, 25 minutes, UB2.147, UB2.147, Software-Defined Radio and Amateur Radio devroom Lance Arsenault , slides , video

quickstream is an alternative to GNU Radio. quickstream is a C code API (application programming interface) DSO (dynamic shared object) library and several executable programs that link with that library, and many smaller C code objects (modules) called blocks. quickstream introduces many novel functionalities while mimicking many features from GNUradio. quickstream is not vaporware. An alpha release of quickstream has been made. It's available to download at https://github.com/lanceman2/quickstream#readme Please look at the link.

quickstream is just starting, so there are not a lot of blocks in it yet, but it can connect with a GNU radio flow graph.

 "Private clouds do not need to be legacy!" ( 2024 )

Sunday at 12:30, 25 minutes, Janson, Janson, Main Track - Janson Fabio Alessandro "Fale" Locati , slides , video

In the last fifteen years, there has been a significant shift from on-premise data centers to the cloud. This process was due to the perceived cost difference between the legacy on-premise data centers and the newer and shinier public cloud. Due to a renewed interest in privacy and data sovereignty, many organizations are returning to the on-premise with private clouds. For the success of such initiatives, it is fundamental to learn from the past and understand how a successful private cloud should be structured. I started working in 2004 when almost everything was on-premise, and I had a front-row seat to the migrations that occurred in this period thanks to my roles as a Systems and Solutions Architect. In this talk, we will recap the last twenty years of migrations to learn some key lessons, and then we will analyze what a successful private cloud would look like, which technologies might help, and which could be risky bets.

 "mkosi-initrd: Building initrds out of distribution packages" ( 2024 )

Sunday at 12:30, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Distributions devroom Zbigniew Jędrzejewski-Szmek Daan De Meyer , slides , video

Generally, initrd images have always been constructed by picking various files from the host filesystem, with various bespoke mechanisms to figure out all the dependencies that have to accompany said files. Instead, we propose to build initrd images out of distribution packages. This results in initrds that behave more like a regular Linux system, making them more reliable.

In this talk, we'll present mkosi-initrd, a project to build initrds out of distribution packages using mkosi (https://github.com/systemd/mkosi), systemd's image builder sister project. While it started as a Fedora project , mkosi-initrd has recently gained support for Ubuntu, Debian, OpenSUSE, CentOS, RHEL, Alma Linux, Rocky Linux and Arch Linux. We'll discuss the new distribution-independent implementation, what's implemented and what's still missing. We'll also give a brief introduction on mkosi itself.

We're hoping to start a discussion on what it would take for popular distributions to consider adopting this approach to building initrds and to leave FOSDEM with new ideas on how to improve the project.

 "Live coding music with MicroBlocks and microcontrollers." ( 2024 )

Sunday at 12:30, 60 minutes, H.1301 (Cornil), H.1301 (Cornil), FOSS Educational Programming Languages devroom Bernat Romagosa , video

MicroBlocks (http://microblocks.fun/) is a free blocks-programming language for microcontrollers that combines live programming and autonomous operation, also allowing parallelism and portability. Thanks to its real-time capabilities, its visual nature and a bunch of new libraries aimed at music production, MicroBlocks constitutes a very welcoming entry point to the worlds of live coding, electronics and physical computing.

 "Application of the SPDX Safety Profile in the Safety Scope of the Zephyr Project" ( 2024 )

Sunday at 12:30, 30 minutes, K.4.401, K.4.401, Software Bill of Materials devroom Nicole Pappler Stanislav Pankevich , slides , video

Creating and maintaining a safety critical project comes with a lot of challenges. One central issue is keeping your documentation, starting from planning and guideline documents, down to requirements, safety analysis, reviews and tests, consistent and up to date. These project artefacts often have their own lifecycle and are natively managed in different tools, with usually great traceability capabilities regarding dependencies between these artefacts as long as you stay within one tool or within a (usually propriety) tool family of one single tool vendor. Currently the resulting traceability gaps between these tools are handled either by the popular engineering tools like MS Excel or methods like “search for identical names”, depending highly on manual maintenance. Using SPDX relationships, the upcoming Safety Profile in SPDX 3.1 will provide a model to represent all these dependencies as a knowledge model that can be used both to analyse possible impacts after a change (be it because of a security update or functional variants of your product), provide evidence of completeness and compliance as a Safety SBOM or simply keep track of your product variants. In this talk we will provide both an introduction to the SPDX Safety Profile as well as a real life example using StrictDoc and the Zephyr Project’s Functional Safety scope.

 "Fast, Cheap, DIY Monitoring with Open Source Analytics and Visualization" ( 2024 )

Sunday at 12:30, 25 minutes, UA2.220 (Guillissen), UA2.220 (Guillissen), Monitoring & Observability devroom Robert Hodges , slides , video

Monitoring is the key to the successful operation of any software service, but commercial solutions are complex, expensive, and slow. Why not do it yourself with open source? We’ll show you how to build simple, cost-effective, fast monitoring for practically any system using ClickHouse and Grafana. First, we introduce key elements of your monitoring solution: ingest, query, and visualization. We then dig into an example system showing how to store data efficiently, build queries, and create operational dashboards. Any developer can do it–join us to find out how!

 "MIT App Inventor Workshop" ( 2024 )

Sunday at 12:30, 60 minutes, J.1.106, J.1.106, FOSDEM junior Vishwas Adiga Evan Patton Diego Barreiro Perez

MIT App Inventor is an intuitive, visual programming environment that allows everyone – even children – to build fully functional apps for Android phones, iPhones, and Android/iOS tablets. Those new to MIT App Inventor can have a simple first app up and running in less than 30 minutes. And what's more, our blocks-based tool facilitates the creation of complex, high-impact apps in significantly less time than traditional programming environments. The MIT App Inventor project seeks to democratize software development by empowering all people, especially young people, to move from technology consumption to technology creation.

Anyone aged 7 to 17 can visit the workshop and learn how to make an app using MIT App Inventor.

Registration will be required for this session. Use the following link to register.

 "Livepeer Catalyst and The Conspiracy to Solve Video for Everybody Forever" ( 2024 )

Sunday at 12:30, 25 minutes, UB4.132, UB4.132, Open Media devroom Eli Mallon , slides , video

We will start by giving an overview of Livepeer Catalyst, an MIT-licensed self-hostable media server powered by MistServer and the Livepeer Network. Users will be able to boot this up for themselves and configure their Catalyst nodes to facilitate livestreaming, VOD, and other rich media features.

We'll then move out to a survey of the open media landscape, discussing everything from the Coalition for Content Providence and Authenticity to Twitch's exit from Korea to livestreamed torrents to NFTs. We'll identify some common threads between all of this work and end with some principles that we can all follow to join the Conspiracy to Solve Video for Everybody Forever.

 "FOSS policy engagement: Fishbowl conversation - share your experience" ( 2024 )

Sunday at 12:30, 40 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Alexander Sander Karen Melchior MEP , video

Decision makers discuss together with the Free Software community how their demands can best be represented. We want to learn from best practice examples, but also from mistakes and experiences how we can better represent our interests in Europe in the future. It doesn't matter whether you are new to the bubble or have been active for years, whether you have sent an email to a member of parliament or whether you regularly meet decision makers for lunch. We want to hear your story.

 "Passkey authentication - the result" ( 2024 )

Sunday at 12:30, 15 minutes, K.3.401, K.3.401, Identity and Access Management devroom Iker Pedrosa , slides , video

Passwordless and MFA are becoming a trend and their usage will increase in the near future. Passkey authentication covers this feature for centrally managed users in Linux environments. For the last two years FreeIPA and SSSD have been working on enabling FIDO2/WebAuthn support for centrally managed users with LDAP servers. The user will be able to authenticate locally to a system with a FIDO2 key, and they will be granted a Kerberos ticket. This opens a new world to organizations to tighten their security, while maintaining strict control as to who access their systems. This talk will present the context of the problem, and the proposed solution, including a live demo.

 "Dynamic Explainability through Dynamic Causal Modeling" ( 2024 )

Sunday at 12:30, 15 minutes, UB2.252A (Lameere), UB2.252A (Lameere), AI and Machine Learning devroom William Jones , slides , video

Dynamic Causal Modeling is a uncertainty aware, explainable AI technique that uses physics inspired "dynamical systems" to explore time series data.

In this talk we discuss the theory and practice of Dynamic Causal Modeling, and the work we've done to take this code outside of it's research rooted MATLAB implementation into a robust, general piece of software under a FOSS license.

 "Modos: Building an Ecosystem of Open-Hardware E Ink Devices" ( 2024 )

Sunday at 12:35, 25 minutes, H.1308 (Rolin), H.1308 (Rolin), Open Hardware and CAD/CAM devroom Alexander Soto , slides , video

Modos is an open-hardware and open-source company, building an ecosystem of E Ink devices to reimagine personal computing with a focus on creating calm, inclusive, and humane technology.

In this talk, we will briefly discuss the underlying technology, present findings from our community survey, and the challenges faced while developing our display controller and chassis. We will also outline our next steps and future direction.

 "Solving community problems with documentation" ( 2024 )

Sunday at 12:40, 30 minutes, UA2.114 (Baudoux), UA2.114 (Baudoux), Community devroom Erin McKean , slides , video

Community problems come in many shapes and sizes, but at the root most community problems are communication problems. One way to solve communication problems is through improved documentation. In this talk, we'll walk through how projects participating in Google's Season of Docs program have framed their problems, hypothesized solutions, created documentation to solve those problems, and measured the success of their documentation.

 "Chaos Engineering in Action: Enhancing Resilience in Strimzi" ( 2024 )

Sunday at 12:40, 30 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Testing and Continuous delivery devroom Maros Orsak Henrich Zrncik , slides , video

This session offers an in-depth exploration of chaos engineering within the Strimzi ecosystem, a key Kafka operator for Kubernetes. The focus is on demonstrating practical, hands-on applications of chaos experiments to underline how they can enhance the resilience and reliability of Kafka clusters managed by Strimzi in a Kubernetes environment.

The presentation begins by introducing the fundamental principles of chaos engineering, establishing a foundation for the subsequent demonstrations. The core of the session features a series of detailed demonstrations, each focusing on a specific chaos experiment. These experiments and their effects on the Strimzi-managed Kafka clusters are carefully observed and analyzed, utilizing tools such as Grafana and Prometheus from the CNCF projects. Through these demonstrations, attendees will gain a clear understanding of various tools and techniques used to create and manage failure scenarios. This part of the session is designed to provide a vivid insight into how different types of disruptions can impact system stability and performance, emphasizing the practical aspects of chaos engineering in a real-world environment.

Throughout the session, we will discuss and demonstrate: - Setting Up the Environment: Preparation of a Strimzi-managed Kafka cluster on Kubernetes for chaos experiments. - Designing Chaos Experiments: Crafting realistic and meaningful chaos scenarios tailored to Kafka clusters. - Implementing Experiments: Step-by-step execution of chaos experiments, including network failures, pod deletions, and resource constraints. - Monitoring and Analysis: Utilizing monitoring tools to observe the impact of chaos experiments and analyze system behavior under stress. Using Prometheus and Grafana. - Learning and Adapting: Interpreting results to improve system design and resilience strategies.

 "[Operations] Enterprise Mail Security with Open Source?" ( 2024 )

Sunday at 12:40, 15 minutes, H.2213, H.2213, Modern Email devroom Carsten Rosenberg Manu Zurmuehl , slides , video

As of 2023/2024 mail is still one of the most important attack vectors for Ransomware, Spam or Phishing.

The commercial vendors of mail security products show off using many advanced buzzwords to advertise their features. It seems they have magic algorithms to catch every threat. And you can only buy it in their shop.

Is there any chance to build a mail security platform with open-source components on-prem that is at least as effective??

With the help of a robust MTA infrastructure and the excellent anti-spam solution and mail-framework Rspamd we would like to show you that most of the buzzword ideas are covered by Rspamd or could be queried by Rspamd.

All we need is good reputation data - selfmade, commercial or from the community.

Let's have a look if we can compete with commercial vendors and build up an Enterprise Mail Security using open-source.

 "The case for a virtual Rust stateless codec driver" ( 2024 )

Sunday at 12:40, 30 minutes, UB5.132, UB5.132, Kernel devroom Daniel Almeida , slides , video

This talk will present the case for a Rust stateless codec driver in V4L2. It will highlight the basics of stateless decoding in the media subsystem and walk the audience through the current status of the Rust bindings submitted by the author as it takes stock of the missing pieces to make a functional driver. It will then discuss how this project relates with the ongoing efforts to bring Rust to the rest of the multimedia stack on Linux.

 "AI for Developers: Treating Open Source AI as a Function" ( 2024 )

Sunday at 12:45, 30 minutes, UB2.252A (Lameere), UB2.252A (Lameere), AI and Machine Learning devroom Martin Hickey , slides , video

More and more applications are being developed which consume Artificial Intelligence (AI). AI is used in applications as diverse as fraud detection, medical detection, sales, security, and many more. AI adoption has more than doubled since 2017 and companies are now promoting an AI first strategy with their products and services. But if a developer wants to consume AI in their applications, do they need to be an AI expert? The simple answer is No!

In this talk application developers will learn how they can treat AI the same as any other "function" where they give it input and it returns the expected output. This is made possible by open source AI frameworks that enable users to manage models through a set of developer friendly APIs. Discussion will revolve around open source frameworks like Ray, TGIS, Triton and TorchServe, to give an understanding of the tools available to help on the AI journey. There will be a demo of one of these runtimes in action by loading open source models from Hugging Face from different domains and querying the models through a web UI.

There are great open source tools out there that provide an abstraction layer for application developers where they can consume AI models through APIs independent of understanding the data form of the model. Walking away from this talk, programmers will have a good appreciation of how they can practically consume AI in their applications without being an AI master.

 "System for Television Off-air Recording and Archiving, BFI National Television Archive" ( 2024 )

Sunday at 12:45, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Joanna White , slides , video

The BFI National Archive use many open source tools for day to day operation of workflows, preserving film, video, documents and photographs in the United Kingdom. Last year we built a Television off-air recording system using software and libraries created by the open-source community. This lightning talk will give a quick introduction to STORA, our open-source code base, and some of the open-source tools used to create project:

Python
VLC
Libdvbtee
FFmpeg
MediaInfo
CCExtractor

 "Post-Quantum Cryptography transition: where we are now" ( 2024 )

Sunday at 12:45, 30 minutes, K.3.401, K.3.401, Identity and Access Management devroom Dmitry Belyavskiy , slides , video

Nobody knows when the quantum computers turn into reality but algorithms to resist them are already almost available. What can be done for testing and getting familiar with these algorithms? What libraries to use? What is the current state of standardization?

 "[Operations] A user provisioning API for PostfixAdmin and Nextcloud using the scim-server-php library" ( 2024 )

Sunday at 12:55, 10 minutes, H.2213, H.2213, Modern Email devroom Hans-Jörg Happel Rumen Donchev , video

The SCIM standard provides a standardized mechanism to create and manage user accounts. This helps portability (moving users across vendors) and interoperability by offering a common way how administrators and users themselves can manage quota, email aliases and other options.

scim-server-php is a library which can be used to easily add support for the SCIM user provisioning standard (RFC 7643/7644) to existing systems. The library is already used in extensions for PostfixAdmin and Nextcloud.

 "An open source digital radio protocol for amateur radio" ( 2024 )

Sunday at 13:00, 25 minutes, UB2.147, UB2.147, Software-Defined Radio and Amateur Radio devroom Morgan Diepart , slides , video

In this talk, Morgan, hardware and firmware developer at M17, is going to present a brief history of the digital modes in ham radio and place them on the spectrum of open source, underlining the main historical obstacles. Then, he will explain what allowed the emergence of the two main fully open source protocols. Taking M17 as an example he will describe the new possibilities brought on the table and presenting the whole ecosystem revolving around it, highlighting the relationships between all those open-source projects and how they reinforce each other.

 "17-year journey of the Mozilla Support platform & its community" ( 2024 )

Sunday at 13:00, 25 minutes, H.1302 (Depage), H.1302 (Depage), Mozilla devroom Rizki Kelimutu (Kiki) Tasos Katsoulas Smith Ellis , video

As one of the oldest community platforms in Mozilla, we’re going to dig into the history of SUMO (or SUpport.Mozilla.Org) and how it transformed into a hybrid platform that could cater to the need of organizational changes.

Join us to learn from our experience modernizing the platform while keeping the legacy code to still function. And how we nurture one of, if not the oldest community programs in Mozilla.

 "Multithreading and other developments in the ffmpeg transcoder" ( 2024 )

Sunday at 13:00, 25 minutes, UB4.132, UB4.132, Open Media devroom Anton Khirnov , slides , video

The ffmpeg command-line tool is a universal media transcoder powering everything from personal media libraries to giant video streaming websites or Mars rovers. This talk will describe my recent work on it, which touched almost every line of code and was aimed at parallelising the transcoding pipeline and enabling other future improvements.

 "How can we trust 3rd party code? Using Python to understand the trust relationships within the python ecosystem" ( 2024 )

Sunday at 13:00, 25 minutes, UD2.218A, UD2.218A, Python Devroom devroom Nigel , slides , video

As developers, we use open source libraries all the time to perform critical functions in our code, often searching for libraries in Google and installing from package registries like PyPI and npm. Because of this, open source packages are particularly vulnerable to malware attacks.

In this session we look at the web of trust we assume when we install a third party PyPI package. We explore some of the relationships between the people, repositories and code and how we can start to verify them. We try to define some of the ways a piece of code can be trustworthy or not - it isn’t just malice; old, abandoned, under-maintained code can be just as problematic.

We will look at some of the things we can measure, like the activity in the repo and the users and also the strength of the link between repo and source. We’ll also look at the scale of the problem and reasons we might want to automate it.

 "Firefox power profiling: a powerful visualization of web sustainability" ( 2024 )

Sunday at 13:00, 50 minutes, Janson, Janson, Main Track - Janson Florian Quèze , slides , video

Following Mozilla's commitment to sustainability, meticulously examining Firefox power usage—both on an individual user basis and at scale through telemetry—required developing new tooling.

Built-in power profiling features were added, empowering developers to make informed decisions. Let's review this journey and see how it enables the creation of more sustainable web applications.

 "SBOMs that you can trust - the good, the bad, and the ugly" ( 2024 )

Sunday at 13:00, 30 minutes, K.4.401, K.4.401, Software Bill of Materials devroom Daniel Liszka Miguel Martinez Trivino , slides , video

You might be on the journey of adopting Software Bill of Materials (SBOMs) in your organization. What if I tell you that your SBOMs might be useless and even harmful?

During this talk, we'll discuss the overlooked aspect of ensuring the trustworthiness of the SBOM during its lifecycle, from generation to storage, distribution, and processing.

We'll shed some light on the questions you should ask about your SBOMs, who, and how you can achieve trust at each step of their lifecycle.

We'll dip our toes into the why now, and how we can leverage OpenSource tools and specifications like in-toto attestations, Content Addressable Store, Supply-chain Levels for Software Artifacts ("salsa"), or Sigstore to have SBOMs that are uniquely identifiable, unforgeable, complete, and available.

After this talk, you'll know how to implement SBOM end-to-end (or other metadata such as VEX, vuln scan, etc.) that meets the highest levels of trust required in the Software Supply Chains of the future.

For reference, we'll touch on the following Open Source projects during this talk.

  • https://github.com/slsa-framework/slsa
  • https://github.com/sigstore/cosign
  • https://github.com/opencontainers/distribution-spec
  • https://github.com/chainloop-dev/chainloop

 "The Monolith versus the Swarm - A Comparison of openSUSE’s and Fedora’s Build Infrastructures" ( 2024 )

Sunday at 13:00, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Distributions devroom Dan Čermák , video

Even though openSUSE and Fedora are both RPM-based Linux distributions, their respective infrastructures differ significantly. While openSUSE is built entirely using the Open Build Service, Fedora relies on a variety of tools to perform specific tasks of building a full Linux distribution.

Both distributions have stood the test of time, and both approaches work for the most part fine for their communities. Yet, the question remains: is one of the approaches better than the other? And what are the advantages and drawbacks for the various contributor roles? The talk answers these and other burning questions and reveals the hidden weaknesses of both setups.

 "The Basic Economics behind Open Source Funding in 2024" ( 2024 )

Sunday at 13:00, 30 minutes, H.1308 (Rolin), H.1308 (Rolin), Open Hardware and CAD/CAM devroom amanda casari , video

You have a project. They use your project. They have money. They give you money. It should only be so simple, but it still isn't despite the many platforms, blogs, and advice on how to get paid for your open source work. In this talk, we will fundamentally explain the kinds of economic models of open source, including a basic taxonomy on types of funds and funders, special considerations and points of friction for open hardware, and how to unblock your projects and communities from funding challenges.

 "Sequoia PGP: Rethinking OpenPGP Tooling" ( 2024 )

Sunday at 13:00, 50 minutes, K.1.105 (La Fontaine), K.1.105 (La Fontaine), Main Track - K Building Neal H. Walfield , slides , video

Six and a half years ago, we, Justus, Kai, and Neal, started the Sequoia PGP project. Our goal with Sequoia PGP was not just to implement OpenPGP in Rust, but to provide a set of privacy and security tools that are easier to use, and more robust than what was previously available.

Although OpenPGP is widely considered hard to use, overcomplicated, and the stuff of nerds, our prior experience working on another OpenPGP implementation suggested that the OpenPGP standard is actually pretty good, but the tooling needs improvement.

In this talk, I'll present Sequoia's architecture (library first), our design philosophy (usable, low-level, unopinionated interfaces, which are secure by default and are complemented by high-level opinionated interfaces), and the status of the project (we released 1.0 of our low-level library in December 2020, and are currently working towards 1.0 releases of our higher-level libraries and services).

Today, Sequoia PGP is used by the RPM package manager, which has shipped with Fedora since version 38. Sequoia PGP has been adopted by SecureDrop, a whistle blowing platform, which is relied by many news organizations around the world. And, Switzerland's BioMedIt uses it as part of their Sett tool, which hospitals and researchers use to exchange sensitive medical information.

 "For Your Eyes Only: Roles, Privileges, and Security in PostgreSQL" ( 2024 )

Sunday at 13:00, 50 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), PostgreSQL devroom Ryan Booz , slides , video

Security is an essential, yet often misunderstood, part of effectively managing a PostgreSQL cluster. As the popularity and adoption of PostgreSQL continues to grow, the interaction of roles, privileges, and object ownership is a recurring theme of confusion in forums and mailing lists.

In this session, I’ll start by defining the Principle of Least Privileges and how this philosophy influences roles and privileges in PostgreSQL. Next, I’ll demonstrate the importance of object ownership in PostgreSQL, how group and user roles can work in unison to effectively manage permissions, multiple ways to manage default privileges, and which privileges should always be modified in any new PostgreSQL database. Finally, I’ll discuss how recent releases are laying a foundation for more flexible and robust security management in the years ahead.

By the end of this session, you will understand how roles work in PostgreSQL, how they impact your daily work, and how to effectively communicate security best practices with others on your team. You’ll leave with a solid information to start creating roles that effectively manage access to your cluster and data.

 "Rust Distro Meetup" ( 2024 )

Sunday at 13:00, 60 minutes, AW1.121, AW1.121, BOF - Track C Fabian Grünbichler

This BoF/meetup is for Rust teams/maintainers across distros and upstreams interested in making their packagers' lifes easier.

We (various people active in the Debian Rust packaging team, but also active in other distros or upstream/downstream projects) have had discussions in various avenues with upstream projects about how to make eachothers lives easier.

Ideally, the BoF would collect input from "both sides" with the aim of distilling it into an extension of documents like Debian's UpstreamGuide, but specific for Rust (crates). Other potential output would be identifying gaps in distro tooling, potential for more exchange across distros or coordinated efforts to implement relevant missing features in upstream tooling such as cargo.

 "turnip: Update on Open Source Vulkan Driver for Adreno GPUs" ( 2024 )

Sunday at 13:05, 25 minutes, K.3.201, K.3.201, Graphics devroom Danylo Piliaiev , slides , video

Turnip changed a lot since the last status update. You could now run AAA desktop games via FEX + Turnip, Adreno 7xx is now supported, Turnip is used by emulators on Android, and more!

 "Do you know YAML?" ( 2024 )

Sunday at 13:05, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Tina Müller , video

or: How well do you know YAML?

YAML has some pitfalls, but it is also a powerful language. And you might not know that there's been quite some development around YAML in the last years.

In this talk I want to concentrate on those news, and that some of the pitfalls have gone away. An updated spec, new libraries and a test suite have improved the situation for users and developers.

 "[Operations] Rspamd's 15-Year Odyssey: From Hobby to Open Source Impact" ( 2024 )

Sunday at 13:10, 15 minutes, H.2213, H.2213, Modern Email devroom Vsevolod Stakhov , slides , video

In this presentation, I'll give you an overview of how Rspamd, our open-source project, has evolved over the years. We'll explore the key choices we made in designing it and the challenges we faced while making it grow. I'll also show you real examples of how we've kept up with modern practices like Continuous Integration, extensive testing (including AI assisted testing), support for containers and different systems. At the same time, I'll discuss vital elements such as keeping things compatible with older versions and smoothly working with the existing code, since the core of Rspamd is written in plain C.

 "Implementing distributed traces with eBPF" ( 2024 )

Sunday at 13:10, 25 minutes, UA2.220 (Guillissen), UA2.220 (Guillissen), Monitoring & Observability devroom Nikola Grcevski Mario Macias , slides , video

Distributed tracing can be very helpful when investigating production issues, especially in micro-services environments, where we have many small services running and it’s often difficult to pinpoint the cause/consequence relationship of failures or performance problems. OpenTelemetry already provides agents and SDKs that allows us to instrument our applications and generate distributed traces, however this talk focuses on approaches to generating distributed traces with eBPF by making zero code or configuration changes to the application stack.

We’ll discuss approaches on tracking server/client context in web services with eBPF and how we can propagate this context in some programming languages/frameworks. We’ll also focus on the challenges and approaches to implementing context tracking and propagation with eBPF to protocols other than HTTP.

 "FOSS policy engagement: rapporteur playback" ( 2024 )

Sunday at 13:10, 10 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Enzo Ribagnac , video

This devroom is not like others! It is to develop future EU policy, not open source code! We seek to stimulate a genuine and open discussion that will become the fuel for good legislation in the future. We are building workshops where accepted participants will be grouped together with EU policy experts for a journey from the current state to a future state in each topic area. We aim to produce a report in each policy area arising from each workshop.

During this session, our rapporteur for the block Enzo Ribagnac, will share the take-aways he collected as he listened to speakers, participants and their interactions.

 "Confidential Computing devroom welcome" ( 2024 )

Sunday at 13:15, 15 minutes, H.2214, H.2214, Confidential Computing devroom Fritz Alder Jo Van Bulck Fabiano Fidêncio , slides , video

Welcome to the 5th iteration of the confidential computing devroom! In this welcome session, we will give a very brief introduction to confidential computing and the devroom, and we will give an honorable mention to all the folks that contributed to this devroom, whether they are presenting or not.

 "Open practices for open projects" ( 2024 )

Sunday at 13:15, 30 minutes, UA2.114 (Baudoux), UA2.114 (Baudoux), Community devroom Donna Benjamin , video

The Open Practice Library is filled with useful stuff. Stuff that helps people work together better, build the right thing, and build the thing right. In this session we'll gather ideas and issues from participants, and design potential solutions and pathways together using the Mobius Loop, and the library of open practices. It should be fun, come along!

 "Beyond passwords: secure authentication with passkeys" ( 2024 )

Sunday at 13:15, 30 minutes, K.3.401, K.3.401, Identity and Access Management devroom Remy Bertot , slides , video

In this session, we will explore passkeys and the webauthn protocol. We'll look at the advantages of passkeys over traditional authentication methods. We will review the implementation pitfalls and high level risks that needs to be addressed for passkeys to hold on to their promises of convenience, security and privacy protection. You will also gain insights into the current work happening at in the Fido Alliance around passkeys and authenticators certification.

 "From Kernel API to Desktop Integration, how do we integrate battery charge limiting in the desktop" ( 2024 )

Sunday at 13:15, 30 minutes, UB5.132, UB5.132, Kernel devroom Jelle van der Waa , video

The kernel has long had support for battery charge limiting via sysfs, several advanced tools such as TLP allows an advanced user to configure these limits. But how do we make this functionality available in popular DE's such as GNOME, what kind of plumbing is required? Are all laptops created equal? How do we collaborate on the design? Is the existing kernel API good enough?

In this talk we will walk through the kernel sysfs API all the way to a simple toggle switch in gnome settings.

This talk explains how I've implemented battery charge limiting in GNOME settings and UPower. Documenting the whole process of discovery, design discussions, implementation and hardware details.

UPower: https://gitlab.freedesktop.org/upower/upower and WiP branch https://gitlab.freedesktop.org/jelly/upower/-/tree/battery-charge-limit?ref_type=heads GNOME Charge limits: https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/2553 Charge control limit knobs: https://www.kernel.org/doc/html/latest/power/power_supply_class.html

 "Using Haystack to Build Custom Functionality for LLM Applications" ( 2024 )

Sunday at 13:15, 30 minutes, UB2.252A (Lameere), UB2.252A (Lameere), AI and Machine Learning devroom Tuana Çelik , video

Retrieval-Augmented Generation (RAG) is an incredibly powerful technique (a hack, if you will) to make use of powerful LLMs while making sure they produce accurate information based on your own data. However, model providers and open-source frameworks cannot know exactly what you need for every application you might need to build.

In this talk, we will look at Haystack, an open-source LLM framework, and see how you can use Haystack to build your own customized LLM functionality: - What is Retrieval-Augmented Generation - How to build custom RAG pipelines with a choice of model providers - How to customize your own tooling for LLM applications - Example: Build a 'HackerNewsFetcher' for a RAG application that uses the latest Hacker News articles.

 "Progressive Delivery Made Easy with Argo Rollouts" ( 2024 )

Sunday at 13:15, 30 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Testing and Continuous delivery devroom Carlos Sanchez , video

Progressive Delivery makes it easier to adopt Continuous Delivery, by deploying new versions to a subset of users and evaluating their correctness and performance before rolling them to the totality of the users, and rolled back if not matching some key metrics. Feature flags and Canary deployments are some of the techniques in Progressive Delivery, used to roll out new versions gradually.

For containerized workloads running on Kubernetes it is very easy to adopt Progressive Delivery using Argo Rollouts. At Adobe Experience Manager we are deploying over 10k non Adobe customer services to Kubernetes. New deployments can occur multiple times per day from internal changes or from customer code, which can be very different from one customer to another. A new feature or piece of code can work fine for 99% of customers but still affect the other 1%, and being able to detect this from just tests is a very costly process.

We will show how to implement a Progressive Delivery pipeline with Argo Rollouts to improve the reliability of the service and prevent regressions. It allows the protection of the service and automation of roll backs to a previous version if needed. This allows for faster delivery with more confidence so regressions are less likely to affect a customer.

 "The Matrix State of the Union" ( 2024 )

Sunday at 13:15, 30 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), Matrix devroom Matthew Hodgson , video

An overview of all the things the Matrix core team has been up to over the course of 2023, including:

  • Maturing matrix-rust-sdk, including matrix-sdk-ui
  • Nailing down sliding sync
  • Native scalable E2EE group calling via Livekit
  • Improving crypto reliability via crypto-complement
  • All the progress on migrating to OIDC
  • Advancing MLS-over-Matrix
  • Building out DMA messaging interoperability via Matrix

 "Wrestling giants: How can free open source CMSes remain competitive with enterprise clients?" ( 2024 )

Sunday at 13:15, 45 minutes, K.4.601, K.4.601, Designing Futures of FOSS Content Management with the Open Website Alliance devroom Owen Lansbury , video

Adobe spends around USD$2.7bn annually on product development, sales and marketing for its Experience Cloud product suite. In comparison, Drupal has historically had no centralised product management or marketing, let alone ANY coordinated budget! This talk will look at the challenges Drupal is facing now that it competes head to head with proprietary giants like Adobe in the enterprise sector. From the perspective of his role on the Drupal Association board, Owen will discuss the strategies and initiatives the Drupal community is starting to put in place to remain competitive and how these approaches can be shared by other open source projects.

 "Welcome to the LLVM dev room" ( 2024 )

Sunday at 13:15, 5 minutes, K.4.201, K.4.201, LLVM devroom Kristof Beyls Peter Smith Marius Brehler , slides , video

A word of welcome by the LLVM Dev room organizers.

 "Open Source Firmware, BMC and Bootloader devroom - intro" ( 2024 )

Sunday at 13:15, 5 minutes, AW1.126, AW1.126, Open Source Firmware, BMC and Bootloader devroom Daniel Kiper , video

Short introduction, history of devroom, agenda.

 "Linker Scripts in LLD and how they compare with GNU ld" ( 2024 )

Sunday at 13:20, 20 minutes, K.4.201, K.4.201, LLVM devroom Peter Smith , slides , video

LLD supports linker scripts using the GNU ld manual as a de-facto specification. While the information in the manual is necessary, it isn't sufficient as parts are explicitly "implementation defined" and others are underspecified. While many linker scripts will be interpreted the same way in LLD and GNU ld the differences can catch people out. This can extend to the "default" linker script case, which is not handled in the same way by LLD.

The talk will cover: * Basics of linker script notation and what they are used for. * The LLD and GNU ld "default" linker script. * How LLD and GNU ld handle parts of the specification that are "implementation defined". * Other known differences between LLD and GNU ld.

The talk will be most useful to developers needing to write a linker script, or are interested in how they are implemented.

 "Open Source Firmware status on AMD platforms 2024 - 5th edition" ( 2024 )

Sunday at 13:20, 25 minutes, AW1.126, AW1.126, Open Source Firmware, BMC and Bootloader devroom Michał Żygowski , slides , video

This is the 5th edition of the "Status of AMD platforms in coreboot". As usual the talk will cover the most recent news around the AMD support in open-source firmware ecosystem and updates of the topics covered in previous years. The current situation of coreboot project will be disclosed along with new developments around server platforms.

 "Public services interoperability: [begin workshop] Free/open source and Interoperable European public services" ( 2024 )

Sunday at 13:20, 15 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Gijs Hillenius , slides , video

This two-hour workshop explores the context, legislation and impact of the Interoperable Europe Act and related initiatives.

The workshop will be moderated by Lina Ceballos, and will include a short presentation on the Interoperable Europe Act, by Isa VON-KALBEN, project officer at the European Commission, DIGIT B2.

 "Introduction to BlissLabs and Bliss OS" ( 2024 )

Sunday at 13:25, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Jon West , slides , video

BlissLabs: 1) Introduce BlissLabs, what it is, what it represents and what projects are under our org 2) Go over the mission and vision of the non-profit org 3) Introduce the projects BlissLabs has under its wings 4) Touch on the diversity and impact in the community 5) describe our process and how we support subprojects

Bliss OS: 1) Introduce Bliss OS (Android for x86 hardware) and go over what it is and how it works and what are some of the use-cases 2) Go over the statistics (downloads, retention, etc) 3) Go over use-cases, applications & features 4) Review the OSS project structure around Bliss OS 5) Describe licensing and touch on how funding works 6) Review milestones and achievements 7) Where to view/download Demo 8) Go over announcements and future visions for Bliss OS (Announcement) 9) Community engagement & opportunities

Closing: 1) Where to find us: Bliss Labs - Website Bliss OS - Website Bliss OS Source - Android 9-12.1 Bliss OS Source - Android 13+ Bliss Bass Source - Android 12+

 "Desktop Linux, as easy as a smartphone! Just in a Snap!" ( 2024 )

Sunday at 13:30, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Distributions devroom Till Kamppeter , slides , video

Have you already thought about how the applications we develop get distributed to end users?

Often developers only provide the source code. So for not so tech-savvy users the major distributions need to pick up projects and package it, and maintain it for new releases.

This is why there is a need for distribution-independent, secure, and easy-to-use packaging, like on smartphones. This exists also for Linux ... Among the options, there is Snap! Applications are easy to find in the Snap Store and they are installable on most Linux distributions.

And, to make Linux even easier for end users, we cannot only provide applications in the Snap format, but also have an all-Snap operating system, Ubuntu Core Desktop, an immutable core operating system based on Snap. And here we do not only have Snaps of desktop applications, but also system applications and components (like the printing stack), the kernel, the desktop environment (like GNOME or KDE), the boot loader, and the core system. So everything can get easily updated or replaced by alternatives, and in case of failure one can easily revert (on boot failure we revert automatically).

All this is based on the knowledge and experience we gained at Canonical when creating the smartphone operating system Ubuntu Touch. After the phone project having been discontinued we started with the IoT system Ubuntu Core, snapped desktop applications, ...

More about Snap: The Powers, The People

Want to learn snapping? Here are my 3 workshops!

How I, as leader of OpenPrinting, got a Snap enthusiast: Linux Saloon on YouTube

Want to see Ubuntu Core Desktop live on the FOSDEM? I will have a Virtual Machine on my laptop. Perhaps Philipp Kewisch will have Ubuntu Core Desktop on an Intel NUC and also perhaps Alan Pope ("Popey") will bring a demo installation.

By the way, Popey had already succeeded to install and run Ubuntu Core Desktop on his Steam Deck.

https://snapcraft.io/

 "12 months of SBOMs - an experience report" ( 2024 )

Sunday at 13:30, 30 minutes, K.4.401, K.4.401, Software Bill of Materials devroom Anthony Harrison , slides , video

The CVE Binary Tool (https://github.com/intel/cve-bin-tool) is a Python tool which helps you determine if your system includes known vulnerabilities. It takes a variety of inputs including binaries and SBOMs (both SPDX and CycloneDX are supported). Our build process has been generating a SBOM (a build/deploy version using SBOM4Python (https://github.com/anthonyharrison/sbom4python)) every week and storing it within the GitHub repo. A detailed analysis of the generated SBOMs over the past 12 months has identified a number of interesting observations which were not immediately apparent before SBOMs were being generated. It addresses some key questions such as “How much does an SBOM change and how often?“ and “ Does your SBOM depend on your environment?“. This presentation shares these observations and provides a number of recommendations to be followed when generating SBOMs as part of the build process.

 "QUBIK a 1p PocketQube satellite platform" ( 2024 )

Sunday at 13:30, 30 minutes, H.1308 (Rolin), H.1308 (Rolin), Open Hardware and CAD/CAM devroom Ilias Daradimos , slides , video

The story of QUBIK, an OpenSource/OpenHardware PocketQube satellite. Ηow it came to be, challenges faced, its mission in space and its ongoing development as an experimentation and educational platform

 "Making Python safer than ever" ( 2024 )

Sunday at 13:30, 25 minutes, UD2.218A, UD2.218A, Python Devroom devroom Cheuk Ting Ho , video

Python is one of the programming languages that has a huge open-source supply chain. There are over 400,000 Python packages on Python Package Index (PyPI) and many more on other registries like conda-forge, mostly for scientific libraries. Making sure this and the wider Python ecosystem are secure is a huge job and requires consistent contributions.

Thanks to OpenSSF’s Alpha-Omega project and AWS, we now have a PSF Security Developer-in-Residence and PyPI Safety & Security Engineer whose responsibility includes a security audit of the PyPI codebase and infrastructure, improving security practices, and establishing metrics on security posture to show the impact.

In this talk, Cheuk will go over the work that has been done by the PSF security team and what the best practices for Python library maintainers and users are.

 "Diving into PDF.js: the advantages of the web platform" ( 2024 )

Sunday at 13:30, 15 minutes, H.1302 (Depage), H.1302 (Depage), Mozilla devroom Marco Castelluccio Calixte Denizet , slides , video

A talk about the PDF viewer (the most secure in the world!) in Firefox, its peculiar architecture, and the challenges and advantages of building a PDF application with web technologies. During the talk, we will also talk about the new features we have been building recently and the ones we are about to begin.

 "[Clients] Introduction to Thunderbird for Android" ( 2024 )

Sunday at 13:30, 20 minutes, H.2213, H.2213, Modern Email devroom cketti , slides , video

Using email on a smartphone is a different experience from using email on a desktop computer. That's why Thunderbird for Android is a completely separate app from Thunderbird. In this talk we'll have a brief look at the origins of Thunderbird for Android and take a peek at some of the technical details of the app.

 "OpenRTX: an open source firmware for ham radio devices" ( 2024 )

Sunday at 13:30, 25 minutes, UB2.147, UB2.147, Software-Defined Radio and Amateur Radio devroom Silvano Seva , slides , video

Started in March 2020 and following the important work done by the OpenGD77 and md380tools projects, the OpenRTX projects aims at developing an open source firmware for ham radio devices, designed to be modular and easily extendable towards both new and already existent devices and transmission protocols. The project is actively supporting an promoting the open source phylosophy in ham radio by implementing protocols like M17, a free and open source protocol for digital voice and data, and preferring open hardware devices when chosing new targets. This talk will take tour of the project, presenting its history and describing the general structure, also providing some details on the supported platforms, the current development status and the future extensions and development plans.

 "StreamCrafter - In browser broadcasting" ( 2024 )

Sunday at 13:30, 25 minutes, UB4.132, UB4.132, Open Media devroom Marco van Dijk , video

Introducing the StreamCrafter: a new solution that allows you to broadcast from any internet enabled device. Not just another WebRTC Zoom-alike but a full-featured studio application with support for compositing, mixing, recording and streaming to any service from anywhere

 "Intel TDX Deep Dive" ( 2024 )

Sunday at 13:35, 20 minutes, H.2214, H.2214, Confidential Computing devroom Benny Fuhry , slides , video

In this talk, we will talk about selected details of Intel Trust Domain Extensions (TDX). Starting with a brief overview, we will highlight several aspects of the technology including the memory encryption, the introduced instructions, and the attestation flow. Additionally, we will explore the availability of Intel TDX. Finally, we discuss upcoming features of Intel TDX.

 "Graphics stack updates for Raspberry Pi devices" ( 2024 )

Sunday at 13:35, 25 minutes, K.3.201, K.3.201, Graphics devroom José María Casanova Crespo Juan A. Suarez , slides , video

This talk will show the efforts done in the Open-Source graphics stack for supporting Raspberry Pi devices. Although the talk will focus on the recently launched new Raspberry Pi 5, we will show the improvements done for previous generations of the Raspberry Pi hardware.

Raspberry Pi 5 has available FLOSS GPU drivers on product launch, exposing OpenGL-ES 3.1 and Vulkan 1.2. We'll go through the changes needed to enable desktop OpenGL 3.1 on RPi4/5.

We will also review the changes done to the kernel driver to expose the RPi5 capabilities and the new GPU stats support for RPi4/5.

Finally, we will show the work done to use Wayfire as the default Wayland compositor on the Raspberry Pi OS.

  • https://www.mesa3d.org/
  • https://www.raspberrypi.com/
  • https://wayfire.org/

 "Public services interoperability: The Interoperable Europe Act; the challenges and opportunities for the free and open source communities." ( 2024 )

Sunday at 13:35, 10 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Lina Ceballos Isa Von Kalben , video

The presentation will expand on the future involvement of the open source community as part of the IE, challenges and opportunities for the free/ open source community.

 "Snap! Workshop" ( 2024 )

Sunday at 13:40, 60 minutes, J.1.106, J.1.106, FOSDEM junior Jens Mönig

Snap! is a broadly inviting programming language for kids and adults that's also a platform for serious study of computer science.

Anyone aged 7 to 17 can visit the workshop and learn how to use Snap!.

Registration will be required for this session. Use the following link to register.

 "Hedy" ( 2024 )

Sunday at 13:40, 60 minutes, H.1301 (Cornil), H.1301 (Cornil), FOSS Educational Programming Languages devroom Jesús Pelay Pink van de Hel , slides , video

Hedy is a gradual programming language to teach children programming. Gradual languages use different language levels, where each level adds new concepts and syntactic complexity. At the end of the Hedy level sequence, kids master a subset of syntactically valid Python.

 "Using code generated by AI: issues, misconceptions and solutions" ( 2024 )

Sunday at 13:45, 30 minutes, UB2.252A (Lameere), UB2.252A (Lameere), AI and Machine Learning devroom Andrew Katz , video

As ever, technology has raced ahead of the law. What are the copyright issues with ingestion of training data, configuration and transfer of models, and the generation and use of code? Can GPL code inadvertently be incorporated into your non-GPL codebase? Who owns the copyright in generated code? Andrew Katz, a lawyer specialising in open source and AI, will explain the issues, and consider potential solutions.

 "Patch based test coverage for quick test feedback" ( 2024 )

Sunday at 13:45, 10 minutes, K.4.201, K.4.201, LLVM devroom Shivam Gupta , slides , video

Most of the day to day tests in LLVM are regression tests executed by Lit, structured as source code or IR to be passed to some binary, rather than test code directly calling the code to be tested. This has many advantages but can make it difficult to predict which code path is executed when the compiler is invoked with a certain test input, especially for edge cases where error handling is involved. The goal of this work was to help developers create good test coverage for their patch and enable reviewers to verify that they have done so. To accomplish this we have introduced a tool that can be fed a patch as input, add coverage instrumentation for the affected source files, runs Lit tests, and records which test cases cause each counter to be executed. For each counter we then report the test cases executing the counter, but perhaps more importantly we also report the test cases executing the counter that are also changed in some way by the patch, since a modified line that results in zero counter isn’t properly tested, unless it’s intended to be a non-functional change.

In this presentation, we will understand what are the technologies involved, the shortcomings to implement the solution, the idea of implementation, and the final demo result by using a llvm-project patch.

 "Interoperability & Matrix" ( 2024 )

Sunday at 13:45, 30 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), Matrix devroom Travis Ralston , video

With the introduction of the European Union's Digital Markets Act (DMA), an open standard for interoperable communications is needed in the messaging world. Matrix already serves as such a layer, though can be quite complex.

In this talk we explore Matrix's existing interoperability considerations, how Linearized Matrix works and interoperates at the room level, and the interactions with MIMI's latest protocol document work. This talk will be fairly technical as it deals with the algorithms embedded at the individual room level, including event authorization, state resolution, and the associated security properties and models.

 "Introducing the Open Podcast API" ( 2024 )

Sunday at 13:45, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Koen Glotzbach Ciarán Ainsworth , slides , video

Over at AntennaPod, we often get requests and comments about synchronization of listening data. The existing gPodder API has some fundamental flaws and misses capabilities. So we took the initiative together with Funkwhale to develop a new standard to sync your listening data. What do we do differently & why, where are we at, and what calls are in the planning?

 "Welcome to Retrocomputing Devroom" ( 2024 )

Sunday at 13:45, 5 minutes, UB5.230, UB5.230, Retrocomputing devroom Sebastian Eggermont , video

Welcome to Retrocomputing Devroom

 "Public services interoperability: workshop Interoperable Europe Act" ( 2024 )

Sunday at 13:45, 25 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Lina Ceballos Isa Von Kalben , video

The discussion focuses on the involvement of the open source community as part of the IE, and the challenges and opportunities for the free/ open source community.

 "Kickstarting an Open Source Culture: A Guide for Mentors" ( 2024 )

Sunday at 13:50, 30 minutes, UA2.114 (Baudoux), UA2.114 (Baudoux), Community devroom Martin Hickey Phil Estes , slides , video

Many companies are understanding the value of having open source contributors and maintainers within their ranks. Growing that open source culture internally is not quite as easy as simply hiring developers to “work on open source” and pointing them at a GitHub repository. Martin and Phil both became open source contributors and, ultimately, maintainers in the past decade with the support of company efforts to increase contributors. They both learned a lot of open source lessons along the way and are taking that knowledge into leadership and specific mentoring roles at IBM and AWS today.

In this talk, Martin and Phil will provide guidance for both employees and technical leaders who are looking to invest in growing an open source culture where they work. We’ll help detail the ways that open source investment is valuable both for the company and for the employee’s own vitality and career advancement. We’ll share how our own open source journeys have unlocked career opportunities that may have been unavailable to us before, and how we are investing in others through various programs and career mentoring at our respective companies today.

 "Training efficient and open source ML models for private translation in Firefox" ( 2024 )

Sunday at 13:50, 25 minutes, H.1302 (Depage), H.1302 (Depage), Mozilla devroom Marco Castelluccio , slides , video

Firefox is the only web browser that provides local in-page translation that is private by design.

What does it take to train a high-quality Neural Machine Translation model? How do we compress the models from 800 to 20 MB and make them efficient to perform well on a CPU? What infrastructure and scale does it require to run training for many languages? We will answer all these questions and talk about the unique challenges and the future of the project.

And yes, the good news: code, training data and models are fully open-source!

 "Own your CI with Nix" ( 2024 )

Sunday at 13:50, 15 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Testing and Continuous delivery devroom Théophane Hufschmitt , slides , video

Having a good CI is a must-have for any serious software project nowadays.

Modern CI platforms and tools make it trivial to build an initial CI configuration and have it plugged in the development workflow. They however don't solve the ongoing maintenance cost, as any CI system requires maintaining a specific logic for creating a suitable build environment on the CI runners, meaning that every change to the build requirements will have to be duplicated in the CI setup. And that duplication means that the different setups will inevitably drift out of sync, leading to head-banging errors that will only happen in one setup but not another.

This talk is about leveraging Nix to be able to declare an environment that can be used both locally, and on any CI service, so that the maintenance cost becomes minimal, and the environments are guaranteed to stay in sync.

 "[Clients] Taking care of Roundcube Webmail - current status and future prospects" ( 2024 )

Sunday at 13:50, 10 minutes, H.2213, H.2213, Modern Email devroom Anna Larch , slides , video

As one of the developers that has taken on the development and maintenance of Roundcube at Nextcloud, I'd like to give an overview of the current status, and to talk about the future ideas and goals that we have for the project.

 "The big adventure of little professor and its 4-bits handheld friends running TMS 1000" ( 2024 )

Sunday at 13:50, 25 minutes, UB5.230, UB5.230, Retrocomputing devroom Christophe Ponsard , slides , video

The invention of the integrated circuit in the late 1950's led to first 4 bits generation of microprocessors/controllers in the early 70's. While the Intel 4004 was the first commercial microprocessor, the TMS 1000 for Texas Instruments was the first widely available microcontroller embedding CPU, RAM and ROM for a mere 2$. Millions of units of this family were deployed in many calculators and handheld games. This talk will have a retrospective look at this piece of history based on an Harvard architecture. We will first analyse the die, especially how to visually decode its rom content and disassemble it. Then we will have a look at its instruction set and look at the coding of some basic operations found in early calculators, including "reversed" calculators such as the famous little professor and other handheld games of this time. We will show this in action using the Mame emulator and have a look at how Mame handles the TMS 1000 (including some specific display or input controls, e.g. Merlin). Last but not last, you will discover and be able to play with our Big Professor A3 version based on an Arduino Nano, LED matrix and 3D printing !

 "immune Guard: Streamlining Boot and Kernel Security in the Cloud" ( 2024 )

Sunday at 13:50, 25 minutes, AW1.126, AW1.126, Open Source Firmware, BMC and Bootloader devroom Philipp Deppenwiese , video

Join us to explore Immune Guard, a cloud service revolutionizing boot security and kernel protection. Recently open-sourced under the BSD-3 license, it's not just a tool, but a comprehensive service enhancing cybersecurity for Linux and Windows systems. Immune Guard stands out for its usability, making complex security processes accessible and manageable. This session will dive into its core capabilities, from TPM and attestation-driven security to seamless integration into existing systems. Learn how Immune Guard is shaping the future of cybersecurity, offering a user-friendly, powerful solution for critical early-stage system protection.

 "Converting filesystems to support idmapped mounts" ( 2024 )

Sunday at 13:50, 40 minutes, UB5.132, UB5.132, Kernel devroom Stephane Graber Aleksandr Mikhalitsyn , slides , video

The ID-mapped mounts feature plays an important role in the containers world and becoming more and more adopted in different close areas. This feature was developed by Christian Brauner and almost from the beginning it supports ext4, xfs, btrfs and other local filesystems. In this talk we want to cover network/network-like filesystems support for idmapped mounts. Recently, we have finished the work on supporting idmapped mounts in cephfs, and we want to highlight next steps in converting more filesystems like fuse, NFS, etc.

 "What’s possible in observability when we have frame pointers" ( 2024 )

Sunday at 13:50, 25 minutes, UA2.220 (Guillissen), UA2.220 (Guillissen), Monitoring & Observability devroom Matthias Loibl Jon Seager , slides , video

At Polar Signals, we have worked with the maintainers of some of the most used Linux distributions.

The recently announced enabling of frame pointers for Ubuntu will be a leap forward for observability.

By enabling frame pointers by default, we're lowering the barrier to entry for performance profiling and debugging, meaning:

  • Simplified Profiling: Dive straight into profiling without worrying about compiler configurations.
  • Lower Overhead: Unwinding with frame pointers is significantly cheaper than using DWARF or DWARF-derived information.
  • Debugging Accessibility: Even those new to profiling can access high-quality data, democratizing the process of performance optimization. It will allow bcc-tools, bpftrace, perf, and other tooling to work out of the box.
  • Ecosystem Benefit: Ubuntu comprises thousands of open-source projects, and we'll work to upstream performance fixes that we find across potentially thousands of packages wherever we can.

In this talk, we will dive deep into the above topic and learn how administrators and users can benefit from the work starting today.

 "Expanding IQEngine into a Hub for Previewing RF Signal Processing Software" ( 2024 )

Sunday at 14:00, 25 minutes, UB2.147, UB2.147, Software-Defined Radio and Amateur Radio devroom Marc Lichtman , slides , video

IQEngine is a free and open source web-based toolkit for analyzing, processing, and sharing RF recordings. It is built on top of the FOSS SigMF metadata standard, and the canonical instance of the site running at www.iqengine.org acts as a central repository for example SigMF recordings, while being a valuable tool for signal analysis and RF/DSP education. Using IQEngine's plugin API, miscellaneous RF signal processing functions/apps can be triggered to run on the backend, with resulting IQ samples or other outputs such as signal detection/classification immediately visible on the IQEngine spectrogram interface. Authors of these RF functions can add their function to www.iqengine.org as a plugin in order to share it with the world. This talk will demo the current tool and discuss the concept of expanding IQEngine from being just a tool for users to preview RF recordings/datasets, into a way to preview RF functions/apps/software, including the current steps that have been completed towards this goal.

https://github.com/iqengine/iqengine https://iqengine.org/

 "Making Ansible playbooks to configure Single Sign On for popular open source applications" ( 2024 )

Sunday at 14:00, 30 minutes, K.3.401, K.3.401, Identity and Access Management devroom Jeroen Baten , video

TL;DR: I spend 11 month developing a set of playbooks to configure SSO for several open source application and a Keycloak identity server. In my talk I present the process and some gotchas.

To help sysadmins everywhere the Dutch Onestein organization (specialized in Odoo implementations) invested 11 month of research to create a set of easy to use Ansible playbooks to configure single sign on (SSO) for popular open source applications to enable them to authenticate to a Keycloak server as the central identity provider.

These playbooks have been published on https://github.com/onesteinbv/project_single_sign_on.

The list of supported applications are currently:

Bitwarden CMDBuild Jenkins Gitlab Keycloak (not SSO, but the identity provider) Nextcloud, Odoo Xwiki Zabbix.

All playbooks and servers are for Ubuntu servers and are meant to be used as a starting point. TL;DR: I spend 11 month developing a set of playbooks to configure SSO for several open source application and a Keycloak identity server. In my talk I present the process and some gotchas.

To help sysadmins everywhere the Dutch Onestein organization (specialized in Odoo implementations) invested 11 month of research to create a set of easy to use Ansible playbooks to configure single sign on (SSO) for popular open source applications to enable them to authenticate to a Keycloak server as the central identity provider.

These playbooks have been published on https://github.com/onesteinbv/project_single_sign_on.

The list of supported applications are currently:

Bitwarden CMDBuild Jenkins Gitlab Keycloak (not SSO, but the identity provider) Nextcloud, Odoo Xwiki Zabbix.

All playbooks and servers are for Ubuntu servers and are meant to be used as a starting point.

 "PipeWire State of the Union" ( 2024 )

Sunday at 14:00, 25 minutes, UB4.132, UB4.132, Open Media devroom Wim Taymans , slides , video

PipeWire started out as a low-level multimedia transport layer. Services such as screen sharing and later audio routing were added on top of this infrastructure. The recent 1.0 release marked a big milestone in the development. This talk will detail the current state of PipeWire and the plans for the future.

 "Proving that Cloud Sysadmins Cannot Read your Data!" ( 2024 )

Sunday at 14:00, 50 minutes, Janson, Janson, Main Track - Janson Christophe de Dinechin , video

Confidential Computing is a set of technologies such as memory encryption that can be used to protect data in use. This can be used for instance by banks or medical institutions to protect your personal data while they process it, and makes it possible to move to the cloud workloads that would otherwise have to run on-premise.

Attestation, generally speaking, is the process of proving some fundamental properties of a system. Attestation plays a central role in asserting that confidential systems are indeed confidential. This technology can be used in a number of ways, notably to implement Confidential Virtual Machines, Confidential Containers and Confidential Clusters. This talk explores the various chains of trust required to preserve confidentiality in each of these use cases. In each scenario, we will describe the root of trust, what is being proven, who verifies the proof, and what a successful verification allows.

We will discuss techniques and technologies such as local and remote attestation, firmware-based certification, the use and possible implementations of a virtual TPM, attested TLS. We will also discuss the different requirements to attest an execution environment, a workload, a user, or a node joining a cluster.

 "Match all things Python: Parsing structured content with Python's new match statement" ( 2024 )

Sunday at 14:00, 25 minutes, UD2.218A, UD2.218A, Python Devroom devroom Marc-André Lemburg , video

The talk gives a short introduction into the new Python match statement, which was added to Python in version 3.10. The feature has only been gaining traction very slowly in the Python world, which is a bit sad, since the match statement does prove to be very useful in many parsing situations.

We start with an overview, then discuss the different parts of the match statements, the terminology used, showcase ways to match patterns and finally how to use capturing variables.

 "A satellite's final safehouse: The deployer" ( 2024 )

Sunday at 14:00, 30 minutes, H.1308 (Rolin), H.1308 (Rolin), Open Hardware and CAD/CAM devroom Thanos Patsas , slides , video

What happens after a rocket achieves orbit? How does a satellite stay safe during launch and what happens after they leave their final home, right before starting their mission in orbit? The answer is revealed during this talk.

PICOBUS, developed by the Libre Space Foundation, is an 8p PocketQube satellite deployer. It's a groundbreaking open-source deployer capable of storing and deploying up to 8 PocketQube Units while in orbit.

The first PICOBUS deployer was manufactured to fly onboard the maiden flight of Firefly Aerospace's Alpha rocket, carrying two sets of QUBIK satellites, which are our very own open-source PocketQube satellites. The first launch faced a setback with an explosion shortly after liftoff, posing a threat to our deployer and satellites. However, an interesting turn of events followed! This will be discussed during this talk.

The second launch attempt on October 1, 2022, was a success. PICOBUS flawlessly deployed all the satellites into space, marking a significant achievement for the open-source community. It's a rare instance of open-source technology making it to orbit, which is quite remarkable.

Over the past year, Libre Space Foundation has been working on the second version of PICOBUS. This updated version is a more adaptable and lighter design, incorporating various advanced features and mechanisms to enhance its capabilities.

During this talk, we will discuss all about open source in space, the open source tools used to achieve that and the difficulties faced during this journey.

Our Vision is an Open and Accessible Outer Space for all. We believe that space should be claimed the libre (open source) way. Our Mission is to promote, advance and develop libre (free and open source) technologies and knowledge for space. To do that we design, develop and deliver space related projects ranging from Ground Station equipment to global monitoring Networks and of course, satellites!

 "[Clients] aerc, an email client for the discerning hacker" ( 2024 )

Sunday at 14:00, 10 minutes, H.2213, H.2213, Modern Email devroom Robin Jarry , video

aerc is a modern email client for your terminal written in Go. aerc supports IMAP, SMTP, JMAP, Maildir, notmuch, mbox and has been designed with patch review and management in mind.

aerc is easy to setup with a new account wizard and has first class support for git+email based workflows.

More information is available at https://aerc-mail.org/.

This lightning talk will be a short presentation of the project and highlight of some unique features of aerc.

 "SEV-Step: A Single-Stepping Framework for AMD-SEV" ( 2024 )

Sunday at 14:00, 20 minutes, H.2214, H.2214, Confidential Computing devroom Luca Wilke , slides , video

In this talk, we will demonstrate that SEV VMs can be reliably single-stepped. To lay the foundation for further microarchitectural attack research against SEV, we introduce the reusable SEV-Step framework. Besides reliable single-stepping, SEV-Step provides easy access to common attack primitives like page fault tracking and cache attacks against SEV. All features can be used interactively from user space.

 "The LLVM Security Group: History, progress, remaining challenges." ( 2024 )

Sunday at 14:00, 20 minutes, K.4.201, K.4.201, LLVM devroom Kristof Beyls , slides , video

The LLVM Security group was established in 2019. It's main goal is to enable users and contributors of LLVM to disclose security-related issues responsibly. The group is relatively young and continues to evolve and optimize its processes. In the first part of this presentation, I'll describe how the group was established, and what it has achieved so far. I'll briefly summarize the kinds of reports we've received.

The second part of the presentation will cover remaining challenges faced by the group and the LLVM project related to the handling of security issues. These include "how to communicate security issues to everyone who should know", "defining a threat model/what is a security issue", better making use of github's security-supporting features, and improving implementation details on how to report issues.

 "Upstream and downstream, best friends forever?" ( 2024 )

Sunday at 14:00, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Distributions devroom František Lachman , slides , video

Integrating the upstream and downstream world is hard. Isn’t it?

“No extra file in my git!” “I have my own script and it works the best for my use case!”

Have you heard sentences like these?

When working on Packit (upstream integration for Fedora Linux), we’ve collected various complaints and excuses why people don’t want to integrate upstream and downstream. For example: “we don’t care about users from that distro”, “RPM is complicated”, or “Fedora packaging workflow is hard”.

During the talk, we will go through these and provide suggestions on what you can do in such situations and how to bring the best benefit both to developers and maintainers.

The talk is suitable for people working on any integration between upstream projects and developers, but also for curious people on both sides to understand the benefit of collaboration.

 "Phantom dependencies in Python (and what to do about them)" ( 2024 )

Sunday at 14:00, 30 minutes, K.4.401, K.4.401, Software Bill of Materials devroom Georgios Gousios , video

The increasing use of AI-driven Python libraries necessitates robust scanning of Python projects for vulnerabilities. However, Python's dynamic typing and reliance on manifest files for dependency management make it challenging to detect hidden "phantom" dependencies. These unreported dependencies introduce uncertainty and risk into software composition analysis, as seen in OpenAI's baseline codebase. This session explores program analysis, particularly reachability analysis, to expose these phantom dependencies and create accurate dependency sets. Despite the challenges posed by Python's dynamic nature, program analysis remains crucial for secure and reliable software development. Understanding phantom dependencies and their impact is vital for Python developers to build robust and secure software.

 "Your Virtual DBA (PostgreSQL on Kubernetes using an Operator)" ( 2024 )

Sunday at 14:00, 50 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), PostgreSQL devroom Karen Jex , video

Lots of people who have “looking after databases” as part of their remit aren't actually database administrators. The task seems to fall more and more often to people whose expertise lies in other areas, such as systems administrators. I've noticed this particularly in organisations where everything’s running on Kubernetes, and the databases are seen as just another part of that landscape.

If you're in this situation, what do you do? Go out and learn to be a database administrator? Hope the databases will look after themselves? Panic?

A better option would probably be to implement one of the Kubernetes operators that have been created by database experts. The Operator not only knows how to do database administration but also how the database components interact with Kubernetes to get the most out of its features. It will automate everything from deployment of a high availability database environment to backup and recovery, monitoring and even upgrades.

Let’s have a look at what a Kubernetes database operator can do for you and what you need to look for when choosing one.

 "So you think you know Git" ( 2024 )

Sunday at 14:00, 50 minutes, K.1.105 (La Fontaine), K.1.105 (La Fontaine), Main Track - K Building Scott Chacon , video

Advanced Git Tips and Tricks

Git has been the de-facto version control system used by nearly every developer in the world for almost a decade now. While most of us know the basics, there are depths and hidden valleys of our Git tooling that even the most experienced of us may have never even heard of. Join Scott Chacon, a GitHub co-founder and the author of Pro Git, to dig into the hidden depths of obscure command line invocations to get more out of the amazing tool you use every day.

 "Collaborative government websites standardization for digital sovereignty using Open-Source. The model of Rwanda and the GovStack Global initiative" ( 2024 )

Sunday at 14:00, 45 minutes, K.4.601, K.4.601, Designing Futures of FOSS Content Management with the Open Website Alliance devroom Daniel Homorodean , slides , video

In 2018, Rwanda engaged in standardizing all the websites of the public institutions starting with the government, using a community-based CMS, TYPO3. Following a comprehensive approach for the first time attempted in a developing country, it relied on local technical capacity to achieve digital sovereignty and to provide sustainable new jobs and opportunities for Rwandan web developers. The model is now taken forward by the GovStack Global initiative created by ITU and GIZ, which is proposing to create a global open standard and a methodology for the strategic adoption of open source CMS technologies in the public sector all over the world. This project is designed as a collaborative effort, open to volunteer participation from open source CMS communities that are interested to contribute.

 "Web Accessibility and ATAG" ( 2024 )

Sunday at 14:00, 60 minutes, AW1.121, AW1.121, BOF - Track C Saptak S Thibaud Colas

It will be a BoF to talk about Web Accessibility, different methodologies and practices and standards for Web Accessibility, changes in WCAG 2.2. Also talk about how ATAG is an important accessibility standard to know about for authoring tools and CMS.

 "Project websites that don't suck" ( 2024 )

Sunday at 14:05, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Emily Omier , slides , video

Does the homepage of your project website encourage potential users to try it out? Or is it actively repelling people? Even worse, could it be attracting all the wrong people? In this talk, Emily Omier will walk attendees through the basic structure of a good project website homepage, giving examples of projects with solid websites as well as others that could use improvement. Attendees will leave with a concrete roadmap for either creating their project homepage from scratch or improving the homepage they already have. The focus is on the written content of the website, not on the design.

 "Delegated compositing utilizing Wayland protocols for Chromium on ChromeOS" ( 2024 )

Sunday at 14:05, 25 minutes, K.3.201, K.3.201, Graphics devroom Maksim Sisov , slides , video

This talk will cover our experience in utilizing Wayland subsurfaces and implementing delegated compositing for Chromium on ChromeOS. Several concepts will be covered - from overlay making decision in Chromium/Viz to design and implementation of custom Wayland protocols, which were required to pass frame data as overlays via Wayland and reconstruct that frame on the Wayland server side.

 "Testing Go command line programs with `go-internal/testscript`" ( 2024 )

Sunday at 14:10, 30 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Testing and Continuous delivery devroom Giuseppe Maxia , slides , video

Using go-internal/testscript, a little known library of filesystem testing tools, we can test Go command-line programs within the go test framework, with a high degree of integration. Testing command-line programs feels awkward in Go. You can test the program's functions, of course, but what about making sure the whole thing works, with command line arguments, flags, and options? We can build the program and run shell scripts, but that process is cumbersome, not integrated, and easy to let errors slip by. Enters go-internal/testscript, a testing library that was designed to test the go tool itself. With it, we can test our command-line applications without leaving the 'go test' framework. The testscript environment already offers built-in commands and conditions to test our application in many ways. For the advanced user, moreover, there is the possibility of creating custom commands and checks that make the test fit our development needs properly. Attendees of this talk will learn: * how to start with testscript, by testing any command-line application, whether it is produced by your project or not; * how to integrate testscript into your project, and test the resulting binary within the test environment, without any additional steps; * how to customise testscript runs using custom commands and conditions.

 "Public services interoperability: Open Source efforts in and around the European Commission; and how about a next EC open source strategy" ( 2024 )

Sunday at 14:10, 10 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Gijs Hillenius Saranjit Arora , slides , video

In their presentation, Messr Arora and Hillenius will delve into the efforts from the Commission to encourage its use and development of free and open source. We will report on the 2020-2023 open source strategy, code.europa.eu and FOSSEPS and FOSSEPS 2. And what about the next EC open source strategy?

 "Gameboy Advance hacking for retrogamers" ( 2024 )

Sunday at 14:15, 25 minutes, UB5.230, UB5.230, Retrocomputing devroom Daniele Scasciafratte , slides , video

Discover the opportunity in retrogaming with the Gameboy Advance, from homebrew to how to do a game in pure Lua (yes I am not joking) or to make a trainer to a Lua script in the emulator.

The GBA is a particular device, compared to the Gameboy Color, which allows many more things for the world of homebrew and retrogaming by exploiting current technologies.

We will see the technical peculiarities, the most famous decompilations, how to manipulate RAM with an emulator, how to make a ROM in Lua, how to make a trainer, the most common hardware mods, how to make a Lua script for Mgba with Lua and much more.

In short, everything you need to know about the GBA even if you don't understand anything about Assembly!

(Some) Projects mentioned:

  • https://github.com/Mte90/LinuxDay-Rieti-2022-GBA-Demo
  • https://github.com/evanbowman/BPCore-Engine
  • https://github.com/Mte90/GBAATM-Rebirth

GBA art by https://twitter.com/Shamaboy11

 "[Security] Modern chat-mail for security-sensitive helplines" ( 2024 )

Sunday at 14:15, 25 minutes, H.2213, H.2213, Modern Email devroom holga Xenia , video

Helplines and NGOs working with sensitive populations in at-risk areas require a robust, secure but also usable communication tooling. They need to have a system that lets anyone contact them in a secure and pseudonymous way, without revealing who manages the hotline; they also need to be able to organize their internal workflow securely and safely enroll new members.

We have conducted a user survey among grassroots helplines in Eastern Europe and identified several common traits: first, they rely on a patchwork of tools (messaging apps, cloud storage, task trackers) therefore multiplying potential vulnerabilities; second, they are critical towards popular secure messaging apps that either leak your phone numbers (e.g. Signal), or do not guarantee end-to-end encryption (e.g. Telegram) or may seem tricky to onboard for non-techies (e.g. Element).

What we propose is a chat-mail service using Delta Chat messaging suite, adapted specifically for hotlines and NGOs. Delta Chat is a federated, crossplatform, free and open source messaging app that works over email and offers state of the art end-to-end encryption using Autocrypt and SecureJoin with multiple audits.

During this presentation we will demonstrate how our chat-mail service can help high-risk user groups. We will specifically focus on instant onboarding, shared account management, account portability, guaranteed end-to-end encryption and embedded collaborative chat-apps ("webxdc") such as notepads, calendars, task trackers etc. We will also share user stories from the field, since all these features are tested with real hotlines.

 "Let's talk Matrix between Governments and Citizens" ( 2024 )

Sunday at 14:15, 30 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), Matrix devroom Marco , slides , video

Large companies in the IT and banking industry typically build their own custom apps to communicate with their customers, often storing unencrypted customer data on their backend servers.

While it may be acceptable for companies to store data in unencrypted form on a company's server, governments have a greater responsibility for their citizens' data.

You are free to use private sector offers or not. In contrast, public administration has a de facto monopoly on many services that require social, medical and other information that is vulnerable to stigmatization.

Some governments have created their own custom-built solutions where communication takes place via insecure services with no end-to-end-encryption in place.

The German identity system BundID, for example, contains a communication component that stores unencrypted messages on central servers. This poses a major risk to privacy in the event of IT security incidents.

If all goes well, Germany's infrastructure might get an upgrade and will use Matrix as its new communication protocol in the future (see https://gitlab.opencode.de/fitko/rueckkanal-ueber-messengerdienste)

In this talk, I would like to discuss the benefits and need for an open, end-to-end-encrypted messaging protocol for building secure (cross-border) communication platforms for the public administration. Let's explore the challenges and requirements for Matrix-based Government-to-Citizen (G2C) communication!

 "Reducing the risks of open source AI models and optimizing upsides" ( 2024 )

Sunday at 14:15, 45 minutes, UB2.252A (Lameere), UB2.252A (Lameere), AI and Machine Learning devroom Stefania Delprete Jonathan Claybrough Felicity Reddel , video

Leaders in developing AI from openAI, Deepmind and Anthropic signed the following statement : "Mitigating the risk of extinction from AI should be a global priority alongside other societal-scale risks such as pandemics and nuclear war."

What exactly is that risk, where does it come from, and how can the open source community work on AI to be as beneficial as possible while avoiding these risks?

Jonathan Claybrough, software engineer from the European Network for AI Safety will briefly introduce the topic and main sources of risk, in about ten minutes, then will open the floor to an expert panel of speakers on AI governance and open source. We plan to interact heavily with the audience so that the open source community gets represented in AI governance. The panel experts will be Alexandra Tsalidis from the Future of Life Institute's Policy team and Felicity Redel on the foresight team at ICFG. Stefania Delprete, data scientist with extensive experience with the opensource community (Python and Mozilla), will be moderating the session.

Key points of the presentation - Current vulnerabilities you expose yourself to using AI models (low robustness, hallucinations, trojans, ..)
- Open weights of AI models doesn't bring the guarantees of open source (you can't read the code, debug, modify precisely)
- Steps to reduce user (developers) risk (model cards, open datasets)
- Steps to reduce misuse risk (capability evaluations, scoped applications, responsible release)
Expert panel debate questions:
- What are downside risks of unrestricted open source AI proliferation?
- What would a governance of open source AI models that leads to good outcomes look like?
- How can the open source community contribute to AI Safety?

 "Community Driven Data Collection and Consent in AI" ( 2024 )

Sunday at 14:20, 25 minutes, H.1302 (Depage), H.1302 (Depage), Mozilla devroom Jessica Rose Gina , video

Generative AI in 2024 has a consent problem. Scraped and otherwise stolen datasets are used to produce output that can directly compete with the people who generated the source data. This doesn’t have to be our future. The Common Voice project collects volunteer donated speech data to freely offer academics, industry and language activists a future where meaningful linguistic diversity is built into the digital products and services that increasingly fill our world. By teaching computers the way that real people speak, Common Voice doesn’t just offer a better connected future for global users, but presents us with one possible consent led model for community driven data collection. Together, let’s explore how community led dataset collection, design and governance structures have developed across speech datasets and look at how freely donated data, data trusts and other consent led collection models could offer a less dystopian AI future. An exploratory look at the proliferation of consent led data collection models in speech datasets, looking not only at Common Voice's CC0 donation-led approach but also looking into how data collection and governance models that offer more granular data control (like language community led data trusts) could offer AI and all of us touched by AI a less dystopian path into the future.

 "Standardizing the generation and signing of boot images" ( 2024 )

Sunday at 14:20, 25 minutes, AW1.126, AW1.126, Open Source Firmware, BMC and Bootloader devroom Neha Malcom Francis Simon Glass Vignesh Raghavendra , slides , video

Abstract

This presentation will talk about how SoCs can leverage Binman to simplify the overall boot-loader build flow. We use Texas Instruments (TI) K3 family of SoCs as an example, which, like many other SoCs today, use custom tools to build and sign their boot-loader binaries. However, U-Boot contains a powerful and flexible packaging tool Binman and this can be extended to sign and package even complex boot-loader images.

The session outlines the challenges in maintaining and shipping custom tools for any sort of build, highlighting its limitations in scaling, maintaining consistency and accommodating evolving system requirements. This presentation shows the effort in leveraging Binman, moving towards a completely open-source solution that also simplifies the build using K3 devices as an example. We also aim to present how we can make Binman the standard when it comes to the developing boot-loaders for any OS. A few platforms such as Kontron i.MX8M and Renesas RZ/N1 already use Binman to package their boot-loader binaries but we see that there is a larger scope of pulling all platform packaging to the standard.


Description

The boot loader images involved in booting a TI K3 device to Linux are: - tiboot3.bin: containing SPL (Secondary Program Loader) for the R5 core, may include system firmware for certain devices - sysfw.itb: containing system firmware and board configuration binaries - u-boot.img: containing the U-Boot image that can load the final Linux kernel image

In addition to the complexity of the K3 boot flow, each boot-loader image is packaged differently according to the whether the device: - is a High-Security Field Securable (HS-FS), High-Security Enforced (HS-SE) or General Purpose (GP) - follows Combined or Legacy boot flow - contains system firmware (SYSFW) split into Texas Instruments Foundational Security (TIFS) and Device Manager (DM) or not split

This leads to four similar yet unique boot flows. Since the image must account for a combination of the three choices, packaging the boot-loader is a complex process that involves signing as well.

This was earlier achieved using TI custom solution repositories, k3-image-gen and core-secdev-k3. k3-image-gen was responsible for generating and packaging board configuration data and system firmware binaries into tiboot3.bin or sysfw.itb while core-secdev-k3 was used for signing the required binaries in the case of HS devices. The flow looked like this.

The upstreaming effort proposed a flow that embedded the functionalities of k3-image-gen and core-secdev-k3 using Binman shown here.

Now by migrating the boot-loader generation to Binman, complex shell scripts that stitched boot images together are no longer needed. Instead, the generation is standardized to creation using the binman node in the DTS, for example: tiboot3 { filename = "tiboot3.bin"; ti-secure-rom { content = <&u_boot_spl>, <fw1>, <fw2> ...; keyfile = "key.pem"; load = <LOAD_ADDR>; load-fw1 = <LOAD_ADDR_FW1>; load-fw2 = <LOAD_ADDR_FW2>; ... }; u_boot_spl: u-boot-spl { }; fw1: fw1 { filename = fw1.bin; }; fw2: fw2 { filename = fw2.bin; }; ... }; An example of a proper application of the Binman node for K3 devices can be seen here. You can view the entire patch series that was submitted and has been accepted in the resources or here.

This presentation will provide an overview of the tool, understanding how to migrate your custom tools and platforms to Binman with K3 as an example and finally discuss current challenges and limitations while expanding to other platforms in U-Boot. Attendees will obtain insights into a practical implementation of Binman, its integration within existing workflows and best practices to leverage this tool to optimize U-Boot boot-loader development.

 "Public services interoperability: workshop Open Source strategy at the European Commission" ( 2024 )

Sunday at 14:20, 25 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Gijs Hillenius Saranjit Arora , video

The discussion is to bring in fresh ideas on how to the free/open source community can encourage the Commission’s involvement.

 "Shielding Data, Embracing Openness, Optimizing Performance: A Journey Through Trustworthy Environments for Database Systems" ( 2024 )

Sunday at 14:25, 20 minutes, H.2214, H.2214, Confidential Computing devroom Ilaria Battiston Lotte Felius , slides , video

In the era of cloud systems, it is common practice to outsource most of our data. Consequently, vendors should incorporate several layers of security to ensure users' individual privacy. A typical solution is to protect data at rest by using encryption. To protect data in use, however, encryption is often considered impractical: encrypting and decrypting data at runtime incurs a significant computational overhead.

As a remedy, there exist Trusted Execution Environments (TEEs) that enable database developers to wrap computations in a protected area of the disk. However, the adoption of Open Source software employing TEE to protect data in use is not sufficiently widespread, and such technologies are mostly limited to prototypes. In addition, existing database implementations incorporating TEEs face significant performance issues due to the pitfalls and limitations of Intel SGX, the most commonly used architecture.

In this talk, we present the current state of Open Source secure database implementations using TEEs. We will highlight the strengths and weaknesses of widely-known systems (SGX_SQLite, StealthDB, DuckDB) and discuss design choices developers face when using TEEs to secure data. We provide the results of the most recent benchmarks, which expose bottlenecks and tradeoffs. Lastly, we aim to bridge the gap between security and performance by porting our in-house embedded analytical system, DuckDB, to Intel SGX 2. We show preliminary results and open challenges to spread awareness of secure database technologies and encourage their discussion.

 "FOSS for DOCS" ( 2024 )

Sunday at 14:25, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Candace Makeda Moore, MD , slides , video

This talk shares insights on the creation of open source software packages related to medical research and practice, especially in terms of enhancing communication and cooperation between engineers/programmers and medical staff. The speaker is both a medical doctor and software engineer who has worked on several projects which required collaboration between engineers and physicians. The talk will cover lessons learned and tips on collaboration between the different disciplines, with the goal of allowing engineers to create better software for the medical community. I will share insights I have come to over years as the main programmer/engineer on several open source projects, including but not limited to: cleanX, ReSurfEMG, and cvasl.

 "Building a Linux distro with LLVM" ( 2024 )

Sunday at 14:25, 30 minutes, K.4.201, K.4.201, LLVM devroom q66 , slides , video

For the last 3 years, I've been building a complete Linux distribution, Chimera Linux (https://chimera-linux.org) using solely LLVM as its system toolchain - that means Clang, compiler-rt, and libc++, alongside its other tooling. Right now, it is a complete desktop system that is already used by many, with a familiar GNOME interface and thousands of packages, targeting 5 CPU architectures. In this talk I would like to focus on my experiences using the toolchain, what obstacles got in the way, how I dealt with them, the issues that are still left and I would like to see addressed, the many benefits using LLVM gave the project, and overall give the audience an insight into practical deployment of LLVM in a project where it isn't simply a drop-in alternative to GCC.

 "The Good Governance Handbook: Enabling good OSS usage through OSPOs" ( 2024 )

Sunday at 14:25, 30 minutes, UA2.114 (Baudoux), UA2.114 (Baudoux), Community devroom Boris Baldassari , slides , video

OSPOs (Open Source Program Offices) are on the rise: from private companies, to public administrations and academia, organisations now often have someone or a team dedicated to open source topics. The idea behind an OSPO is not only to secure open source assets; it's also about being a good citizen, contributing back, and become an active part of the community and ecosystem.

The OSPO Alliance published in 2021 the first version of the Good Governance Handbook, a method and framework to help organisations define and build their OSPO. It proposes a list of 25 good practices, from identification of open source assets to HR contracts and community participation, all packed with practical advice and resources from experienced practitioners. We also provide a deployment feature to start your own OSPO in less than 10mn using GitLab.

During this session, we will present the latest version of the GGI Handbook (v1.2), how it helps both organisations and the open source community, and start a discussion about how we can help them -- public sector, academia, NGOs, private orgs.. -- become better citizens, adopt good practices and contribute back to our ecosystem.

 "Open Source based Software Composition Analysis at scale" ( 2024 )

Sunday at 14:30, 30 minutes, K.4.401, K.4.401, Software Bill of Materials devroom Marcel Kurzmann , slides , video

Creating and processing SBOMs at scale based on Open Source solutions: Intro to a new Eclipse Foundation Project Apoapsis (see also https://projects.eclipse.org/projects/technology.apoapsis ) providing a server concept to run continuous Software Composition Analysis for a large number of heterogeneous repositories. The talk will show the general setup how you can continuously generate your SBOMs and reports and provide the status of the published reference implementation the "ORT-Server" interacting with the OSS Review Toolkit. Diversity and agility are high values in the Software community. Diversity and agility in Software Development processes and tools are a challenge for automation, though.

Accurate Software Composition Analysis is an important capability to keep transparency throughout the Software Lifecycle and is the base for the fulfillment of important non-functional requirements in the business context (e.g. SBOM-creation, Vulnerability Tracking, License compliance etc.)

To handle automation with both aspects - accurate Software Composition Analysis and heterogeneous and agile environments -  the Abstraction Layer for Software Composition Analysis (ALSCA) of the new Eclipse Foundation Apoapsis Project plays an important role.

The Eclipse Apoapsis-project consolidates the requirements from the tooling side on the one hand and the requirements from the institutionalized operation side in medium to large organizations on the other hand. Concerning specifications and wording it will be based on the capability map created by the Open Chain Tooling Group in the context of Open Source Management (https://github.com/Open-Source-Compliance/Sharing-creates-value/tree/master/Tooling-Landscape/CapabilityMap).

The Eclipse Apoapsis project provides blueprints to run central Software Composition Analysis pipelines at scale while covering a large range of project setups (e.g. from Mobile Apps using Cocoapods to Cloud Services using Java/Maven) and configurable extent of analysis (e.g. from mere SBOM-creation to full-blast Dependency Analysis including Vulnerabilities and Copyright/License reports).To achieve this, the ORT-server is based on the OSS Review Toolkit and makes use of its integration APIs for dependency analysis, license scanning, vulnerability databases, rule engine, and report generation. The Eclipse Apoapsis project itself will concentrate on the server functionality including user and role management and the necessary APIs.

 "DAPNET: Bringing pagers back to the 21st Century" ( 2024 )

Sunday at 14:30, 25 minutes, UB2.147, UB2.147, Software-Defined Radio and Amateur Radio devroom Manoel Casquilho , video

When talking about pagers, most of us will think about an object of the past, often seen in TV shows from the 90s, used by medical staff and businessmen. However, they're an interesting way to get simple data broadcast over amateur radio frequencies, with receivers that can be built for less than 20€. We'll explore this and understand how an extensive network can be deployed with simple equipment and using open source hardware and software.

 "Generating music with Open tools, APIs, and NO AI!" ( 2024 )

Sunday at 14:30, 25 minutes, UB4.132, UB4.132, Open Media devroom Steven Goodwin , video

With everyone being caught up with generative AI, it's probably time to look back and do something different - how can you compose music using your own creativity, and not an AI system that's a bad mimic of existing work?

From methods to digitally mimic tape loops of existing sounds, akin to Steve Reich or Brian Eno, to APIs that generate MIDI files, and all the way to sound synthesis itself, we learn of many ways that music can be automatically created, either as an entire work, or part thereof. None require knowledge of musical theory, and the amount of maths needed is similarly minimal.

The talk features several examples of the speakers own compositions, from https://nodemusic.com, and breaks down the process.

 "Electronic boards production automation with KiCAD scripts" ( 2024 )

Sunday at 14:30, 20 minutes, H.1308 (Rolin), H.1308 (Rolin), Open Hardware and CAD/CAM devroom Tsvetan Usunov , video

Designing electronics is always fun, the later mass production organisation is boring and routine work, and if you do not do it properly it can easily turn into a nightmare. The different machines used in production like printers, pick and place machines, ovens, AOI, testers all run different software, different libraries, different component naming concepts. So to prepare from your KiCad project all programs to run on these machines is really time consuming. Later on the machine jobs changeovers there are also source of machine operator errors. We are dealing with electronic production for more than 30 years and we are constantly improving our process to avoid stupid mistakes and make the different machine programming easy and predictable process. KiCad scripting is nice tool to automate all this boring stuff and I will share our experience with you.

 "Annotated, a type hint you can use at runtime" ( 2024 )

Sunday at 14:30, 25 minutes, UD2.218A, UD2.218A, Python Devroom devroom Denis Laxalde , slides , video

Type hints are mostly used to achieve type safety through static checkers, such as Mypy or Pyright. PEP 593 – Flexible function and variable annotations introduced "annotated type hints" which, oddly, can be used at runtime for more generic purposes by attaching context-specific metadata to (typed) identifiers.

In this talk, we will first present the Annotated type hint and discuss its user value in terms of composability and extensibility. We'll then explore a few use cases involving data validation, serialization and user-interface. Our examples will both illustrate how to use available annotations (from, e.g., Pydantic) as well as how to build business-specific annotation types and how to consume them at runtime. Finally, we'll discuss the adoption of Annotated in the Python ecosystem and community: presenting where (and why) the pattern has been embraced but also taking a critical look at it, opening the discussion on the "typing" topic in general.

 "Fixing a Kerberos vulnerability with the bare necessities" ( 2024 )

Sunday at 14:30, 25 minutes, K.3.401, K.3.401, Identity and Access Management devroom Julien Rische , slides , video

Fixing vulnerabilities on long term support distributions can be a challenging task. Constraints such as protocol compatibility or ABI stability often get in the way of backporting security fixes. When a fix simply is incompatible with an older OS version, designing a new one taking advantage of the limited processes and data available might be required.

I will illustrate this with the case of the Bronze-Bit Kerberos vulnerability, which affected FreeIPA and couldn't be fixed the expected way on CentOS 8 Stream and RHEL 8.

 "Supporting architecture psABIs with GNU Guix" ( 2024 )

Sunday at 14:30, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Distributions devroom Efraim Flashner , slides , video

Starting with glibc-2.33, glibc grew the capability to search for shared libraries using additional paths, based on the hardware capabilities of the machine running the code. This was great for x86_64 (and also powerpc64le and s390x), which was first released in 2003 and has seen many changes in the capabilities of the hardware since then. While it is extremely common for Linux distributions to compile for a baseline which encompasses all of an architecture, there was a lot of performance being left on the table by targeting such an old specification and not one of the newer revisions.

Some distributions have opted to increase the baseline to x86-64-v2 or even -v3, but even there you are potentially leaving performance on the table while removing some of the older machines from being able to run on your distribution. By targeting all of the psABI targets you don't remove the option of using old hardware while still providing optimized libraries for newer hardware, and you have happier users getting more out of their hardware.

 "Modern application observability with Grafana and Quickwit" ( 2024 )

Sunday at 14:30, 25 minutes, UA2.220 (Guillissen), UA2.220 (Guillissen), Monitoring & Observability devroom François Massot , slides , video

In the world of modern distributed applications, detailed performance monitoring is critical. New distributed tracing tools like Jaeger or, more recently, Grafana Tempo help drill down to individual transactions and understand application-level performance.

However, with millions of users or request IDs, capturing metrics for high cardinality fields is a real challenge. In this talk, we will introduce Quickwit, a cloud-native search engine, as a solution to manage this data efficiently within Grafana.

After briefly introducing Quickwit’s architecture, this session will offer a practical guide on sending traces to Quickwit OpenTelemetry-compatible API and using Grafana for analyzing traces analysis and deriving metrics on high-cardinality fields in a Grafana dashboard.

 "Linux' receive_fd_replace() semantics confusing" ( 2024 )

Sunday at 14:35, 20 minutes, UB5.132, UB5.132, Kernel devroom Tycho Andersen , slides , video

The current implementation of seccomp's ADDFD uses the receive_fd_replace() helper, and the semantics of this are quite confusing. It does what it says on the tin: it replaces a file descriptor in the fd table of the trapped process. However, various kernel subsystems (e.g. epoll) take a copy of the file descriptor number for their internal data structures, in addition to a ref of the struct file. This creates all sorts of problems: epoll will not report events correctly since the new struct file * is not replaced in the epoll instance, and may generate errors, etc.

We'll go over epoll's representation in detail along with our current in-production solution to fix all of this up from userspace. We'll also go over 1, a proposed solution for fixing up epoll in particular, that would require each instance of this to be manually fixed.

We're looking for feedback on how to make this faster, and what any potential kernel fixing would look like.

 "Greenfield: Wayland in the browser, an update" ( 2024 )

Sunday at 14:35, 25 minutes, K.3.201, K.3.201, Graphics devroom Erik De Rijcke , slides , video

Greenfield is the Wayland compositor for the web. It allows you to access native Linux applications remotely and run WebAssembly applications directly in your browser.

In this talk we'll explore how Wayland is used as a remote protocol with performance fit for gaming, as well as how you can compile Wayland applications and run them directly in the browser.

We'll finish by looking at the future and what other exciting opportunities await.

 "Running DOS & Unix on an 8-bit Commodore" ( 2024 )

Sunday at 14:40, 25 minutes, UB5.230, UB5.230, Retrocomputing devroom Michal Pleban , slides , video

In 1983, Commodore introduced CBM-II, the successor to their aging line of PET business computers. It featured a 6502 CPU running at 2 MHz and up to 256 kB memory. But its most interesting feature was a second CPU interface, which (much like Acorn's Tube) allowed to attach various CPUs to the system.

Commodore designed two cards: Z80 (for running CP/M) and 8088 (for running MS-DOS). Back in these days, though, MS-DOS had a separate version for each platform. Therefore you could only run specially crafted Commodore MS-DOS 1.25 on the computer, because it was obviously not PC-compatible.

A few years ago I set out to fix this deficiency. I asked myself: is it possible to make the platform (more) PC compatible? As it turns out, it is, and practically without any modifications to the original design. You just need to write a piece of software that emulates the PC BIOS and some parts of the PC hardware platform. For this, one wire needs to be added to the hardware, which generates a NMI when an I/O chip is accessed; the emulation software then simulates the non-existing I/O peripheral.

Based on this work, I was able to make the platform compatible enough to run modern FreeDOS, as well as other PC software: Norton Commander, Turbo Pascal, QBASIC and more.

As a follow-up, I designed a Z8000 processor card using the second CPU interface; this card is meant to emulate the abandoned Commodore 900 Unix workstation. This is a work in progress right now; so far the card is able to boot the Commodore 900 BIOS and complete the I/O chip self test (the I/O chips are obviously also emulated in software). By the time of the talk, the progress is expected to be much farther :)

The PC emulation software is available on GitHub: https://github.com/MichalPleban/cbm2-pc-emulator/

And the hardware: https://github.com/MichalPleban/cbm2-8088-ram-board/

 "[Security] Modernizing email encryption: the crypto refresh of OpenPGP" ( 2024 )

Sunday at 14:40, 25 minutes, H.2213, H.2213, Modern Email devroom Daniel Huigens , slides , video

A new version of the OpenPGP standard (most commonly used for email encryption) has been created, dubbed the "crypto refresh". This update modernizes the cryptographic algorithms in use, bringing security and performance improvements. This presentation aims to give an overview of the improvements, as well as a look at how it can be used in modern, usable email applications.

 "Journey to an open source contribution" ( 2024 )

Sunday at 14:45, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Thierry Berger , slides , video

Follow me in an open source rabbit hole, from simple to more complex contributions.

You might be thinking:

"Open source can be intimidating: long pull requests, complex subjects... Where do I start?"

Follow me on a journey to a contribution on Bevy game engine and its ecosystem:

  • At first I wanted my users to input an email on my app: I couldn't input "@".

  • Then I wanted to paste a one-time password: I couldn't paste on web.

That's where open source truly shines! Let's follow the trail and make things better.

I jumped into rabbit holes, fixing stuff along the way, ending up updating an important bevy dependency.

Open source can be intimidating, but there's no magic, and you can help too!

 "How mutation testing got practical" ( 2024 )

Sunday at 14:45, 30 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Testing and Continuous delivery devroom Jan-Jelle Kester , slides , video

Automated testing is part of (almost) every piece of software. But how can you be sure that these automated tests sufficiently assess the functionality of your system? Do you know which parts of your application are adequately tested, and where the 'blind spots' may be? In this talk we will explore the concepts behind mutation testing, talk about the pitfalls that have been overcome in the last 40+ years and show how (and why) today is the time to start applying mutation testing in your projects.

This talk uses practical examples and insights from (the development of) Stryker-Mutator.

Topics:

  • Why we need to understand our tests (and why code coverage is not sufficient)
  • What mutation testing is (with practical examples)
  • How mutation testing got to practical applicability (from infeasible at inception to good framework availability to start using it in your projects now)
  • State-of-the-art improvements to make mutation testing even more awesome

There is a related talk on Saturday in the JavaScript Devroom!

 "Modern editing experiences you can build in your CMS" ( 2024 )

Sunday at 14:45, 45 minutes, K.4.601, K.4.601, Designing Futures of FOSS Content Management with the Open Website Alliance devroom Sage Abdullah , video

Learn how we built powerful and modern content-management features into Wagtail CMS, such as: live preview as you edit, revisions, live/draft versions, and content moderation for arbitrary database models – not just pages!

Wagtail is an open source, Django-powered Content Management System (CMS). It is built on the concept of pages as tree-structured database models. In recent years, its content management features have been extracted to not only work on page models, but any arbitrary database model.

We will explore how these features work and how they were implemented in Wagtail. We will also discuss how they can fit in other CMSs.

This talk does not require any pre-existing knowledge about Django and Wagtail CMS, though familiarity with content management systems and basics of object-relational mapping is expected.

 "Embracing Matrix for Enhanced Communication: Migrating the WordPress Community from Slack to Matrix" ( 2024 )

Sunday at 14:45, 30 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), Matrix devroom Alex Kirk , video

What are roadblocks for a community transitioning their chat to Matrix? How can they be resolved? We'll look at this from the perspective of the WordPress Community that migrated from Slack to Matrix. What are ongoing challenges?

 "Public services interoperability: rapporteur playback" ( 2024 )

Sunday at 14:45, 10 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Axel Thévenet , video

to be provided

 "Debugging HTTP/3 upload speed in Firefox" ( 2024 )

Sunday at 14:50, 20 minutes, H.1302 (Depage), H.1302 (Depage), Mozilla devroom Manuel Bucher , slides , video

After fixing HTTP/2 (H2) upload speed bugs in 2023 (Bug 1596576), Mozilla's Networking team started to focus on HTTP/3 (H3) upload speed (Bug 1852924).

The H3 upload speed problem is inherently different from the one in H2. H2 benefits from the mature, operating system-level TCP networking stack. H3 on the other hand is build on top of QUIC, which lacks an operating system API. All networking operations have to be handled in user space. This talk is about the journey of discovering and fixing various H3 upload speed bugs in Firefox using Wireshark, logging, i/o-graphs and more.

 "Google Blockly" ( 2024 )

Sunday at 14:50, 60 minutes, H.1301 (Cornil), H.1301 (Cornil), FOSS Educational Programming Languages devroom Christopher Allen , video

Google Blockly is a JavaScript library for building visual programming editors. Blockly allows web pages to include a visual code editor and code generator for any of Blockly's five supported programming languages—or your own.

Resources

Documentation: https://developers.google.com/blockly

Codelabs: https://blocklycodelabs.dev/

GitHub: https://github.com/google/blockly, https://github.com/google/blockly-samples

Forum: https://groups.google.com/g/blockly/

We have a thriving community of developers—come and join us!

 "systemd-boot, systemd-stub, UKIs" ( 2024 )

Sunday at 14:50, 25 minutes, AW1.126, AW1.126, Open Source Firmware, BMC and Bootloader devroom Lennart Poettering , slides , video

The systemd projects has been providing an UEFI boot menu (systemd-boot) and UEFI stub (systemd-stub) since a while among its components. In this talk I'd like to explain the why, the what and the how around these components, and how to implement a simpler, more secure and robust boot chain with them, and why we encourage Linux users to do so.

We'll focus on the OS integration points of these components, and in particular the security angle, i.e. TPM, measurements, systemd's "credentials" concept and more.

→ systemd Homepage

 "Jumpstarter: Open Hardware In The Loop for everybody" ( 2024 )

Sunday at 14:50, 30 minutes, H.1308 (Rolin), H.1308 (Rolin), Open Hardware and CAD/CAM devroom Miguel Angel Ajo Pelayo Ricardo Noriega , slides , video

In the world of cloud-based software, developers enjoy the advantage of fully automated testing. Continuous Integration (CI) systems check every software update, testing every part of the software. However, this level of automated testing hasn't been easy for embedded software and devices. The main reason is their dependence on specific physical hardware, which traditionally requires manual testing by a person. This manual approach is slow and becomes more challenging as the number of device variants grows.

Jumpstarter was created to help with that. It introduces a way to test embedded software automatically, just like cloud software. With Jumpstarter, we can test our software on the actual hardware it will run on, but without needing someone to manually handle the device for each test. This is a big step forward because it makes testing faster, more consistent, and less reliant on manual effort. It fits right into existing CI/CD systems like GitHub CI, GitLab CI, Jenkins, Tekton, etc.., making it easier for developers to include it in their workflow.

Testing in hardware requires a testing harness to connect your hardware to Jumpstarter, as we couldn't find anything readily available and Open; this is why we also created the jumpstarter-board that allows power control and metering, storage flashing, console access, and other functions. We are working on the release 2.0.0 with additional functionality and expandability. Additionally, the Jumpstarter software is designed with a driver architecture that enables the creation of drivers for additional testing harnesses.

This talk will explain how Jumpstarter makes embedded software testing easier and more efficient. We'll explain how it can save time and ensure better testing results, which is crucial for developing reliable embedded systems.

We will bring the Jumpstarter board with us and share details to let you build your own or get it built for you.

 "Gotta Catch ‘Em All! Raspberry Pi and Java Pokemon Training" ( 2024 )

Sunday at 14:50, 120 minutes, J.1.106, J.1.106, FOSDEM junior Stephen Chin Cassandra Chin , slides

The ideal age range for this workshop is 9-15 years old. You will be working with Raspberry Pi computers, breadboard, sensors, etc.

The Pokemon have escaped the zoo and are running amuck! Using a miniature Raspberry Pi computer, a 3D printed pokeball, and the Java programming language, you can catch all of the escaped Pokeman and return them to the professor. For this workshop hardware will be provided, but we recommend that you purchase your own Raspberry Pi to continue catching Pokemon at home!

Registration will be required for this session. Use the following link to register.

 "Passwordless authentication in the GUI" ( 2024 )

Sunday at 14:55, 25 minutes, K.3.401, K.3.401, Identity and Access Management devroom Iker Pedrosa , slides , video

Passwordless authentication is becoming a trend and its usage will increase in the near future. Little by little we are seeing these authentication methods being added to the operating system (i.e. Passkey/FIDO2, External Identity Provider, etc.). However, its integration with the graphics stack leaves much to be desired.

In the last months SSSD and GNOME teams have been working on improving this integration and providing a unified and consistent user experience for passwordless authentication mechanisms.

This talk will present the current state, the problems that we have detected and the proposals for improvement. In addition, where possible, demonstrations of authentication mechanisms whose work is at an advanced stage of implementation will be provided.

 "The ups and downs of running enclaves in production" ( 2024 )

Sunday at 14:55, 20 minutes, H.2214, H.2214, Confidential Computing devroom Cian Butler , video

At Evervault we've been running production workloads in enclaves for 3 years and are building a platform to allow others to onboard and use enclaves easily. In the talk, I'll cover our experience scaling enclaves and how we load-tested them to optimise our workloads.

I'll also cover how we built Evervault Enclaves to allow others to leverage what we learned to deploy and use enclaves more easily to have a secure, attestable working environment. Evervault Enclaves allows developers to easily deploy Docker containers to a Secure Enclave without the engineering overhead to leverage fully attestable connections to their backend.

 "Digital Services Interoperability: [begin workshop] Introduction" ( 2024 )

Sunday at 14:55, 5 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Enzo Ribagnac , video

The Digital Markets Act requires interoperability both vertically and horizontally in sectors controlled by large platforms. How can open source be part of the solution?

 "Fortify AI against regulation, litigation and lobotomies" ( 2024 )

Sunday at 15:00, 30 minutes, UB2.252A (Lameere), UB2.252A (Lameere), AI and Machine Learning devroom Edward C. Zimmermann , video

AI models, particularly LLMs, readily and sometimes unwittingly may plagiarize content—what constitutes acceptable use is currently not fully resolved— opening their users to copyright tort and other forms of litigation. For society an immanent danger is also in how easily they can be poisoned or lobotomized to propagate disinformation. It is also difficult to uncover and address sources of bias. The later is of particular legislative concern—see emerging regulations such as the EU’s AI Act as a prototype for whats to come. Without traceability for data with clear license expressions and provenance, AI models are easy targets. The open source community are particularly vulnerable and defenseless. Without a preemptive strategy legal risks are untenable. We expect an avalanche of litigation in response to AI driven disruption of the business of established information providers and creatives. The talk focuses on both the legal and moral issues at hand but also the means to address the issues through traceability and model governance.

 "Build your first Clang compilation database plugin" ( 2024 )

Sunday at 15:00, 20 minutes, K.4.201, K.4.201, LLVM devroom Pascal Jungblut , video

The compilation database aids tools such as clangd in selecting the correct compiler flags for source files. It is commonly located found as compilation_database.json in the build directory. With tools like compdb, you can modify the file according to your needs. clangd itself provides a flexible configuration file. But what if you require more flexibility or have specific needs for your code base?

In this introductory presentation I give a brief overview of how Clang utilizes the compilation database and discuss the reasons and methods for extending it. Clang's CompilationDatabasePlugin allows extending and modifying compilation commands directly in your tooling at runtime. I show an example plugin that uses custom heuristics to find compiler flags for unknown files, e.g. for header files.

Plugins can interface with other Clang and LLVM components and writing one is a great way to get started writing Clang-based tooling.

 "srsRAN Project Update" ( 2024 )

Sunday at 15:00, 25 minutes, UB2.147, UB2.147, Software-Defined Radio and Amateur Radio devroom Andre Puschmann , slides , video

The talk will provide an update on srsRAN. We explain the approach taken for our 4G and 5G code bases, discuss the latest developments and share our vision for the upcoming releases.

 "Profiling Python with eBPF: A New Frontier in Performance Analysis" ( 2024 )

Sunday at 15:00, 25 minutes, UD2.218A, UD2.218A, Python Devroom devroom Kemal Akkoyun , video

In the rapidly evolving landscape of software development, performance analysis remains a critical aspect of building efficient and robust applications. This talk introduces a groundbreaking approach to profiling Python applications using eBPF (Extended Berkeley Packet Filter), a technology traditionally associated with systems-level monitoring.

Python, known for its simplicity and versatility, is widely used in various domains, including web development, data analysis, artificial intelligence, and more. However, profiling Python applications, especially in production environments, poses unique challenges due to its interpreted nature and dynamic runtime behavior.

In this session, I will share insights from my recent work on integrating Python profiling support into Parca, an open-source project for continuous profiling. I will delve into the complexities of profiling interpreted languages like Python and how eBPF can be leveraged to overcome these challenges. The talk will cover:

  1. The basics of eBPF and its applicability beyond systems monitoring.
  2. Challenges in profiling interpreted languages and how eBPF addresses them.
  3. Integrating eBPF-based profiling into open-source Parca for Python applications.
  4. Real-world examples and demonstrations of profiling Python applications using this novel approach.
  5. Insights into the future of performance analysis with eBPF in the Python ecosystem.

Attendees will leave with a deeper understanding of eBPF's potential in application-level profiling and practical knowledge to apply these techniques to their Python projects.

 "Building an Open Source Community One Friend at a Time" ( 2024 )

Sunday at 15:00, 20 minutes, UA2.114 (Baudoux), UA2.114 (Baudoux), Community devroom Bill Mulligan , slides , video

In open source, we talk a lot about the importance of community, but community isn’t something that happens by accident. Drawing on the speaker's experience building cloud native communities around CNCF, Cilium, and eBPF, this talk is a practical introduction on how to create a place that people want to be.

Marketing is a one to many megaphone while community is constructed through a network of one to one relationships. We will break down the steps to develop these relationships from seeding the initial champions to leveraging existing communities to successfully growing beyond the reach of any one single person. The audience will walk away understanding how these one to one relationships and friendships are key to a successful community and how they can create one around their open source project, product, and company too.

 "Releasing a Linux based OS: an overview of Flatcar release cycle" ( 2024 )

Sunday at 15:00, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Distributions devroom Mathieu Tortuyaux Sayan Chowdhury , slides , video

"Please welcome Flatcar releases of this month..." - that's how every Flatcar releases are announced but what is behind? What are the various tasks involved to reach this release status?

In this talk, Sayan and Mathieu, two Flatcar engineers involved in the release automation process, will guide you into this (open-)journey. Open? Yes, almost all the release cycle is public, anyone interested into building and releasing complex systems such as Linux based Operating System are invited to join. Flatcar is a Linux based OS designed to run container workloads: no package manager, /usr is read-only - it is the responsibility of the maintainers to keep the system up-to-date. From the definition of the content, to the payload release, passing by the "go/no-go" meeting let's see how Flatcar is defined, built and released and how the community is involved at each steps.

 "Getting lulled into a false sense of security by SBOM and VEX" ( 2024 )

Sunday at 15:00, 30 minutes, K.4.401, K.4.401, Software Bill of Materials devroom Henrik Plate , slides , video

SBOM and VEX represent an important step towards managing software products and software vulnerabilities more efficiently and effectively. The accelerating development of standards and tooling is driven by the promise to answer one important question: Which of the thousands of CVEs published per year affect a given software product?

However, the mere presence of such documents can lull consumers into a false sense of security. Studies have shown that the accuracy of SBOM and VEX documents greatly varies from one producer to another.

The production of accurate SBOM and VEX documents requires connecting products to components, components to vulnerabilities and vulnerabilities to (vulnerable) functions. But establishing those connections is hindered by development practices, the dynamics of open source projects, low-quality vulnerability databases and other factors…

This talk provides a deep dive into the brittleness of those connections, supported by real-world examples from the Java/Maven ecosystem. This information helps SBOM and VEX consumers to ask the right questions when it comes to evaluating and comparing tools and vendors.

 "Open Source for Sustainable and Long lasting Phones" ( 2024 )

Sunday at 15:00, 50 minutes, Janson, Janson, Main Track - Janson Luca Weiss Agnes Crepet , video

The digital revolution promises us an ever better future for people and the planet. However, while its environmental cost is quite known nowadays, the societal and geopolitical issues triggered are more hidden and taboo. From the extraction of minerals to recycling without forgetting the planned obsolescence, the digital industry is a revolution that is far from keeping all its promises of a radiant future.

One of the main means for reducing the environmental footprint of digital technology is to extend the lifespan of our devices. Fairphone is a European manufacturer that designs and produces smartphones with the goal of having a lower environmental footprint and better social impact than the norms in the electronics industry. We will speak about how, at Fairphone, we fight planned obsolescence, we will see how the eco-design of hardware modularity is one key for longevity but we will also see the role of open source to make our devices last longer from a software perspective.

 "What is Linux kernel keystore and why you should use it in your next application" ( 2024 )

Sunday at 15:00, 40 minutes, UB5.132, UB5.132, Kernel devroom Ignat Korchagin , slides , video

Did you know that Linux has a full-featured keystore ready to be used by any application or service it runs? Applications can securely store and share credentials, secrets and cryptographic keys, sign and encrypt data, negotiate a common encryption key - all this by never touching a single byte of the underlying cryptographic material.

This is especially useful in the post-heartbleed and cloud-native environments, where services authenticate and securely talk to each other using some kind of credentials. But if a network-facing service also has some secret in its process address space, it sets itself up for a security failure as any potential out-of-bounds memory access vulnerability may allow the secret to be leaked. Imagine a world where you don’t have to run an SSH agent just to protect your SSH keys.

On top of keeping your secrets secret Linux keystore nicely integrates with specialized security hardware, like TPMs and HSMs and may provide a single entry point on the system for applications to obtain their secrets. Thus Linux keystore is a very useful building block for a corporate key management system.

 "Version control post-Git" ( 2024 )

Sunday at 15:00, 50 minutes, K.1.105 (La Fontaine), K.1.105 (La Fontaine), Main Track - K Building Pierre-Étienne Meunier , slides , video

Since Darcs, Git and Mercurial were published 15 years ago as the first generation of distributed version control systems, distributed computing has seen exciting progress, in particular with mathematical formalisations of "ideal" distributed datastructures (CRDTs for example).

In this talk, I'll show our work on Pijul, a version control system with sound mathematical properties, making it easy and intuitive to use for non-coders, as well as scalable to arbitrarily large monorepos and binary files.

I'll explain how the core datastructures were "found" rather than designed, why we had to write a new open source key-value store to fork tables efficiently (zero-copy forks), and how that key-value store ended up breaking performance records.

 "Open Source Community Updates" ( 2024 )

Sunday at 15:00, 25 minutes, UB4.132, UB4.132, Open Media devroom Jean Baptiste Kempf , video

Updates from the Open Source Multimedia community

 "Special Purpose Operating Systems: The Next Step in OS Evolution or One-Trick Ponies?" ( 2024 )

Sunday at 15:00, 60 minutes, AW1.121, AW1.121, BOF - Track C Thilo Fromm Razvan Deaconescu Mauro Morales Kyle Davis

There are a number of open source, special purpose operating systems designed for hosting containers. While the each OSes technical approach and philosophy differ, they still share much in common. In this session, a panel of representatives from multiple special purpose OSes will present the general concept of a container host-specific special purpose OS, what makes them distinct from general purpose OSes, and what advantages and challenges they hold for end-users as well as the unique perspective required to maintain and build them.

 "Postgres vs. Linux filesystems" ( 2024 )

Sunday at 15:00, 50 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), PostgreSQL devroom Tomas Vondra , slides , video

Postgres heavily relies on various parts of the operating system - filesystem and buffered i/O are good examples of such fundamental dependencies. But there are many commonly used filesystems supported by Linux, from traditional ones (ext4,xfs) to modern ones (zfs, btrfs) and various exotic ones. The question is - are there significant performance differences between these filesystems for Postgres? Are there clear winners or filesystems you definitely should not use? I did a similar comparison a couple years back, but both the Postgres and kernel are continuously improving and adopting to new hardware, so let's look at fresh data.

 "Digital Services Interoperability: What opportunities recent European legislations create for open source business?" ( 2024 )

Sunday at 15:00, 10 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Jurgita Miseviciute , video

Over the last few years, the European Union has adopted various legislations building requirements for the digital industry. Among them, the Digital Markets Act regulating the behaviors of large technology companies, and the Data Act pushing for interoperability of data and cloud services.

While these regulations create challenges for companies, they also create opportunities for open source projects and open source business to leverage the nature of open source development to build technologies and services in line with these legislations.

 "A Game Boy and his cellphone" ( 2024 )

Sunday at 15:05, 20 minutes, UB5.230, UB5.230, Retrocomputing devroom Esteve Varela colominas , slides , video

The Mobile Adapter GB was a peripheral that allowed you to connect a Game Boy to a Mobile Phone, with the purpose of facilitating Internet connectivity and multiplayer. Unbeknownst to many, this was the first time big-name games like Pokémon and Mario Kart had any sort of online connectivity. However, the adapter was a flop, and it never left Japan. Now, 20 years later, the REON team is documenting and restoring the system, across the whole stack, from hardware to backend.

This talk will start by covering what the Mobile Adapter GB is, and what REON is doing to restore its functionalities on both software emulators and hardware devices. Then, the discussion will delve into the details by brushing a bit on the peripheral's history, and what it's used for in different games. Finally, the presentation will end with an exploration of how the actual system works: this will help emulator developers understand how to implement the adapter, and it will also show prospective homebrew developers the peripheral's capabilities.

Core emulator: https://github.com/REONTeam/libmobile
Game servers: https://github.com/REONteam/reon
Call server: https://github.com/REONteam/mobile-relay
Software emulators:
- https://github.com/REONTeam/libmobile-bgb
- https://github.com/Wit-MKW/mgba
Hardware emulators:
- https://github.com/REONTeam/libmobile-atmega
- https://github.com/zenaro147/PicoAdapterGB
- https://github.com/Lorenzooone/pico-gb-mobile-adapter

 ""Scratching an itch... by patching kmscon" or "How OpenGL can lead to systems-programming"" ( 2024 )

Sunday at 15:05, 25 minutes, K.3.201, K.3.201, Graphics devroom Mirco Müller , slides , video

Patching the system-console replacement "kmscon" to support output-rotation (a la xrandr), mouse-based copy&paste, gyro-sensor and some eye-candy

 "[Security] Analysis of the S/MIME ecosystem" ( 2024 )

Sunday at 15:05, 10 minutes, H.2213, H.2213, Modern Email devroom Tobias Mueller , video

We present an evaluation of all existing vendors of S/MIME certificates. We analysed the vendors' offering for their usability and privacy by measuring the time from zero to certificate as well as their privacy policies. We find that neither of the ten vendors provide a satisfactory offering. We finally sketch a way forward through ACME for S/MIME and present a prototypical implementation for Thunderbird.

We bought certificates from all ten vendors of S/MIME certificates with their CA in Mozilla's Trust Store. For each vendor, we recorded the procurement process and analysed the time and clicks needed, the number of requests and their sizes, and the number of privacy invading third-party requests. Further, we checked on the privacy policies and adjacent documentation to count the number of words and analyse the readability of the necessary documents.

Our results suggest that the market does not provide a satisfactory solution. The vendors either control your secret key, invade your privacy with well-known third-party trackers, or require a PhD to read their privacy policies. Some vendors did not even manage to create a valid certificate.

The best way forward is to establish ACME for S/MIME which allows for a (n)one-click solution. We have created a prototype to show that this is technically feasible.

 "Aerodynamic Data Models: Flying Fast at Scale with DuckDB" ( 2024 )

Sunday at 15:05, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Nishant Bangarwa (Rill Data) Mike Driscoll , video

At Rill, we rely on DuckDB to power uniquely fast dashboards for exploring time-series metrics. To achieve this interactivity, Rill’s dashboards generate up to 100 parallel queries in response to each user interaction.

In this lightning talk, we'll share a series of optimization and data modeling techniques that have been pivotal in achieving remarkably fast, sub-second response times using DuckDB.

Our primary tactics include employing parallel connections to facilitate simultaneous query processing and organizing data in a chronological order to enhance the effectiveness of min-max indexes. We also utilize enum types for more efficient handling of string column queries, along with config tunings. These approaches have collectively enabled us to enhance DuckDB's capability to handle larger datasets (100+ GBs) with sub-second query responses.

We invite you to join us in this insightful session to discover how these optimizations can significantly improve your data processing and query performance in DuckDB.

 "What is CI/CD observability, and how to bring observability to CI/CD pipelines?" ( 2024 )

Sunday at 15:10, 25 minutes, UA2.220 (Guillissen), UA2.220 (Guillissen), Monitoring & Observability devroom Dimitris Sotirakis Giordano Ricci , slides , video

A reliable CI/CD pipeline is the backbone of every modern project, yet there's limited visibility into its processes, often requiring manual review and analysis of build outputs. By leveraging OpenTelemetry standards we want to bring observability to our pipelines, making the software delivery process fully observable. Join our journey redefining CI/CD observability, learn how you can start implementing the techniques we are using at Grafana Labs to ensure our pipelines are more reliable and stay performant over time, how to identify flakiness, and how we envision a future where - no matter your system or your observability solution - by implementing OpenTelemetry in our CI/CD processes. This way, stakeholders gain a profound understanding of our software delivery pipeline, enabling them to acquire actionable insights into system performance, identify bottlenecks, and make informed decisions for continuous improvement. This heightened level of observability empowers teams to proactively enhance the efficiency, reliability, and overall quality of the software delivery process, fostering a more streamlined and adaptive development lifecycle

 "Digital Services Interoperability: Intertwining EU telecom law, the DMA, internet devices and Free Software" ( 2024 )

Sunday at 15:10, 10 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Nico Rikken Lucas Lasota , video

Although the EU aims to establish better competition on digital markets with the DMA, the regulatory framework for internet access devices, such as routers and modems, remains fragmented. Free Software is impacted in relation to operating systems running in these devices. Volunteers communities over Europe have engaged in initiatives such as Router Freedom and Device Neutrality to monitor these laws. The proper implementation has already revealed challenging due to several hurdles and difficulties.

 "NeoDateFix - A solution to organising meetings in Matrix" ( 2024 )

Sunday at 15:15, 30 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), Matrix devroom Milton Moura Norgin jafar Ahmad Mikhail Aheichyk , slides , video

NeoDateFix is an open source application to create and manage video conference meetings in Matrix clients that support the Widget API.

It supports the following features:

  • Schedule video conference meetings as new Matrix rooms.
  • Schedule recurring meetings.
  • Share a public link to the room to invite other participants.
  • Enable default widgets and layout that should be used in the meeting rooms
  • Create breakout sessions to split the participants of a meeting into new rooms.
  • Provide an API for other applications to create meetings e.g. from a groupware application.

The application consists of different components:

  1. A bot that uses the Matrix Bot SDK to create and manage meeting rooms.
  2. A widget that uses the Matrix Widget API to interact with the bot and to read the meeting information from the Matrix rooms.
  3. An optional service that removes meeting rooms when they are no longer used.

Our talk will take a deep dive into each of these three components, showing how we have used the Matrix protocol and its features to build this productivity tool that is part of the openDesk open source software suite.

 "[Security] Thunderbird Email Security, plans and challenges." ( 2024 )

Sunday at 15:15, 20 minutes, H.2213, H.2213, Modern Email devroom Kai Engert , video

A brief overview of Thunderbird's support for OpenPGP and S/MIME, the improvements we consider to add, and the challenges we're facing.

  • https://thunderbird.net

 "The MDN Curriculum: Better web developers for a better web" ( 2024 )

Sunday at 15:20, 25 minutes, H.1302 (Depage), H.1302 (Depage), Mozilla devroom Chris Mills , video

Building the web is becoming more complex, with more tools, techniques, and acronyms to digest. As a beginner, it can be a nightmare to figure out where to start. And with all this newfound complexity, knowledge has been lost on the way. Accessibility has taken a step backward, and the modern web feels a bit more "cookie cutter" than it perhaps did. How can we turn things around? In this talk, Chris Mills looks at the MDN Curriculum, a new blueprint for learning front-end fundamentals that aims to give new developers all they need to find a job and build a better, more accessible web.

 "Automated Integration of FreeIPA with AD and External IdP" ( 2024 )

Sunday at 15:20, 25 minutes, K.3.401, K.3.401, Identity and Access Management devroom Rafael Jeffman Thomas Woerner , slides , video

The ansible-freeipa project provides an Ansible Collection with roles and modules for FreeIPA deployment and management. The talk will show how to automate FreeIPA deployment and configuration to integrate with Microsoft Active Directory and also how to configure and use External Identity Providers, using the ansible-freeipa project. Recent versions of ansible-freeipa allow id overrides for AD users, for example enabling an AD administrator to act as a FreeIPA administrator, performing tasks like enroll new clients, deploy or promote replicas, and manage users, also to use the self-service features. External IdP support has been recently added to FreeIPA. The registration with an integrated IdP enables FreeIPA to act as an OAuth 2.0 client to handle authentication of the user identity and authorize access to it. This integration and the required changes to users can be automated using ansible-freeipa. The talk will be closed by a demonstration of the configuration and integration of AD and External IdP.

 "Securing Embedded Systems with fTPM implemented as Trusted Application in TEE" ( 2024 )

Sunday at 15:20, 20 minutes, H.2214, H.2214, Confidential Computing devroom Tymoteusz Burak , slides , video

In this presentation, we will discuss how to enhance the security of embedded systems using a Trusted Execution Environment (TEE) to implement a Firmware Trusted Platform Module (fTPM) as a Trusted Application (TA). We will cover the benefits of using TEE and fTPM, and additionally, we will provide an example of how to implement that and demonstrate the code. It is important to note that there is already a kernel driver available that supports fTPM in TEE, which can be found in the latest Linux kernel source code [1]. Part of this talk will cover examples available on Microsoft GitHub [2] page which provide a guide on how to implement fTPM on ARM32 platforms. Attendees will leave with a better understanding of how to leverage TEE and fTPM, as well as the knowledge and tools needed to implement fTPM on their embedded systems and enhance their security.

[1] https://elixir.bootlin.com/linux/latest/source/drivers/char/tpm/tpm_ftpm_tee.h [2] https://github.com/microsoft/ms-tpm-20-ref/tree/main/Samples/ARM32-FirmwareTPM

 "GRUB - Project Status Update" ( 2024 )

Sunday at 15:20, 25 minutes, AW1.126, AW1.126, Open Source Firmware, BMC and Bootloader devroom Daniel Kiper , slides , video

The presentation will discuss current state of GRUB upstream development.

 "Running systemd integration tests with mkosi" ( 2024 )

Sunday at 15:20, 30 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Testing and Continuous delivery devroom Daan De Meyer , slides , video

Testing an init system is not an easy task. As it is impossible to have more than a single init system running as PID 1 on a machine, testing an init system is only feasible by using external testing hardware or virtual machines. In this talk we'll go over systemd's existing integration test suite, how it works, and our current project to migrate the integration test suite to run in virtual machine images produced by mkosi, systemd's image builder sister project.

We'll also discuss many of the features systemd and mkosi provide that make running integration tests in virtual machines a breeze. This includes but is not limited to communicating the exit status of an integration test to the host system once the integration test finishes, automatically running the integration test once the virtual machine has booted, using ephemeral instances of the same image for each individual test to make it trivial to run tests in parallel, automatically tunneling test logs out of the virtual machine and more.

https://github.com/systemd/systemd/ https://github.com/systemd/mkosi

 "From hackathon idea to hackaday prize - How we make a Braille embosser." ( 2024 )

Sunday at 15:20, 25 minutes, H.1308 (Rolin), H.1308 (Rolin), Open Hardware and CAD/CAM devroom Stephane Godin , slides , video

Making Braille documents for unsighted people has been a topic for a long time in makers movement. From BraillGO to Open Braille, many projects tried to produce Braille documents, with some success and some fails.

In 2016 My Human Kit, a french non profit organization organize a hackathon where they start with customized 3D printer and a piece a software that translate text into Braille and Braille into GCODE. In 2017 all these poc and tests was the start of the BrailleRAP project, bringing a fully documented open source Braille embosser with accessible software. Braille embosser succesfully re-built in many countries, from Argentina to Buthan, passing by France, Belgium and Cameroun.

From the first prototype in early 2018 to the lastest version in 2023, we will discuss about what failed and what was great improvments. We will focus on the documentation and assembly guide, one of the most important topic of the project.

At the end we will discuss about Workshop to build BrailleRAP. In most aspect, BrailleRAP is a Fablab standard workshop, with an exception, you need a Braille reader to validate the build. And most of Braille reader are unsighted ! Which opportunities are open by building accessibility devices in workshop ?

 "Digital Services Interoperability: Panel Discussion - The technical challenges of interoperability requirements in EU law" ( 2024 )

Sunday at 15:20, 45 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Enzo Ribagnac Leire Orue-Echevarria Alexandre Ruiz Feases , video

A group of key policy officers discuss digital services interoperability at FOSDEM.

 "Strategies for Building Healthy Open Source Communities" ( 2024 )

Sunday at 15:25, 30 minutes, UA2.114 (Baudoux), UA2.114 (Baudoux), Community devroom Dawn M Foster , video

Building healthy and vibrant open source communities that are sustained over time can be a struggle, especially when maintainers are already exhausted and overworked with the regular day to day work on the project. It’s not easy, and there is no one size fits all magic solution to building healthy communities. However, there are some strategies you can use to increase your chances of being successful.

This talk has three sections. First, a discussion of the strategies that can be employed to build healthy communities, including performing the work in the open and how good governance, contributor ladders, and roadmaps can help you grow diverse contributor communities. Second, how to take a strategic approach to metrics that help you align your unique goals, and build healthy open source communities. Finally, the talk will include tips and techniques for interpreting what the metrics are telling you in ways that allow you to take action to continuously improve the health of your open source communities.

This talk focuses on how to take a strategic approach to building FOSS communities and how the smart use of metrics can help you continuously measure your progress and improve community health. Whether you are working in an open source project on behalf of a company or as an individual, you will walk away from this talk with strategies, techniques, and metrics for building healthy communities around your open source projects.

 "Neo6502 in the Matrix - open source hardware and software modern retro computer with software defined architecture" ( 2024 )

Sunday at 15:25, 20 minutes, UB5.230, UB5.230, Retrocomputing devroom Tsvetan Usunov , video

Neo6502 is computer with real W65c02 connected to RP2040 co processor which takes care for everything else: emulates the memory, interfaces the USB keyboard, interfaces to DVI/HDMI monitors, play sounds and music, drive spirits and graphics, interfaces external USB flash drive and have I2C, SPI, UART, GPIO. So Neo6502 litterally lives in the Matrix and thinks it have real peripherals attached, while this is all emulation. What makes Neo6502 modern is the possibility to use modern displays and TVs, Normal USB keyboards and Flash drives. On top of this it has access to modern interfaces like I2C and SPI which allow it to interface modern sensors, displays and other devices unleashing the Arduino like applications.

With such flexibility was just matter of time to recreate all retro computers based on 6502 like Apple ][+, Apple IIe, Oric Atmos which are already done. Commodore64 and BBC Micro are in the TODO list. What makes more fun is that you dont have to just copy what was done, but you can make your own unique arhchitecture as well, with the flexibility Neo6502 presents you can make your own dream 6502 computer. The Neo6502 repository: https://github.com/OLIMEX/Neo6502 The Neo6502 Apple][+ Apple][e OricAtmos repository: https://github.com/vsladkov/reload-emulator The Neo6502 original firmware from Paul Robson https://github.com/paulscottrobson/neo6502-firmware/ The Neo6502 BBC/EHBasic firmware from Rien Matthijsse https://github.com/marobi/Pico_6502_v4 The Neo6502 environment by Oliver Schmidt https://github.com/oliverschmidt/neo6502-firmware

 "Challenges of supporting multiple versions of LLVM in Intel Graphics Compiler" ( 2024 )

Sunday at 15:25, 30 minutes, K.4.201, K.4.201, LLVM devroom Mateusz Belicki , slides , video

Intel Graphics Compiler (IGC) is a LLVM-based open-source project, which supports multiple operating systems and configurations. Thus, the project must support multiple versions of LLVM spanning form LLVM 9 to LLVM 14 and soon more recent versions. This talk focuses on mechanisms and practices that we use to support changes and inconsistencies between various versions of LLVM's unstable C++ API.

The presentation will also cover our plans for supporting newer LLVM versions. The challenge of upgrading to most recent versions comes from major API changes originating from the shift to opaque pointers in LLVM-IR. Due to the nature of GPU workloads, IGC must support a number of domain-specific types (textures, samplers) which were modelled internally as typed pointers.

The aim of the presentation is to share our experience with other maintainers and developers of LLVM-based projects.

Intel Graphics Compiler is available here: https://github.com/intel/intel-graphics-compiler/

 "Trusted Postgres Architect - Deploying Postgres with Infrastructure as Code" ( 2024 )

Sunday at 15:25, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Boriss Mejías , slides , video

The DevOps philosophy has been widely adapted by software developers and sysadmins, but DBAs have not been an active part of the movement yet. The Trusted Postgres Architect (TPA) attempts to change that by helping to deploy Postgres architectures with infrastructure as code.

TPA is an open source orchestration tool that uses Ansible to deploy Postgres clusters according to our best practices. These recommendations are as applicable to quick testbed setups as to production environments. We will see how TPA can deploy PostgreSQL to bare metal, AWS and docker containers, using different replication manager tools such as repmgr and Patroni, and backup and recovery solutions such as Barman.

TPA has been released as open source this year, and it accumulates several years of experience from our engagements with customers, therefore, it is nowadays being used in production by several projects.

More information can be found here: https://www.enterprisedb.com/products/trusted-postgres-architect-tpa

 "Python 3.12's new monitoring and debugging API" ( 2024 )

Sunday at 15:30, 25 minutes, UD2.218A, UD2.218A, Python Devroom devroom Johannes Bechberger , slides , video

Python 3.12 introduced a new low impact monitoring API with PEP669 which can be used to implement far faster debuggers than ever before. This talk will give you an introduction to the new API and show you how it can be used to write a simple debugger from scratch.

 "SatDump, A generic satellite data processing software" ( 2024 )

Sunday at 15:30, 25 minutes, UB2.147, UB2.147, Software-Defined Radio and Amateur Radio devroom Alan , video

TETRA is an "open" digital radio standard, used worldwide by emergency services and private companies. In recent years, there has been some efforts to implement part of this standard on SDR hardware, using open-source software.

 "An introduction to Image Builder: building up-to-date, customised operating system images the easy way" ( 2024 )

Sunday at 15:30, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Distributions devroom Sanne Raymaekers , video

Image builder is a tool that builds bespoke operating system images in a manner that is reliable and well-defined.

Image builder supports the Fedora, CentOS Stream, and RHEL distributions for a host of target platforms such as bare metal, QEMU, vSphere and cloud platforms like AWS, Azure and Google cloud.

It can build rpm ostree based images or "plain" dnf. It is shipped in a variety of ways: as a CLI tool, a cockpit plugin or a hosted service. We will take a look at the basic concepts, some of the features, and a new initiative targeted towards the Fedora community.

Tired of your duct taped collection of scripts to build your images? Consider image builder!

 "A Principled Component Analysis of Open Source Artificial Intelligence" ( 2024 )

Sunday at 15:30, 30 minutes, UB2.252A (Lameere), UB2.252A (Lameere), AI and Machine Learning devroom julia ferraioli , slides , video

Artificial intelligence is more accessible to developers, designers, and users than ever before. Machine learning functionality seamlessly woven into products and platforms makes our lives a little bit easier. A wealth of APIs, libraries, and tools make it trivial to tap into sophisticated models and methodologies that give our applications an intelligent edge.

When thinking (or "thinking") about open source and artificial intelligence, we see some significant challenges in retaining the open source ethos that has made open source software such a force for technological advancement. Join us in a Principled Component Analysis of artificial intelligence as we explore some key issues facing us in this new frontier of open source.

 "Innovations in H.264/AVC software decoding (Architecture and optimization of a block-based video decoder to reach 10% faster speed and 3x code reduction over the state-of-the-art)" ( 2024 )

Sunday at 15:30, 25 minutes, UB4.132, UB4.132, Open Media devroom Thibault Raffaillac , slides , video

This talk will present architectural and optimization techniques that were used in the development of a H.264 software decoder (https://github.com/tvlabs/edge264), to drastically reduce code size and improve speed. The techniques are applicable to other block-based video codecs, and will be presented as HOWTOs to help participants use them in their own projects. They include code and memory layout with the C language, and maximizing opportunities for vectorization.

 "Panel discussion: Best practices managing SBOMs in the supply chain" ( 2024 )

Sunday at 15:30, 30 minutes, K.4.401, K.4.401, Software Bill of Materials devroom Alexios Zavras (zvr) Adolfo García Veytia Jeff Mendoza Arun Azhakesan , video

The discussion will be moderated by Adolfo García Veytia.

 "Shaping the Future: Investing Wisely in Long-Term Open Source Development with "Five for the Future"" ( 2024 )

Sunday at 15:30, 45 minutes, K.4.601, K.4.601, Designing Futures of FOSS Content Management with the Open Website Alliance devroom Jesús Amieiro Becerra , slides , video

In the open-source world, money can be a big challenge. It often leads to projects struggling to find a good way to make money, and sadly, some great projects end up failing because they run out of resources. That's where this session comes in:

  • I'm going to break down the problems of getting money for free software and talk about the main ways these projects get funded.
  • I'll introduce you to something called the "Five for the Future" initiative. Since 2014, it's been a game-changer for the WordPress project, helping it grow and succeed more every day.

Attendees at the presentation will gain insights into the financial support mechanisms behind this open-source CMS. The goal is to equip them with the knowledge to extend this initiative to benefit other free software projects.

 "Flutter in Embedded" ( 2024 )

Sunday at 15:35, 25 minutes, K.3.201, K.3.201, Graphics devroom Andrea Ricchi , slides , video

Flutter is an open-source UI Software Development kit created by Google using an Apache license. It is an open-source multi-platform single code base. Used to develop applications from web browsers to OS like Fuchsia, Android, iOS, Linux, macOS, and Windows. It's also in the top ten most popular projects on GitHub.

Flutter was first released by Google in 2015 supporting Android devices to render consistently at 120 frames per second and soon later supporting iOS. In 2021 Google released Flutter 2 supporting Windows, macOS, and Linux operating systems.

Flutter emerged in the embedded world as an alternative to other UI frameworks like LVGL or Qt. The main advantages are free and open source against commercial license; declarative UI approach against procedural UI approach meaning a more expressive and flexible approach; hot reload and hot restart against rebuild and redeploy making work less time-consuming; large and active open source community.

This talk will give an overview of these topics, starting from the integration in the OS build system like Buildroot and Yocto, showing the development environment and the differences between the languages C++/QML and Dart/Flutter with code examples.

Finally, I'll quickly show a real industrial custom product developed and shipped with a Flutter UI application, the challenges and the result that we achieved.

 "[Security] Email Autoconfiguration, and 2FA for email" ( 2024 )

Sunday at 15:35, 30 minutes, H.2213, H.2213, Modern Email devroom Ben Bucksch , video

  1. How email clients can automatically configure email accounts, with only name and password. https://www.ietf.org/archive/id/draft-bucksch-autoconfig-00.html

  2. What needs to be done to get 2FA in email working for everybody - any mail server that wishes so, and any email client that would like to implement support. Which standards we need to make this work well for end users.

 "PiStorm - The evolution of an open source Amiga accelerator" ( 2024 )

Sunday at 15:45, 25 minutes, UB5.230, UB5.230, Retrocomputing devroom Andrew Hutchings , slides , video

PiStorm is a community driven project which aims to provide a cheap accelerator solution for your Amiga using an off-the-shelf Raspberry Pi.

In this talk I will be covering:

  • What the PiStorm really is, both as hardware and a community
  • The history of the project, including the bumps along the road
  • Directions that we intend to take the project in the future
  • A demonstration of what PiStorm is capable of

This will (if all goes to plan) be presented using Andrew's Amiga 1200 with a PiStorm32-Lite inside.

 "Connecting IBM AIX to Red Hat Identity Manager (FreeIPA)" ( 2024 )

Sunday at 15:45, 25 minutes, K.3.401, K.3.401, Identity and Access Management devroom Andrey Klyachkin , video

IBM AIX is the last "hardcore" UNIX system running on IBM's own IBM Power systems. RH Identity Manager is modern identity and access management solution based on FreeIPA. AIX can't speak natively to RH IdM. But can they work together at all? What type of problems does happen during the deployment? What can be solved and what can wait till next feature?

 "A few limitations in the available fs-related system calls" ( 2024 )

Sunday at 15:45, 30 minutes, UB5.132, UB5.132, Kernel devroom Nick Kossifidis , slides , video

Out of curiosity a few months ago, I wrote a tool from scratch to get a backup of my home folder, and preserve as much as possible, including files/folders encrypted with fscrypt, inode creation and change times etc. It works but it's hackish, and the reason is that the currently available system call interface has a few limitations that prevent a cleaner/safer approach. In this presentation I'll try to point out those limitations, present some use cases specific to backup, and hopefully get some feedback on how to proceed.

 "MatrixRTC: The Future of Matrix Calls" ( 2024 )

Sunday at 15:45, 45 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), Matrix devroom Jayesh Nirve (td) Timo Kandra , slides , video

A generic Real Time (RTC) layer for the matrix ecosystem and client implementations

As of now matrix is mostly used as a distributed database powering an instant messaging system. But matrix events which get stored on the homeserver are not suitable for actual real time applications. In this talk we give a brief description of our vision for MatrixRTC which would pave the way for RTC applications such as group calls in your matrix client, a whole collaborative office suite, security/webcam feeds, games, etc.

To realize this vision matrix needs a standardized signaling system for establishing real time (WebRTC) connections between all participants and allow to exchange media and data streams.

In this talk we will present the journey of building Element Call and FluffyChat as MatrixRTC applications for group calls and present the findings we made to make this a stable extensible and secure infrastructure that leverages all the amazing features of matrix.

We will give a technical introduction to the MSC's making up MatrixRTC and explain the decisions made. We will also explain how we implemented it in FluffyChat and how it integrates with native mobile operating systems like Android and iOS.

Interoperability between Element Call and FluffyChat for group calls just became possible a couple of days ago. We want to share this milestone for this new part of matrix. Since its all built ontop of matix the matrix-calls feature account verification and per sender encryption to not only guarantee that the streams are shared securely but also the authenticity of participants. Which makes it one of the most secure digital real time communication method.

 "Automated Documentation for Open Source Hardware" ( 2024 )

Sunday at 15:45, 25 minutes, H.1308 (Rolin), H.1308 (Rolin), Open Hardware and CAD/CAM devroom Pieter Hijma , slides , video

Documentation is an essential component of Open Source Hardware (OSH) projects both for co-development and replication of designs. However, creating documentation and keeping it up-to-date is often challenging and time-intensive. In this presentation we present OSH Automated Documentation, a system that relates the CAD design semantically to a textual specification from which we generate assembly instructions semi-automatically. Our system makes use of a FreeCAD workbench and a compiler that closely interact to create high-quality Ikea-style assembly instructions.

 "The wonderful life of a SQL query in a streaming database" ( 2024 )

Sunday at 15:45, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Jan Mensch , slides , video

How do you update materialized views incrementally based on streaming data? In this talk, we follow the life of a query, from the SQL string to the running operators, in a distributed system. This talk follows a SQL query as it runs in RisingWave (https://github.com/risingwavelabs/risingwave), a shared storage streaming system that delivers real-time analytics over unbounded data. We’ll give a brief overview of the systems architecture, and show how the compute layer is used during query processing. You will also discover how this open-source database deploys streaming graphs, scales horizontally, and manages data in motion.

 "Introducing Observability to an airline" ( 2024 )

Sunday at 15:50, 25 minutes, UA2.220 (Guillissen), UA2.220 (Guillissen), Monitoring & Observability devroom James Belchamber , video

Your latest deployment is to a large, successful enterprise with a field of reliable, essential components of all vintages - as well as a sizable foothold in the cloud world. It’s a busy place, with demanding projects to implement alongside waves of transformations - agile, devops, cloud - all competing for people and time and resources. You’ve been tasked with evolving the monitoring estate, and you know the right thing to do is lead them into an observability transformation. Now, where do you start?

This talk explores how to introduce observability to large enterprises with a deep stack of technologies reaching right back to the early days of digitisation. From convincing stakeholders, to deploying your first tools, to enabling engineers to make their components observable (and convincing them that it’s worthwhile!) - and, finally, going from project to "just the way it's done".

 "Integrity Protect Workloads with Mushroom" ( 2024 )

Sunday at 15:50, 20 minutes, H.2214, H.2214, Confidential Computing devroom Tom Dohrmann , slides , video

Mushroom leverages AMD's SEV-SNP Confidential Computing technology to protect the integrity of Linux workloads and provide attestation reports for their results. It has a strong focus on improving security by removing unneeded attack surfaces.

 "Firefox: Good things come in .deb packages" ( 2024 )

Sunday at 15:50, 10 minutes, H.1302 (Depage), H.1302 (Depage), Mozilla devroom Gabriel Bustamante , video

In early 2024, people using Debian-based Linux distributions will have an additional choice to install Firefox from. This Firefox will be 100% built by Mozilla. This translates into better performance and faster updates. In this presentation, we will view how it's made and what to expect.

 "Kernel command line to configure userspace considered harmful" ( 2024 )

Sunday at 15:50, 25 minutes, AW1.126, AW1.126, Open Source Firmware, BMC and Bootloader devroom Luca Boccassi , slides , video

There was a time when we were happy and care free, and booting our computers off a floppy disk found behind the pub down the road was an exciting and joyful adventure. Alas, those days are past now. Significant effort and investment have gone into securing the boot process of a general purpose PC, and we are nowhere near done. Linux is trailing significantly behind Windows and MacOS in this regard, and we have a long way to go. With TPM support in UKIs, systemd-stub and systemd-boot, the systemd project is trying to do its part in bringing the ecosystem forward.

But we need to talk about the kernel command line. Decades of [over|ab]use have made it into a kitchen sink, used to do anything and everything, and (custom) parsed by everything and anything, including the kernel before ExitBootServices() has been called. The surface attack that opens up for an authenticated writer is unfathomable, and the magnitude of a successful exploitation is simply unknowable. Is it time for the kernel command line to end?

This talk will explore alternatives to let users configure early initrd/userspace services provided by the systemd project, and plead with anybody willing to listen to start using those instead: UKIs, signed addons for UKIs, signed Confext/Sysext images, systemd credentials, SMBIOS Type 11 strings, bootconfig.

 "Making it easy to get to SLSA level 2" ( 2024 )

Sunday at 15:55, 30 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Testing and Continuous delivery devroom John Viega Theofilos Petsios , slides , video

While there's a lot of emphasis on supply chain security, there's been little work done to help make it easy to operationalize. The SLSA standard gives good guidance on levels of maturity, but the tooling has been slower to follow.

In this talk, we'll show how to leverage Chalk to both capture build provenance and do build attestation with Sigstore, in a way that you can deploy to entire build systems transparently without needing to change most build pipelines.

 "ZIMjs 2D PWA apps into 3D+VR with ThreeJS" ( 2024 )

Sunday at 16:00, 60 minutes, H.1301 (Cornil), H.1301 (Cornil), FOSS Educational Programming Languages devroom Karel Rosseel , video

ZIMjs.com/devs 2D + 3D/VR is a general Canvas Framework to create PWA (progressive Web Apps) for free, with simple, powerful JavaScript that lets everyone, from beginners to professionals, code creativity.

Hello developers, teachers, we celebrate ZIM 10 years! Made by https://ZIMjs.com/syno Dr. Abstract! You can use ZIM in different cases ( https://zimjs.com/history to have an overview started in 2014)

Why ZIM?

  • teachers who want to inspire kids 'computentional thinking' with real code :-) https://kids.ZIMjs.com
  • developers who want to create a colorful world of creativity tools and apps! https://devs.ZIMjs.com
  • making digital art with https://ZIMjs.com/art and NFT https://ZIMjs.com/nft
  • making apps and games https://ZIMjs.com/apps or PWA ZIM apps https://zimjs.com/zapps
  • ZIM 3D+VR launched sept.2023 of https://ZIMjs.com/015 with integration of ThreeJS
  • into an interactive interactive 3D world with 2D canvas apps with keyboard-arrows to navigate
  • into an interactive 3D world with touch on smartphone https://zimjs.com/015 for examples
  • into VR-glasses with the VR-button at the bottom of each ZIM-app (Z+APP = ZAPP)!

ZIM for developers

  • You can find info on https://devs.zimjs.com about how to integrate with ReactJS, VueJS,..
  • developers can find articles on https://ZIMjs.com/medium for more info.
  • Angry Birds Physics example on https://dev.to/zimlearn you can find for example to make in 15 minutes AngryBirds example https://dev.to/zimlearn/angry-birds-like-physics-game-in-15-minutes-with-zim-9al

ZIM for teachers and kids

  • Check the videos on https://ZIMjs.com/kids/teach or https://ZIMjs.com/curriculum
  • ZIM made for teachers the https://ZIMjs.com/editor where teacher can save for free ZIMapps and create lists to inspire kids,
  • The code editor for kids 'SLATE' https://ZIMjs.com/kids/slate ( https://ZIMjs.com/slate )

Programming with kids

To understand the ZIM code we created levels to understand programming

  • https://ZIMjs.org/kids
  • https://kids.ZIMjs.com
  • https://ZIMjs.com/snips
  • https://ZIMjs.com/bits

Examples of apps for kids

We make games for kids examples

  • https://ictgames.com
  • https://ictgames.com/mobilepage/nl
  • https://topmarks.co.uk
  • https://echalk.co.uk !

ZIM media

Please check the video's and teasers

  • https://ZIMjs.com/youtube and
  • https://ZIMjs.com/tiktok
  • https://ZIMjs.com/instagram for more info.

MIT License FOSS Free Open Source Software

ZIM is open source software license https://github.com/danzen/zimjs/blob/master/LICENSE.txt

 "elfconv: AOT compiler that translates Linux/AArch64 ELF binary to LLVM bitcode targeting WebAssembly" ( 2024 )

Sunday at 16:00, 30 minutes, K.4.201, K.4.201, LLVM devroom Masashi Yoshimura , slides , video

WebAssembly (WASM) enables us to use sandbox environments on edge devices and servers as well as browsers so that we can distribute platform-independent and secure applications. Previously, we could compile from several programming languages to WASM binary, but cannot generate them if we cannot use original source codes. In this talk, Masashi will introduce "elfconv", an AOT compiler that translates Linux/AArch64 ELF binary into LLVM bitcode targeting WASM. This compiler generates an LLVM bitcode that translates every instruction of the original ELF binary based on remill (library for lifting machine code to LLVM IR) and uses emscripten to generate the WASM binary. we can execute the generated WASM binary using Wasm Runtime (e.g. Wasmedge, Wasmtime). This talk will describe the technical details (methods to translate to LLVM bitcode and emulate Linux syscall targeting WASM) of elfconv and the performance of translating and future perspectives. Repository URL : https://github.com/yomaytk/elfconv

 "2023 in Chimera Linux" ( 2024 )

Sunday at 16:00, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Distributions devroom q66 , slides , video

Chimera Linux is a novel Linux distribution built around FreeBSD core tools and the LLVM toolchain. Since its initial launch in 2021, it has made a lot of progress and is now in alpha stage. The system can be deployed on a wide array of hardware and many people are using it as their desktop system; it works on x86_64, AArch64, POWER (little and big endian) as well as RISC-V and by now comes with thousands of packages.

While trying to be practical, Chimera is also highly hardened, partly thanks to the LLVM toolchain, rendering it immune to various security issues other distros are vulnerable to. It has transparent and robust infrastructure, ensuring smooth deployment of packages. We are also developing various new tooling that the whole ecosystem can benefit from, including the Turnstile session tracker. Service management is based around Dinit, a modern, supervising system; we maintain and create a variety of tooling around it, trying to break the existing status quo with systemd, while abandoning legacy approaches.

2023 has seen several major milestones, so I will focus on these, while also giving a short overview so that people unfamiliar with the system don't feel lost. I will also explain how our work benefits the entire Linux ecosystem, as well as beyond.

 "Searching the cosmic haystack with software radio: the breakthrough listen search for narrowband doppler drifting signals and combatting radio frequency interference" ( 2024 )

Sunday at 16:00, 25 minutes, UB2.147, UB2.147, Software-Defined Radio and Amateur Radio devroom Nathan West , video

turboseti served as the workhorse software and algorithm used to search for extraterrestrial intelligence over the the past decade. The Breakthrough Listen project has an updated pipeline for narrowband doppler drifting signals that learns from the last decade of data collection from the Green Bank Telescope, The Allen Telescope Array, Very Large Array, and Meerkat.

This talk will give an overview of the new and improved narrowband doppler drifting search pipeline created for the Breakthrough Listen project which searches for signs of extraterrestrial intelligence using radio telescopes. The new pipeline called BLISS (Breakthrough Listen Interesting Signal Search) includes a new C++-based device-aware ndarray library called BLAND (Breakthrough Listen Arrays with N-Dimensions) heavily utilizing dlpack for easy interaction with a large ecosystem of neighboring scientific computing tools used in software radio such as numpy, cupy, matplotlib, pytorch, tensorflow. We will show how this library works with a quick overview of "why ndarrays" and build on top of that to work through the whole pipeline from 100m dish to detected signals.

The current pipelines process hundreds of MHz of instantaneous bandwidth which is channelized in to various data products including down to channels of single-digit Hz. These fine channels are then used to search for narrowband doppler drifting signals. This search is sorting through the galactic haystack for needles which don't originate from earth. We'll highlight how we mitigate radio frequency interference, algorithmically search for signals with both single dish & arrays, what's new & corrected in the updated pipeline from historic SETI pipelines, and ways to join the SETI open source community.

In addition to the focus of narrowband doppler drifting signal search with device-aware ndarrays that provide absurd ecosystem compatibility, we'll show off polyphase channelization and signal processing with ndarrays that demonstrate how BLAND can be used generally for software radio.

 "Building Communities with Science!" ( 2024 )

Sunday at 16:00, 40 minutes, UA2.114 (Baudoux), UA2.114 (Baudoux), Community devroom Mike Nolan Stephen Jacobs , video

Many who work in community management and development can see the process as a bit of an art form. Working with communities requires lots of soft skills of communicating with many different types of stakeholders, making decisions that represent lots of people, and managing relationships. On top of all of this, systematically growing a community can be difficult. In this talk, I will discuss how Open@RIT has utilized evidence based methodologies to work with open source projects to not only better facilitate maintenance of open source projects, but also to systematically determine what resources (both human and technical) are needed in order to grow and maintain open source communities. You can expect to hear about methods for funding and executing this type of work, attitudes and initiatives that we have found most helpful, and stories from our own experience to help you guide yours.

 "Unveiling the Open Renewable Energy Systems (ORES) Initiative - Panel Discussion" ( 2024 )

Sunday at 16:00, 50 minutes, Janson, Janson, Main Track - Janson Dan Brown Vivien Barnier Tony Shannon Chris Xie Hilary Carter Karl Yang , video

Amidst the pressing need for sustainable energy, the open source community is taking a pioneering step. We're excited to introduce a groundbreaking initiative: the launch of a new community-led Working Group under LF Energy dedicated to Open Renewable Energy Systems. The goal of this Working Group is to develop an open source tech stack that enables deployment and management of renewable energy systems down to a household level, which could be used in off-grid settings, standalone, or connected to a decentralized mini or standard grid with bidirectional energy transmission capabilities. This panel discussion will explore the launch, objectives, and impact of this initiative on the future of sustainable energy and electrification approaches.

Key Topics: -Open Source and Sustainability: Dive into how open source principles can accelerate renewable energy adoption. -Working Group Objectives: Learn about the goals and contributions of the LF Energy Working Group for Open Renewable Energy Systems. -Architecting the Future: Discover the framework underpinning open renewable and decentralized energy systems for the democratization of energy supply. -Standards and Interoperability: Explore the role of standards and interoperability for renewable energy deployment. -Research and Innovation: Gain insights into research and innovation within the Working Group.

Panelists: Esteemed experts from renewable energy, access to energy, open source, research, and standards development will share their insights including: -Tony Shannon, Head of Digital Services, Office of Government Chief Information Officer at Department of Public Expenditure & Reform, Government of Ireland -Vivien Barnier, CEO, EnAccess Foundation -Hilary Carter, SVP Research, The Linux Foundation -Karl Yang, CEO, DEGCent -Chris Xie, Head of Open Source Strategy, Senior Director of Strategy and Business Development, Futurewei -Moderated by Dan Brown, Director of Communications, Linux Foundation Energy

 "Codes Bound by Ethics: The Rising Tide of Non-Free Software Licenses in AI ecosystems" ( 2024 )

Sunday at 16:00, 15 minutes, UB2.252A (Lameere), UB2.252A (Lameere), AI and Machine Learning devroom Niharika Singhal , slides , video

Ethical AI has emerged as a pivotal global discourse, reflecting the growing realization of its profound impact on societies worldwide. While social issues give rise to policy solutions and thus legislations, ethics are deeply rooted in societal values that differ greatly from one jurisdiction to another. In the last decade, diverse groups and individuals have departed from using exclusively Free Software licenses on their projects to developing new types of licensing solutions which prioritize “ethical” restrictions on how software should be further used and distributed. In this talk, I will delve into the ethical dimensions of the convergence of AI and Free Software, examining the challenges and opportunities in building responsible and ethical AI solutions within the free software ecosystem.

This talk firstly provides examples of some of the most common licensing models imposing “ethical” restrictions. It then examines how licensing models imposing additional behavior restrictions that supposedly call themselves “open” are in contravention of the definitions of Free Software and Open Source Software. We will further explore some predominant material harms emanating from the use of these restrictive licenses. Lastly, given the various technical & legal obstacles in using these restrictive licenses, I implore that the ethical compliance checks must fall within the purview of regulations and not software licenses.

Given the proliferation of ethical licenses in AI landscapes causing additional behavior restrictions, integration of Free Software, license compatibility and licensing compliance become more complex, affecting the whole ecosystem. This presentation seeks to increase awareness about this crucial issue, particularly as public funds are being allocated to AI projects that may, at times, employ restrictive licensing practices.

 "Deploy Your Next Python App with WebAssembly (Wasm): Smaller, Safer, Faster" ( 2024 )

Sunday at 16:00, 25 minutes, UD2.218A, UD2.218A, Python Devroom devroom Dan Phillips , slides , video

This talk will highlight the unique advantages of deploying Python applications using WebAssembly (Wasm) on the server. Moving away from conventional deployment strategies, Wasm introduces a groundbreaking approach, promising smaller, faster, and more secure server applications. We'll explore the integration of Python with server-side Wasm environments, focusing on the performance, security, and architectural innovations it offers.

Overview:

Introduction to WebAssembly: Providing an overview of Wasm, with a focus on its relevance and benefits for server-side deployment, especially for Python applications.

Python and Wasm - The How: We'll delve into how Python applications can be effectively deployed on servers using Wasm. This segment will demonstrate how Wasm leads to more compact and quicker server applications compared to traditional deployments with virtual machines or containers.

Enhanced Performance and Security: Discussing the notable improvements in startup times and robust security features that Wasm brings to Python server applications.

Server-Side Innovation with Wasm: A deeper look at how Wasm is transforming server-side programming, opening new avenues in server architecture and performance enhancements.

Practical Examples: Highlighting projects such as the CPython Wasm distribution and my own open-source project, wasm-vfs, which showcase the practical application of Python and Wasm on the server side.

Target Audience:

Server-side developers, Python enthusiasts, and IT professionals interested in cutting-edge deployment and infrastructure technologies.

This session aims to provide an insightful look into how WebAssembly is changing the server-side application deployment landscape, particularly for Python. Attendees will learn about the more efficient, secure, and innovative approach Wasm offers compared to traditional deployment methods.

 "Building a Community-Owned Data Confidence Fabric With Distributed Ledgers and Smart Contracts" ( 2024 )

Sunday at 16:00, 50 minutes, K.1.105 (La Fontaine), K.1.105 (La Fontaine), Main Track - K Building Tarek Zaarour Seán Óg Murphy , video

Explore the Transformative Power of Community-Driven Trust and Secure Data Monetization

In an era when data flows seamlessly across diverse decentralized systems and organizations, establishing trust and confidence in the data becomes paramount. Data from IoT devices, distributed applications, and edge servers cross multiple boundaries: trust zones, firewalls, networks, stakeholders, organizations, and geographies. No single entity in such an ecosystem can own the trust.

Project Alvarium is a Linux Foundation (LF) Edge project which aims to build an open-source framework and SDK for creating trust fabrics which deliver data from devices to applications with measurable confidence. Unlike a one-size-fits-all solution, the Alvarium framework empowers communities to construct their unique fabric with preferred technologies, cultivating a rich ecosystem of interoperable trust fabrics.

This presentation explores the transformative potential of a community-owned data confidence fabric (DCF) and trustworthy monetization of data using an open-source distributed ledger, Hedera network, and smart contracts. By embracing open-source principles, our solution not only ensures accessibility, but also encourages a diverse community of contributors to actively participate in refining and expanding the framework. This collaborative approach enhances the solution's robustness and aligns with our commitment to transparency, making the technology more trustworthy and widely adoptable in the broader open-source community. Topics include:

  • Insights from the Alvarium project
  • Demonstration of a DCF, both its construction and operation
  • How a decentralized approach to data confidence can empower individuals and organizations, promoting data sovereignty and mitigating risks associated with centralized control
  • Advantages and contributions the proposed framework offers to the open-source community, ranging from enhanced security and privacy to collaborative innovation

Part of the work being presented and demonstrated is based on a joint effort of multiple academic and industrial partners from the European Commission-funded CLEVER consortium. CLEVER is a research project which among other objectives aims to aid the adoption of open access and systematic use of open and standard interfaces. By engaging with the principles of open-source development, this presentation hopes to inspire FOSDEM’24 attendees to envision and actively participate in the creation of a community-owned DCF framework, fortifying the foundation of a more trustworthy and collaborative digital landscape.

 "Sharing and reusing SBOMs with the OSSelot curation database" ( 2024 )

Sunday at 16:00, 30 minutes, K.4.401, K.4.401, Software Bill of Materials devroom Caren Kresse , slides , video

A major advantage of FOSS is the possibility to reuse existing components. Thus, it seems obvious to adopt the same strategy for FOSS compliance material in those areas where the required efforts are identical for all users of the software. With standard formats, such as SPDX, it is possible to share the results of data curation with the community, and thereby reduce the individual effort. The OSSelot project has set itself precisely this task: Creating a publicly available database of curated compliance materials for frequently used FOSS components including SPDX reports for each component. In order to foster usability of the data and external contributions, aspects such as trustworthiness, liability and integration of the data into existing tools must also be considered.

This presentation will demonstrate the stringent curation and review process of the OSSelot data that ensures that all internal and external contributions meet the same high quality standard. It will also exemplify how the OSSelot resources can be used to fulfill FOSS license obligations. To increase the project’s practical relevance, a discussion is encouraged on how the data can be used with existing tools and what adaptions are required to do so.

OSSelot project page: https://www.osselot.org/ OSSelot git repo: https://github.com/Open-Source-Compliance/package-analysis

 "FFmpeg VVC Decoder" ( 2024 )

Sunday at 16:00, 25 minutes, UB4.132, UB4.132, Open Media devroom Frank Plowman , slides , video

An introduction to FFmpeg's new native VVC decoder, including VVC's new coding tools, its thread model and performance comparisons.

 "Build Your Own PostgreSQL DBA Out Of Available MySQL DBAs" ( 2024 )

Sunday at 16:00, 50 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), PostgreSQL devroom Dave Stokes , video

Historically it has been able to find MySQL DBAs than their PostgreSQL counterparts. The growth in PostgreSQL has increased the demand for new DBAs. So why not convert some MySQL DBAs into competent PostgreSQL DBAs?

This session covers where you need to concentrate on guiding this conversion. There are many similarities between the two RDMS but this session covers where the 'pinch points' are that will require guidance. Starting with setting up a basic instance for the conversion candidates with a familiar-ish training database, we will proceed into differences in MVCC, Indexing, TOAST, and other divergent areas.

You can very quickly have a new PostgreSQL DBA that you have built yourself.

 "Firefox, Android, and Cross-browser WebExtensions in 2024" ( 2024 )

Sunday at 16:05, 25 minutes, H.1302 (Depage), H.1302 (Depage), Mozilla devroom Simeon Vincent Rob Wu , video

Browser extensions allow you to customize your web browser to tweak your web browser to look and behave how you want. In this talk we will explore building extensions that work across web browsers and operating systems and ways to overcome challenges caused by cross-browser differences.

As we walk through extension code samples, we will discuss the motivations for our design decisions and provide guidance for building robust, cross-browser, cross-platform extensions. We cover several aspects of reliable extension design including background scripts, user interaction, host permissions and manifest version 2/3 in Firefox and Chrome. After this talk, you will be able to build browser extensions for Firefox, Firefox for Android, and Chrome.

 "Building Cross-platform GUI apps with ease (and Go) - desktop, mobile and beyond!" ( 2024 )

Sunday at 16:05, 25 minutes, K.3.201, K.3.201, Graphics devroom Andrew Williams , slides , video

Truly cross-platform apps without runtime dependencies or a web virtual machine has long proved a challenge. In the world of modern tooling at so many levels it is important that graphical user interface is not left behind - and that is why Fyne was created. As Go's most popular GUI toolkit it has never been easier to build native apps that work on any platform!

This talk will look at getting started through building first complete app, and show how it will run on desktop and mobile devices. It will also introduce advanced tooling and low-code options available for the ecosystem to support wider adoption in this exciting area of development.

 "Switching the FOSDEM conference management system to pretalx" ( 2024 )

Sunday at 16:05, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Johan Van de Wauw , slides , video

For FOSDEM 2011 until 2023, pentabarf was used as the conference management system for FOSDEM. Unfortunately development of pentabarf stopped more or less the year before that which meant that FOSDEM was run on hardly maintained software for many years.

Different attempts at switching to another conference management system failed, but for the 2024 edition we decided to switch to pretalx.

But the scale of FOSDEM is quite different from other conferences which means that adjustments had to be made: not many conferences have 60 tracks maintained by different people and over 1700 submitted talks.

This lightning talk will highlight how the system works, custom changes that were made and how I ended up spamming some FOSDEM speakers. But also things we would like to change for 2025 and we loved about pentabarf and how you can help. Also an invitation for users to join and give some feedback during the talk or afterwards in the hallways.

 "Digital Services Interoperability: Workshop - The technical challenges of interoperability requirements in EU law" ( 2024 )

Sunday at 16:05, 50 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Simon Phipps Amandine Le Pape , video

This devroom is not like others! It is to develop future EU policy, with the help of open source code!

We seek to stimulate a genuine and open discussion that will become the fuel for good legislation in the future. We are building workshops where accepted participants will be grouped together with EU policy experts for a journey from the current state to a future state in each topic area. We aim to produce a report in each policy area arising from each workshop.

During this workshop experts from the European Commission will try to get inputs from the open source community on how to efficiently build interoperability between digital services, required by EU law, with the help of open source software and OSS businesses and developers.

Our audience will then be involved in a brainstorming session on the reality of open source and its capabilities to build interoperability between digital services. The session is led by Amandine le Pape, and will include the rapporteur feedback for the overall workshop from Simon Phipps.

 "A journey documenting the Sanco 8003 computer" ( 2024 )

Sunday at 16:10, 25 minutes, UB5.230, UB5.230, Retrocomputing devroom giomba giuliof , slides , video

A lot of retrocomputers have been documented by inspecting their boards, disassembling their ROMs, reverse engineering their internals, and documentation is widely available online. But the Sanco 8003 is a French/Japanese computer for which we found no documentation at all, as of 2023: nothing about the hardware, nothing about the software, just a few hints that it has a Z80 and can run the famous CP/M operating system. There are some amateurs here and there, but we virtually found no "hard scene" for this computer.

In this talk, we are going to describe our journey in documenting this computer. We will show how we tore it apart, how we dumped the ROMs, how we leveraged some self-built custom hardware tools, how we followed the traces on the circuit board, how we understood the 74xx logic gates, how we disassembled the ROM and patched it to run our custom bootloader, how we experimented with sideloaded assembly to confirm (or deny) the expectations we thought of by looking at the reconstructed schematics, and, eventually, how we wrote our own emulator.

Everything we do is freely accessible and publicly available as a git repository, so you can contribute too! There is a lot of work that still needs to be done, so any contribution is welcome!

 "Empowering FreeIPA: a dive into the modern WebUI" ( 2024 )

Sunday at 16:10, 25 minutes, K.3.401, K.3.401, Identity and Access Management devroom Francisco Triviño García Carla Martínez Poveda , slides , video

The FreeIPA is considered one of the most popular Open Source integrated Identity and Authentication manager solution. As a tool that has been in the Linux ecosystem for many years, its graphic environment and its functionality to effectively manage the IPA operations through the WebUI have suffered the ravages of age… until now.

Join us for a comprehensive overview of the modernized WebUI and its development process. We will speak about, not only the motivations behind this modernization, but also explore the new implementation approach using React + PatternFly5 + Cypress, the design principles, and its enhanced features. Because a change of look has never had so much to talk about!

 "[StructuredEmail] Structured Vacation Notices and Structured Email for Roundcube" ( 2024 )

Sunday at 16:10, 15 minutes, H.2213, H.2213, Modern Email devroom Hans-Jörg Happel , video

Email is a flexible and extensible technology. Structured email is the approach to allow for machine-readable content in email messages, which helps users to process emails more efficiently. It's currently also subject of a standardization initiative in the IETF's SML working group.

The demo will show a plugin for Roundcube Webmail which allows users to receive and process structured email and also to compose email messages sent to others. It will also highlight structured vacation notices as one particular use case. Those build upon the Sieve vacation extension and the corresponding Roundcube plugin.

The structured email Roundcube plugin is partly funded by NLnet (https://nlnet.nl/project/StructuredEmail/)

 "Sharing parametric models as web apps with replicad" ( 2024 )

Sunday at 16:10, 20 minutes, H.1308 (Rolin), H.1308 (Rolin), Open Hardware and CAD/CAM devroom Steve Genoud , slides , video

Sometimes sharing a model as an STL is perfect. Sometimes you want to go parametric with FreeCAD and offer the customizability that your project needs. You can go even further and give out some code with OpenSCAD or CadQuery.

Replicad is a library for web developers to build models as web apps.

In this presentation I will explain why I thought I needed to build another CAD library based on the web!

 "Reproducible builds for confidential computing: Why remote attestation is worthless without it" ( 2024 )

Sunday at 16:15, 20 minutes, H.2214, H.2214, Confidential Computing devroom Malte Poll Paul Meyer , slides , video

A key component of Confidential Computing is the validation of TCB measurements using remote attestation. Validating these measurements requires a set of trusted reference values. But where do these opaque values come from? Today, they are often provided by a third party, without mechanisms for auditing the trustworthiness or origin of reference values. We want to make CC offerings auditable, allowing end users to read the source code, reproduce binary artifacts, generate reference values from the artifacts and verify the deployed system (using remote attestation). Every part of the TCB needs to be open source and reproducible. We will cover the status quo of how reference values are used in CC. We show what the main difficulties and sources of non-determinism are. Based on a minimal open source example, we explain how we build fully reproducible OS images with mkosi and nix - all the way from source code in Git to the reference values for remote attestation. The presented code is the base for images used in both Constellation and the Confidential Containers project.

 "Moving a step closer to defining Open Source AI" ( 2024 )

Sunday at 16:15, 30 minutes, UB2.252A (Lameere), UB2.252A (Lameere), AI and Machine Learning devroom Stefano Maffulli , slides , video

A fast-paced workshop where you'll be asked to co-design a piece of the Open Source AI Definition. The Open Source Initiative is inviting developers of AI and users to find the principles of Open Source applied to AI systems.

Finding an agreement on what constitutes Open Source AI is the most important challenge facing the free software (also known as open source) movement. European regulation already started referring to "free and open source AI", large economic actors like Meta are calling their systems "open source" despite the fact that their license contain restrictions on fields-of-use (among other things) and the landscape is evolving so quickly that if we don't keep up, we'll be irrelevant.

The session will have a short introduction to the project, which started mid-2023, followed by a summary of the most current draft of the Definition. The bulk of the session will be an assignment for the audience: to review the draft Definition and provide comments. The responses will be used as feedback to release a new draft.

 "Roundtable Round-Off on FOSS CMS Collaboration" ( 2024 )

Sunday at 16:15, 45 minutes, K.4.601, K.4.601, Designing Futures of FOSS Content Management with the Open Website Alliance devroom Crystal Dionysopoulos Mathias Bolt Lesniak Owen Lansbury Josepha Haden , video

Drupal, Joomla, TYPO3, WordPress, and other FOSS CMSs join in a contribute to the day's final words about FOSS CMS collaboration and the future of open-source content management.

While our differences make us unique in a competitive marketplace, how do we collaborate to get stronger together?

 "Packet, where are you?: Track in the stack with pwru" ( 2024 )

Sunday at 16:20, 30 minutes, UB5.132, UB5.132, Kernel devroom Quentin Monnet , slides , video

So you're trying to debug these packet drops in your network datapath. You ran tcpdump, but your packets do reach the interface and the command isn't helpful? You have a tracing tool, but you don't know where to look for in the Linux networking stack? You have a hunch where to look at, but can't filter efficiently to find your packet? Look no further, pwru is the tool that you need!

Relying on the BTF information for the kernel, pwru can attach eBPF probes to all functions in the networking stack that take a socket buffer (skb) in their arguments, and provides a quick view of the packet's trajectory. It supports pcap filters for filtering packets, and can display additional context information such as the call stack for the probed functions or a dump of the whole socket buffer.

This introduction to pwru covers the functioning of the tool, its basic usage, and highlights a couple of situations where Cilium developers have used pwru to quickly debug datapath issues.

 "TrenchBoot - project status update" ( 2024 )

Sunday at 16:20, 30 minutes, AW1.126, AW1.126, Open Source Firmware, BMC and Bootloader devroom Maciej Pijanowski Jagannathan Raman , slides , video

TrenchBoot is an open source project led by 3mdeb, Apertus Solutions, and Oracle. It aims at the security and integrity of the boot process by leveraging advanced silicon security features, like Intel Trusted Execution Technology (TXT) and AMD Secure Startup. It integrates with open source projects like GRUB2, Xen, and Linux, to perform a measured launch of the operating system software, also called Dynamic Root of Trust for Measurement (DRTM).

The presentation will provide an overview of the project's current status, emphasizing two key developments: the improved support for AMD platforms, a contribution from Oracle and the practical application of the TrenchBoot project in QubesOS Anti Evil Maid (AEM), a contribution by 3mdeb.

 "[StructuredEmail] When is my flight? - Semantic data extraction in KMail and Nextcloud Mail" ( 2024 )

Sunday at 16:25, 15 minutes, H.2213, H.2213, Modern Email devroom Volker Krause , slides , video

Finding your travel details in booking emails can be difficult sometimes, especially when those are ad-infested HTML monstrosities. It would be much more convenient if your email client could just extract and display the relevant information automatically, and offer higher-level actions for those, such as adding entries to your calendar or feeding data into dedicated apps.

In theory this use-case is covered by semantic annotations using the schema.org ontology that can be embedded in HTML content and thus also in emails. In theory.

For KDE's travel assistant app Itinerary we have built a semantic data extractor specialized on travel documents and which is embedded in KMail and Nextcloud Mail. In this talk we'll look at how that works and how well the above mentioned theory fares in practice.

 "FOSDEM infrastructure review" ( 2024 )

Sunday at 16:25, 20 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning talks Richard "RichiH" Hartmann Sebastian Schubert , slides , video

Informational and fun.

 "Netdata: Open Source, Distributed Observability Pipeline - Journey and Challenges." ( 2024 )

Sunday at 16:30, 25 minutes, UA2.220 (Guillissen), UA2.220 (Guillissen), Monitoring & Observability devroom Costa Tsaousis , slides , video

Netdata is a powerful open-source, distributed observability pipeline designed to provide higher fidelity, easier scalability, and a lower cost of ownership compared to traditional monitoring solutions. This presentation will offer an in-depth overview of the journey we've undertaken in building Netdata, highlighting the challenges we've faced and the innovative solutions we've developed to address them.

In this presentation, we will delve into the history of Netdata, starting from its inception. We'll discuss the initial goals of creating a monitoring tool that could offer high-resolution metrics, auto-detection of metrics, and real-time visualization, all with minimal configuration required. We'll also explore how Netdata garnered rapid attention and support from the open-source community.

The presentation will then shift focus to the evolution of Netdata, including the development of:

  • a very efficient database engine (Netdata vs Prometheus: 35% less cpu utilization, 49% less memory, 12% less bandwidth, 98% less disk I/O, and 75% less size on disk for the same dataset),
  • a powerful alerting engine that uses statistical analysis, machine learning and templates for fully automated alerts
  • a streaming protocol supporting streaming of live data, replication of metrics, and support for routing interactive queries between Netdata agents

Next, we'll discuss Netdata's transition into a distributed monitoring solution and the decision to seek funding to build a sustainable company around the open-source project. We'll emphasize the core concept of the Netdata SaaS model, which keeps monitoring features open-source while offering additional benefits like better integration, RBAC, and support through the SaaS platform.

The presentation will showcase how Netdata's architecture allows for distributed monitoring, vertical and horizontal scalability, and real-time visibility across infrastructure. We'll discuss the challenges faced and overcome, such as the creation of a custom database engine, the streaming protocol as a fundamental element of the distributed nature of Netdata, the introduction of unsupervised anomaly detection, the implementation of distributed queries, the need for clarity and transparency during visualization and the user interface concepts we used to avoid providing a query editor to users.

We'll also touch upon the challenges that remain, such as the use of WebRTC for browser-to-agent communication, the need to standardize metric naming conventions, the development of an expert system for metric interpretation, the support of infrastructure-level alerts in a distributed fashion and standardizing user experiences.

By the end of this presentation, the audience will gain a deep understanding of Netdata's evolution, its unique features, and the challenges and solutions encountered along the way. They will also take away insights into building and maintaining large-scale open-source projects, as well as actionable ideas for improving their own monitoring and observability solutions.

 "Homebrew's Evolution" ( 2024 )

Sunday at 16:30, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Distributions devroom Mike McQuaid , slides , video

Homebrew, the macOS (and Linux) package manager, has had a big year. We've moved away from Git-based updates for most of our packages, moved our analytics to InfluxDB and made many performance improvements. In this talk, I'll look back at the last year of Homebrew and forwards to what we expect to build in the next year.

 "SIDLOC: Spacecraft Identification and Localization system" ( 2024 )

Sunday at 16:30, 25 minutes, UB2.147, UB2.147, Software-Defined Radio and Amateur Radio devroom Manolis Surligas , slides , video

SIDLOC (Spacecraft Identification and Localization) is a proposed standard for satellite and spacecraft identification and localization. It is developed as an ESA funded ARTES activity by Libre Space Foundation. The goal of the SIDLOC system is to provide reliable spacecraft identification and orbit determination, especially early after the deployment.

The SIDLOC system relies on a reduced size autonomous transmitter that requires minimal integration and area on the carrier spacecraft. The ground segment of the SIDLOC system utilizes the existing SatNOGS network and the UHF band to perform the signal demodulation and identification. The SIDLOC system uses DSSS (Direct Sequence Spread Spectrum) PSK modulated signals with an effective bitrate of ~50 bits/s. Through an accurate Doppler frequency shift estimation mechanism, the SIDLOC system provides orbit determination capabilities, enabling open and independent SSA (Space Situational Awareness) activities.

 "How I've Built a Web Frontend for a Federated Communication Tool with Brython" ( 2024 )

Sunday at 16:30, 25 minutes, UD2.218A, UD2.218A, Python Devroom devroom Jérôme Poisson (Goffi) , slides , video

Libervia is a versatile XMPP client with multiple frontends, developed using Python. The web frontend, inclusive of browser code, is uniquely crafted in Python, leveraging Brython. In this talk, I will delve into Brython's essentials – a Python implementation in JavaScript. I'll discuss the rationale behind choosing Brython and demonstrate its application in enabling functionalities like instant messaging, blogging/social networking, video calling, and so on. Utilizing Brython facilitates code reuse across backend and frontend, eliminating the need for language and context switching. This approach significantly enhances overall development efficiency. Furthermore, employing Python in the browser, as enabled by Brython, introduces exciting possibilities. It simplifies the development process and broadens the scope for innovative features and interactions within web applications.

 "Edit video/audio with or without Vim" ( 2024 )

Sunday at 16:30, 5 minutes, UB4.132, UB4.132, Open Media devroom Wang Kang Qi Xiao Xianjun Jiao , slides , video

I used to edit my own podcast with COTS DAW software. Regularly, 1 hour of footage takes 6 hours' editing just to remove space, filling words, mumbles.

After that, I am exhausted and couldn't do any creative arrangement.

It's nearly impossible to select quotes from different speaker in different time and combine into 1 package as a independent creator in spear time, without a team.

I'll share my effort to take back control of video creating, editing, and note-taking, with or without Vim.

During the last two years, I wrote myself a series of handy scripts. It works with or without Vim. I cut my podcast with it, and translated podcasts into captioned videos. It's highly efficient.

Yes, there are commercial products like Descript, Adobe Podcast, AVID Media Composer on the market. But it's not open nor free.

Basically I defined a file format. It's basically a spreadsheet in plain text, tsv. It can be converted to and back from srt subtitle. After that, you can remove it, shuffle it, combine it or repeat it.

EDL 00:00:03,123 00:01:03,500 | clipname | subtitles, maybe description with AI 

To prove the simplicity, one can convert srt to tsv in a single line of bash:

cat some.srt | sed -n -r '1{/^$/n;};/^[0-9]+$/{n; s/ --> /\t/; s/$/\t| _CLIPNAME_ |\t/; N; s/\n//; h; d;}; /^$/! { H; $!d;}; x; s/\n/\\N/g; s/^/EDL\t/;p' > some.tsv

EDL stands for 'editorial decision list'. Those three letters are very useful with 'grep'. Yes. You can grep it! For example, the following line invokes ffmpeg and generates a video.

cat recording_1990.tsv recording_2023.tsv | grep -c 3 Linux | tsv2roughcut

Each line without 'EDL' in the beginning, will be ignored. So you get comments now. The clipname can be audio, video or still picture.

You may also pipe it into tsv2fcpxml, and import into professional editing software for fine-tuning, or delegate to professional editors. So you don't have to work late side by side with them.

You may even add B-roll at the head of the subtitle, to create a BBC style voice over video.

Furthermore, with this plugin in Vim, you can preview video/audio with mpv player, cut/join lines, add comments and fold/unfold with Markdown/Org mode style headers.

(This methodology originated from BBC is called 'Paper edit'. It's battlefield proven since 1970s and can be very efficient in news-making or news-faking.)

Try it. Fully open sourced. https://github.com/scateu/tsv_edl.vim

Chinese project name: 糙音速剪辑

 "Are Project Tests Enough for Automated Dependency Updates? A Case Study of 262 Java Projects on Github" ( 2024 )

Sunday at 16:30, 30 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Testing and Continuous delivery devroom Joseph Hejderup , slides , video

Updating a new version of a third-party library is traditionally not a trivial task. Github's Dependabot, Renovate, and similar services automatically create a new branch with the latest version of a library dependency and then execute project tests to detect any breaking changes. While such services are gaining a lot of traction, no study looks into whether test suites of average GitHub Projects have sufficient coverage and are adequate to detect incompatible library changes.

To better understand the state of test coverage and effectiveness of project test suites for detecting incompatible library changes in open-source projects, I will, in this talk, present a study comprising 262 Java projects on GitHub. By artificially injecting faulty changes in library dependencies, we identify that test suites, on average, have coverage of 58% of their direct and 20% of their transitive dependencies. The average test suite effectively detects 47% of faulty updates in direct dependencies and 35% in transitive dependencies. Based on our findings, I will explain recommendations for developers and toolmakers that could improve the reliability and expectations of automated dependency updating.

 "The Case For Inventoring Corresponding Source in SBOMs" ( 2024 )

Sunday at 16:30, 30 minutes, K.4.401, K.4.401, Software Bill of Materials devroom Bradley M. Kuhn , video

SBOMs focus basically exclusively on binary distributions. For years, copyleft activists like me have argued vehemently that they are non-functional in addressing the primary license compliance and software security problem that plagues FOSS distributions: an inability to clearly identify, and assure that all in the supply chain receive, the complete, corresponding source for the binaries in question.

Due to the heavy influence and control on SBOM dialogue asserted by proprietary software companies and their business model proponents, proposals to require source code disclosures as a necessary part of the supply chain have typically been rejected. In short, SBOM focus has been to ease the ingestion of FOSS into proprietary supply chains, rather than assuring that downstream users are afforded the same rights to examination, modification, and reinstallation of FOSS that their upstreams enjoyed. Most will argue, perhaps correctly, that the ship of universal software freedom has sailed, the industry doesn't want to be on it, so why continue to debate that question in the context of SBOMs and (the mostly proprietary) software supply chains in our world today.

This talk, then, proposes a simple compromise. Given the non-viability of convincing proprietary software companies that control the supply chains to actually give software rights and freedom to their users and join the Open Source world, what (this talk considers) is a requirement for SBOMs that might improve the situation for downstream users with regard to complete, corresponding source code provisioning, but would not require companies to participate in actual open source releases?

I will propose in this talk a thought experiment of how we might add key information about the supply chain of the source code that produced the binaries into SBOMs without requiring actual source-code disclosure. While such an addition would be woefully inadequate to assist in compliance with copyleft licenses, it would (a) marginally improve the forensic data available to those trapped at the end of the supply chain desperate to, for example, determine whether they are vulnerable to the latest security bug and (b) provide at least a basic breadcrumbs for those who are testing copyleft compliance of products at the end of the supply chain.

 "Testing in a Box: Streamlining Embedded Systems Testing" ( 2024 )

Sunday at 16:30, 30 minutes, H.1308 (Rolin), H.1308 (Rolin), Open Hardware and CAD/CAM devroom Sam Bishop Will Salmon Mudit Sharma , slides , video

  • We have developed open source hardware to make the job of setting up and running automated testing against embedded devices as quick and simple as possible.

  • We invariably need a number of connections to hardware devices for both development and automated testing which ends up with a birds nest of wires, dongles and peripherals, we put our minds to putting all of these together in one box containing a SBC, an open source USB switch, CAN interface and an open source I/O board which includes a USB hub, serial connection, GPIO switches, optocouplers and HID emulation.

  • This talk is about the concept, design and implementation of the Testing in a Box project along with some of the use cases that we're already using it for.

 "The state of the Matrix Rust SDK in 2023" ( 2024 )

Sunday at 16:30, 30 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), Matrix devroom Benjamin Bouvier , slides , video

The Matrix software development kit (SDK) written in Rust has been used in many applications, including but not limited to: Fractal, iamb, the Element X mobile applications, and even some bits of Element Web!

Better support for sliding sync, more robust cryptography, higher-level and more convenient primitives for writing clients, bindings for other non-rusty languages, support for OpenID Connect, and much more… In this presentation we'll talk about what has happened in the Rust SDK last year, and what we'd like to see this incoming year.

 "Map LLVM values to corresponding source-level expressions" ( 2024 )

Sunday at 16:35, 25 minutes, K.4.201, K.4.201, LLVM devroom Shivam Kunwar , slides , video

An interface which takes an LLVM value at any point in the LLVM transformations pipeline and returns a string corresponding to the equivalent source-level expression. We are especially interested in using this interface to map addresses used in load/store instructions to equivalent source-level memory references. The primary objective of this project is to enhance the effectiveness of compiler-generated remarks and analysis reports for code optimization. These messages, while often comprehensive, lack direct connections to the corresponding source-level expressions. The goal is to bridge this gap by utilizing LLVM's intrinsic functions, which establish mappings between LLVM program entities and source-level expressions. The project specifically focuses on utilizing these intrinsic functions to generate or derive source expressions from LLVM values. This functionality is particularly important for enhancing memory access optimizations, including the reporting of memory access dependences that hinder vectorization.

 "The FIM (Fbi IMproved) Universal Image Viewer, in a Nutshell" ( 2024 )

Sunday at 16:35, 25 minutes, K.3.201, K.3.201, Graphics devroom Michele Martone , slides , video

FIM (Fbi IMproved) is a "swiss army-knife" image viewer. It runs under the Linux Framebuffer, under X11 (SDL and now also GDK), or in text terminals (ASCII Art, also coloured), with a consistent interface and with many powerful features. FIM is known among enthusiasts of Raspberry Pi and other minimalistic computing devices, but also among VIM/Emacs users seeking functionality, configurability, and flexibility behind a minimalistic interface styled after VIM and Emacs. This short talk introduces FIM, its philosophy, and how the GTK graphical mode makes it more user-friendly.

 "POSIX identities out of OAuth2 identity providers: how to redesign SSSD and Samba?" ( 2024 )

Sunday at 16:35, 25 minutes, K.3.401, K.3.401, Identity and Access Management devroom Alexander Bokovoy Andreas Schneider , slides , video

With a move to cloud-based hosting of the application servers, a typical application is not a member of the same corporate IT environment anymore. Application servers often use OAuth 2.0 protocol flows to identify their users. Identity Providers (IdPs) provide OAuth 2.0 endpoints to applications and pull over the tasks of authenticating and authorizing users’ access to application resources. They become a central point of interaction between enterprise domains, if those still in use in the organization, and applications. This approach allows to integrate both in-house applications and cloud-based SaaS applications provided by third parties.

The separation of enterprise IT architecture and an enterprise domain structure, however, leads to a larger issue. While in the past management of the application servers was part of the enterprise domain services (Active Directory, RHEL IdM, …) where regular users and application developers were present at the same time. Maintaining common access to these servers was easy: since the application server is enrolled into the domain, it can consume domain identities. Not anymore: there is no such guarantee to have both application servers and application developers belonging to the same domain. Effectively, there is a need to access information that is only available in a federated way: through some broker, like IdP. On top of that, the broker might not be able to pass through a certain type of information that might simply not exist on the other side. For example, for Linux servers working together as a compute capacity, it is crucial to have a uniform view on POSIX information about users and groups. But an IdP might simply lack this information because there might be no need for it at the place where a user account is defined.

This talk aims to define a common set of requirements and approaches to represent a secure POSIX identity management integration with OAuth 2.0-based identity providers. Aside from requirements towards client software on the Linux platform, we aim to define possible requirements towards other components of the integration, based on our experience developing Samba, SSSD, and FreeIPA for more than 25 years.

 "S2S: PeerTube instance dedicated to Sign Language" ( 2024 )

Sunday at 16:35, 5 minutes, UB4.132, UB4.132, Open Media devroom Seejayer s2s , video

S2S is an instance on PeerTube specifically designed for Sign Language. The S2S project aims to aggregate existing videos in Sign Language. Its objective is to encourage individuals who regularly upload videos accessible in Sign Language on various platforms to also share them on https://peertube.s2s.video. S2S primarily seeks new videos to enhance its visibility. Your support involves persuading associations already creating content in Sign Language to contribute to the platform. Account creation for uploading content is free; please contact the administrator via the website's contact form at https://peertube.s2s.video/about/contact.

 "Controlling a 6 degree Robot Arm using a 48K ZX Spectrum" ( 2024 )

Sunday at 16:35, 25 minutes, UB5.230, UB5.230, Retrocomputing devroom Rui Martins , video

Controlling a Robot Arm, requires some form of interface. In this case, the Lab-Volt Robot arm used implements a private protocol over RS232 serial communication. Hence a new hardware interface board was designed and built to be able to communicate by RS232, which included a "driver" layer (in assembly) that was properly integrated with the Spectrum ROM advanced Channels/Streams concept/feature, allowing the RS232 to be used transparently from BASIC language. The Robot protocol was reverse engineered and a BASIC application implemented to follow the protocol to allow movement of the Robot Arm. A new Module was also added to the robot, to provide a pneumatic end effector that provides for faster interaction with objects with a flat surface were suction can work effectively.

 "Integrating LLMs: Intelligence is tricky" ( 2024 )

Sunday at 16:35, 15 minutes, H.1302 (Depage), H.1302 (Depage), Mozilla devroom Gabriel , slides , video

Large Language Models (LLMs) provide a very compelling option when adding new and interesting features to any code base. But there remain plenty of challenges when trying to integrate (unreliable) intelligence in any code base, especially less popular models. In this talk, we’ll highlight what we learned and how we aim to enable open source knowledge sharing surrounding LLMs.

 "Increasing Trust and Preserving Privacy: Advancing Remote Attestation" ( 2024 )

Sunday at 16:40, 20 minutes, H.2214, H.2214, Confidential Computing devroom Ionut Mihalcea Thomas Fossati , slides , video

The growing trend towards confidential computing has presented a significant challenge: making remote attestation, a crucial technology for establishing trust in confidential workloads, easily accessible to application developers. Ideally, leveraging the added transparency and security guarantees of attestation as an authentication mechanism should be simple. However, the current ecosystem often requires engineers to integrate remote attestation at the application layer of the network stack. This task is not only burdensome, diverting attention from core business logic, but also poses privacy risks. Developers are compelled to navigate a complex maze of security protocols, with the ever-present danger of accidentally exposing sensitive information about the devices running these workloads.

Developing secure and easy-to-use building blocks requires a collaborative effort between the open-source and standards communities. The IETF is working on various specifications, which are being complemented by prototypes and formal verification of innovative features. Several Internet protocols, such as TLS, OAuth, ACME, Netconf, and CSR/EST, are already incorporating attestation, and others will follow. A key focus of our work is to integrate privacy-preserving techniques that can mitigate the risks inherent in remote attestation, ensuring that this crucial technology can be utilized in a manner that is both user-friendly and privacy-conscious.

In this presentation, we aim to provide a comprehensive overview of the current standardization and open-source implementation initiatives. The goal is to make it easier for the broader community to access and engage in this new development, which is crucial for the advancement of the remote attestation infrastructure in general and the utilization of confidential computing in particular.

 "5G-MAG Reference Tools: Bringing 5G Media to Life" ( 2024 )

Sunday at 16:40, 5 minutes, UB4.132, UB4.132, Open Media devroom Jordi Joan Gimenez , slides , video

5G-MAG (see www.5g-mag.com) is a non-for-profit international cross-industry association fostering collaboration between media and telecoms. The 5G-MAG Reference Tools Development Programme (see developer.5g-mag.com) has established a growing community of developers currently working on bringing 5G Media specifications to life.

With projects around 5G Media Streaming, 5G Broadcast, Multicast/Broadcast, Transport protocols or eXtended Reality (XR), developers are able to play with technology, build prototypes and demos or develop apps while working closely with relevant SDOs to improve the quality of both specs and code.

These efforts established within 5G-MAG are fully open to the community of developers, academia and the wider industry. See github.com/5G-MAG/Getting-Started/wiki for a complete list of projects (also on the resources attached to this entry).

 "[Ending] It's all about the email. Ugh, what?" ( 2024 )

Sunday at 16:45, 15 minutes, H.2213, H.2213, Modern Email devroom Bogomil Shopov - Бого , slides , video

The session's goal is to enlarge the horizons of the people building the open-source way of email. It might contain traces of heavy metal because I use this music to inspire people.

I will ignore our current technical limitations and build you a picture of a reality that could happen in the not-so-far feature with the email as the main protagonist.

Let me provoke you with some crazy and not-so-crazy ideas on how I, as an everyday consumer, see the future of email.

  • I imagine a world where my email is my identity, and I can connect with my wallet to manage my digital world.
  • I wish my email could automate things for me, such as auto-replying to usual requests without me setting it up.
  • I need my email to be secure, encrypted, and in my pocket device.
  • I want to communicate by email with my (AI) overlord.
  • I want to receive only positive emails when I am sad.
  • I want my email to be intelligent and to propose a TLDR of a long e-mail.
  • I want ...

Thinking about the future has no limitations. It depends on us to build it.

 "Open Source AI at TechWorks, the UK trade body for Electronic Systems Engineering" ( 2024 )

Sunday at 16:45, 15 minutes, UB2.252A (Lameere), UB2.252A (Lameere), AI and Machine Learning devroom Jeremy Bennett , slides , video

In this talk we discuss work by TechWorks, the trade body for electronic systems engineering in the UK, to create a collaborative, open guide to help electronic systems engineers expand their skillset to AI roles.

TechWorks is not specifically an open source organization. However for a number of years it has taken an open approach to many of its standardization practices. For example all the guides from the IoT Security Foundation (part of TechWorks) are release under a Creative Commons license. We will give a brief overview of this organization at the start of the talk.

TechWorks identified that the shortage of AI engineers would represent a problem for the industry going forward. However this is an industry with many, experienced software and hardware engineers. The need therefore was for material to help those engineers transition to AI.

The result, now 18 months into its development, is an open guide to best practice in AI and Machine Learning for experienced professional engineers (https://technes-uk.github.io/best-practice-guide/). The source is maintained on GitHub and written in Sphinx, using a Creative Commons Attribution license (https://github.com/TechNES-UK/best-practice-guide). This allows easy community contributions using pull-requests.

We'll explore the challenges in developing this guide, and share plans for completing the initial release, and then maintaining it going forward.

 "dublang, a multi-language live coding system" ( 2024 )

Sunday at 16:45, 5 minutes, UB4.132, UB4.132, Open Media devroom Joenio M Costa , video

dublang is a multi-language live coding system with support for multiple programming languages in a single and integrated live coding session. The name dublang is inspired by the musical style dub, dub consists of remixes of existing music, and just like the dub, dublang consists of remixes of existing software tools.

This talk will demonstrate how dublang system can be used to mix multiple live coding programming languages in the same source code file, for e.g., mixing SuperCollider, Tidal Cycles, Sardine and FoxDot languages in a single and unified live coding session. The audience will also see how to mix tools for visuals, like Le Biniou and MPV media player, in order to combine sounds and visuals.

  • slides: https://joenio.me/dublang-5min-intro
  • dublang website: https://dublang.4two.art
  • codeberg repository: https://codeberg.org/joenio/dublang

 "VVdeC<>Arm: Optimizing an open source VVC decoder for Arm architectures" ( 2024 )

Sunday at 16:50, 5 minutes, UB4.132, UB4.132, Open Media devroom Florian Eisenreich , slides , video

VVdeC is an open source VVC decoder optimized for the x86 SIMD extensions SSE4.1 and AVX2. Support for other architectures has been achieved using the open source project SIMD Everywhere. This talk will present the approach and results of the first attempt of optimizing VVdeC for Arm, including which SIMD extension was selected as the optimization target, which tools where used and how SIMD was utilized.

 "Open Source Firmware, BMC and Bootloader devroom - outro" ( 2024 )

Sunday at 16:55, 5 minutes, AW1.126, AW1.126, Open Source Firmware, BMC and Bootloader devroom Piotr Król , video

Closing notes.

 "EU Policy Devroom Wrap-Up" ( 2024 )

Sunday at 16:55, 5 minutes, AW1.120, AW1.120, Open Source In The European Legislative Landscape devroom Simon Phipps Enzo Ribagnac Maarten Aertsen Axel Thévenet Deb Bryant Alexander Sander Gijs Hillenius , video

Winding up the day, the DevRoom managers explain the next steps.

 "FOSDEM 2024 Highlights" ( 2024 )

Sunday at 17:00, 50 minutes, Janson, Janson, Keynotes FOSDEM Staff Richard "RichiH" Hartmann , video

Sharing the Highlights of FOSDEM 2024.

Some of the many good things you missed at FOSDEM because the room was full or you were in the wrong place!

Contact highlights@fosdem.org if you'd like to propose your own short contribution to this session.

If you took any good photos during the event that you would like to share, please send direct links to them to highlights@fosdem.org and we may display them as part of a carousel.

Featuring:

Diego Antolinos-Basso

Alberto P. Marti

Boris Dolley

Chris Simmonds

Ana Vrsalovic

Mike Bursell

Peter Mathijssen

Mathias Bolt Lesniak

Justin W. Flory

Michiel Leenaars

James Merlin

Simon Phipps

Blaine Garst

Matthew Hodgson

and more!

 "Closing FOSDEM 2024" ( 2024 )

Sunday at 17:50, 25 minutes, Janson, Janson, Keynotes FOSDEM Staff Richard "RichiH" Hartmann , slides , video

FOSDEM closing and goodbye.

See you next year? :)

 "Welcome to FOSDEM 2025" ( 2025 )

Saturday at 09:30, 20 minutes, Janson, Janson, Keynotes FOSDEM Staff Richard "RichiH" Hartmann , slides , video

FOSDEM welcome and opening talk.

Join us for the opening of our 25th event.

 "Future of the Arrow ecosystem BOF" ( 2025 )

Saturday at 10:00, 60 minutes, H.3242, H.3242, BOF - Track B Antoine Pitrou

Apache Arrow has become a critical foundation for the data science and data analytics FOSS communities. It is also a large project, with a number of official specifications, even more implementations, and common grounds with other projects such as Parquet.

This session will gather Arrow maintainers, contributors and interested parties (such as maintainers of other FOSS data analytics projects) to discuss the Arrow project, its continued sustainability and possible directions for the future.

 "Program to Learn: The Power of Creative Coding" ( 2025 )

Saturday at 10:00, 50 minutes, Janson, Janson, Keynotes Bernat Romagosa John Maloney Jens Mönig Jadga Huegle , video

What was your first programming language? For some, it might have been Logo; for others, Scratch. Regardless of the language, many of us have fond memories of creating playful, creative programs as kids - not because we had to, but because it was fun.

What many don’t realize is that the joy of these early experiences wasn’t by chance. It stems from the pioneering work of Seymour Papert, Cynthia Solomon, and others at the MIT Logo Lab in the late 1960s. They developed an educational philosophy called constructionism - the belief that children learn best when engaged in creative projects that connect with their personal interests. This philosophy shaped not only Logo but an entire lineage of educational programming tools designed to make coding fun, expressive, and meaningful.

Today, as the "Learn to Code" movement is challenged by generative AI, researchers and educators are revisiting these roots. They view programming not merely as a utilitarian skill for the job market but as a medium for exploration and creative expression. From analyzing complex data to creating art and understanding systems, programming can be much more than a language to be learned - it can be a language for learning.

For education, free and open-source software is a cornerstone. Free software ensures that tools remain accessible to all, fosters collaboration, and empowers learners to not only use but also understand and modify the systems they engage with - crucial for digital sovereignty.

In this talk, we’ll take you on a whirlwind tour of some of the most influential programming languages designed for children, from Logo, Smalltalk, and Etoys to Scratch and their modern descendants like Snap! and MicroBlocks. Rather than just describing these languages, we’ll show you their power through live demos.

 "Code Is Different: How the Norms and Nuances of the FOSS Developer Community Drive Content Moderation on Code Collaboration Platforms" ( 2025 )

Saturday at 10:00, 50 minutes, K.1.105 (La Fontaine), K.1.105 (La Fontaine), Main Track - K Building Margaret Tucker , slides , video

Software code is not just content—it’s the foundation of critical digital infrastructure, and its unique functional purpose demands a specialized approach to platform governance. Unlike other digital media, code is widely duplicated, remixed, and shared under open source licensing terms, presenting distinct considerations for copyright and moderation. Additionally, the dual-use nature of software, such as security research projects, introduces complex challenges: tools designed to identify vulnerabilities can also be exploited for malicious purposes. Moderating a code collaboration platform requires careful consideration of open source software’s function as critical digital infrastructure and the network effects of takedowns. Likewise, code collaboration platforms must reflect the free and open source developer community’s values of collaboration and transparency, while empowering maintainers to support the health of their projects.

In this presentation, authors of the recently published article “Nuances and Challenges of Moderating a Code Collaboration Platform” in the Journal of Online Trust and Safety will discuss key takeaways. We’ll provide an under the hood look at how GitHub has developed tools and policies tailored to the needs of the free and open source software developer community. This will include a diverse set of case studies, including how we’ve responded to legal and policy challenges such as the EU Copyright Directive and US Digital Millennium Copyright Act, how we’ve evolved our approach to dual-use software over time, and how notable incidents such as the youtube-dl takedown and reinstatement have influenced our developer-first approach to content moderation. We will also touch on the importance of community content moderation and the tools we have developed for maintainers to establish expectations for conduct and contribution on their projects. Attendees will leave with an understanding of how the values of the free and open source developer community inform the governance of code collaboration platforms and how they can engage with platforms and policymakers.

 "Special-Purpose Operating Systems Meetup BOF" ( 2025 )

Saturday at 10:00, 60 minutes, H.3244, H.3244, BOF - Track C Mauro Morales

The Special-Purpose Operating Systems (SPOS) Working Group is a collaborative initiative under the CNCF TAG Runtime, bringing together developers, maintainers, and adopters focused on operating systems designed for specific workloads—cloud-native, edge, embedded systems, and more.

In this Birds of a Feather (BoF) session, we aim to connect in person for the second time at FOSDEM, a pivotal event for the open-source operating system community. This meetup will provide a space for SPOS enthusiasts, contributors, and representatives from major Linux distributions to exchange insights, share experiences, and discuss the future direction of specialized operating systems.

https://tag-runtime.cncf.io/wgs/spos/charter/

 "Weblate BoF" ( 2025 )

Saturday at 10:00, 60 minutes, AW1.121, AW1.121, BOF - Track A Benjamin Alan Jamie

Gathering feedback, discussing Weblate plans, features, bugs, collaboration within the community, and anything Weblate. Like every year, everybody is welcome! Michal Čihař, Weblate Founder and Benjamin Jamie, Community Manager will be there for sure.

 "Syd: An Introduction to Secure Application Sandboxing for Linux" ( 2025 )

Saturday at 10:30, 30 minutes, UB4.132, UB4.132, Security Ali Polatel , video

In this talk, I will introduce Syd, a GPL-3 licensed, rock-solid application kernel designed for sandboxing applications on Linux systems (version 5.19 and above). Over the past 16 years, Syd has evolved from a tool used within Exherbo Linux to detect package build mishaps into a robust security boundary for applications. The recent rewrite in Rust leverages modern Linux APIs such as seccomp-unotify(2), openat2(2), and pidfd_getfd(2) to eliminate time-of-check to time-of-use (TOCTTOU) vulnerabilities, which is essential for building a secure sandbox.

Syd aims to provide a simple interface over complex Linux sandboxing mechanisms -- including Landlock LSM, namespaces, ptrace(2), and seccomp-BPF/Notify -- which are often considered brittle and difficult to use. This approach is somewhat similar to OpenBSD's pledge(2) system call, offering a practical way to restrict application behavior. Unlike other sandboxing tools like Falco, Bubblewrap, Firejail, gVisor, and minijail, Syd operates without requiring extra privileges, SETUID binaries, or privileged kernel context. It adheres to the UNIX philosophy of doing one thing well with the least privilege necessary.

The presentation will cover Syd's key features:

  • Path Sandboxing: Controls filesystem access through various operations including read, write (with append-only paths and path masking), stat (aka path hiding), tmpfile creation, attribute changes, truncation, node creation, file creation, and deletion.
  • Execution Control: Implements exec sandboxing with SegvGuard, force sandboxing for verified execution, and Trusted Path Execution to enforce strict execution policies.
  • Network Sandboxing: Restricts network access, supporting UNIX, IPv4, IPv6, Netlink, and KCAPI sockets, along with application firewalls and IP blocklists.
  • Advanced Features: Includes lock sandboxing using Landlock LSM, proxy sandboxing with network namespace isolation (defaulting to TOR), memory and PID sandboxing as simpler alternatives to control groups, SafeSetID for secure UID/GID transitions, and Ghost mode for enhanced process isolation.

I will also discuss how Syd addresses common security challenges such as TOCTOU issues and side-channel attacks, aligning with a threat model similar to that of seccomp. Attendees will gain insights into the design and implementation of Syd, its practical applications in enhancing system security, and how it can be integrated into various environments -- including as a login shell -- to provide robust application isolation.

 "Welcome to the Nix and NixOS devroom!" ( 2025 )

Saturday at 10:30, 10 minutes, K.3.601, K.3.601, Nix and NixOS Paul Meyer Bryan Honof Thomas Bereknyei Martin Schwaighofer , slides , video

This lightning-style talk will serve as a welcome and introduction to the Nix and NixOS devroom. It'll go over the rules and expectations of the devroom, as well as introducing you to the devroom managers.

 "What's new in Nextcloud?" ( 2025 )

Saturday at 10:30, 40 minutes, H.1308 (Rolin), H.1308 (Rolin), Collaboration and Content Management Jos Poortvliet , video

It's a tradition. A TRADITION! So, sit back, relax, and enjoy the show.

I'll share what happened in Nextcloud in 2024. It's a lot, as always. Will it be 300 slides this year? 400? Nobody knows, not even me! But you will find out.

We're still working to change the world, here at Nextcloud. We grow, fast, and serve more users with more on-premises, secure and just beautiful software that keeps their data safe from Big Tech.

Share and work on documents with Nextcloud Files and Nextcloud Office. Chat and do your video calls with Nextcloud Talk. Discuss philosophy (or do useful things) with the Nextcloud Assistant. Or automate your business with Nextcloud Flow.

And be sure: your data does NOT leave your server. Not even when you're translating text or using the AI to help answer your emails. Because we DO take privacy serious. Seriously.

See you in Brussels!

 "Augurs: a time series toolkit for Rust" ( 2025 )

Saturday at 10:30, 40 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Rust Ben Sully , slides , video

augurs is a new library for time series analysis (think forecasting, outlier detection, clustering, and more) written in Rust, with bindings available for Javascript and Python. It includes functionality borrowed from both Python and R libraries, plus some more novel ideas. Come and learn about what it can do, as well as:

  • choices made when porting algorithms from different languages
  • techniques used for profiling and optimizing ML code in Rust
  • tradeoffs when creating Javascript/WebAssembly bindings
  • what kind of performance and usability gains to expect

 "What the Spec?!: New Features in Apache Iceberg™ Table Format V3" ( 2025 )

Saturday at 10:30, 30 minutes, UB5.132, UB5.132, Data Analytics Danica Fine Russell Spitzer , video

Apache Iceberg™ made great advancements going from Table Format V1 to Table Format V2, introducing features like position deletes, advanced metrics, and cleaner metadata abstractions. But with Table Format V3 on the horizon, Iceberg users have even more to look forward to.

In this session, we’ll explore some of the exciting new user-facing features that V3 Iceberg is about to introduce and see how they’ll make working with Open Data Formats easier than ever! We’ll go through the high-level details of the new functionality that will be available in V3. Then we’ll dive deep into some of the most impactful features. You’ll learn what Variant types have to offer your semi-structured data, how Row Lineage can enhance CDC capabilities, and more.

The community has come together to build yet another great release of the Iceberg spec, so attend and learn about all of the changes coming and how you can take advantage of them in your teams.

 "Declarative Object Storage at Scale: Integrating Rook, Ceph, and OpenStack" ( 2025 )

Saturday at 10:30, 30 minutes, K.3.401, K.3.401, Software Defined Storage Sirisha Guduru Joachim Kraftmayer Artem Torubarov , slides , video

This talk outlines our journey in building a reproducible Ceph object storage setup that can be deployed across multiple regions with a single click, using an Configuration-as-Code approach with Rook. Our primary goal was to replace OpenStack Swift with Ceph RGW to achieve strictly consistent object storage while maintaining backward compatibility with existing OpenStack components such as Keystone and Barbican.

The good news? Many of these capabilities already existed in Ceph, albeit in varying states of readiness. However, not all of them were natively configurable in a declarative manner using Rook. This presentation will dive into the challenges we encountered while integrating Ceph, OpenStack, and Rook. We'll explore the gaps we identified, the features we developed or refined, and the current state of the ecosystem for those considering a similar path today.

Attendees will gain practical insights into building resilient object storage solutions and learn how to navigate the complexities of integrating Ceph into modern cloud-native and OpenStack environments.

 "Cache me if you can: P2P Image Sharing in Kubernetes with Spegel" ( 2025 )

Saturday at 10:30, 30 minutes, UD2.218A, UD2.218A, Containers Philip Laine , slides , video

The ability to pull container images quickly and reliably is critical for workload deployment and scaling. Pulling images from external registries can be slow, inefficient, and prone to failure due to network issues or downtime. In this session, we will explore different strategies for speeding up container image pulling in Kubernetes. We will compare the benefits and trade-offs of different image caching approaches, such as leveraging Harbor, preloading images on machine images, or adopting Spegel.

We will uncover how Spegel works seamlessly with Kubernetes to provide automatic local caching of images without explicit configuration, reducing the impact of external registry downtime and avoiding rate-limiting issues. Then, demonstrate how Harbor can be used as a pull through mirror. Attendees will learn to deploy these solutions to optimize their Kubernetes workloads, decrease pod startup times, and improve the performance of edge node deployments.

 "Learn to build your own mobile app with MIT App Inventor" ( 2025 )

Saturday at 10:30, 90 minutes, UD6.205, UD6.205, FOSDEM Junior Evan Patton

In this hands on workshop, you will use MIT App Inventor to build two applications for your Android or iOS device. Those new to MIT App Inventor can have a simple first app up and running in less than 30 minutes. And what's more, our blocks-based tool facilitates the creation of complex, high-impact apps in significantly less time than traditional programming environments. The first app you create will be a cat you can pet to make meow. The second app will allow you to draw your own pictures via touch. Participants must bring both a laptop and a mobile device (phones and tablets are both good, running Android 4.0+ or iOS 12+).


Activities during FOSDEM Junior follow the Code Club policies and health and safety standards.

  • All attendees must have an adult with them
  • Remember to bring your laptop with you
  • Remember to bring an Android phone
  • You must book a place to attend
  • Please don’t come if you are feeling unwell

Participants are required to sign up for this activity via the registration form.

 "Enhancing Testing Strategies for Critical Systems: Statistical Path Coverage" ( 2025 )

Saturday at 10:30, 25 minutes, UD6.215, UD6.215, Testing and Continuous Delivery Imanol Allende , video

Modern embedded and autonomous systems are pushing the boundaries of software complexity, especially in critical applications. Traditional testing methods often struggle to meet the demands of these systems, particularly when operating on resource-sharing architectures running complex operating systems like Linux. To address this challenge, we introduce Statistical Path Coverage (SPC), a novel statistical approach designed to enhance test effectiveness by statistically focusing on the execution paths exercised by target applications.

This presentation will discuss how SPC can quantify execution path coverage, estimate the risk of untested paths, and support assurance. We will also introduce DB4SIL, a tool leveraging FTrace to collect and analyze execution traces, enabling actionable insights into the kernel’s behavior during testing campaigns. Through examples, we will demonstrate how SPC and DB4SIL can guide developers in prioritizing testing efforts, improving test coverage, enabling continuous monitoring, and reducing risk in complex, software-driven systems.

 "Org mode witchcraft at Spritely" ( 2025 )

Saturday at 10:30, 30 minutes, K.4.201, K.4.201, Tool the Docs Amy Grinn , slides , video

Since joining Spritely as technical administrator, I've made a number of improvements to our public documents that some people have described as Org mode 'witchcraft'. This form of witchcraft is not just magical though, it's necessary in an age of increasingly-centralized and proprietary note-taking software. I hope this presentation demystifies some of the tooling we use and inspires others to think bigger about how to write documents and how to improve accessibility.

I will talk about our Org export process, working with multiple src-block languages, and integrating Emacs with GNU Make. I'll also discuss the built-in features of Org mode that we rely most heavily on, and how to get started in your organization.

 "MicroCode: Live, Portable Programming for Children" ( 2025 )

Saturday at 10:30, 90 minutes, UD6.203, UD6.203, FOSDEM Junior Lorraine Underwood

MicroCode is a new tile based programming language that makes it possible to program the micro:bit without the need for an extra computer or Internet connection. All the programming takes place on a handheld shield. Come along and try out this new way of coding! All equipment is provided. With no written words, on the tiles children as young as 6 can join in.

MicroCode


Activities during FOSDEM Junior follow the Code Club policies and health and safety standards.

  • All attendees must have an adult with them
  • Remember to bring your laptop with you
  • You must book a place to attend
  • Please don’t come if you are feeling unwell

Participants are required to sign up for this activity via the registration form.

 "The State of OpenJDK" ( 2025 )

Saturday at 10:30, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Free Java Mark Reinhold

A review of the past year in the life of the OpenJDK Community, and a look at what’s ahead.

 "The state of Go" ( 2025 )

Saturday at 10:30, 30 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Go Maartje Eyskens , video

What is new since Go 1.23. In this talk we'll bring you up to date with all upcoming changes to the Go language and the community! Go 1.24 will be released in February 2024, we will be taking a look to all upcoming features as well as give an update on important changes in Go 1.23. This includes traditionally updates about the language, tooling, libraries, ports and most importantly the Go Community.

 "Automated testing for mobile images using GNOME" ( 2025 )

Saturday at 10:30, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning Talks Sam Thursfield , slides , video

The GNOME project has some end-to-end tests running with openQA and os-autoinst. So far these test GNOME OS integration, the Shell and core applications, accessibility features and more. However, all these tests assume a desktop form factor.

To help GNOME work well on mobile, we also have a gnome_mobile test suite, but there are currently some missing features in QEMU and os-autoinst which limits how useful these tests are.

This lightning talk will cover:

  • Why mobile devices are different from desktops and laptops, and why the current gnome_mobile tests are not good enough
  • How QEMU can better support mobile form factors
  • What we might need in os-autoinst to start simulating multi-touch inputs to a mobile device.

 "Announcement of LibreOffice 25.2" ( 2025 )

Saturday at 10:30, 5 minutes, H.2213, H.2213, LibreOffice Italo Vignoli

LibreOffice 25.2 will be released just after FOSDEM, but it will be pre-announced at FOSDEM to the open source community. During the talk, development numbers will be provided, and the most important new features will be described.

 "MapTCHA, the open source CAPTCHA that improves OpenStreetMap" ( 2025 )

Saturday at 10:30, 25 minutes, AW1.120, AW1.120, Geospatial Anna Zanchetta , video

Bots and spam are challenges for online platforms. Traditional CAPTCHAs help block bots, but often involve improving proprietary maps and software, while exposing user information to third-party CAPTCHA providers. OpenStreetMap (OSM) has many objects remaining to be mapped, but the quality of AI-generated objects is not high enough for direct inclusion. We introduce “MapTCHA”, a CAPTCHA that leverages the uncertainty of interpreting imagery with computer vision, and provides human verification for AI predictions: users are asked to identify images containing correctly interpreted objects, e.g. building outlines.

We separate known positive cases, where both the AI prediction and OSM contain an object, from unknown cases, where objects are only in the prediction. We also generate known negatives from areas where objects are neither in OSM nor in the prediction. We show a mix of these images without telling the user which are which. Humans are validated by confirming the known positives and negatives, and we determine the truth of the unknown images by aggregating users’ responses through voting. When the voting indicates high confidence that an object exists, we suggest the location for OSM mapping.

Our prototype identifies buildings using aerial imagery with high enough resolution to visualise individual buildings and medium-sized objects. Image recognition is provided by fAIr, an open-source AI-assisted mapping system developed by the Humanitarian OpenStreetMap Team (HOT). It allows the training and fine-tuning of pre-trained machine learning models to segment building footprints.

Future plans include expanding to more objects and types of imagery; refining AI models; integrating MapTCHA into various login systems; and enhancing the user interface.

In this session we will talk about how we are building this solution, how it might enhance mapping efforts in OSM that will support projects on the ground, and some of the challenges of working with AI derived data.

 "Creating an Open Knowledge Graph for Climate" ( 2025 )

Saturday at 10:30, 25 minutes, AW1.126, AW1.126, Open Research Peter Murray-Rust , slides , video

semanticClimate is a global hybrid community where interns from colleges (mainly in India) create climate knowledge to help the world make informed decisions. We work with trustable material such as the UN/IPCC reports (over 15,000 pages of important, but dense text). The resulting knowledge products include:

  • term-based dictionaries (ontologies) enhanced with Wikipedia and Wikidata
  • a Corpus tool for scraping and analysing the current Open scholarly literature
  • a knowledge graph created from the above with navigation tools

and F/OSS software to make this easy and automatic.

semanticClimate interns come from high-school up and need have no knowledge of software. They learn-by-doing, and in some weeks have 2-hour online sessions daily - these are recorded and transcribed to text for all to see. Interns are encouraged to give public talks (e.g. OKFN, Wikipedia, CODATA) and to make 5 min videos. All software is modular, Git-branched, versioned and unit-tested. Where possible we publish it in J. Open Source Software.

The session image is part of our Climate Knowledge Graph (my email is peter.murray.rust@googlemail.com. I can't change it in the form!)

 "SatNOGS-COMMS: An Open-Source Communication Subsystem for CubeSats" ( 2025 )

Saturday at 10:30, 25 minutes, H.1302 (Depage), H.1302 (Depage), Embedded, Mobile and Automotive Manolis Surligas , slides , video

SatNOGS-COMMS is an open-source, open-hardware communications subsystem for CubeSats, developed by the Libre Space Foundation in collaboration with the European Space Agency (ESA). This innovative system combines advanced hardware and software to meet the challenges of CubeSat missions while promoting accessibility and flexibility through an open ecosystem.

The subsystem features an STM32H743 microcontroller as its main processor, complemented by a ZYNQ-7020 FPGA accelerator for computationally intensive tasks. SATNOGS-COMMS is built on Zephyr RTOS, with the firmware written entirely in C++17. Notably, its hardware control interfaces follow a platform-agnostic architecture, enabling users to adapt the firmware to their preferred RTOS with minimal effort.

This presentation will delve into the software engineering decisions, challenges encountered, and the advantages of an open-source approach for CubeSat missions and space exploration. Key topics include: * The benefits of using C++ in embedded systems, particularly in the context of resource constraints. * How the use of exceptions improves firmware safety and reliability. * Fault-tolerant mechanisms designed to ensure reliable operation in the harsh environment of space. Additionally, we will highlight our approach to enabling user-defined code integration without modifying the original codebase, comparing it with other commercial and non-commercial solutions.

The complete project, including hardware designs, software, simulations, and documentation, is freely available at the project’s GitLab repository: https://gitlab.com/librespacefoundation/satnogs-comms.

 "Finding an AOSP developer community" ( 2025 )

Saturday at 10:30, 15 minutes, H.2214, H.2214, Android Open Source Project Chris Simmonds , slides , video

Over many years I have observed that developers working with the Android platform do not talk to each other nearly enough. One reason is that there is no obvious place where AOSP developers can come together. Following on from a discussion at a conference, a group of us set out to create a community led resource to fulfill that role. https://aosp-devs.org aims to:

  • Reduce the fragmentation in the AOSP ecosystem by sharing code, tooling, and knowledge
  • Provide a repository for documentation, tutorials, and best practices
  • Provide a neutral place to host open source code outside of AOSP. A good example would be board support packages and other common patches
  • Provide communication channels where developers can ask questions and collaborate
  • Organise meetings on-line and in-person
  • Provide education
  • Provide a conduit between Google, the AOSP community, and OEMs A community is more than the sum of its parts

 "Welcome to the FOSDEM 2025 RISC-V DevRoom" ( 2025 )

Saturday at 10:30, 5 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), RISC-V Björn Töpel , video

Welcome session.

 "Welcome to the Radio Devroom" ( 2025 )

Saturday at 10:30, 15 minutes, UB2.147, UB2.147, Radio Bastien Cabay

5-10 minutes talk with devroom co-owner to introduce devroom.

 "Welcome to the Legal and Policy Issues DevRoom" ( 2025 )

Saturday at 10:30, 5 minutes, H.1301 (Cornil), H.1301 (Cornil), Legal and Policy Karen Sandler Tom Marble Alexander Sander Bradley M. Kuhn Matthias Kirschner Richard Fontana , slides , video

Welcome to the Legal and Policy Issues DevRoom

 "Confidential Computing devroom welcome" ( 2025 )

Saturday at 10:30, 10 minutes, K.4.401, K.4.401, Confidential Computing Fritz Alder Jo Van Bulck Fabiano Fidêncio Ilaria Battiston Steffen Eiden , slides , video

Welcome to the 6th iteration of the confidential computing devroom! In this welcome session, we will give a very brief introduction to confidential computing and the devroom, and we will give an honorable mention to all the folks that contributed to this devroom, whether they are presenting or not.

 "Open Source Firmware, BMC and Bootloader devroom - intro" ( 2025 )

Saturday at 10:30, 5 minutes, UB4.136, UB4.136, Open Source Firmware, BMC and Bootloader Daniel Kiper , video

A short introduction, history of devroom, and agenda.

 "Welcome to the Modern Email DevRoom 💌" ( 2025 )

Saturday at 10:30, 5 minutes, K.4.601, K.4.601, Modern Email TELLIER Benoit Damian Poddebniak Mechiel Lukkien Hans-Jörg Happel , video

Introduction to the DevRoom

 "Community Devroom Welcome" ( 2025 )

Saturday at 10:30, 5 minutes, UB5.230, UB5.230, Community

Welcoming remarks by the Community devroom organizers, Laura Czajkowski, Shirley Bailes, and Leslie Hawthorn.

 "Welcome to the LLVM dev room" ( 2025 )

Saturday at 10:30, 5 minutes, K.3.201, K.3.201, LLVM Kristof Beyls Peter Smith Marius Brehler , slides , video

A word of welcome by the LLVM Dev room organizers.

 "aerc, an email client for the discerning hacker" ( 2025 )

Saturday at 10:35, 25 minutes, K.4.601, K.4.601, Modern Email Robin Jarry , video

aerc is a modern email client for your terminal written in Go. aerc supports IMAP, SMTP, JMAP, Maildir, notmuch, mbox and has been designed with patch review and management in mind.

aerc is easy to setup with a new account wizard and has first class support for git+email based workflows.

In this talk, I will be making an introduction to aerc and its capabilities. I will also demonstrate some of the ways you can tweak it and configure it to suit your needs.

More information is available at https://git.sr.ht/~rjarry/aerc.

The talk slide deck is available at https://aerc-mail.org/fosdem-2025/.

 "Europe's Way to Mandatory B2B-E-Invoices" ( 2025 )

Saturday at 10:35, 25 minutes, H.1301 (Cornil), H.1301 (Cornil), Legal and Policy Jochen Stärk , slides , video

After electronic B2G-invoices became mandatory in 2020 (for guideline 2014/55/EU the CEN standard EN16931 was issued) now the EU is planning in their Vat in the Digital Age (ViDA) draft guideline to also request machine readable copies of all Business-to-Business (B2B) cross border invoices.

Anticipating this change, some countries, like Italy, France and Germany, introduced or are introducing domestic continuous transaction control (CTC) systems requiring short term XML copies of all domestic B2B invoices, replacing paper invoices and PDF invoices without additional XML in the foreseeable future.

This speech will briefly summarize aspects of Italy, cover what is happening in France and focus on the situation in Germany with it's formats Factur-X and XRechnung and dive into open standards (like UBL and UN/CEFACT Cross Industry Invoice=CII as well as Factur-X) as well as open source to view, create, parse, validate and convert electronic invoices.

 "Multi-Profile UKIs and other ways to supercharge your Unified Kernel Images" ( 2025 )

Saturday at 10:35, 20 minutes, UB4.136, UB4.136, Open Source Firmware, BMC and Bootloader Lennart Poettering , slides , video

systemd-stub/ukify/systemd-measure recently acquire support for "multi-profile" UKIs (i.e. a UKI that can synthesize multiple boot menu entries instead of one, each with sligh varations in kernel command line and similar). It already gained support for carrying multiple DeviceTrees with automatic matching against local hardware. There is working in include multiple system firmwares inside UKIs for confidential computing bring-your-own-firmware cases. All this elevates UKIs to a new level, and in this talk I'd like to provide an overview of what's going on and where we are going.

 "Compassionate Open Source Community Building (The Tauri Model)" ( 2025 )

Saturday at 10:35, 25 minutes, UB5.230, UB5.230, Community Denjell , video

We mitigate "bus-factor", proclaim "accountability", enhance "productivity", champion "transparency". We lament the financial failings of "donations", and worry about people "silently quitting". The underlying problems however, are maintainer burn-out, imposter syndrome, entitled users, and social alienation.

In my talk I want to reframe the discussion of sustaining the maintainers to be one of primarily seeking to support mental health and well being instead of focussing on fixing abstract problems with money. In my talk I will introduce open-source leadership techniques that are person-focussed instead of outcome oriented, leveraging examples from the Tauri community.

 "A New Approach to Callee-Saved Registers in LLVM" ( 2025 )

Saturday at 10:35, 25 minutes, K.3.201, K.3.201, LLVM Mikhail Gudim , video

Currently LLVM saves and restores callee-saved registers during prologue-epilogue insertion pass. I would like to present a new approach where we expose callee-saved register constraints early in the backend pipeline. This creates more opportunities for the optimizers and gives good performance gains. Interestingly, we achieve per-register shrink-wrapping for free. However, this makes emission of CFI directives much more complicated. I am currently in the process of upstreaming this work. The proof-of-concept branch is publicly available here: https://github.com/llvm/llvm-project/pull/90819 I have only tried this approach on RISCV, but it could be applied to other targets as well.

 "ODF and its Toolkit" ( 2025 )

Saturday at 10:35, 15 minutes, H.2213, H.2213, LibreOffice Svante Schubert , slides , video

Quick intro & update on the ODF standard. Afterwards, explain the design ideas behind TDF's ODF Toolkit and its usefulness for ODF automation.

 "Confidential Computing’s Recent Past, Emerging Present, and Long-Lasting Future" ( 2025 )

Saturday at 10:40, 20 minutes, K.4.401, K.4.401, Confidential Computing Sal Kimmich , slides , video

As Confidential Computing (CC) continues to gain traction as a cornerstone of modern cybersecurity, understanding its trajectory—past, present, and future—is critical to its adoption and impact. This talk explores the evolution of CC, from its origins in securing sensitive workloads with Trusted Execution Environments (TEEs), to its growing intersection with broader cybersecurity disciplines such as supply chain security and threat modeling.

The session will highlight the need to effectively communicate CC's value across these disciplines, bridging technical advancements with practical applications. With the latest EU DORA directive mandating runtime data security, and the increasing need for mathematical unicity in sensitive data comparisons, the relevance of CC is more pressing than ever.

Attendees will learn:

A concise history of CC and its early drivers. Current challenges and successes in embedding CC within complex cybersecurity frameworks. Strategies for fostering adoption across diverse industries and regulatory landscapes. A forward-looking vision for CC’s role in addressing the evolving threat landscape, particularly in areas demanding high assurance of data integrity and confidentiality. Join us for a compelling narrative that positions Confidential Computing as a key enabler of secure and trustworthy systems in a rapidly changing world. Whether you’re a seasoned practitioner or new to CC, this session will provide actionable insights to integrate and advocate for CC in your security workflows.

 "RISC-V Hardware - Where are we?" ( 2025 )

Saturday at 10:40, 35 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), RISC-V Emil Renner Berthing , video

I'll talk about the current landscape of available RISC-V hardware powerful enough to run Linux and hopefully give a better overview of what to buy if you want to get into developing software for RISC-V. I'll talk about the difference between cores, SoCs and boards, who makes them, their performance and how well they're supported under Linux.

 "NixOS @ Doctors Without Borders (MSF) - why we use it and how" ( 2025 )

Saturday at 10:45, 20 minutes, K.3.601, K.3.601, Nix and NixOS Ian Sollars Sohel Sarder , slides , video

We present a real-world use-case of NixOS to manage an highly distributed fleet of servers & VMs in low-resource settings used for mission critical applications. After a brief overview of who MSF is and what we do, we'll dive into the technical details of how we manage our fleet with NixOS and the unique strengths that NixOS brings to the table.

 "Using AI hardware accelerators for real-time DSP on embedded devices - NPU, TPU etc," ( 2025 )

Saturday at 10:45, 55 minutes, UB2.147, UB2.147, Radio Sylvain AZARIAN , slides , video

While we presented last year what could be achieved using NVIDIA GPU, the hardware market has seen a lot of new comers following the need to have AI running locally on devices. Google has the Coral, Rockchip is adding a AI coprocessor on their ARM CPU, and now we have the Copilot PC coming with additional power focused on running Deep Learning models.

In this talk I will present how these accelerators can also be useful for SDR realtime processing, showing some results and presenting the first beta of a new open source library.

 "AOSP bring-up using Software Rendering" ( 2025 )

Saturday at 10:45, 15 minutes, H.2214, H.2214, Android Open Source Project Amit Pundir , slides , video

Display is a core requirement for AOSP. In the absence of a display/rendering interface, AOSP won't boot to completion. This short 10 min talk will talk about AOSP bring-up on pre-silicon/ emulated models or the devices which do not have a display/GPU support enabled yet. The author will talk about booting AOSP with software rendering libraries (SwiftShader + ANGLE) on a virtual display driver (VKMS).

 "ZSWatch - The Open Source Smartwatch" ( 2025 )

Saturday at 10:50, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning Talks Daniel Kampert , slides

Together with Jakob Krantz I´m working on an Open Source Smartwatch, called ZSWatch.

https://github.com/jakkra/ZSWatch

The talk should introduce the project to the community to find additional contributors. I would like to give a rough overview (or a more detailed overview if I can present the project in a different track than the selected) about the past and current development, new ideas and probably open questions.

 "LibreOffice Accessibility on Linux, Windows and macOS" ( 2025 )

Saturday at 10:50, 10 minutes, H.2213, H.2213, LibreOffice Michael Weghorn , slides , video

As an application that supports multiple operating systems (including GNU/Linux, Windows, macOS), LibreOffice needs to implement multiple platform-specific accessibility APIs in order to be accessible for everyone. This talk gives an overview of accessibility APIs on the different systems, which of them LibreOffice currently supports, how it does that, and related aspects and challenges.

 "Model for Economic Tipping point Analysis (META) - a climate-economy integrated assessment model in Julia" ( 2025 )

Saturday at 10:55, 25 minutes, AW1.126, AW1.126, Open Research Thomas Stoerk , video

The Model for Economic Tipping point Analysis (META) is one of a new generation of climate-economy integrated assessment models used to study the economic impacts of climate change. A typical output of such models is an estimate of the social cost of greenhouse gas emissions, a measure of the economic damage caused over its lifetime by a ton of greenhouse gas such as CO2 or CH4.

META, however, computes many other economic as well as geophysical indicators. As its name suggests, META was built specifically to estimate the economic impact of tipping points in the climate system. To do so, META incorporates different tipping points modules, each of which replicate a geophysically realistic tipping point module from a study in the climate economics research literature.

META was originally introduced in Dietz, Rising, Stoerk and Wagner (2021, Proceedings of the National Academy of Sciences, https://www.pnas.org/doi/full/10.1073/pnas.2103081118), and has since been updated and ported to Julia using the Mimi Framework. Follow-up research has improved several components of META. Similarly, META estimates have been used to inform conversations with authorities in the EU and the US.

In this talk, I will give a short overview of META's structure, its capabilities, and ideas for the community on how to further improve and use META for open research in the future.

META is freely available on Github under a GPL-3.0 copyleft licence: https://github.com/openmodels/META

 "Languages and LibreOffice" ( 2025 )

Saturday at 11:00, 10 minutes, H.2213, H.2213, LibreOffice Jonathan Clark , slides , video

A visual retrospective of recent language support improvements in LibreOffice. Examples will be contextualized, used to explore some of the unique challenges of supporting all of the languages of the world, and show how improving support for one language can benefit all.

 "Tightening every bolt" ( 2025 )

Saturday at 11:00, 30 minutes, UB4.132, UB4.132, Security Daniel Stenberg , video

Things to do in order to sleep well while having your C code in twenty billion installations. A talk about what the curl project does to minimize security risks: Security, Safety, Reproducibility, Vulnerability handling and the processes and tooling around it.

As BDFL of the curl project, Daniel talks about what this project does to avoid it causing the world to burn. From code style, reviews and tests to signings, reproducibility, running a bug-bounty and becoming a CNA to filter bogus CVEs. curl aims to be top of the class in (Open Source) software security. Here's your chance to point finger and tell us what we should do better.

 "Discovering indoor environments and positioning systems" ( 2025 )

Saturday at 11:00, 25 minutes, AW1.120, AW1.120, Geospatial Maxim Van de Wynckel , slides , video

Have you ever gotten lost in a building and wished they had some sort of navigation system or at least a floor plan? I have, unfortunately, and it was only later that I realised that not only they had a floor plan online - but they had a navigation app for that building. The reality is that a user who is not familiar with a building will not find such an app until it's too late. Indoor environments sometimes have public floorplans available via some service. Similarly, more and more indoor positioning systems are being deployed in buildings to provide navigation services or asset tracking. However, as a person visiting a building, you are often not aware that these services exist or where to find them. Even if some global registry exists to discover this data, it is often proprietary, discouraging developers from interfacing with such systems. I want to bring a shift into the landscape of indoor positioning systems and services and solve this! In this presentation, I will talk about discovering indoor environments and positioning systems through proximity-based discovery methods and linked data. How nice would it be, that instead of downloading the FOSDEM app, you simply use Google Maps or any open-source navigation application to find the location of this talk?

 "Where have the women of tech history gone? 2.0" ( 2025 )

Saturday at 11:00, 50 minutes, Janson, Janson, Keynotes Laura Durieux , slides , video

Last year, we explored the extraordinary contributions of women to the history of computer science. But did you know that was just the tip of the iceberg? After diving deeper into this fascinating subject, I’ve uncovered even more incredible stories to share.

What about the pioneer behind assembly language? Or the creator of the STP, without which the World Wide Web might never have existed? And what about the brilliant mind behind the ARM architecture?

Join me as we journey once again into the history of computer science to uncover the remarkable achievements of even more amazing women.

 "Parula - Presenting the new email client" ( 2025 )

Saturday at 11:00, 30 minutes, K.4.601, K.4.601, Modern Email Ben Bucksch , slides , video

Parula is a new email application, calendar and chat app, for everybody - business use and private. It is Open Source, implemented in TypeScript, and runs on Linux, Mac, Windows and soon Android. This talk is presenting the app, and showing where we need help for implementation and testing.

We would like to bring fresh air into the email ecosystem and not leave it entirely to Microsoft Office365 and GMail. Let's make email enjoyable for everybody.

https://parula.beonex.com

 "wolfBoot: resilient, quantum-resistant secure boot for all architectures" ( 2025 )

Saturday at 11:00, 20 minutes, UB4.136, UB4.136, Open Source Firmware, BMC and Bootloader Daniele Lacamera , slides , video

wolfBoot is an open source secure bootloader developed by wolfSSL Inc. and ported across many architectures. This talk will describe real-life scenarios of deploying quantum resistant and hybrid secure boot mechanisms on embedded systems.

Initially designed in 2018 to implement secure boot on small microcontrollers (ARMv7 Cortex-M), wolfBoot has been then ported to several architectures including ARM Cortex-A, RISC-V, PowerPC, Renesas RX, and more recently it has been deployed in x86_64 as complete bios replacement with Intel FSP. On new ARMv8-M microcontrollers, it can supervise the secure domain and expose an interface to access cryptography from non-secure world.

Based on RFC9019, wolfBoot only uses static memory and has a predictable execution flow at compile time, which makes it suitable to use in safety-critical environments. It relies on wolfCrypt for public key authentication. It offers protection against rollbacks and has some advanced unique features such as delta updates and mitigations against fault injections.

After briefly introducing the project, the talk will focus on the urge to migrate new systems towards securing boot with quantum resistant algorithms in the next decade. We will explore the mechanisms currently provided by wolfBoot to pair PQC (ML-DSA, LMS, XMSS) with classic cryptography (ECC, RSA, ED) to authenticate the signature of the firmware at boot and upon updates.

Repository on github

 "CLI Magic Tricks for Docs Projects" ( 2025 )

Saturday at 11:00, 30 minutes, K.4.201, K.4.201, Tool the Docs Lorna Mitchell , video

Why should coders have all the fun? The command line isn't just for programming wizards—it’s a magic box of tools that can supercharge how you tackle large documentation projects. In this talk, we’ll demystify the command line and share how to use it for wrangling text and images with ease. You’ll learn about regular expressions, how to chain single-purpose commands into clever pipelines, and tricks to manage complex project structures. From handling vast text files in various formats to taming sprawling docs projects, this session is packed with practical tricks to make your work a little easier and more magical. Recommended for anyone managing the written word at a scale that’s outgrown a single file, and who has a readiness to unleash your inner CLI magician!

 "The Inner Workings of Go Generics" ( 2025 )

Saturday at 11:00, 30 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Go Anton Sankov , video

Generics have long been a hot topic in the Go community, with years of debate, research, and anticipation surrounding their introduction. In this talk, we'll trace the journey of generics in Go—from the early days of design discussions to their eventual implementation in Go 1.18. We'll cover the challenges that led to Go's unique approach to generics, the technical design decisions involved, and how they were implemented to balance simplicity with powerful functionality. Attendees will gain a deeper understanding of the compiler magic that makes Go generics possible and explore practical examples of how generics enhance type safety and flexibility without sacrificing Go's performance and readability principles. This talk is ideal for anyone curious about how generics work under the hood and what they mean for the future of Go.

 "The road to open source General Purpose Humanoids with dora-rs" ( 2025 )

Saturday at 11:00, 25 minutes, H.1302 (Depage), H.1302 (Depage), Embedded, Mobile and Automotive Tao xavier , slides , video

Progress in both hardware and software ( such as dora-rs ) makes using Humanoids easier than ever!

Yet, one of the key feature required for humanoids to be truly useful is to be able to be able to behave in full autonomy!

A lot of company such as Tesla, 1X, Figure, are working on just this at the moment. But, it seems that most of this work is not going to be Open Source.

This is where dora-rs comes to the rescue!

We have a plan for 2025 to make General Purpose Humanoids accessible to anyone.

Please come to the talk and we'll share how!

Website: https://dora-rs.ai Github; https://github.com/dora-rs/dora

 "WebExtensions BoF" ( 2025 )

Saturday at 11:00, 60 minutes, AW1.121, AW1.121, BOF - Track A Rob Wu Danny Colin

An extension adds features and functions to a browser. It's created using familiar web-based technologies — HTML, CSS, and JavaScript.

We’ll be meeting here to discuss the current state of WebExtensions (new APIs, toolings, and more). Whether you’ve authored several web extensions or a newbie working on your first extension, all are welcome to join and share about your experiences of building web extensions!

This session will be hosted by Danny Colin, with representatives from Mozilla Firefox’s add-ons team (Rob Wu & Simeon Vincent), from Google Chrome's extensions team (Oliver Dunk), and other extension community members ready to answer your questions.

 "Is There Really an SBOM Mandate?" ( 2025 )

Saturday at 11:00, 25 minutes, H.1301 (Cornil), H.1301 (Cornil), Legal and Policy Bradley M. Kuhn , slides , video

A consistent mantra of the Software Bill Of Materials (SBOM) ballyhoo is that various government entities around the world have mandated SBOMs in various different places. From USA POTUS Executive Orders, to EU Directives, to USA NIST whitepapers — it's often been repeated that these various sources mandate SBOMs as a mandatory requirement.

Let's do a deep dive into the source material and find out what these various orders and directives actually say, and figure out what's really mandated.

 "The Trustable Software Framework: A new way to measure risk in continuous delivery of critical software" ( 2025 )

Saturday at 11:00, 25 minutes, UD6.215, UD6.215, Testing and Continuous Delivery Paul Sherwood , video

Many of the international standards for software in critical systems (e.g. IEC 61508, ISO 26262) are published under restrictive licences, at high prices. They broadly discourage the use of FOSS, by imposition of processes that do not align with modern open source best practices such as continuous delivery and automated testing. As a result some industries such as automotive, medical and aerospace, are locked in to proprietary software.

This talk will introduce the Trustable Software Framework (TSF), a new free and open source project which establishes an evidence-based method for measuring the actual risks involved in continuous delivery of software in critical systems.

TSF is applicable over the entire software supply chain, including CICD tools and infrastructure, build dependencies, operating systems, target applications and test environments, and is intended to measure risk on projects delivering critical systems which demand reliability, availability, security and safety.

 "A new cgroup cpu.max.concurrency controller interface file" ( 2025 )

Saturday at 11:00, 10 minutes, UD2.218A, UD2.218A, Containers Mathieu Desnoyers , slides , video

This lightning talk discusses an ongoing effort to add a new cpu.max.concurrency interface file to the Linux cgroup CPU controller to facilitate expressing constraints on the number of CPUs which can be used concurrently by threads belonging to the cgroup.

This new interface file will define the maximum number of concurrently running threads for the cgroup. Extend the scheduler to track the number of CPUs concurrently used by the cgroup, and prevent migration when the number of concurrently used CPUs is above the maximum threshold.

The purpose of this new interface is to limit the amount of resident memory needed for userspace per-CPU data, and tune the number of worker threads to the cgroup constraints.

 "Using LLMs to support Firefox developers with code review" ( 2025 )

Saturday at 11:00, 50 minutes, K.1.105 (La Fontaine), K.1.105 (La Fontaine), Main Track - K Building Marco Castelluccio , slides , video

Mozilla has been experimenting with the usage of machine learning (in particular, large language models) to aid Firefox developers with code review.

This talk will explain the architecture of the software, and the path that led there, including iterative improvements to the prompts, retrieval augmented generation, integration of pre-existing tools such as code search.

In addition, we will delve into the results of the initial experiments, our plans for the future of the tool, and the potential for its adoption in other open source projects.

The project source code is part of the bugbug repository, which is a platform for Machine Learning projects on Software Engineering used by Mozilla for various tasks (for example, bug triage and test selection).

 "ZGC: Paving the GC On-Ramp" ( 2025 )

Saturday at 11:00, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Free Java Stefan Johansson , slides , video

ZGC is a powerful garbage collector. This talk showcases what we are doing to reduce the amount of configuration needed to use it well, so that power can be unleashed with a minimum effort for the user.

 "Offering paid services (contract work, SaaS) - from first steps BOF" ( 2025 )

Saturday at 11:00, 60 minutes, H.3242, H.3242, BOF - Track B Andriy Utkin , slides

Making a living as a FOSS contractor or entrepreneur, or want to try? Come!

In the FOSDEM Job Corner and elsewhere there are opportunities to work on FOSS and get paid.

Unless you get employed by a company, there are some other things to deal with besides writing code. Let's share experience and get better at it!

 "Organizing sponsor free conferences BOF" ( 2025 )

Saturday at 11:00, 60 minutes, H.3244, H.3244, BOF - Track C Rabbit

Organizing conferences is a challenging but rewarding experience, and keeping them free from conflicts of interest makes it even more meaningful. At NixCon 2024, we took the bold step of going completely sponsor-free—and it turned out to be a great success, with 400 attendees, making it the largest NixCon to date.

In this BOF session, I’ll share my experiences as a core organizer, including the challenges, lessons learned, and tips for anyone looking to organize their own sponsor-free events without breaking the bank. Let’s discuss how to prioritize community and make it work without sponsorship.

https://2024.nixcon.org/

 "Panel session: what can we do to improve the AOSP community?" ( 2025 )

Saturday at 11:00, 30 minutes, H.2214, H.2214, Android Open Source Project Karim Yaghmour , video

Karim Yaghmour moderates a panel discussion about the current state of the AOSP developer community and the ways that we can improve it

 "Intelligent Tiering for RGW" ( 2025 )

Saturday at 11:05, 30 minutes, K.3.401, K.3.401, Software Defined Storage Shreyansh Sancheti Jiffin Tony Thottan , slides , video

Ceph can currently provide Tiering(Storage Classes) using different pools in the Ceph on-prem cluster and can also do cloud transitions(AWS, s3 compatible endpoints). The movement of data through different storage classes can be achieved using S3 lifecycle rules based on the age of the files. Intelligent tiering for RGW (Rados Gateway) is a feature in Ceph storage that automatically moves data between storage tiers based on policies. This feature optimises storage costs and performance by moving frequently accessed data to faster storage tiers and less frequently accessed data to lower-cost, higher-capacity tiers. The intelligent tiering policy is customizable, allowing users to define criteria for data migration, such as access frequency, time, and size. This feature is particularly useful for large-scale object storage deployments, where optimizing storage costs and performance is crucial. The first step is to extend the existing cloud transition to include features like read-through, restore API(like glacier in s3 protocol)

 "Bridging the Gap: Regional OSPO Networks as Catalysts for Open Source and Local Community Collaboration" ( 2025 )

Saturday at 11:05, 25 minutes, UB5.230, UB5.230, Community Jonathan Starr , video

Open source is more than just code—it is a philosophy, a movement, and a framework that touches every aspect of society. However, as open source grows, there is a risk of it becoming another siloed institution, disconnected from the very communities it seeks to serve, much like academia and corporate America. To ensure open source remains inclusive and impactful, we must actively involve local communities in the process of technological development.

This talk explores how regional OSPO (Open Source Program Office) networks can serve as catalysts for inclusive innovation by connecting local communities, tech meetups, academic institutions, and civic organizations. These networks create a framework to:
- Study problems affecting local communities.
- Develop open technologies tailored to address these issues.
- Implement solutions through open governance, ensuring transparency, equity, and sustainability.

By dedicating resources to both regional collaboration and local focus, regional OSPO networks strike a balance that drives large-scale innovation while staying grounded in the needs of diverse communities.

Key themes include:
- Open Source as a Societal Institution: Why open source must go beyond code and actively integrate with local communities to avoid becoming siloed.
- Regional Networks for Connection: How regional OSPO networks foster collaboration among civic institutions, academia, local communities, and the tech industry.
- Inclusive Technology Development: How to engage local voices to study problems, co-develop solutions, and ensure equitable implementation.
- The 20/80 Framework: A practical model for balancing local focus with regional collaboration to create resilient and impactful networks.

This session offers a vision for a new kind of open source ecosystem—one that connects society’s diverse sectors, tackles real-world problems, and builds a foundation for sustainable, community-driven innovation. Whether you’re a community leader, OSPO practitioner, or open source advocate, join us to explore how we can bridge the gap between open source ideals and societal impact.

Key Takeaways:
- The importance of integrating local communities into open source development processes.
- How regional OSPO networks can address local challenges through collaborative innovation.
- Strategies for fostering open governance and inclusive technology development.

This talk is a call to action: let’s ensure open source remains a force for collective good, bringing all of society into the fold. Together, we can prevent open source from becoming another siloed institution and instead position it as a true bridge to a better future.

 "Confidential Virtual Machines Demystified: A Technical Deep Dive into Linux Guest OS Enlightenment" ( 2025 )

Saturday at 11:05, 20 minutes, K.4.401, K.4.401, Confidential Computing Ankita Pareek Archana Choudhary , slides , video

In an era where data breaches make headlines daily and cyber threats continue to evolve, Confidential Computing emerges as a game-changing paradigm for protecting sensitive workloads in the cloud. With the upcoming Digital Operational Resilience Act (DORA) in Europe mandating data protection in use, understanding Confidential Computing solutions is crucial for regulatory compliance. This talk explores the cornerstone of this technology: Confidential Virtual Machines (VMs), focusing on the two leading hardware technologies: AMD SEV-SNP and Intel TDX.

We delve into the intricacies of enlightening Linux guest OS images to work with these platforms, examining the architectural differences and specific requirements for each technology. Key technical aspects covered include secure boot implementation, measured boot processes, attestation mechanisms, and memory encryption strategies within Linux guest OS images. The discussion encompasses essential modifications needed for compatibility, current industry support, implementation challenges, and emerging trends. This comprehensive overview provides insights into the state-of-the-art of enlightened guest OS images for various Linux distros like Azure Linux, RHEL, Ubuntu, etc. and explores future directions in this rapidly evolving field of confidential computing.

This talk is designed for everyone - from developers, cloud architects and platform vendors to confidential computing enthusiasts.

 "Moving work into the middle end" ( 2025 )

Saturday at 11:05, 20 minutes, K.3.201, K.3.201, LLVM Jon Chesterfield , slides , video

The IR passes of LLVM are a happy place. Easy to reason about, easy to test, easy to debug. SSA form is a really great idea.

This talk sketches the (positive!) experience of writing a couple of classically back end tasks in the middle end instead of their proper place. One is a variant on register allocation - assigning variables to offsets in some buffer. The other is the ABI themed challenge of eliminating variadic functions. Maybe time will allow for an example of pulling work out of clang.

More speculatively, what else could be lifted to IR?

 "How reproducible is NixOS?" ( 2025 )

Saturday at 11:10, 20 minutes, K.3.601, K.3.601, Nix and NixOS Julien Malka , video

Bitwise reproducibility is recognized as a promising way to increase trust in the distribution phase of binary artifact and hence increase trust in the software supply chain. But how reproducible is Nixpkgs? We know that the NixOS ISO image is very close to be perfectly reproducible thanks to reproducible.nixos.org, but there doesn't exist any monitoring of Nixpkgs as a whole. In this talk I'll present the findings of a project that evaluated the reproducibility of Nixpkgs as a whole by mass rebuilding packages from revisions between 2017 and 2023 and comparing the results with the NixOS cache.

See for reference: https://luj.fr/blog/is-nixos-truly-reproducible.html

 "Introducing Glow Effect for texts in shapes" ( 2025 )

Saturday at 11:10, 10 minutes, H.2213, H.2213, LibreOffice Balázs Varga , slides , video

In this talk I will introducing the new uniform glow effect for texts in shapes. This glow effect only can be applied for texts in different text object. We already had Blur effect for text objects, but we also need to be able to apply GLOW effects, as can be done on Shapes. This is useful for adding extra highlighting to text.

 "Graph Databases after 15 Years – Where Are They Headed?" ( 2025 )

Saturday at 11:10, 30 minutes, UB5.132, UB5.132, Data Analytics Gábor Szárnyas , slides , video

Neo4j had its first stable release in 2010 and soon became one of the defining NoSQL systems, establishing "graph databases" as a new category. These systems represent data as nodes and edges, allowing for intuitive querying and visualization, as well as performance benefits on certain types of queries (e.g. path finding).

In this talk, I give a brief overview of the past, present, and future of graph databases. I first summarize the history of graph database systems, focusing on their main categories and use cases. Then, I discuss the key challenges that continue to hinder the adoption of graph databases, including a fragmented landscape and performance limitations.

I end the talk with recent positive developments: (1) Advances in standardization that led to the ISO GQL and SQL/PGQ languages, (2) Performance increases driven by competition on the LDBC benchmark suite, (3) A new generation of open-source graph database systems such as Kùzu and DuckPGQ

 "Bringing application containers to Incus" ( 2025 )

Saturday at 11:10, 20 minutes, UD2.218A, UD2.218A, Containers Stephane Graber , slides , video

At last year's FOSDEM, I introduced the Incus project, what it was and what it would become over the following year. One of the main highlights and that which gathered the most interest was the support for OCI application containers.

It's now been a few months since Incus first gained support for running application containers, alongside its existing system container and virtual machine support. The work needed to get this done was actually pretty simple thanks to other projects like skopeo and umoci which Incus leverages to handle the OCI images.

In this presentation, we'll be looking at why we wanted to add OCI containers to Incus in the first place, how it was implemented, some of the differences from other implementations and what's planned next to make this even more useful.

 "Homebrew on ARM64 Linux" ( 2025 )

Saturday at 11:10, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning Talks Ruoyu Zhong , slides , video

Homebrew, the popular package manager, thrives on macOS and x86_64 Linux, but a small group of hobbyists has also been leveraging it on ARM64-based Linux devices like Raspberry Pis to install up-to-date software. While Homebrew is not officially supported on ARM64 Linux, this talk explores the technical hurdles for adapting the package manager to this platform. We'll examine the work done so far and the ongoing work needed to make Homebrew more accessible and reliable for ARM64 Linux users.

 "Open Cloud Mesh" ( 2025 )

Saturday at 11:15, 25 minutes, H.1308 (Rolin), H.1308 (Rolin), Collaboration and Content Management Michiel de Jong , video

Personal cloud servers like Nextcloud, ownCloud, SeaFile and CERNBox have for several years now supported the Open Cloud Mesh protocol for inviting collaborators to a document or folder.

Open Cloud Mesh is an authorisation flow, rather than a data access protocol. In this sense it's similar to the role OAuth plays for establishing API access.

Open Cloud Mesh can be used to establish collaboration, after which the actual read/write traffic would for instance be handled via server-to-server WebDAV connections.

This means that Open Cloud Mesh can be used in combination with many other protocols, in many different scenarios, depending on document type and mode of collaboration. The protocol is agnostic about whether the collaboration that is being established concerns for instance a text file or a real-time video conference.

We recently published this protocol as an Internet Draft, we run automated tests between implementers and we recently held a technical workshop about the protocol, where implementers came together to compare notes and discuss possible features to add.

This talk will give an overview of how Open Cloud Mesh works and hopefully we can get into a discussion of how Open Cloud Mesh can be useful to others.

 "Building a watt-meter esp-rs and a rocket backend" ( 2025 )

Saturday at 11:15, 20 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Rust Santiago Saavedra , video

I wanted to have a watt-meter that I could plug into my electrical supply to ensure I didn't trip the max rating at my granparents' when charging an EV. I could have bought a "smart-balancing charger" to handle this for me, but I wanted to keep costs low and learn embedded Rust.

On this talk I'll go over how to manage side-projects, keep objectives reasonable and the technical details and how easy it is to build an API backend using Rocket, handling serialization and parallelism, as well as using Rust on the embedded device, including flashing, demonstrated how this is all integrated into cargo as a build tool.

Wattmeter code: https://github.com/ssaavedra/esp32-amp-sensor Backend: https://github.com/ssaavedra/amp-sensor-backend

 "Unstoppable Force Behind Linux on RISC-V" ( 2025 )

Saturday at 11:20, 35 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), RISC-V Yuning Liang , video

This talk will delve into how DeepComputing and Fedora have strategically collaborated to address the chicken-and-egg challenges in the RISC-V ecosystem, and to achieve Fedora official running on DeepComputing's DC-ROMA series laptops and pads, as well as upcoming workstation and server products. Overcoming the complex barriers involved in this process required seamless collaboration among multiple partners. DeepComputing has played a pivotal role—not only in mass-producing RISC-V-powered devices but also in driving the implementation of proposed solutions. This includes close coordination with SoC partners, product solution providers, and active engagement with the Fedora team to ensure the best outcomes.

 "Improved comments & @mentions" ( 2025 )

Saturday at 11:20, 10 minutes, H.2213, H.2213, LibreOffice Pranam Lashkari , slides , video

Recent improvements in Collabora's online suit based on Libreoffice technology related to comments and the possibility of mentioning other users.

repository: https://github.com/CollaboraOnline/online

 "JOSSCast: Experimenting with Storytelling in Open Research" ( 2025 )

Saturday at 11:20, 25 minutes, AW1.126, AW1.126, Open Research Abigail Cabunoc Mayes Arfon Smith , video

The Journal of Open Source Software (JOSS) bridges the worlds of open source and open research. To amplify this mission, we recently completed the first season of JOSSCast, an experimental podcast designed to test how storytelling can connect researchers, developers, and contributors across disciplines. In this session, I’ll share what we learned from the experience—what worked, what didn’t, and how we can use podcasts to strengthen open research.

You’ll get insights on:

  • The challenges and rewards of using podcasts to support open research.
  • How storytelling can engage both technical and non-technical audiences.
  • Practical tips for creating content that builds community.

Come hear about how we’re using experiments like JOSSCast to innovate and grow the open research ecosystem.

 "Building firmware with firmware-action" ( 2025 )

Saturday at 11:25, 20 minutes, UB4.136, UB4.136, Open Source Firmware, BMC and Bootloader Vojtech Vesely Marvin Drees

At 9elements we do firmware, which is rather niche and complicated. As developing firmware is already difficult enough, we think that building / compiling it should not be. Which is the reason why we made firmware-action -- an automation tool to build firmware, powered by Dagger that can be used on your local machine as well as in CI/CD pipelines.

firmware-action is an open-source tool under MIT license available at https://github.com/9elements/firmware-action

 "Writing a kubernetes controller… But in Rust" ( 2025 )

Saturday at 11:30, 20 minutes, UD2.218A, UD2.218A, Containers Danil , video

Kubernetes API server provides a standardized extension layer, called CustomResourceDefinitions (CRDs). This is a go-to contract, used to implement a controller with added functionality. There are some standard libraries, like controller-runtime and kubebuilder, written in Go, built to integrate with it natively. But what about other languages, like Rust?

How would a controller look like written in Rust? Why would you want to consider writing one? What benefits or downsides this approach might have? And how can a Rust controller still benefit from an established Go ecosystem?

We will explore these topics, compare implementations and share experience over other projects using Rust within kubernetes.

Slides: https://hackmd.io/@UJaEY_gMRYSWN1nvVVscxQ/ByM6GhUdyx

Projects: - https://github.com/kube-rs/kube - https://github.com/kube-rs/kopium - https://github.com/rancher-sandbox/cluster-api-addon-provider-fleet - https://github.com/crust-gather/crust-gather

 "15-minute city in 15 minutes" ( 2025 )

Saturday at 11:30, 15 minutes, AW1.120, AW1.120, Geospatial Ilya Zverev , slides , video

By now everybody should know what a 15-minute city concept is. What amenities are accessible with a 15 minute walk? What parts of a city do not do well in this regard? Much has been talked about, but how would you get this information about your own city? Uhm... Find some maps online? They are outdated and use buckets that are a bit too big for local usage. Calculate those yourself? With what? There has been nothing on Github.

Until now. Here I will demonstrate how 15-minute maps are done, which open source tools help with calculations, and what further opportunities do this new tool provide.

 "ManaTEE: an Open-Source Private Data Analytics Framework with Confidential Computing" ( 2025 )

Saturday at 11:30, 20 minutes, K.4.401, K.4.401, Confidential Computing Dayeol Lee , slides , video

In this talk, we introduce ManaTEE, an open-source framework designed to enable private data analytics for public research. Private data holds immense value not only for businesses but also for critical research domains like public health, economics, social sciences, and civic engagement. However, leveraging such data for analytics comes with significant privacy risks. ManaTEE aims to address these challenges by integrating a set of Privacy Enhancing Techniques (PETs), including confidential computing, to safeguard data privacy without compromising usability. The framework provides an interactive interface through JupyterLab, ensuring an intuitive experience for researchers and data scientists. We will showcase how Trusted Execution Environments (TEEs) ensure both data confidentiality and execution integrity, fostering trust between data owners and analysts. Furthermore, we will highlight how confidential computing can offer additional properties such as proof of execution, enabling researchers to demonstrate the reproducibility and integrity of their results through attestation. Finally, we discuss how ManaTEE simplifies deployment across various confidential computing backends, making secure and private data analytics both accessible and scalable for diverse use cases.

 "Improving compile-time computation of object size" ( 2025 )

Saturday at 11:30, 20 minutes, K.3.201, K.3.201, LLVM Serge « sans paille » Guelton , video

The compiler intrinsic __builtin_object_size and the LLVM intrinsic llvm.objectsize are used to compute the amount of memory allocated given an address. They play an important role in several security-related passes. This talk describes their behavior, where they are used within LLVM and the recent improvements made to their evaluation.

Actually both _FORTIFY_SOURCE, -fsanitize=undefined and -fsanitize=address rely at some point on an efficient implementation of llvm.objectsize and how it is folded by the compiler. I once wrote a small testbed[0] to compare gcc and clang wrt. the folding of __builtin_object_size and they were mostly on par, until something changed and clang started to stop folding some expressions. Using that story as an Ariadne's thread, we'll dive into the folding of this intrinsic, how it's used by various sanitizer and how it has been improved over the past few months.

[0] https://github.com/serge-sans-paille/builtin_object_size-test-suite

 "Kintsugi: A Decentralized E2EE Key Recovery Protocol" ( 2025 )

Saturday at 11:30, 30 minutes, UB4.132, UB4.132, Security Emilie Ma , slides , video

Key recovery is the process of regaining access to end-to-end encrypted data after the user has lost their device, but still has their password. Existing E2EE key recovery methods, such as those deployed by Signal and WhatsApp, centralize trust by relying on servers administered by a single provider.

In this talk, we share our recent work on Kintsugi, a decentralized recovery protocol that distributes trust over multiple recovery nodes, which could be servers run by independent parties, or end users in a peer-to-peer setting. This talk will cover how we developed Kintsugi and its unique security properties, as well as compare it to prior E2EE key recovery work.

See the demo implementation here.

 "Flutter for all the desktops and beyond" ( 2025 )

Saturday at 11:30, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning Talks Michał @Saviq Sawicz , video

We at Ubuntu/Canonical/Mir are working on enabling Flutter to use multiple windows across Desktop platforms.

The (not very well hidden) aim is to bring the abundant Flutter developers and apps to FOSS Desktops. Which is why we actually started on Windows, where most of the Flutter community lives.

I'll show our approach and FOSS inspirations, how and where it's going, and ask you to try it out!

Design document Merge proposals and demos

 "Generational Shenandoah Update: Relevance and Best Practice Recommendations" ( 2025 )

Saturday at 11:30, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Free Java Kelvin Nilsen , video

Generational mode of Shenandoah is a new experimental feature that has been added to JDK24. The generational mode preserves pause-less operation of traditional Shenandoah, while decreasing CPU time consumed by GC and allowing higher allocation rates without degenerated cycles in the same heap sizes. For many workloads, this allows robust deployment in smaller heap sizes.

This talk provides selected performance comparisons with traditional Shenandoah, Generational ZGC, and G1 GC. It provides selection criteria for helping to determine whether Generational mode of Shenandoah is a good match for your service needs. It also provides best-practice recommendations for how to tune Generational Shenandoah to extract the greatest value for your particular service.

 "Testing the QA instructions" ( 2025 )

Saturday at 11:30, 10 minutes, H.2213, H.2213, LibreOffice Gabor Kelemen , slides , video

I will present some first person experiences learned while handholding a relative newcomer to LibreOffice QA, about how easy (or not) is it to pick up speed with bug triaging, bibisecting and more, based on the Wiki instructions.

 "Patterns for maintainer and tech writer collaboration" ( 2025 )

Saturday at 11:30, 30 minutes, K.4.201, K.4.201, Tool the Docs Daniel D. Beck

Users and developers demand more and better documentation but, as a FOSS maintainer, you’re an expert in making software, not documentation. Technical writers are docs experts, but it can be hard to collaborate across that gap of expertise. It’s especially challenging to define and scope the work to be done, leading to misunderstandings and disappointing outcomes, for maintainers and writers alike.

Wouldn’t it be nice to have clear expectations of what your next documentation project would look like and to pull together as a team from the start? In this talk, you’ll get a preview of a new open-source resource for maintainers to help recognize archetypal documentation projects, the skills you’ll need to successfully complete them, and common pitfalls to avoid. And across documentation projects—whether you’re adopting new docs tools, rewriting tutorials, or deleting out-of-date materials—you’ll learn some important themes that will lead maintainers and tech writers to make the docs that users and developers want.


Daniel D. Beck is a documentation consultant who helps software engineering teams make tools, processes, and content that reach developer audiences. His talk draws from experience as a longtime contributor and maintainer of open source software and documentation, including as a current maintainer of Baseline, a browser compatibility tool, and a past role as technical content lead for MDN Web Docs.

 "Swiss Maps in Go" ( 2025 )

Saturday at 11:30, 30 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Go Bryan Boreham , slides , video

Did you know that the 'map' type has a whole new implementation as of Go 1.24? Known as "Swiss Maps", they run as much as 60% faster and 25% smaller.

Originally created in 2016 as a C++ library, Swiss Map uses ingenious bit-manipulation techniques to get more throughput from your CPU.

We'll cover:

  • How does it work?
  • How do benchmarks look for the new maps?
  • New SIMD (single-instruction, multiple-data) support in the compiler.
  • Performance results from real-world applications.
  • Gotchas and caveats.

 "Keeping up with the AOSP" ( 2025 )

Saturday at 11:30, 30 minutes, H.2214, H.2214, Android Open Source Project Amit Pundir Sumit Semwal , slides , video

Keeping up with the AOSP/main branch is hard. In this session the authors will talk about the realities of AOSP development and maintenance from the developer's perspective. They will share their struggles and stories of AOSP development. They will also talk about what is being brewed in AOSP lately: be it the Trunk Stable/Staging development branch model or Generic Bootloader (GBL) initiative or Page-Agnostic AOSP builds to support 16K page-size in GKI or the long-term (7 yrs) software support cycle everyone is talking about.

 "Exploring Open Source Dual A/B Update Solutions for Embedded Linux" ( 2025 )

Saturday at 11:30, 25 minutes, H.1302 (Depage), H.1302 (Depage), Embedded, Mobile and Automotive Leon Anavi , slides , video

Regular software updates are essential for fixing common vulnerabilities and exposures (CVEs), addressing bugs, and adding new features, all while maintaining security and increasing the lifespan of embedded Linux devices. Over the past decade, the landscape has changed significantly, with many high-quality and reliable open source solutions now available, making the development of in-house update solutions unnecessary. During this time, several SOTA solutions using different strategies have come and gone. Open source options based on the dual A/B redundant update scheme have become widely adopted in the industry. This session will focus on three such solutions: Mender, RAUC, and swupdate. We will analyze their strengths and weaknesses, offering guidance on selecting the best solution for different use cases and industries. Additionally, we will explore advanced features such as HTTP streaming, which allows direct installation of updates without the need to download and store the update file locally. We will also discuss the potential of adaptive and delta updates, which are additional features built on top of A/B update schemes. These features minimize data transfer by sending only the changes, rather than the full update files.

The hands-on examples will demonstrate the integration of three different open source solutions: Mender, RAUC, and swupdate - on two different devices: Raspberry Pi 5 and the open source hardware Olimex I.MX8MP SoM, using the Yocto Project and OpenEmbedded. The demonstrations will highlight the differences in setup, configuration, and update management for each solution. Additionally, we will explore support for other build systems such as Buildroot, PTX dist, and distributions like Debia and Ubuntu, emphasizing how each solution integrates with these environments.

This talk is suitable for engineers and developers looking to implement an open source update solution for embedded Linux devices. It will provide a deeper understanding of the technical challenges and available open source solutions, empowering attendees to address these challenges more effectively and focus on enhancing the unique features of their products.

 "Structured Email: Building blocks and implementation guidance" ( 2025 )

Saturday at 11:30, 30 minutes, K.4.601, K.4.601, Modern Email Hans-Jörg Happel , video

Structured Email allows to extend common email messages with a machine readable representation. The talk describes available libraries and implementation experience with the Structured Email Plugin for Roundcube Webmail. The talk also explains ongoing work within the IETF Structured Email working group.

 "KernelCI - upgrading Linux development and integration workflows" ( 2025 )

Saturday at 11:30, 25 minutes, UD6.215, UD6.215, Testing and Continuous Delivery Paweł Wieczorek , slides , video

KernelCI has come a long way. It started as a simple tool that was only building and boot testing ARM devices, but its story didn't end there. KernelCI evolved to actively participate in the workflow of Linux developers and maintainers and is committed to provide a CI system that alleviates their workload.

In this talk Paweł will present how various CI workflow challenges were approached and resolved. He will show how KernelCI integrates with existing tools and highlight recently introduced improvements. Join Paweł to see how it enhances Linux kernel development process and discuss the next chapter of the KernelCI story!

 "How Does Heinz Have 80% of a Commodity Market?* – Leveraging Trademarks in Free Software" ( 2025 )

Saturday at 11:30, 25 minutes, H.1301 (Cornil), H.1301 (Cornil), Legal and Policy Pamela Chestek , video

The software industry traditionally used the right to exclude granted by copyright as the means for generating revenue. Free software came along and flipped the script, giving away for free what traditionally was the primary mechanism for extracting payment. But free software has struggled ever since, trying to figure out how to create value that customers are willing to pay for when they can’t use the copyright that way.

More and more, companies are recognizing and leveraging the truly unique asset in free software – the brand. Ketchup is a commodity market, but Heinz has captured 80% of it by convincing U.S. consumers that Heinz ketchup is better than all the rest. Open source software is similar to a commodity market because the original software may be competing with the identical product. Open source software companies are learning how to develop business models around the brand, convincing customers that the customer will be better served by remaining loyal to the branded product instead of their competitors who are simply copying and distributing the software.

But it’s also possible for companies to overextend their trademark rights to subvert the promise given in the copyright license. Frustrated at free-riding or the perception of it, companies are now also trying to extract revenue through questionable trademark infringement theories.

This session will review the current state of trademark thinking in free software as a revenue strategy, both the appropriate and inappropriate ways to manage the customer relationship through the brand.

*Robert Young, How Red Hat Software Stumbled Across a New Economic Model and Helped Improve and Industry, Open Sources, Voices from the Revolution p. 116 (1999).

 "Build a Great Business on Open Source without Selling Your Soul" ( 2025 )

Saturday at 11:35, 25 minutes, UB5.230, UB5.230, Community Robert Hodges , video

A profitable business is one of the best protections for commercial open source projects and communities that depend on them. Our talk draws on the experience of companies that pulled it off to explain how to do it for your own projects. We’ll discuss commercial models that actually work, giving back to the community, and gracefully collecting money for free software. We'll also discuss topics for larger projects like foundations and taking VC funding. It is possible to balance a strong belief in open source communities with making payroll every two weeks. We've done it and will share our secrets.

 "Six months with Nix & devenv and counting" ( 2025 )

Saturday at 11:35, 20 minutes, K.3.601, K.3.601, Nix and NixOS José Miguel Martínez Carrasco , slides , video

On this talk I present my experience introducing Nix, home-manager, darwin-nix and devenv in a project where most team members use a macbook but we spend quite some time on Linux too.

A declarative configuration - that does not interfere with OSX and company provided tooling - that can be shared with team members to be used with minimum changes - that keeps a working environment on every iteration - that really boosts productivity

adding devenv to the mix - so people with no exposure to nix feel comfortable - so developers have an almost identical setup - so complexity is hiden using processes and services instead of customised containers and scripts

Unfortunately some pain points too - as it was impossible to replicate workflows Linux users were used to - not all available packages can be installed

After this six months experience, this combination is highly recommendable for all projects aiming to enjoy the good parts and some to polish edges I have seen.

 "Huge graph analysis on your own server with WebGraph in Rust" ( 2025 )

Saturday at 11:40, 40 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Rust Sebastiano Vigna , slides , video

Huge graphs, from billions to trillions of nodes and arcs, are more and more common in modern data-intensive applications. Graph compression techniques allow loading and manipulating such graphs into main memory of either high-end workstations or commercial-grade servers, depending on graph size. In this talk, we report about webgraph-rs, a recent clean-slate Rust re-implementation of WebGraph, a state-of-the-art graph compression framework, formerly implemented in Java. webgraph-rs comes as a series of interconnected Rust crates of general interest, including high-performance bit streams, zero-copy (de)serialization, constant-time measurement of heap size for large data structures, and high-performance implementation of succinct data structures . Using webgraph-rs one can load graphs such as the Software Heritage Merkle DAG (about 0.6 trillion edges ) in less than 200 GiB of RAM and visit it in a few hours with a single core.

 "LibreOffice Technology atomic / threading improvements" ( 2025 )

Saturday at 11:40, 10 minutes, H.2213, H.2213, LibreOffice Caolán McNamara , video

With multi-threaded LibreOffice spreadsheet calculations atomic reference counting can become a surprisingly dominant bottleneck. Some profiling data and case studies on implemented improvements in this area.

 "M17 and OpenRTX: one year later" ( 2025 )

Saturday at 11:40, 55 minutes, UB2.147, UB2.147, Radio Marc Balmer Silvano Seva , slides , video

Following the FOSDEM 2024 presentations about M17 and OpenRTX, this talk will provide an insight into the developments carried out by both projects throughout the past year: the first commercial device supporting M17, the support of OpenRTX by the trx-control software, and M17Netd, a Linux daemon that enables the creation of IP links over RF.

 "[RESCHEDULED] Making NooBaa Resilient by Eliminating Single Points of Failure" ( 2025 )

Saturday at 11:40, 30 minutes, K.3.401, K.3.401, Software Defined Storage Shriya Mulay Vaishnavi Deshpande , slides , video

NooBaa is a software-defined storage platform that enables seamless management of object storage across diverse environments. In NooBaa, the database plays a vital role, it stores information related to the object buckets, object indexing, configuration data etc, — but what happens if that database fails or becomes slow? It can bring your entire storage system to a halt, impacting availability and performance.

In this session, we'll discuss the current noobaa architecture, the challenges of NooBaa’s database dependency , along with some real-world examples of outages caused by this. We’ll explore how to safeguard your storage environment and ensure consistent access to your object buckets, even during database failures using different database handling strategies.

links: https://github.com/noobaa

 "Do we need another open source software taxonomy?" ( 2025 )

Saturday at 11:45, 25 minutes, AW1.126, AW1.126, Open Research Sophia Vargas , slides , video

How many times have you built a taxonomy for open source software analysis? Whether you’re writing a survey for open source contributors or categorizing thousands of repositories, you’ve most likely had to create some kind of organizational structure to make sense of the data. Over the course of researching and analyzing open source projects, I’ve searched for and created many bespoke taxonomies to meet my analytical needs. In this talk, I’d like to share key learnings and pitfalls in my pursuit to answer “how do project characteristics influence behavior?”, as well as propose a solution for open source researchers to share and collaborate on open source taxonomies. No one should have build a new OSS taxonomy in a vacuum!

 "Why don't we have `libsync` yet?" ( 2025 )

Saturday at 11:45, 25 minutes, H.1308 (Rolin), H.1308 (Rolin), Collaboration and Content Management Victor Grishchenko , video

An average Linux distro has about half a dozen file syncing libs. The source code we sync with git and other SCMs. But how can we sync some structured data? JSON, for example. Two-way, maybe in real time, for collaboration, revision control, and simply device syncing. As it turns out, there are challenges.

I will outline the history of the question and the ongoing efforts. Then, we will delve into the Replicated Data eXchange format (RDX) and the progress of librdx.

 "Empowering Data Analytics: High-Performance Graph Queries in DuckDB with DuckPGQ" ( 2025 )

Saturday at 11:50, 30 minutes, UB5.132, UB5.132, Data Analytics Daniel ten Wolde , video

In this presentation, we introduce DuckPGQ, an open-source community extension for DuckDB, an in-process analytical database system with a relational data model. DuckPGQ extends DuckDB’s capabilities to support graph processing, leveraging the property graph data model and implementing the SQL/PGQ standard. This enables users to query and analyze graph data within the familiar SQL environment. By harnessing DuckDB’s efficient in-memory architecture, DuckPGQ facilitates fast and seamless graph operations on tabular data and has been shown to outperform traditional graph databases like Neo4j on certain pattern matching queries. Additionally, DuckPGQ supports efficient execution of graph algorithms, enabling complex analytics such as PageRank and clustering operations. We’ll explore how DuckPGQ bridges the gap between relational and graph data, empowering users to perform pattern matching, path-finding, and more—all without needing specialized graph databases and from the convenience of your own laptop.

 "State of Checkpoint/Restore in Kubernetes" ( 2025 )

Saturday at 11:50, 30 minutes, UD2.218A, UD2.218A, Containers Adrian Reber , slides , video

In 2015 a ticket was opened asking for container migration support in Kubernetes. In 2022 the first minimal support to checkpoint and restore containers was added to Kubernetes 1.25 as an Alpha feature. In Kubernetes 1.30 (2024 ) the checkpoint/restore support graduated to the Beta phase.

In this session I want to give an overview what is currently possible in regards to checkpointing and restoring containers in Kubernetes. I want to give details in what way the containerd and CRI-O implementations differ and I want to describe the future plans for checkpoint/restore in Kubernetes.

 "Panoramax: the full FLOSS alternative to share ground level imagery" ( 2025 )

Saturday at 11:50, 25 minutes, AW1.120, AW1.120, Geospatial Christian Quest , video

Panoramax is a FLOSS project initiated 2 years ago in France by OpenStreetMap France and the national geographic institute (IGN).

Its goal is to provide a decentralized way to share and publish street level imagery.

This session will present the current status of the project, the software stack and the standards on which we built Panoramax like STAC and EXIF.

 "O_o [ Flang + WASM ] o_O" ( 2025 )

Saturday at 11:50, 5 minutes, K.3.201, K.3.201, LLVM Serge « sans paille » Guelton , video

Fortran => Scientific Computing => Performance Wasm => In Browser => Portability

Why would someone want to have both? Can Flang actually do that?

 "Poppler - the PDF rendering library" ( 2025 )

Saturday at 11:50, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning Talks Albert Astals Cid , slides , video

Learn about Poppler, the PDF rendering library used by the main Linux desktop applications. Where it came from? What about the name? Which features does it have?

 "Building flashless servers with Open Source Firmware for higher security and better flexibility" ( 2025 )

Saturday at 11:50, 20 minutes, UB4.136, UB4.136, Open Source Firmware, BMC and Bootloader Jean-Marie Verdun , slides , video

We will cover into that talk a new proposal to design and distribute open source firmware in the datacenter world by relying on secure boot from a single component (the BMC) and extensive attestation from the remaining part of a server. The BMC will starts from a network boot and load all required firmware (from PCIe end points, to microcontroller) from a trusted source before starting target. This approach is currently implemented on HPE Gen11 servers which supports Open Source Firmware. Our goal is to enhance security by decoupling the firmware and hardware supply chain, and allowing easier update process.

 "LibreOffice's Python API: Working around limitations of the Pythonic approach" ( 2025 )

Saturday at 11:50, 10 minutes, H.2213, H.2213, LibreOffice Sarper Akdemir , video

LibreOffice's Python API is among the more user-friendly options. It provides extensive functionality in a Pythonic manner right out of the box. However, for aspects of the UNO API that aren't straightforwardly supported, alternative methods may be necessary.

Join me as I demonstrate a few problems on this topic, along with some handy tips and tricks!

 "Supporting Confidential Computing on Arm with Open Source Software" ( 2025 )

Saturday at 11:55, 20 minutes, K.4.401, K.4.401, Confidential Computing Poirier Mathieu , slides , video

This session will present an end-to-end scenario to support confidential computing on Arm (CCA). The first part will focus on a reference implementation stack that integrates firmware, operating system, virtual machine monitor and container environment on QEMU's SBSA platform. From there we will present the verifier that runs in the cloud to attest security claims generated by the reference stack. We will conclude by going over the tooling needed to compute initial Realm measurements and give an overview of a key broker proof-of-concept that works with the stack and verifier to deliver a secret payload.

 "Stalwart Mail Server" ( 2025 )

Saturday at 12:00, 30 minutes, K.4.601, K.4.601, Modern Email Mauro De Gennaro , video

Self-hosting an e-mail server is notoriously challenging. While privacy is a top concern for many individuals and businesses, the complexities of self-hosting a mail server often outweigh the benefits, leading many to choose to sacrifice some privacy and pay a third-party provider to manage their email instead. One of the key challenges of self-hosting an email server is the outdated and complex nature of most available open-source mail server software.

Stalwart Mail Server seeks to change this by providing a modern, open-source mail server built in Rust that prioritizes ease of use, security, and privacy. Designed to simplify self-hosting, Stalwart Mail Server enables individuals and businesses to reclaim their email autonomy with confidence. This talk will explore how Stalwart Mail Server democratizes email, promoting decentralization by making self-hosted email accessible, secure, and efficient. Join us to learn how Stalwart can empower you to take back control of your email in today’s digital landscape.

 "ABI Extractor - Understanding ABI compatibility between compilers targeting RISC-V" ( 2025 )

Saturday at 12:00, 35 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), RISC-V Luis Silva , slides , video

How to ensure that object files from two compilers are ABI (Application Binary Interface) compatible?

This talk presents a tool capable of extracting ABI properties for a RISC-V compiler. This human readable summary can be compared to another version, be it a reference version or one created for a different compiler or with different options, exposing where compatibility problems can pop up.

While the topic may not receive extensive attention, certain methods for ABI validation do exist, most of which focus on libraries. This tool, however, adopts a unique approach by focusing on extracting ABI properties to ensure compatibility between object files produced by different compilers. It covers aspects from data type sizes/alignment to the organization of data in registers and on the stack. For example, it identifies which registers or stack locations are used for variable/struct argument passing and distinguishes caller-saved from callee-saved registers.

 "Privilege Separation In Go" ( 2025 )

Saturday at 12:00, 30 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Go Alvar Penning , video

Most computer programs run with far more privileges than necessary. Many techniques have been developed to drop privileges and split applications into multiple components, each of which can run with the least amount of privileges necessary to do its job. This can greatly reduce the impact of security bugs, as the affected component will hopefully no longer have the rights to spawn other processes or even access files. Relatively small architectural changes can result in huge security gains.

Most privilege separated daemons out there are written in C. However, it is also possible to do this in Go, as this talk will show with almost copy-pasteable examples targeting POSIX-like operating systems.


Both the interactive slides and demo code is available in - the following repository, https://codeberg.org/oxzi/go-privsep-showcase, - this blog post, https://log.0x21.biz/posts/go-privdrop/ and - this future blog post, https://log.0x21.biz/posts/go-privsep/, I have to finalize (will be released soon, I promise).

 "Vulnerability Management at a Scale for the Yocto Project" ( 2025 )

Saturday at 12:00, 25 minutes, H.1302 (Depage), H.1302 (Depage), Embedded, Mobile and Automotive Marta Rybczynska Samantha Jalabert , slides , video

The Yocto Project offers the cve-check class to allow users to check for known vulnerabilities in the packages they include in their distribution. However, the CRA (Cyber Resilience Act) and changes around vulnerability databases require a different approach. The move to multiple databases and more dynamic vulnerability checking is in progress.

In this talk, we will explain the ongoing move to external checking for vulnerabilities in the Yocto Project. This will allow users to verify their distribution years after the release without the original build directory.

As the future of the NVD (National Vulnerability Database) is unknown, we are also considering using other databases, starting with raw data from the CVE (Common Vulnerability Enumeration) program.

The audience will also discover VEX (Vulnerability Exchange), allowing per-product annotations of vulnerabilities: you can finally say, "Not affected, we disabled the vulnerable configuration option!"

This talk is 25 minutes; if we have 50, we can add more content and examples.

 "Project Lilliput - Looking Back and Ahead" ( 2025 )

Saturday at 12:00, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Free Java Roman Kennke

After 3 years of development, Project Lilliput, also known as 'Compact Object Headers' is going to ship JEP 450 in JDK24. We want to celebrate that by looking back at how we got here and talk about what Java users can expect from it. We also talk about why we are not done, yet, how all Java users are going to benefit from 'Lilliput 2' and what it takes to get there.

 "Scaling Open-Source Solutions to Achieve the Sustainable Development Goals: A Global Call to Action" ( 2025 )

Saturday at 12:00, 50 minutes, Janson, Janson, Keynotes Amreen Taneja omar , slides , video

With just five years remaining to achieve the Sustainable Development Goals (SDGs), the window for action is rapidly closing. This session explores how the United Nations and other stakeholders are accelerating efforts toward meeting these goals and how open source solutions are critical. The Digital Public Goods Alliance in collaboration with the UN Envoy on Technology will dive into the role of digital public goods in supporting SDG progress, highlighting innovative initiatives, partnerships, and technologies that can scale impact in areas like health, education, climate action, and more. Join us for a conversation about how the open-source community can unite with governments, NGOs, and the private sector to build the digital infrastructure needed to meet these ambitious goals.

The Digital Public Goods Alliance is a multi-stakeholder UN-endorsed initiative that facilitates the discovery and deployment of open-source technologies, bringing together countries and organisations to create a thriving global ecosystem for digital public goods and helping to achieve the sustainable development goals.

The Office of the UN Secretary-General’s Envoy on Technology is dedicated to advancing the United Nations’ digital cooperation agenda, ensuring that technological advancements benefit all of humanity while mitigating associated risks.

Keynote Presentation:

  1. Brief introduction to the UN’s Sustainable Development Goals and the urgency of achieving them within the next five years.
  2. The unique role of open source solutions in bridging critical gaps and delivering scalable, impactful innovations in health, education, climate action, and beyond.
  3. The Power of Digital Public Goods (DPGs):
  4. Introduction to Digital Public Goods, their role in achieving the SDGs, and how the DPG Standard ensures openness, scalability, and ethical implementation with the latest updates made in it to assess open AI systems.
  5. Case studies of impactful DPGs, showcasing their real-world benefits in addressing systemic global challenges.

Collaboration with the UN Envoy on Technology:

The Global Digital Compact (GDC): 1. The UN Envoy on Technology will present highlights of the GDC, emphasizing its relevance to open source communities and sustainable development. 2. Key areas of focus: - Digital Inclusion: Bridging digital divides through open collaboration and equitable access. - Open-Source as a Foundation: Recognizing open technologies as a cornerstone of global cooperation and innovation.

Special Announcement by the Digital Public Goods Alliance (DPGA):

Formal Recognition of New Flagship DPGs and insights from some other notable DPGs and their alignment with open source principles and the impact of their inclusion as DPGs on advancing global digital equity.

Call to Action:

Engaging the FOSDEM Community: A compelling closing appeal to developers, contributors, and organizations in the open-source ecosystem to: 1. Actively participate in scaling DPGs. 2. Leverage their expertise to support SDG-aligned open initiatives. 3. Join global efforts like ours to create inclusive, ethical, and open digital infrastructure.

 "Exploring the deprecated parts of LibreOFfice API" ( 2025 )

Saturday at 12:00, 10 minutes, H.2213, H.2213, LibreOffice Gabor Kelemen , slides , video

Let's take look at how much of the LibreOffice internal and external API is marked as deprecated and since when. Maybe also ask ourselves whether we are doing fine or we forgot something important we wanted to do.

 "Evolving real-world AsciiDoc into a specification and how it will help the ecosystem" ( 2025 )

Saturday at 12:00, 30 minutes, K.4.201, K.4.201, Tool the Docs Alexander Schwartz , slides , video

Lots of open-source projects use documentation as code to collaborate on web sites and documentation. But how do you integrate the different parts of a documentation pipeline to provide a great contributor and user experience? AsciiDoc is a popular plain text markup language for writing technical content, and lots of open-source projects use it. It’s loved for its rich features and its ability to modularize and reuse content. The AsciiDoc Working Group at the Eclipse Foundation has recently published the AsciiDoc Language documentation, and it is continuing to work on the AsciiDoc Language Specification that is the foundation to define standard parsing rules for the language. This talk showcases different AsciiDoc tools in real-world project documentation pipelines to show what is possible today when you author, verify, convert, and publish content. It also highlights what challenges will be solved with the evolving AsciiDoc Language Specification.

 "Nothing to see here - practical advice to avoid tunnel vision and similar decloaking techniques against VPNs" ( 2025 )

Saturday at 12:00, 30 minutes, UB4.132, UB4.132, Security Till Maas , slides , video

In May 2023, the a decloaking method called tunnelvision raised awareness about security implications about supporting the DHCP option 121. This talk with show practical mitigation methods against this technique and also similar issues that deserve similar attention. This will be from the perspective of the team developing NetworkManager that makes mitigation against this easily available.

 "Continuously Update Everything two years later" ( 2025 )

Saturday at 12:00, 15 minutes, UD6.215, UD6.215, Testing and Continuous Delivery Olivier Vernin , slides , video

In a continuously changing IT world, not being able to adapt is the difference between yesterday's and tomorrow’s projects. Everybody wants the benefits of changes, but nobody wants to endorse its associated risk. From dev to ops, I’ll share why we created Updatecli, an open-source declarative dependency manager. How automation helps us to anticipate, and fix early, our day-to-day challenges, and where the traps lie.

 "Digital Accessibility : Enhancing user experiences for persons with disabilities" ( 2025 )

Saturday at 12:00, 60 minutes, H.3242, H.3242, BOF - Track B Raashi Saxena

We invite open-source maintainers, testers, designers, developers, human rights defenders, researchers, activists, community organizers, digital security experts working, and others currently working within FOSS communities in the Global Majority, to join our gathering.

This gathering focuses on exchanging perspectives, sharing insights, and identifying both challenges and opportunities in designing usable and accessible open source internet circumvention technologies for underrepresented and historically marginalized communities. Through open and collaborative dialogue, we’ll share best practices and collectively strategize inclusive and contextually relevant approaches. In doing so, we hope to foster a practice of mutual support and care, sustaining our effort in contributing to a safer, more equitable, and resilient digital space for those at risk.

We'll facilitate our session like a circle where each participant will get to contribute and share their stories. The outline will roughly be like this:

  • Goal of the session
  • Individual Introduction
  • Questions for group discussion
  • Note-taking and sharing

 "LGPL enforced in Germany: how we helped a purchaser use the courts to compel compliance" ( 2025 )

Saturday at 12:00, 25 minutes, H.1301 (Cornil), H.1301 (Cornil), Legal and Policy Denver Gingerich , video

SFC funded and supported Sebastian Steck's lawsuit against wireless router manufacturer AVM. That lawsuit has recently concluded. At the end of the lawsuit, complete source code for all LGPL works had been made available, which means everything needed to reinstall changes, for the FRITZ!Box 4020. This marks the first time to our knowledge in Germany that an individual purchaser has successfully sued a manufacturer and received complete source code as a result. This talk will describe what the case was about, what the compliance issues were before the lawsuit, and how "the scripts used to control compilation and installation" that AVM provided over the course of the lawsuit brought them into compliance with LGPLv2.1.

 "Incremental Memory Safety in an Established Software Stack: Lessons Learned from Swift" ( 2025 )

Saturday at 12:00, 50 minutes, K.1.105 (La Fontaine), K.1.105 (La Fontaine), Main Track - K Building Doug Gregor , slides , video

In recent years, it has been repeatedly shown that memory safety problems account for the vast majority of security vulnerabilities in software systems. In response, security researchers and government agencies alike have urged software developers to replace their use of C and C++ with memory-safe programming languages. Fortunately, there are several native programming languages to choose from, but there is a catch: you must rewrite your code to get these memory-safety benefits. In today's established software systems, that could mean rewriting hundreds of millions of lines of existing C and C++ code, which is beyond impractical.

To move memory safety forward in an established software system, we propose an incremental approach comprised of three parts. First, use of a memory-safe language (in our case, Swift) for new code or for targeted rewrites. Second, memory-safety improvements to C and C++ that can be applied to large swathes of existing code. Finally, deep interoperability between the memory-safe language and existing C and C++ without sacrificing memory safety. This talk will explore all three aspects of this approach in the context of Swift, and will reflect on lessons learned for both programming language design and rollout in an established software system.

 "Accelerating Android Releases: An Unofficial Guide to Trunk Stable" ( 2025 )

Saturday at 12:00, 30 minutes, H.2214, H.2214, Android Open Source Project Serban Constantinescu , video

Want to stay in sync with Android’s latest features and bring them into your own projects? Join a former Googler and Android team member as we dive into Trunk Stable – Android’s new quarterly release model.

We’ll explore why this change is much needed for improving quality, releasing more frequently, and meeting upcoming regulatory compliance.

You’ll learn how to define features, A/B test them, and make sense of next, trunk_food, and trunk_staging. We’ll discuss strategies for rebasing your changes onto the latest code, managing feature flags with tools like aconfig, and keeping your projects aligned with the newest Android updates.

 "Building an LTE router with a $60 (new!) laptop and a single file" ( 2025 )

Saturday at 12:00, 20 minutes, K.3.601, K.3.601, Nix and NixOS Colin Dean , slides , video

With zero experience with NixOS, I grabbed an unused $60 LTE-enabled laptop bought in a fire sale during the pandemic and an LTE SIM card to build a router for my newly purchased home so I could have the minimal Internet necessary for its security system and home automation without having to record what I did in case the laptop died.

I did this in a few hours with less than 100 lines of Nix. I did not think that it would be this easy. It served my Internet needs for several months without failure.

This talk will cover some hijinks of NixOS, using LTE for home internet somewhere you don't yet live, and the joy of things that Just Work... when they work.

 "Lets discuss performance and scale related challenges BOF" ( 2025 )

Saturday at 12:00, 30 minutes, H.3244, H.3244, BOF - Track C Imaanpreet Kaur Pravin Satpute

We are planning to kick off this BoF by discussing the Continuous Performance Testing (CPT) methodology. At Red Hat, We are implementing this approach to ensure that our projects and products consistently meet the minimum performance and scalability standards with each update.

After that, participants will have the opportunity to discuss the performance and scalability challenges they are encountering, as well as the strategies they are employing to address these issues prior to the final release of their projects or products.

Following these discussions, We intend to arrange dedicated talks later with attendees that will concentrate on the specific performance and scalability challenges they are facing.

 "Things are coming together for Flang tooling" ( 2025 )

Saturday at 12:00, 20 minutes, K.3.201, K.3.201, LLVM Tim Heldmann Peter Arzt , slides , video

At the Scientific Computing Institute at TU Darmstadt, we have experience with developing LLVM-based tools. In the past, however, we usually focused on C/C++ codes via the Clang compiler [1,2]. With the change to flang-new [3] as the default LLVM Fortran frontend, we were interested in developing tooling for Fortran codes. In this talk we want to take you through our journey towards flang‑new based Fortran tooling. After building ~legacy~ established Fortran codes [4,5] with flang-new we wrangled with OpenMPI, employed static analysis tools inside the compile pipeline, and measured performance with the Score‑P [6] profiling library.

We will conclude our talk by presenting first results and describing our first impressions working with the evolving flang-new infrastructure.

This talks is intended for people with an interest in Fortran applications, tooling, or a general curiosity in the possibilities given by the LLVM infrastructure.

 "Foreman Community discussion" ( 2025 )

Saturday at 12:00, 60 minutes, AW1.121, AW1.121, BOF - Track A Nofar Alfassi

Join us for a Foreman community BoF session to connect with fellow contributors, users, and enthusiasts. This is an opportunity to discuss the future of Foreman, share experiences, address challenges, and brainstorm ideas for improving the ecosystem. Whether you're a developer, system administrator, or simply curious about Foreman, your input and participation are valuable!

 "Pick My Project! Lessons Learned from Interviewing and Writing 20+ End User Case Studies" ( 2025 )

Saturday at 12:05, 25 minutes, UB5.230, UB5.230, Community Bill Mulligan , slides , video

Open source projects can promise the moon in their READMEs, but have you ever wondered what causes end users to actually adopt a project? Bill has interviewed over 20 companies in industries ranging from media to financial services about why they picked Cilium for their cloud native platform.

In this talk, he will reveal what end users truly want when adopting open source projects and what the forcing function was for each of them. You’ll hear firsthand accounts of why companies like DigitalOcean, Rabobank, and The New York Times chose to deploy a project to production, the specific benefits these organizations are reaping, from enhanced security and observability to improved performance and cost savings, and all the triumphs and tribulations along the way.

The talk will also teach other open source projects a process for creating impactful case studies to grow their community. By the end, the audience will how to grow their project with a case study program and why end users actually pick a project.

 "LOWA, In Need Of a VCL Plug" ( 2025 )

Saturday at 12:10, 10 minutes, H.2213, H.2213, LibreOffice Stephan Bergmann , slides , video

Putting the pixels of LibreOffice into a browser window. With or without Qt. Asking for interaction.

 "Guix + Software Heritage: Source Code Archiving to the Rescue of Reproducible Deployment" ( 2025 )

Saturday at 12:10, 25 minutes, AW1.126, AW1.126, Open Research Simon Tournier , slides , video

What's Guix? GNU Guix is a software deployment tool that supports reproducible software deployment. As research results are increasingly the outcome of computational processes, software plays a central role. The ability to verify research results and to experiment with methodologies, core tenets of the scientific methods, requires reproducible software deployment.

What's Software Heritage? Software Heritage is a long term, non-profit, multistakeholder initiative with the ambitious goal to collect, preserve and share all source code publicly available. To our knowledge, Software Heritage is the largest publicly available archive of software source code.

Could we connect Guix with Software Heritage? Yes! It makes Guix the first free software distribution and tool backed by Software Heritage, to our knowledge.

This presentation describes design and implementation we came up and reports on the archival coverage for package source code with data collected over five years. It opens to some remaining challenges toward a better open and reproducible research.

 "Scaniverse Universal Scanner Drivers: One Solution for Every Distro" ( 2025 )

Saturday at 12:10, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning Talks Akarshan Kapoor , video

This talk introduces a groundbreaking project aimed at creating a universal solution for scanner drivers across various Linux distributions. By leveraging Snaps and OCI containers, the ScaniVerse project enables the distribution-independent packaging of scanner drivers and applications. This approach enhances flexibility, reduces dependencies, and supports immutable operating systems. Attendees will gain insights into advanced techniques for integrating scanner and printer drivers, including the use of the PAPPL library for retrofitting legacy devices.

The ScaniVerse project is a pioneering initiative designed to streamline the installation and management of scanner drivers across different Linux distributions. By utilizing Snaps, the project enables the creation of distribution-independent packages, allowing scanner drivers to be easily installed on any system that supports snapd. Additionally, scanner applications can be containerized using OCI containers, facilitating their deployment on immutable operating systems. Key components of the project include the integration of scanner support into the PAPPL library, originally developed for printer applications. This integration supports multi-function devices and provides a unified driver format for both printers and scanners. The project also focuses on retrofitting legacy scanners to ensure continued support for older hardware.

GitHub Link Dev Report Introduction to the Project

 "Program a Tiny Computer!" ( 2025 )

Saturday at 12:15, 90 minutes, UD6.205, UD6.205, FOSDEM Junior Bernat Romagosa John Maloney

In this introductory, hands-on workshop you will learn how to program an inexpensive, battery-powered, pocket-size computer (micro:bit or Calliope mini) to respond to buttons, tilts, shakes, light, and more. Display icons or short animations or the LED display or play tunes through the built-in speaker.

This workshop will use MicroBlocks, a blocks language similar to Scratch. It is suitable for beginners aged 10 and up working independently or younger children working with a parent.

To participate, you will need a laptop computer (not a mobile device).


Activities during FOSDEM Junior follow the Code Club policies and health and safety standards.

  • All attendees must have an adult with them
  • Remember to bring your laptop with you
  • You must book a place to attend
  • Please don’t come if you are feeling unwell

Participants are required to sign up for this activity via the registration form.

 "CryptPad: Recent Advances in Privacy and Collaboration" ( 2025 )

Saturday at 12:15, 40 minutes, H.1308 (Rolin), H.1308 (Rolin), Collaboration and Content Management Fabrice Mouhartem , slides , video

CryptPad is an open-source and end-to-end encrypted collaborative office suite. Since its inception 10 years ago, it has been actively developed at XWiki to offer a unique combination of privacy and collaboration. In this talk I will summarise CryptPad's development to date, from a single-page prototype to a full-blown office suite. I will then give an overview of the progress made in the last year including: accessibility and mobile, performance improvements, cloud instances, and work on the OnlyOffice integration to name a few. Finally I will give a glimpse of things to expect in 2025.

 "Learn Python programming using Hedy" ( 2025 )

Saturday at 12:15, 90 minutes, UD6.203, UD6.203, FOSDEM Junior Jesús Pelay Pink van de Hel Annelies Vlaar

Hedy is a programming language that aims to teach textual programming to kids. Hedy's unique approach involves gradual changes in the syntax of the programming language, so students are not overloaded with information right away. This devroom is aimed at students from 9 to 12 years old, but anyone with a desire to start learning programming (or teaching) with text based language is welcome. You'll need your own laptop (no installs needed, Hedy is webbased) and reading- and basic typing skills (or someone to help you read and type). No prior programming experience is needed. When you have finished all 18 levels of Hedy, you know the basics of Python.


Activities during FOSDEM Junior follow the Code Club policies and health and safety standards.

  • All attendees must have an adult with them
  • Remember to bring your laptop with you
  • You must book a place to attend
  • Please don’t come if you are feeling unwell

Participants are required to sign up for this activity via the registration form.

 "GRUB - Project Status Update" ( 2025 )

Saturday at 12:15, 20 minutes, UB4.136, UB4.136, Open Source Firmware, BMC and Bootloader Daniel Kiper , slides , video

The presentation will discuss current state of GRUB upstream development.

 "Understanding Ceph: A Journey from Metrics to Tracing" ( 2025 )

Saturday at 12:15, 30 minutes, K.3.401, K.3.401, Software Defined Storage Marcel Lauhoff , slides , video

While metrics provide valuable insights into system behavior, they often lack the detail to really understand the system. In this talk, we will explore how tracing techniques can complement metrics to provide a more detailed view of Ceph operations, enabling deeper analysis and troubleshooting.

 "Concurrency Testing using Custom Linux Schedulers" ( 2025 )

Saturday at 12:20, 25 minutes, UD6.215, UD6.215, Testing and Continuous Delivery Johannes Bechberger Jake Hillion , slides , video

Consider you want to have a concurrency bug that requires threads to run in a specific order. Wouldn't it be great if you could stop and start threads at random? Prevent them from being scheduled onto the CPU? And the best part: Without the application being able to prevent this, like it could do with POSIX STOP and START signals? In come the scheduler extensions for the Linux Kernel. Introduced in version 6.12, they allow you to quickly write your own schedulers with eBPF, and can be the base for simple libraries that enable you to start and stop threads directly in the Linux kernel. This opens the possibility of creating complex scheduler scenarios at a whim.

In this talk, we'll show you a prototypical sched_ext-based library for concurrency testing.

 "Immutable All the Way Down - using System Extensions to ship Kubernetes" ( 2025 )

Saturday at 12:20, 30 minutes, UD2.218A, UD2.218A, Containers Thilo Fromm , video

There are many ways to get container runtimes and Kubernetes on a node, all with their benefits and drawbacks. This talk will present shipping Kubernetes as a system extension with systemd-sysext – a self-contained, immutable, verifiable, distribution independent disk image. We’ll also look into automated in-place updates, both from the OS as well as the Kubernetes side.

The talk includes multiple live demos, from a single node deployment to cover sysext basics to a full-blown Kubernetes cluster deployed with ClusterAPI which we’ll then update live. While all demos will use Flatcar Container Linux - an immutable special purpose OS optimised for container workloads – the mechanisms demonstrated are distro independent and cloud be used on any Linux distribution.

 "Unlocking Open-Source Capabilities in the Copernicus Data Space Ecosystem" ( 2025 )

Saturday at 12:20, 25 minutes, AW1.120, AW1.120, Geospatial Pratichhya Sharma , slides , video

The satellites of the Sentinel family are Europe's eye in space – managed by the European Space Agency (ESA). They observe the earth continuously and collect enormous amounts of data that provide valuable insights into environmental, climatic, and geospatial changes. These data are used for various applications, including Land Use and Land Cover (LULC) mapping, environmental monitoring, disaster response, climate change analysis, and agricultural monitoring. The Copernicus Data Space Ecosystem makes these data freely available to users, along with tools for processing and analysis. It encourages researchers, developers, and organizations to use these products for various applications, from scientific studies to practical environmental monitoring solutions. These products include but are not limited to, Sentinel data, Digital Elevation Models (DEMs), mosaics, and service products like biophysical parameters such as FAPAR (Fraction of Absorbed Photosynthetically Active Radiation). In addition to these products, the ecosystem also provides a range of tools, including cloud-computing environments and APIs, to simplify and enhance the usability of Earth Observation data. In this session, we will explore how, in addition to freely available data, the Copernicus Data Space Ecosystem provides several open-source capabilities to simplify and enhance EO data usability. These include a cloud-computing environment like JupyterLab, a user-friendly Copernicus Browser for easy data exploration, and APIs like STAC and openEO for streamlined data access and integration. By offering these resources openly, the Copernicus Data Space Ecosystem supports a growing community of users, helping them turn satellite data into actionable knowledge to address global challenges.

 "Updates on Coconut SVSM: Secure Services and Stateful Devices for Confidential Virtual Machines" ( 2025 )

Saturday at 12:20, 20 minutes, K.4.401, K.4.401, Confidential Computing Stefano Garzarella Oliver Steffen , slides , video

The Coconut community is actively developing the Secure VM Service Module (SVSM) to provide secure services and trusted device emulation for guest operating systems running in Confidential Virtual Machines (CVMs). Originally designed for AMD SEV-SNP, Coconut SVSM is evolving into a multi-platform solution, with ongoing efforts to integrate support for Intel TDX Partitioning.

This talk will dive into the current progress of Coconut SVSM, focusing on the emulation of devices such as the virtual Trusted Platform Module (vTPM), based on the reference implementation from the Trusted Computing Group (TCG). At this stage, the vTPM in Coconut SVSM is ephemeral, being re-manufactured with each boot. To unlock broader use cases, the community is working on introducing a persistent state for SVSM, enabling the vTPM to preserve its state across reboots. This enhancement will also allows us to support UEFI variable store to support Secure Boot.

Achieving this persistence requires storing encrypted state securely on the untrusted host, with early boot-time attestation to decrypt and validate the state. This process raises several technical challenges that we are actively tackling.

Join us to explore the latest progress in Coconut SVSM, the challenges we’ve overcome, and the exciting opportunities still ahead.

 "Beautiful remote web dialog widgets built on LOT" ( 2025 )

Saturday at 12:20, 10 minutes, H.2213, H.2213, LibreOffice Szymon Kłos , video

LibreOffice Technology provides great engine for processing the documents with LibreOfficeKit. For more advanced usage in a user-friendly fashion the good UI is needed. JSDialog API provides way to interact with existing dialogs and build bespoke widgets for different platforms in the browser.

 "Bringing terminal aesthetics to the Web with Rust (and vice versa)" ( 2025 )

Saturday at 12:25, 40 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Rust Orhun Parmaksız , video

Everyone loves the terminal! It's simple, efficient, and fast — almost everything the web is not.

What if I told you it is possible to build terminal-like web applications with Rust and vice versa?

Join me in this talk, where we explore the future of the terminal and the web and how the Ratatui ecosystem is bringing these two worlds together. We will take a look at example Rust projects that achieved this, their implementation, and the challenges that we are facing.

Get ready to be visually impressed!

 "Remote Execution with Buck2 and Nix" ( 2025 )

Saturday at 12:25, 20 minutes, K.3.601, K.3.601, Nix and NixOS Claudio Bley , video

In this talk, I will present how to integrate the Nix package manager with Buck2, an open-source build system developed by Meta, to achieve highly granular and reproducible builds across different platforms.

By integrating Nix and Buck2, developers can benefit from Nix's robust package management and reproducible build environments, while also taking advantage of Buck2's scalable and efficient build system.

I will dive into the details of using remote execution services that support the Bazel remote execution protocol with Buck2 in conjunction with Nix's remote build capabilities and showcasing that using a sample project.

 "An introduction to Torch-MLIR" ( 2025 )

Saturday at 12:25, 20 minutes, K.3.201, K.3.201, LLVM Marius Brehler , slides , video

The Torch-MLIR project [1] builds a bridge between the world of machine learning and the LLVM project by providing compiler support from the PyTorch ecosystem to the MLIR ecosystem. This short tutorial covers:

  • The projects structure and how to build it
  • The TorchOnnxToTorch conversion
  • Decomposing complex ONNX
  • Lowering from Torch to LinAlg and other lower level dialects

Furthermore, it is discussed how you can get involved and what opportunities especially exist for first time contributors to contribute (code) to the project.

[1] https://github.com/llvm/torch-mlir/

 "Ladybird - a new independent browser written from scratch" ( 2025 )

Saturday at 12:30, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning Talks Jelle Raaijmakers , slides , video

Ladybird is a brand-new browser & web engine. Driven by a web standards first approach, Ladybird aims to render the modern web with good performance, stability and security. Currently in heavy development, we take a quick look at its progress, architecture and challenges.

 "The SELinux problem that cast a months long shadow" ( 2025 )

Saturday at 12:30, 30 minutes, UB4.132, UB4.132, Security Matyas Horky , slides

In February 2024, Red Hat released an update to insights-core, a package providing host data for Red Hat Insights. It slipped through our testing and caused all SELinux-enabled systems to crash the service, stopping the hosts from reporting. Even though the patch was released two days later, we couldn’t fix the hosts ourselves, and had to figure out which customers are affected and how to even contact them. It was a big lesson to both engineering and management. We’d like to share this story with the public.

 "[REPLACEMENT] Take the Polar Plunge: A Fearless Introduction to Apache Iceberg™" ( 2025 )

Saturday at 12:30, 30 minutes, UB5.132, UB5.132, Data Analytics Danica Fine , video

New to Apache Iceberg™ or just starting to test the waters? Time to take the plunge! In this beginner-friendly session, we’ll introduce you to the core features of this high-performance table format and what it has to offer your data team as you build out your modern data lakehouse.

We’ll start by exploring where Iceberg fits within the context of data warehouses, data lakes, and other data storage formats. From there, you’ll be introduced to some of Iceberg’s key features, like schema evolution, hidden partitioning, and ACID-compliant transactions. You’ll see how these capabilities help to solve real-world challenges in scalability, performance, and data consistency. We won’t stop there, though! Next, we’ll go even deeper beneath the surface and explore the open-source tools, query engines, and catalogs that make up the Iceberg ecosystem. Through an end-to-end demo, you’ll see Iceberg in action and learn how you can leverage its features to streamline your data management and drive better insights.

By the end of the session, you’ll have the foundation you need to get started applying Iceberg to solve your own data challenges. So come along, and we’ll take the polar plunge together!

 "(Almost) everything I knew about Java performance was wrong" ( 2025 )

Saturday at 12:30, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Free Java Andrew Haley , video

Much of the advice given to Java programmers seeking efficiency is misleading or out of date.

This talk is a result of the author's experience trying making the Java Virtual Machine more efficient, but it isn't just for JVM engineers, it is also relevant to Java programmers. We will cover wide-issue processors, branch and memory-access prediction, and the way Java programmers can use tools to illuminate what is really going on inside a computer when it runs their programs.

If you're looking for a talk about huge memories or millions of threads, this isn't it. Rather, it's about how small details can have surprising effects.

Mechanical Sympathy is when you use a tool or system with an understanding of how it operates best. "You don't have to be an engineer to be be a racing driver, but you do have to have Mechanical Sympathy."

Project: https://github.com/openjdk/jdk

 "Go-ing Easy on Memory: Writing GC-Friendly code" ( 2025 )

Saturday at 12:30, 30 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Go Sümer Cip , video

Motivation

Computer Science curriculums often focus on theoretical lessons, such as how garbage collection (GC) works under the hood or the trade-offs between different GC designs. However, there is much less emphasis on how to write GC-aware code in languages like Go. This is surprising since most of these practices are language-agnostic.

This is a significant gap, especially given GC's impact on application performance. Profiling data from real-world applications consistently shows that a considerable amount of time is spent on memory allocation and GC-related activities.

This talk will be a practical session on writing memory-efficient code, supported by an understanding of Go's garbage collection and memory allocation internals.

The talk

Introduction

I will begin by discussing the motivation behind this talk and explaining why this topic is crucial, backed by empirical profiling data from real-world applications.

Essentials

Next, I’ll provide a high-level overview (a 10,000-foot view) of stack, heap, and GC concepts. This segment will be brief but necessary to establish a foundational understanding.

Main

  • Walk through real code examples and demonstrate techniques for writing memory-efficient Go code, such as avoiding pointers, preventing overallocation of slices, minimizing the overuse of interfaces and generics and many more, clarify misconceptions about sync.Pool and leverage it effectively.

  • Short Overview of Go's standard tooling for observing memory usage and GC behavior: memory profiler, benchmarking tools, escape analysis, GC configuration, execution tracer. Shed more light on less known/used tools like execution tracer.

Finish

Finish the talk by emphasizing that writing allocation-friendly code is crucial for maintaining application performance and should not be overlooked and a wrap-up.

 "Mox and simplifying mail server setup & management" ( 2025 )

Saturday at 12:30, 30 minutes, K.4.601, K.4.601, Modern Email Mechiel Lukkien , slides , video

Mox is a relatively young modern, all-in-one mail server. One of its goals it making it easy to setup a mail server, and keeping it up to date. In this talk, we'll look at how mox helps with setting up and running a mail server. From the original quickstart with its environment checks, setting up initial DNS records and modifying them later on, notifying about new mox releases and installing them, to a future easier guided setup process and automatic DNS management.

 "Managing copyrights in free software projects - discussion panel" ( 2025 )

Saturday at 12:30, 25 minutes, H.1301 (Cornil), H.1301 (Cornil), Legal and Policy Krzysztof Siewicz , video

For FSF-copyrighted GNU packages, FSF insists on executing copyright assignments and employer disclaimers. These are designed to ensure steady and continuing enforcement of the GPL, as well as to serve other important purposes related to licensing and copyright management. The maintainers of some GNU packages would like to use a simple mechanism called "Developer Certificate of Origin" (DCO). It is hard, and some lawyers think it's even impossible, for a DCO to allow FSF to enforce the GPL. However, we at the FSF have once promised to accept DCOs and to draft a DCO that would best serve the needs of the free software community. We want to fulfill this promise after a broad discussion about issues surrounding copyright assignments: their importance, best approaches, and challenges in managing copyrights in free software projects.

Panelists: James Bottomley, Andrea Corallo, Ludovic Courtès, Karen Sandler, Craig Topham

Panelists will elaborate on the following questions: 1) How to ensure swift enforcement of the GPL? 2) How to protect free software against third party claims, including employers' copyright or patent claims? 3) How to enable swift relicensing or adding additional permissions, while protecting software against appropriation? 4) How to remove any challenges a contributor might encounter with the process?

 "Booting blobs between U-Boot and Linux" ( 2025 )

Saturday at 12:30, 25 minutes, H.1302 (Depage), H.1302 (Depage), Embedded, Mobile and Automotive Marek Vasut , slides , video

Various blobs like PSCI provider or TEE are currently started between BootROM and the U-Boot bootloader. This has multiple downsides, the blobs are difficult to update and the blobs may configure the platform in a way that prevents U-Boot from accessing all system resources, thus making it less useful as a debug tool. This talk explains how to start U-Boot before most of the blobs, thus giving it full unrestricted access to the platform, and how to start the blobs from U-Boot afterward, so Linux can still access the services like PSCI provided by the blobs. Finally, the talk hints at how to perform a safe A/B update of the blobs.

Project link: https://www.u-boot.org/

 "Docs Straight from the Code: AST-Powered Automation" ( 2025 )

Saturday at 12:30, 30 minutes, K.4.201, K.4.201, Tool the Docs James (purpleidea) , video

Mgmt is a cutting-edge, real-time, automation tool designed to be fast, safe, and revolutionary. Our goal wasn't just to replicate legacy tools but to surpass them-- and we believe we've done exactly that. Mgmt is now powering real production workloads, showcasing its potential to redefine what's possible in automation.

Empowering our users starts with great documentation! To achieve this, we aimed to minimize the time spent maintaining our docs while ensuring they stay perfectly in sync with the code. So we developed custom AST parsing code that automatically converts code into a structured data format. We then use a GoHugo templating system to publish it in a polished and user-friendly way.

All of this code is open source, making it available for others to use and benefit from! We'll also show how even a small project could do this.

I'll deliver live demos throughout, ensuring the concepts come to life.

You'll also get a glimpse of how mgmt can revolutionize your workflows-- it might just become your go-to tool for managing documentation pipelines!

For those who want a head start, check out our blog posts. Reading a few before the talk will provide a great background of the topic!

 "Forking Android considered harmful" ( 2025 )

Saturday at 12:30, 30 minutes, H.2214, H.2214, Android Open Source Project Chris Simmonds Stefan Lengfeld , slides , video

If you want to use Android for your custom project, then you are almost inevitably going to have to modify the platform code. Typical reasons include supporting specialised hardware, running dedicated system services and pre-installing system apps. AOSP, and some parts of the Board Support Packages, are open source, so what's stopping you just changing the bits you need to? Indeed, this is the standard development model for Android platforms: fork; modify; repeat. Of course, we all know that forking is bad but there isn't any choice, especially when it is so difficult up merge changes upstream

Well, maybe there is a choice, In this talk we will examine the problems created by simply forking Android, and we will look at various ways to make the process more maintainable. In particular we will look at using local_manifests, and at maintaining out of tree patches for AOSP. In the latter case, we will talk about the tooling required to track patch sets ("layers") and the dependencies between them.

We hope that this will spark a conversation in the community through which we can establish best practice for maintaining custom Android systems without forking

 "Distributed real-time collaboration for Writer - a first prototype" ( 2025 )

Saturday at 12:30, 15 minutes, H.2213, H.2213, LibreOffice Thorsten Behrens , slides , video

Come to see a first prototype of a CRDT-based real-time distributed collaboration implementation - for being able to collaboratively comment on a Writer document, from a number of distributed LibreOffice instances (desktop, browser or cloud).

 "DevOpsDays meetup" ( 2025 )

Saturday at 12:30, 30 minutes, H.3244, H.3244, BOF - Track C Katie McLaughlin

DevOpsDays is a global series of technical conferences run entirely by local volunteers, started in Ghent in 2019.

This BOF is a space for DevOpsDays organizers and volunteers to collaborate and discuss future plans for their events, and share lessons learnt during their events.

 "The Psychology Behind Communities: Why Do We Really Contribute?" ( 2025 )

Saturday at 12:35, 25 minutes, UB5.230, UB5.230, Community Mia Bajić , video

Have you ever wondered why people get involved in community work? If you think it's just about networking, think again! Let's talk about the deeper motivations rooted in our brains: from fast and slow thinking to the role of the amygdala, our basic human needs, and the impact of collective loneliness on society.

 "The AFF3CT framework for building numerical communication chains" ( 2025 )

Saturday at 12:35, 55 minutes, UB2.147, UB2.147, Radio Olivier Aumage , slides , video

The AFF3CT framework (https://aff3ct.github.io/) is a free and open-source environment under MIT license for building numerical communication chains in the context of software-defined radio applications. It has been developed over about a decade by Inria and the IMS and LIP6 research labs to enable the design, simulation, validation and production-oriented exploitation of building blocks, such as error correction code modules, in chains such as satellite DVB-S2 video transmission or 5G communications. AFF3CT has been designed with a focus on efficiently using the hardware parallelism available in modern multicore processors. This talk will present a brief overview of AFF3CT's capabilities and architecture.

The AFF3CT open source repositories are available at the following links: - AFF3CT GitHub repo: - https://github.com/aff3ct/aff3ct.git - AFF3CT's task-based runtime system StreamPU repo: - https://github.com/aff3ct/streampu.git - AFF3CT's SIMD intrinsics wrapper library MIPP repo: - https://github.com/aff3ct/MIPP.git - AFF3CT's DVB-S2 SDR example repo: - https://github.com/aff3ct/dvbs2

 "Closed data, open software: building new ways into the French web archives" ( 2025 )

Saturday at 12:35, 25 minutes, AW1.126, AW1.126, Open Research Guillaume Levrier Dorothée Benhamou-Suesser , slides , video

This presentation aims at presenting a fully open-source pipeline to extract, curate, and explore web archives, a captive data source whose access is restricted. Its purpose is to detail both the technical pipeline and the socio-institutional setting that made it possible to emerge, highlighting the challenges of developing open tools for closed sources.

The French web archives is an institutional repository of data maintained by the French National Library (BnF). It contains more than 2 petabytes of data spanning over close to 30 years, which accounts to more than 50 billion web pages. Access to this data is restricted under the heritage and legal deposit law: academic researchers willing to work on web archives as data are expected to submit research projects that, upon a formal or informal agreement, will enable them to access this data. But what then? Building the methodological means to pursue epistemological goals in that context is particularly challenging. Web archivists do provide toolkits for exploration. Recent initiatives have scaled up the effort to make these sources more accessible. The RESPADON project has successfully managed to build a “captive web archive” capacity into the Hyphe software, and in doing so has opened a new way into developing tools for such data.

In this presentation, we will present a new solution to extensively study, at the qualitative level, specific topics in the full-text indexed collections of the French web archives. Built around the PANDORÆ software, this pipeline has been designed to interrogate the captive data source on site, but also extract relevant metadata in a compliant manner to enable its exploration off-site, while ensuring reproducibility by publishing the code. In doing so, this pipeline provides an up-to-date example of the “one-way mirror” situation of building open tools that are fit to operate on closed data sources.

 "Latest implementation of AMD SEV-SNP in OVMF" ( 2025 )

Saturday at 12:40, 20 minutes, UB4.136, UB4.136, Open Source Firmware, BMC and Bootloader Richard Lyu , slides

As confidential computing continues to gain importance, AMD SEV-SNP has matured within the open-source community. This session will provide an overview, from the OVMF perspective, of how it integrates with QEMU and the Linux Kernel to encrypt memory and safeguard memory security in a virtualized environment. The session is open to UEFI developers as well as virtualization, kernel, and security developers. Attendees will gain insights into how AMD SEV-SNP in confidential computing protects systems in virtualized environments, the latest upstream development progress, and an analysis of the protections it offers. The session will also address whether these protections are adequate and if there is a need to adopt this technology.

 "Add RISC-V support to your favorite Operating System" ( 2025 )

Saturday at 12:40, 35 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), RISC-V Adrian Vladu , slides , video

This presentation focuses on the perspective of an Operating System maintainer - how easy it is to add RISC-V support to a Linux based operating system nowadays.

The case study is done on a FOSS Operating System - Flatcar Container Linux. Flatcar Container Linux (https://flatcar.org) is a Container-optimized Linux distribution, CNCF incubated project, which has Gentoo as an upstream distribution.

We will go through the steps required to add RISC-V support, from the Linux Kernel quirks, the bootloader paradigms, and to the generic software support from the wider community: systemd, Docker, Kubernetes.

An important part that will be thoroughly presented is the current state of the art hardware availability combined with virtualization support, very much needed for testing and faster iteration.

 "Trust No One: Secure Storage with Confidential Containers" ( 2025 )

Saturday at 12:45, 20 minutes, K.4.401, K.4.401, Confidential Computing Aurélien Bombo , slides , video

If you are processing and storing sensitive data in the cloud, can you really trust anyone (including the cloud)? The answer is no. Confidential Containers (CoCo) is a CNCF project that leverages Trusted Execution Environments (TEEs) to tackle this challenge. A critical aspect in this effort is providing secure and confidential storage solutions that can be seamlessly deployed across cloud providers.

This session explores the implementation of trusted storage in CoCo, highlighting key aspects such as Kubernetes storage drivers, device virtualization, and the role of attestation in secure key release and data encryption. We also demonstrate how we prevent attackers from injecting data into the TEE using the CNCF Rego policy language.

Overall, we aim to show how cloud providers and end users can securely store and protect sensitive data, enabling the adoption of confidential computing across numerous use cases.

 "Automatic Documents, packed with content and signed" ( 2025 )

Saturday at 12:45, 10 minutes, H.2213, H.2213, LibreOffice Michael Meeks , slides , video

Many processes are packed with document generation, and forms of various types, from applications to contracts. Come and hear how new APIs built on LibreOffice Technoloy provided by Collabora Online can make building complex documents easier. From populating fields, to making richer templates, to tweaking chart data, our new Automatic Document REST APIs here enable powerful document interaction - both creation and extraction of data with a simple JSON based API.

Whether you want to extract data from docx files, generate richer templates for subsequent editing, or enable powerful electronic signature functionality - have we got an API for you!?

Come and hear how to use and improve it.

 "Automating Low-Level Firmware Validation with Robot Framework" ( 2025 )

Saturday at 12:45, 15 minutes, UD6.215, UD6.215, Testing and Continuous Delivery Maciej Pijanowski , slides , video

Validating low-level firmware presents unique technical challenges, from automating hardware control operations to testing interactive UEFI firmware menus. In this presentation, we delve into how the Dasharo Open Source Firmware Validation (OSFV) project uses Robot Framework, an open-source automation tool, to address these complexities.

Drawing from years of firmware development experience across diverse hardware platforms ranging from network appliances to workstations we will showcase how OSFV tackles: - automating hardware interactions such as GPIO toggling, UART communication, power control, video output capture, USB devices simluation, and more, on a wide variety of hardware platforms, - testing dynamic and interactive firmware interfaces, including menu navigation and switching configuration options, - managing the variability of real-world hardware environments to ensure repeatable and reliable test execution.

 "Terra Draw: Drawing on all the web maps!" ( 2025 )

Saturday at 12:50, 25 minutes, AW1.120, AW1.120, Geospatial James Milner , video

Dealing with web mapping can be complicated, and when tasked with the requirement of drawing on one, things can quickly become a challenging, especially when dealing with complex requirements. Enter Terra Draw: an open source JavaScript library designed to simplify and standardise drawing functionality across popular web mapping libraries such as Leaflet, OpenLayers, Google Maps, MapboxGL JS, and MapLibreGL JS.

Terra Draw offers a versatile set of built-in drawing modes, enabling seamless creation of geometries. The library supports simpler geometry types like points lines and polygons, but also more complex modes like rectangles, circles and sectors. There is also advanced functionalities like snapping, rotation, and scaling, which often require significant effort to implement from scratch. These functionalities are designed to "just work" across the different mapping ecosystems.

The library’s modular design promotes extensibility, allowing developers to create custom drawing modes and adapters for new mapping libraries that may come along. Thanks to its decoupled architecture, any mode can work with any adapter, creating a multiplier effect. This flexibility also ensures that swapping out one mapping library should be much simpler, as the drawing logic is abstracted away from the mapping library.

In this talk, we’ll explore the origins of Terra Draw, demonstrate how to get started, and provide a glimpse of what's possible with it. Whether you're a seasoned developer or just starting with web maps, you'll walk away with practical insights on how Terra Draw can be used in your project.

 "Scaling Ceph-SMB connections" ( 2025 )

Saturday at 12:50, 30 minutes, K.3.401, K.3.401, Software Defined Storage Sachin Prabhu , slides , video

The SMB service in Ceph uses a Samba container to export the Cephfs volume using the vfs_ceph_new plugin. We hit a problem when scaling the number of client connection which results in resource exhaustion on the server host. This was determined to be caused by Samba's forking model and the way data is cached by libcephfs. This presentation delves deeper into the cause of this problem and the proposed solution - the multiplexing proxy.

 "Play with Kube using Podman" ( 2025 )

Saturday at 12:50, 20 minutes, UD2.218A, UD2.218A, Containers Mario Loriedo , slides , video

Accessing a Kubernetes cluster for the first time can be daunting. But that’s the price for testing Deployments, Volumes, and other Kubernetes objects, right? Nope. There is an easier way that doesn’t entail learning how to deploy a Kubernetes cluster.

One of the least-known commands of Podman is kube play, and it’s fantastic. It works as kubectl apply and supports the same objects but doesn’t need a Kubernetes cluster. It supports Pods, Deployments, Volumes, ConfigMaps, and many other Kubernetes resources and runs on Linux, macOS, and Windows. It has some additional features compared to kubectl, such as using local images.

This talk will discuss using kube play and its alter-ego kube generate to simplify Kubernetes’ first experiences.

 "system-manager: unleashing nix on (almost) any distro" ( 2025 )

Saturday at 12:50, 20 minutes, K.3.601, K.3.601, Nix and NixOS Ramses , slides , video

Nix offers an alternative to the well-known container-based deployment flow, and can offer several benefits compared to those container-based deployments. However, it's not immediately obvious how you would use nix to deploy services on machines running Linux distributions other than the nix-native NixOS. To address this, we developed a tool called system-manager, which allows you to manage certain aspects of the system configuration of a Linux system using nix, while leaving others to be managed using the usual tools of the underlying distribution.

 "Typed HTML in my Python?" ( 2025 )

Saturday at 12:50, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning Talks Athena Wolfskämpf (she/her) , slides , video

Not everything needs to become a string! At least not so fast. Don't lose your typing information when building templates for Django, Flask, FastAPI or even without any framework.

With htpy you can write templates just like you write Python, including full support for mypy or pyright checks.

I will show you how to get started with htpy and show you some patterns that make your components reusable and typesafe.

 "MLIR-based Data Tiling and Packing for Ryzen AI NPU" ( 2025 )

Saturday at 12:50, 20 minutes, K.3.201, K.3.201, LLVM Jorn Tuyls , slides , video

The Ryzen AI NPUs consist of an array of vector processors and programmable interconnect to allow granular control of compute and data movement to achieve high performance and power efficiency. This talk presents a MLIR-based data tiling and packing design for these NPUs that leads to optimized machine instructions. Specifically, it shows how we can derive and optimize how data flows through the array from high-level tiling decisions and how we can efficiently utilize a high degree of data packing by leveraging low-level DMA control and capabilities.

 "Optimizing AutoText & settings for multi-tenant collaboration" ( 2025 )

Saturday at 12:55, 10 minutes, H.2213, H.2213, LibreOffice Caolán McNamara , video

Overview of a feature implementation in Collabora Online, building on LibreOffice Technology, where autotext and other presets and configuration data can be supplied both at an individual user level and at an organization level, via their wopi server, to a Collabora Online instance serving multiple organization tenants.

 "Towards a purely open AOSP: Adding Android-like functionality to AOSP" ( 2025 )

Saturday at 13:00, 30 minutes, H.2214, H.2214, Android Open Source Project Bernhard "bero" Rosenkränzer , video

AOSP is a great start - but increasingly doesn't deliver all the functionality you'd expect in a phone OS. Even the mail client that was present in early AOSP is no longer there: You're expected to use the closed-source GMail app.

This talk explains shows how to get most Android functionality on AOSP without having to use closed source applications.

It covers integrating GMS-like services through microG and Open Source alternatives to applications typically preinstalled on Android phones, as well as tricks for better integration of alternatives.

 "Build better Go release binaries" ( 2025 )

Saturday at 13:00, 30 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Go Dimitri John Ledkov , slides

go build . is a very common way to build and release binaries for go projects. But there are many settings one can pass to go to build better release binaries. This talk will give overview of compile time optimizations, give guidance on re-releasing, apply CGO hardening as recommended by OpenSSF, upgrading dependencies, ensuring binaries can be scanned for vulnerabilities, ensure codebase is compatible with popular go forks for FIPS compliance, and are easier to reproduce.

 "A memory allocator with only 0,006% fixed overhead written from scratch" ( 2025 )

Saturday at 13:00, 50 minutes, K.1.105 (La Fontaine), K.1.105 (La Fontaine), Main Track - K Building Nils Goroll (slink) , slides , video

How can you efficiently allocate tiny (kilo to megabyte sized) objects on petabytes of storage? Write a memory allocator from scratch which uses less than two bits per 4KB. This talk focusses on an interesting aspect of the SLASH/ storage engines for Varnish-Cache which uses a simple yet super efficient buddy memory allocator, a very well known algorithm from the 1960s. The primary novelty of this implementation is that it uses a fixed amount of metadata at about two bits per minimum page size. It also supports prioritized fair waiting allocations and an interactive live view.

 "To Mine Or Not To Mine - Training of (Generative) AI Models under the TDM Exception in EU Copyright Laws" ( 2025 )

Saturday at 13:00, 25 minutes, H.1301 (Cornil), H.1301 (Cornil), Legal and Policy Lisa Käde , video

For the training of generative AI models, developers usually have to gather large amounts of mostly copyrighted data (texts, images, code, music etc.). Datasets are provided online for download or can be assembled individually via crawling & scraping.

In both cases, copies and sometimes further adjustments of data are necessary in preparation for AI training - acts relevant to copyright law, usually requiring a license. Since June 2021, the "text and data mining exception", introduced via the DSM directive, is a part of national copyright laws in the member states of the EU, allowing for license-free copies for the purposes of text and data mining (TDM). It is since being discussed whether the TDM exception can be applied to the training of (generative) AI models, and how respective reservations can be made in a "machine-readable format".

The talk will present the first German court decision (09/2024) on the application of the TDM exception to AI analysis and provide an overview of the discussion regarding the applicability of the TDM exception to AI training in Germany. Participants are also invited to join a constructive discussion regarding the feasibility of a machine-readable reservation and the importance of international / EU-wide (copyright) rules on AI training.

 "Preserving LHC Analyses with Rivet: A Foundation for Reproducible and Reusable Particle Physics Research" ( 2025 )

Saturday at 13:00, 25 minutes, AW1.126, AW1.126, Open Research Christian Gutschow , slides , video

In high-energy physics, ensuring that analyses remain reproducible and interpretable over time is a significant challenge. As the Large Hadron Collider (LHC) produces vast datasets and as analyses evolve, reproducibility becomes crucial for both current and future research efforts. Rivet (Robust Independent Validation of Experiment and Theory) addresses this challenge by providing a framework for the preservation and reinterpretation of LHC analyses. This talk will discuss how Rivet facilitates analysis preservation, enabling researchers to reproduce, validate, and reuse complex particle collision studies long after initial publication. We’ll explore specific use cases, including how Rivet supports reinterpretation for new physics searches, and the technical underpinnings that make Rivet an indispensable tool for long-term data analysis preservation. This presentation will emphasise Rivet’s role within the broader landscape of open science and data preservation, with insights into its integration with other high-energy physics frameworks. Attendees will gain a clear understanding of Rivet’s contributions to sustainable research practices and reproducibility within the scientific community.

 "Ethersync – Real-time Collaboration in Your Text Editor!" ( 2025 )

Saturday at 13:00, 10 minutes, H.1308 (Rolin), H.1308 (Rolin), Collaboration and Content Management blinry , slides , video

We'll introduce you to our project "Ethersync," a software and protocol for real-time collaboration. The goal is to make it feel like Etherpad, but for entire projects, on the local file system, and with Neovim, VS Code, or your other favorite text editors! We’ll talk about our vision, technical implementation, and the challenges we encountered along the way.

Collaborating with software like Etherpad or Hedgedoc feels a bit like magic: you can instantly see what others are typing. The downside is that you need to be online to access the content—since the document is on a server, it disappears as soon as you disconnect.

We’re working on an open-source software called "Ethersync" to bring real-time collaboration to the file system! We want to make it possible to write notes and documentation together, and we’re also considering use cases like pair programming—directly in Neovim, VS Code, or perhaps your favorite text editor soon. We’re following a "local-first" approach, ensuring you always have control over your data since it’s stored on your own hard drive.

In this talk, we’d like to explain our vision for this type of collaboration and show you our progress and current prototype. We’ll discuss some of the problems we’ve encountered and dive into the underlying technology (like Conflict-Free Replicating Data Types and Operational Transform).

Finally, we'll discuss how you can get involved: For example, we could use help developing plugins for more text editors! We'll go over the Ethersync protocol, and discuss how it could help interoperability between collaborative projects.

 "No more broken docs: keep docs accurate with Doc Detective" ( 2025 )

Saturday at 13:00, 30 minutes, K.4.201, K.4.201, Tool the Docs Ariel Kaiser Jake Cahill , slides , video

Documentation often struggles to keep up with development cycles. Your users become testers of inaccurate information, which leads to a poor experience. But what if you could test your documentation for accuracy and catch breaking changes before your users do?

This short talk shows how you can improve your docs-as-code workflows with automated testing. Attendees will hear an explanation of Doc Detective and its testing framework. We will also show off some implementation strategies and automation to help keep your docs current.

 "Monitoring Security Operations with JDK Flight Recorder Events" ( 2025 )

Saturday at 13:00, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Free Java Seán Coffey , slides , video

Java Flight Recorder (JFR) provides deep visibility into cryptographic operations offering developers unprecedented insights into their applications' security behavior. Learn how to leverage these JFR events to monitor and analyze cryptographic operations in production Java applications with minimal overhead.

 "usb9pfs: network booting without the network" ( 2025 )

Saturday at 13:00, 25 minutes, H.1302 (Depage), H.1302 (Depage), Embedded, Mobile and Automotive Ahmad Fatoum Michael Grzeschik , slides , video

Linux v6.12 adds usb9pfs as a new USB gadget function, which can be used to mount a filesystem provided over USB.

Booting from an external rootfs in the form of NFS is already a staple in embedded systems development, but multiple issues complicate its usage:

  • network interface required , which may not always be available
  • Interference with normal network setup, especially in existence of switches
  • Requires setup of multiple services: DHCP, TFTP, NFS...

By using usb9pfs for the rootfs, these limitations can be avoided on all devices that feature a USB gadget port.

This talk will discuss the design of 9p and usb9pfs and showcase how streamlined development on a Yocto root file system can be with both barebox and Linux making use of usb9pfs.

 "Unlocking the Power of Property-Based Testing" ( 2025 )

Saturday at 13:00, 15 minutes, UD6.215, UD6.215, Testing and Continuous Delivery Merlin Pahic , slides , video

Most developers approach unit testing by manually defining specific examples to verify the expected behaviour. With this approach, catching all the edge cases can be tricky – or tedious.

Property-based testing offers an alternative, by emphasizing general properties or rules that should hold true across a wide range of inputs. By automatically generating test cases, property-based testing provides broader coverage and can uncover issues that are difficult to find with conventional techniques.

In this talk, we'll explore property-based testing, breaking down how it works and when to use it. We'll cover:

  • Core principles of property-based testing and how it differs from example-based approaches.
  • Practical techniques for identifying useful properties in various domains, including algorithms, data structures and APIs.
  • Tools and libraries that enable property-based testing in popular programming languages.
  • Real-world examples of how this approach has uncovered critical bugs and improved test coverage.

This session is designed for developers curious about expanding their testing toolbox. Whether you're new to property-based testing or looking for ways to apply it in your work, this talk will provide practical guidance and resources to help you get started.

 "A Practical Introduction to using sq, Sequoia PGP's CLI" ( 2025 )

Saturday at 13:00, 30 minutes, UB4.132, UB4.132, Security Neal H. Walfield , slides , video

sq is Sequoia PGP's primary command line tool. After seven years of development, we've just released version 1.0.

In this talk, I'll present sq. I'll start by discussing sq's design philosophy. In particular, I'll explain how sq aims to firstly be a tool for end users, and not developers writing scripts, and what that means for users of the tool. I'll then present how sq is different from other tools in the ecosystem. In this regard, one of the most important differences is that sq explicitly does not support curated keyrings; users have to authenticate all of the certificates that they use. At first blush, this may sound like a usability nightmare, but I'll show how sq supports users by managing evidence, which simplifies these decisions. Finally, I'll demonstrate several workflows. These include how to verify files, how to create and manage a certificate, how to find a certificate and use it, and how to create and manage a CA for your organization.

 "How to Deploy Full-Scale Secure On-Prem E-Mail Security Cluster as IaC" ( 2025 )

Saturday at 13:00, 30 minutes, K.4.601, K.4.601, Modern Email Carsten Rosenberg Manu Zurmuehl , video

In times of complexity and easy cloud computing - is it still value-able to maintain an on-prem mail cluster with open-source tools? We will showcase our approach to sizing and rolling out a complete and flexible mail infrastructures, highlight why we chose Ansible for IaC, our approach to template the configuration and automatic documentation generation. We continue to update and develop our roles to incorporate our best practices, develop new features and counter latest security threats. Our Ansible Playbooks and Roles to roll-out this full fledged E-Mail infrastructure are open-source and publicly available. The setups are maintained either by us, the customer with our support or also completely independent.

 "Rust for Linux" ( 2025 )

Saturday at 13:00, 50 minutes, Janson, Janson, Keynotes Miguel Ojeda , slides , video

Rust for Linux is the project adding support for the Rust language to the Linux kernel.

This talk will give a high-level overview of the project and will walk its history from the beginning -- it sounds like it was yesterday when we started, but it has been more than 4 years now.

How did the endeavor start? What challenges have we faced? Who are the people behind it? Which projects do we collaborate with? How are we reconfiguring a large system with huge inertia while it keeps running? Can a similar approach be applied to other projects? What do kernel developers think about Rust?

Speaking about Rust, why did we go with Rust, and not something else? How stable is the Rust we use in the kernel? What does it mean to use unstable features in this context? How did we hedge against those? What is the situation with distribution toolchain support? What about GCC and Rust?

And most importantly, since this is open source: how can someone contribute?

 "NGI Zero network meetup BOF" ( 2025 )

Saturday at 13:00, 60 minutes, AW1.121, AW1.121, BOF - Track A Ronny Lam

NLnet is inviting (prospect) NGI Zero projects to meet & greet, and have a discussion about the Next Generation Internet.

 "Mozilla Contributors: Newcomers and Old timers Meetup" ( 2025 )

Saturday at 13:00, 60 minutes, H.3244, H.3244, BOF - Track C Danny Colin

Come learn about contribution opportunities across all Mozilla. We have opportunities for both developers and non-developers (user support, localization, documentation). It's a great opportunity for newcomers to ask questions and for old timers to have a casual chat with other contributors about their works; or help newcomers to get started.

 "Six Degrees of Kevin Bacon - Open Source Community Edition" ( 2025 )

Saturday at 13:05, 25 minutes, UB5.230, UB5.230, Community Lori Lorusso , video

The open source community can be siloed at times. People tend to ‘stay in their lane’ and don’t realize what they may be missing out on by not expanding their network. I know time is limited and it’s impossible to participate in every community so how do you become like Kevin Bacon? How do you set yourself up to be connected to people in various communities that you may be able to help or vice versa without being present at every meeting? I’m going to show you how you can channel your inner Kevin Bacon and learn how to expand your network like your funding counted on it!

 "New, shiny WebGL presentations in the browser" ( 2025 )

Saturday at 13:05, 10 minutes, H.2213, H.2213, LibreOffice Szymon Kłos , video

LibreOfficeKit has new API to expose slideshow elements: content, animations, transitions and notes. Short story about composing the impressive 3D slideshows in WebGL directly in the browser.

 "no more boot loader: boot using the Linux kernel" ( 2025 )

Saturday at 13:05, 20 minutes, UB4.136, UB4.136, Open Source Firmware, BMC and Bootloader Marta Lewandowska , slides , video

We will introduce nmbl (no more boot loader), our fast, secure boot scheme based on the Linux kernel. GRUB is a powerful, flexible, fully-featured boot loader used by many distributions on multiple architectures, but its complexity is difficult to maintain, and it necessarily lags behind the Linux kernel exposing many security holes. The kernel itself, on the other hand, has a large developer base, fast feature development, quick responses to vulnerabilities, and much better overall scrutiny. Our approach is to use the Linux kernel as its own boot loader in the form of a unified kernel image (UKI). Loaded by the EFI stub on UEFI, an UKI is made up of all the components needed to reach the final boot target: the kernel, initramfs, and kernel command line, in one signed bundle. All necessary drivers, filesystem support, and networking are already built in and code duplication is avoided. We will describe the work and testing done so far and our approach to customization, as well as fallback, and hope for your feedback and use cases.

 "Abusing reborrowing for fun, profit, and a safepoint garbage collector" ( 2025 )

Saturday at 13:10, 40 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Rust Aapo Alasuutari , slides , video

Rust's references adhere to a strict "one exclusive XOR many shared" model, which gives the language much of its greatest safety guarantees. Reborrowing is a feature that seems on surface to break this rule: An exclusive reference can be turned into shared references and those shared references can be used together with the exclusive reference as long as these are all used as if they were shared references. Only once the exclusive reference is used as exclusive, all the derived or "reborrowed" shared references are invalidated. The XOR rule is upheld, but in a way that breaks a literal reading of the rule.

Usually reborrowing is used temporarily but what if we make it our modus operandi? This talk explores using and slightly abusing reborrowing and comes out the other side with an awkward but functional safepoint garbage collector built upon reborrowing a ZST marker and a whole load of typed indexes. The garbage collector is part of the Nova JavaScript engine.

https://trynova.dev/

 "RA-WEBs: Remote Attestation for WEB services" ( 2025 )

Saturday at 13:10, 20 minutes, K.4.401, K.4.401, Confidential Computing Yoshimichi Nakatsuka , slides , video

Data theft and leakage, caused by external adversaries and insiders, demonstrate the need for protecting user data. Trusted Execution Environments (TEEs) offer a promising solution by creating secure environments that protect data and code from such threats. The rise of confidential computing on cloud platforms facilitates the deployment of TEE-enabled server applications, which are expected to be widely adopted in web services such as privacy-preserving LLM inference and secure data logging. One key feature is Remote Attestation (RA), which enables integrity verification of a TEE. However, compatibility issues with RA verification arise as no browsers natively support this feature, making prior solutions cumbersome and risky.

To address these challenges, in this talk, we present RA-WEBs (Remote Attestation for Web services), a novel RA protocol designed for high compatibility with the current web ecosystem. RA-WEBs leverages established web mechanisms for immediate deployability, enabling RA verification on existing browsers. We will show preliminary evaluation results and highlight open challenges when introducing RA to the web.

 "Accelerating QuestDB: Lessons from a 6x Query Performance Boost" ( 2025 )

Saturday at 13:10, 30 minutes, UB5.132, UB5.132, Data Analytics javier ramirez Jaromir Hamala , slides , video

In this talk, we share our journey in making QuestDB, an Apache 2.0-licensed open-source time-series database, a significantly faster analytical database. Over the course of just one year, we achieved query performance gains of up to 6x by implementing specialised data structures, SIMD-based optimisations, scalable aggregation algorithms, and parallel execution pipelines.

QuestDB is designed for high-performance ingestion—processing millions of rows per second—and efficient queries over billions of rows. While it excelled in time-based queries, we found that certain generic analytical queries were slower than expected. In this session, we’ll walk through how we identified opportunities for improvement, the key changes we implemented, and how those changes delivered dramatic performance improvements in a relatively short timeframe.

We’ll demonstrate before-and-after queries to showcase the impact of these optimisations. All the code is freely available in QuestDB's GitHub repository for anyone to explore or contribute to.

 "Comparing Fuchsia components and Linux containers" ( 2025 )

Saturday at 13:10, 30 minutes, UD2.218A, UD2.218A, Containers Claire Gonyeo , slides , video

Fuchsia is a new (non-Linux) operating system from Google, and one of the key pieces of Fuchsia's design is the component framework. Components on Fuchsia have many similarities with some of the container solutions on Linux (such as Docker): they both fetch content addressed blobs from the network, assemble those blobs into an isolated filesystem structure that holds all the dependencies necessary to run some piece of software, and launch namespaced processes with that created directory as its root.

The most interesting details are where these two projects diverge. Both have different use cases and requirements, which leads to different strengths between the systems. This talk will largely be focusing on where and why these two similar technologies diverge.

Relevant links: - Fuchsia's source code - Fuchsia's code review - Getting started page

 "NethServer 8: Solid Foundation for Self-Hosting Web Applications" ( 2025 )

Saturday at 13:10, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning Talks Gabriel Cossette , slides , video

Self-hosting Web applications is a practice that is useful both in the personal and business context. Depending on the situation, we can enjoy better privacy, flexibility, performance and reduced costs. However, some "boring" aspects we need to think about are backups, authentication, security, scalability and management across servers.

In this lightning talk, I will present a new multi-server container-based solution that sets a solid foundation for self-hosting, while remaining simple to use and operate: NethServer 8.

 "NextGraph : Build collaborative, local-first and decentralized apps" ( 2025 )

Saturday at 13:15, 10 minutes, H.1308 (Rolin), H.1308 (Rolin), Collaboration and Content Management Niko Bonnieure , slides , video

NextGraph is an open source ecosystem providing solutions for end-users (a platform) and software developers (a framework), wishing to use or create decentralized apps featuring: live collaboration on rich-text and JSON documents, peer to peer communication with end-to-end encryption, offline-first, local-first, portable and interoperable data, total ownership of data and software, security and privacy.

Centered on repositories containing semantic data (RDF), rich text, and structured data formats like JSON, synced between peers belonging to permissioned groups of users, it offers strong eventual consistency, thanks to the use of CRDTs. Documents can be linked together, signed, shared securely, queried using the SPARQL language and organized into sites and containers.

 "Zap the Flakes! Leveraging AI to Combat Flaky Tests with CANNIER" ( 2025 )

Saturday at 13:15, 15 minutes, UD6.215, UD6.215, Testing and Continuous Delivery Daniel Hiller , slides , video

Flakes aka tests that don’t behave deterministically, i.e. they fail sometimes and pass sometimes, are an ever recurring problem in software development. This is especially the sad reality when running end-to-end tests where a lot of components are involved. There are various reasons why a test can be flaky, however the impact can be as fatal as CI being loaded beyond capacity causing overly long feedback cycles or even users losing trust in CI itself.

Ideally we want potential flakes to be flagged at the earliest stage of the development lifecycle, so that they do not even enter the end-to-end test suite. We want a gate that acts as a safeguard for developers, pointing out to them what kind of stability issues a test has. This reduces CI user frustration and improves trust in CI. At the same time it cuts down on unnecessary waste of CI system resources.

This talk will explore the CANNIER approach, which aims to reduce the time cost of rerunning tests. We will take a closer look at the feature set used to create training data from existing test code of the KubeVirt project, enabling us to predict probable flakiness of a certain test with an AI model.

We will cover how a subset of the CANNIER feature set is implemented, how it is used to generate training data for an AI model, and how the model is used to analyze flakiness probability, generating actionable feedback for test authors.

Attendees will gain insight on how the CANNIER approach can help them improve test reliability, ultimately enhancing overall software quality and team productivity.

 "An introduction to building and using LLVM libc" ( 2025 )

Saturday at 13:15, 25 minutes, K.3.201, K.3.201, LLVM Peter Smith , slides , video

LLVM libc has been steadily growing over the past few years. From its origins as an overlay to be used on top of an existing libc, LLVM libc is now complete enough and scalable enough to be used on embedded toolchains too.

This talk will contain: * LLVM libc's current status. * Why you might want to use LLVM libc. * How to build it for linux and an embedded system. * How to use a prebuilt example from LLVM Embedded Toolchain for Arm. * Other uses including the Google Pigweed SDK.

LLVM libc in llvm-project https://github.com/llvm/llvm-project/tree/main/libc

 "Go in the Nix ecosystem: vulnerability scanning and experiments towards a next-gen builder" ( 2025 )

Saturday at 13:15, 20 minutes, K.3.601, K.3.601, Nix and NixOS Paul Meyer , slides , video

After looking at the current way Go code is packaged in nixpkgs using buildGoModule, disadvantages are pointed out with a focus on security (backed by data from govulncheck-nixpkgs project) and performance. Out-of-tree alternatives are presented with a focus on the new and promising approach of gobuild.nix, which implements a hook-based builder with module-level caching.

 "COOL – LibreOffice Technology in the browser" ( 2025 )

Saturday at 13:15, 10 minutes, H.2213, H.2213, LibreOffice Michael Meeks , slides , video

Collabora Online (COOL) delivers collaborative document editing based on LibreOffice Technology to any modern browser. Come and hear about how we've been improving usability, deploy-ability, performance, feature-set and georgeousness of Collabora Online. See how COOL can be deployed and catch the excitement of making code simpler, faster and better for users at pace.

Finally hear how you can get involved with the fun.

 "RISC-V Unified Database: Streamlining the Ecosystem with a Centralized Source of Truth" ( 2025 )

Saturday at 13:20, 35 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), RISC-V Afonso Oliveira , slides , video

The RISC-V ecosystem currently relies on multiple disconnected repositories and specifications, including the assembly manual, opcode database, formal specifications like Sail and the non-machine readable ISA manual. This fragmentation of information is error prone and makes it hard for hardware designers, researchers, and tool developers to efficiently find, modify, and verify essential data. To address these challenges, we introduce the RISC-V Unified Database (UDB), a single, machine-readable source that consolidates and cross-validates RISC-V specifications against established resources like binutils and riscv-opcodes. Built through collaboration between engineers at industry-leading companies, the UDB already generates version-specific ISA manuals, instruction indexes, and standardized opcode definitions. Ongoing work extends to generating simulator configurations for QEMU and other instruction set simulators. The UDB's YAML-based format ensures broad compatibility and positions it as a foundation for next-generation RISC-V tools. This approach is starting to gain traction with official RISC-V working groups, including the Certification Steering Committee, which already uses the UDB for generating certification requirements. This talk explores UDB’s architecture, showcases its use cases, and invites you to contribute to this transformative project for the RISC-V community.

 "Connecting the Geospatial Dots with Raku" ( 2025 )

Saturday at 13:20, 10 minutes, AW1.120, AW1.120, Geospatial Brian Duggan , slides , video

Geospatial programming often requires stitching together a variety of formats, interfaces, APIs, libraries, tools and languages. How can we fluidly download data from OpenStreetMap using the Overpass Query Language, run performant queries with GEOS, store and manipulate GeoJSON or WKT-formatted data with duckdb's spatial extention, and then visualize things with a javascript library like Leaflet or Deck.gl?

This talk explores Raku's expressive and powerful style as we mesh together all of these things, creating new modules along the way, and leapfrogging ahead of other implementations with some of Raku's unique features such as NativeCall for native libraries, Grammars for parsing, multiple modes of interacting with command line tooling, and plentiful concurrency models. Also let's see how we can rein in large language models so that we can apply them judiciously to our data and our code.

Links:

raku-geos, Geo::Basic, WebService::Overpass, Geo::Geometry, Duckie, WebService::Nominatum

 "LibreOffice-based document editing in XWiki through COOL" ( 2025 )

Saturday at 13:25, 15 minutes, H.2213, H.2213, LibreOffice Lavinia Vitel , video

XWiki is a wiki engine, and, as with most wiki engines, it allows uploading attachments to wiki pages. In order to edit these attachments quickly, we recently released an extension allowing to link an XWiki instance with a COOL server, and thus enabling real-time collaboration office files attached to wiki pages.

This presentation will focus on the technical integration of COOL with XWiki, and will discuss use-cases that we identified over the years, as well as the roadmap for this extension. The application code can be found at https://github.com/xwikisas/application-collabora

 "SMB3.11 Unix Extensions current status" ( 2025 )

Saturday at 13:25, 30 minutes, K.3.401, K.3.401, Software Defined Storage Volker Lendecke , slides , video

There have been a lot of talks in the past years about how to present Linux/Posix semantics over the SMB3.11 protocol to provide an alternative to the NFS protocol for installations that already have existing SMB infrastructure and who could benefit from better semantics when sharing files to Linux and other Posix-based file server clients.

In the past few months there has been a great deal of progress in Samba towards the goal of better supporting Linux clients. Notable changes are improvements to present special files like sockets and FIFO files to clients. There has been improvements to better support operations like chmod and chown in the Linux client and the Samba server.

The biggest change on the Samba side has been an overhaul of handling native symlinks. Samba 4.22 will present symlinks for Posix clients in the same way Windows presents symlinks it finds on its local NTFS file system.

This talk will present the current status of the ongoing work to improve Linux file system semantics presented over the SMB protocol.

 "CartABl: instrumenting the authoring of interactive maps and figures" ( 2025 )

Saturday at 13:25, 25 minutes, AW1.126, AW1.126, Open Research OlivierAubert , video

The talk will introduce CartABl https://igarun.univ-nantes.io/CartABl/ , a free (GPL) web-based authoring tool for creating interactive maps and figures, and discuss its impact on user workflows and design decisions. Designed primarily for geographers and cartographers, CartABl also serves broader communities seeking to produce interactive cartographic content. It addresses the technical barrier that coding poses to creating interactive cartographic content (using js) through a graphical interface for defining interactions. It integrates seamlessly with traditional workflows by enhancing maps created in vector graphics editors like Inkscape or Adobe Illustrator with interactivity, without requiring programming knowledge. CartABl leverages SVG (Scalable Vector Graphics) as its base format, embedding interactive rules as declarative elements interpreted by a lightweight JavaScript runtime. This results in standalone, browser-compatible interactive SVG files, preserving the scalability and versatility of the format.

The development of CartABl follows an instrumental genesis approach, where tool and user co-evolve through iterative feedback. Initial prototypes allowed basic interactivity like tooltips and layer toggling. Feedback from its application in projects such as L’Atlas Bleu, a journal focused on coastal and marine maps, guides its refinement. This iterative process not only improves the tool but also influences how cartographers structure and design their graphical maps and figures: the structure of the graphical objects must be adapted to facilitate the definition of interaction rules, and the interactive features proposed by the tool impact the design decisions of the users.

CartABl aims to democratize interactive cartography, making it accessible and intuitive for professionals and non-experts alike. By transforming workflows and expanding the possibilities of digital cartographic publishing, it stands out as a valuable resource for advancing geographic and graphic research and communication.

 "Breaking things for fun and profit" ( 2025 )

Saturday at 13:30, 25 minutes, UD6.215, UD6.215, Testing and Continuous Delivery Marcos Albe , video

A disk full, a saturated or lossy network, too-few CPU cores, an unexpected IO error… how will your software handle such scenarios?

In this talk we present a collection of tools that can be used to systematically "break" things, so you can write test cases and make sure that these unexpected situations will be handled gracefully by your software: ToxiProxy, charybdefs, tc qdisc, strace --inject, taskset, numactl, cgroups and syscall overloading, all can be used to emulate a wide array of failures.

 "A database for your program state" ( 2025 )

Saturday at 13:30, 30 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Go Dylan Reimerink , slides , video

Pretty much every application has state, the bigger your application the more state you have. Things can get challenging when you are asking much of your state. You might need to maintain multiple indexes into your state, react to changes to the state, keep multiple pieces of state in sync and make sure that all of it is thread-safe for multiple readers and writers. Doing this for one piece of state is a challenge, but doing it for a few dozen is painful.

Presenting, StateDB (cilium/statedb) a non-persistant in-memory database of your application state. It was created to tackle state management challenges experienced by Cilium. It leverages Go features such as generics, iterators, channels and Go’s garbage in combination with immutable data structures to make complex state management easy.

StateDB provides Multi Version Concurrency Control (MVCC) through snapshots, indexing(multiple indexes per table, unique and non-unique indexes, composite keys), write transactions across multiple tables and the ability to watch for changes on a whole table or a subset of data. To name a few.

Let's explore StateDB together and take a little peek under the hood.

 "API documentation testing with AI user simulation" ( 2025 )

Saturday at 13:30, 30 minutes, K.4.201, K.4.201, Tool the Docs Lisa Driukova , slides , video

In open-source projects, contributors often wear many hats—developer, tester, writer—and resources are typically stretched thin. This multitasking environment can make it challenging to maintain comprehensive and accurate API documentation. Yet, high-quality documentation is vital for the usability and adoption of any open-source project.

This talk focuses on how AI can help simplify one aspect of documentation development: testing. By using AI to simulate user interactions, we can efficiently identify gaps and inconsistencies in API documentation that a contributor might miss due to exceptional knowledge of the topic.

By integrating AI-driven user simulations into your workflow, you can improve the quality of your documentation while managing multiple responsibilities more effectively. This approach not only benefits individual contributors but also strengthens the overall success and sustainability of open-source projects.

 "Enhancing Email Spam Detection with LLMs: Practical Experience with Rspamd and GPT" ( 2025 )

Saturday at 13:30, 30 minutes, K.4.601, K.4.601, Modern Email Vsevolod Stakhov , video

This talk explores the practical implementation of Large Language Models (LLMs) in email filtering, giving the example of the integration between Rspamd and various LLM services. We'll discuss how LLMs can complement traditional filtering methods, comparing supervised (Bayes) and unsupervised (LLM-based) approaches to spam detection.

We'll examine real-world results from different models (GPT-3.5, GPT-4, and alternatives via OpenRouter), analyzing their effectiveness, false positive rates, and cost implications. The presentation will cover advanced features such as content categorization, password extraction from archives, and message anonymization for privacy-preserving learning.

Special attention will be given to practical deployment considerations, including:

  • Cost-effective strategies for different scales of operation
  • Self-hosted models vs. cloud APIs
  • Privacy considerations and message anonymization techniques
  • Integration with existing email infrastructure
  • Extended message analysis capabilities

The talk will conclude with insights into future developments and best practices for implementing LLM-based email filtering in both personal and enterprise environments.

Target Audience: Email administrators, spam filtering specialists, and developers interested in modern email security solutions.

 "Quo Vadis, class space? A look at class metadata storage in the Hotspot JVM" ( 2025 )

Saturday at 13:30, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Free Java Thomas Stüfe , video

This talk looks deeper at class metadata storage in the Hotspot JVM and the changes JEP 450 "Compact Object Headers" brought. We will examine the mechanics and CPU cache effects of oop iteration and propose a more cache-friendly solution. We will investigate the class storage limits and possible ways to circumvent them. Finally, we will examine an alternative to the current class space solution.

 "Using DPoP to use access tokens securely in your Single Page Applications" ( 2025 )

Saturday at 13:30, 30 minutes, UB4.132, UB4.132, Security Alexander Schwartz Takashi Norimatsu , slides , video

OAuth 2.0 uses access tokens to grant access to secured resources. When using Single Page Applications, they are passed from browsers to the servers as bearer tokens using HTTP headers.

While they are secured in transit using TLS, those tokens could be stolen from a browser, replayed, or mis-used by a malicious or vulnerable server. OAuth 2.0 Demonstrating Proof-of-Possession (DPoP) takes this one step further by equipping the client like your Single Page Application with a key pair so that it can show a proof when passing the access token, so no-one else can use the access token. DPoP is part of the FAPI 2.0 Security Profile by the OpenID Foundation. It promotes best practices on how to protect APIs exposing high-value and sensitive (personal and other) data, for example, in finance, e-health and e-government applications.

This talk will explain the concepts and demos how this can be implemented using Keycloak and other open source components. We will also describe the current challenges, limitations and alternatives of the approach.

 "Second chance: Upgrading devices from Android 9 to Android 14" ( 2025 )

Saturday at 13:30, 30 minutes, H.2214, H.2214, Android Open Source Project Igor Kalkov-Streitz , slides , video

Progress in hardware development often leaves devices with outdated software versions behind. This primarily affects Android devices, especially as Google is currently accelerating its release schedule for Android versions. The rapid version change means that older devices are often left without software updates, which makes the devices vulnerable to security threats and compatibility problems. This presentation shows how this trend can be counteracted by upgrading a handheld device from Android 9 to Android 14 by using open-source components.

We will outline the entire upgrade process from migrating the kernel to UI and HAL customizations to match the original device’s look and feel. This includes discussing technical challenges developers face when dealing with outdated drivers, newer kernel versions, and hardware abstractions during OS upgrades of old devices.

 "Panel : Integration between collaborative applications" ( 2025 )

Saturday at 13:30, 55 minutes, H.1308 (Rolin), H.1308 (Rolin), Collaboration and Content Management Ludovic Dubost Wieland Lindenthal Ingo Steuwer Björn Schießle , video

Open Source is all about collaboration, but of course we don't all work in one big project. So projects have to work together - actively. How do collaboration and integration stack up with the competition between projects and even the forking into new ones? Should there be more distributions on distrowatch.org or should we abolish them? We can't speak for distributions, but certainly for the collaboration tools we built!

 "TrenchBoot - project status update" ( 2025 )

Saturday at 13:30, 20 minutes, UB4.136, UB4.136, Open Source Firmware, BMC and Bootloader Daniel Kiper Maciej Pijanowski , slides

TrenchBoot is an open source project led by 3mdeb, Apertus Solutions, and Oracle. It aims at the security and integrity of the boot process by leveraging advanced silicon security features, like Intel Trusted Execution Technology (TXT) and AMD Secure Startup. It integrates with open source projects like GRUB2, Xen, and Linux, to perform a measured launch of the operating system software, also called Dynamic Root of Trust for Measurement (DRTM).

The presentation will provide an overview of the project's current status, emphasizing the key developments during the last year such as progress towards upstreaming patches in Linux and GRUB, as well as bringing UEFI support for Xen boot path.

 "Adopting BlueZ in production: challenges and caveats" ( 2025 )

Saturday at 13:30, 25 minutes, H.1302 (Depage), H.1302 (Depage), Embedded, Mobile and Automotive George Kiagiadakis , slides , video

In 2024, I worked with a small team to bring up BlueZ as the Bluetooth stack of a real-world automotive In-Vehicle Infotainment (IVI) system. In this talk, I am going to discuss the steps that we went through, the challenges that we faced, the caveats of BlueZ in contrast with closed-source alternatives and also present the contributions that we made to BlueZ and PipeWire as part of this process.

 "HAMNET - Status Update" ( 2025 )

Saturday at 13:30, 55 minutes, UB2.147, UB2.147, Radio Jann Traschewski, DG8NGN , slides , video

Over the last 15 years, HAMNET (Highspeed Amateur Radio Multimedia NETwork) has developed from an experiment into a stable infrastructure, particularly in German-speaking regions.

It generally connects unmanned amateur radio stations via microwave links using the IP- and BGP-protocol and provides a platform for networking amateur radio applications.

This talk will show how HAMNET has evolved and how it could evolve (challenges in deployment, expansion in Europe, densification of the backbone, higher speeds, access technologies for non-line-of-sight propagation).

 "Panel: When is an AI system free/open?" ( 2025 )

Saturday at 13:30, 50 minutes, H.1301 (Cornil), H.1301 (Cornil), Legal and Policy julia ferraioli Ciarán O'Riordan Aeva Black Richard Fontana Zoë Kooyman , video

This panel will explore what makes a machine learning model, or an “AI system”, Free Software / Open Source. Some topics we may address: - What, if anything, is the source code of a model? If the source code includes training data, what are the implications for LLMs and other large generative models? Can trained weights themselves be considered source code? - What does user freedom (and in particular, freedom to study and modify) mean in the context of AI models? How, if at all, does it differ from our traditional understanding of software freedom? - Are there any reasons to tolerate use restrictions in AI model licenses that we would reject for FOSS? - Proposed normative definitions of free/open AI and related efforts, including the OSI’s OSAID 1.0, FSF’s criteria for free machine learning applications, and the Model Openness Framework - Should we have different tiers of free-ness/openness when assessing AI models/systems? - Leaving aside the question of source code, are there other kinds of artifacts that should be released with a model for it to legitimately be considered free/open?

 "Unearthing the impact of survivorship bias on women in FOSS to build more inclusive communities" ( 2025 )

Saturday at 13:35, 25 minutes, UB5.230, UB5.230, Community Imma Valls julia lamenza , slides , video

Open-source software thrives on diverse perspectives, yet women remain significantly underrepresented in FOSS communities.

While we celebrate women who've "made it"—and their visibility is vital—survivorship bias hides a crucial truth: up to half leave tech by age 35, women exit at a higher rate than men, and many never even join the field.

This talk delves into the concept of survivorship bias—the tendency to focus on successful individuals while ignoring those who faced barriers—and how it impacts women in open source. You’ll learn how this bias skews community perceptions, perpetuates systemic challenges, and limits opportunities.

By examining barriers like unwelcoming dynamics, recruitment biases, and a lack of mentorship, you'll understand why many are deterred before or during their FOSS journeys. You'll also learn how survivorship bias interacts with intersectionality, compounding challenges for women of color, LGBTQ+ individuals, and others.

We’ll also explore examples of communities and initiatives that successfully counter these trends, demonstrating allyship's role in building equitable environments. Finally, drawing on research and real-world examples, we’ll propose actionable steps to create a more inclusive and welcoming FOSS landscape for all.

Whether you’re a contributor, maintainer, or community leader, this session will give you a deeper understanding of the problem and tangible ways to drive change in your circles.

 "Spock : a software-based RISC-V TEE" ( 2025 )

Saturday at 13:35, 20 minutes, K.4.401, K.4.401, Confidential Computing jip helsen , video

Securing embedded devices, particularly those with minimal resources, presents a unique and pressing challenge. Conventional approaches to Trusted Execution Environments (TEEs) often require specialized hardware or substantial system resources, leaving low-end devices vulnerable to breaches. The need for a lightweight, efficient solution that bridges this gap is greater than ever in today’s interconnected world.

Introducing Spock

Through the development of Spock, we have created a versatile and efficient Trusted Execution Environment (TEE) tailored for RISC-V embedded devices. By relying solely on Physical Memory Protection (PMP) for isolation and requiring only machine and user modes as specified in the RISC-V privileged instruction set, Spock delivers robust security without relying on any specialized hardware.

At the core of Spock’s architecture is the Security Manager (SM), which plays a key role in managing enclave data and buffer permissions. The SM enables Spock to efficiently virtualize buffers and dynamically allocate PMP entries, providing a flexible and scalable approach to memory isolation. By leveraging this abstraction, Spock can create virtual enclaves that surpass hardware-imposed limitations, such as the number of PMP entries.

Core Features and Capabilities

Spock’s minimalist API design delivers essential security functions, including secure execution and attestation. This design supports:

  • Virtualization of critical operations while maintaining a minimal Trusted Computing Base (TCB).
  • Integration into very low resource embedded devices.
  • Both relocatable and fixed enclaves, offering flexibility for diverse use cases.

Why Spock Matters

Spock’s design represents a modern, efficient solution for secure computing in low-resource embedded devices. Its ability to combine robust security with minimal hardware requirements makes it uniquely suited for the demands of today’s connected world, ensuring that even the smallest devices can operate securely.

Available at : https://github.com/jiphelsen/Spock

 "OpenLayers, the reference web-mapping library" ( 2025 )

Saturday at 13:35, 25 minutes, AW1.120, AW1.120, Geospatial Olivia Guyot , slides , video

Interactive maps on the web have evolved a lot in the past years. OpenLayers is no exception: it has been around for more than a decade and has become a reference with its extensive feature set and excellent performance. As a landmark open-source project, it has received thousands of contributions over time while managing a very high level of quality.

In this talk we will look at the state of the library today, what it now allows and why, now more than ever, it is an essential part of every geospatial web application. From high-performance rendering of large datasets to on-the-fly satellite image processing, its list of features is so large that you will most likely discover things along the way. New formats, ever-improving WebGL rendering, a powerful new expression-based styling API, and more!

Whether you're a long-time user or just discovering OpenLayers, this session promises fresh insights and practical takeaways for leveraging its full potential.

Find the OpenLayers website here: https://openlayers.org/

And the GitHub repository here: https://github.com/openlayers/openlayers

 "Declarative Networking in Declarative World, ver. 2025" ( 2025 )

Saturday at 13:40, 20 minutes, UD2.218A, UD2.218A, Containers Mateusz Kowalski , slides , video

Since the beginning of time, declarative APIs have been driving everything that can happen inside a Kubernetes cluster. Predefined CRDs, operators defining custom CRDs, everything is about declarative APIs. Write your YAML once, deploy it, forget it. That’s how you create a cluster, that’s how you deploy your workload.

But is it, for real, as simple as it sounds? How do you bring declarativeness to the imperative world? In the current state of things, host networking is one huge imperative nightmare. So how to happily marry an old-school Network Manager and brand new Kubernetes API?

Over the years we were working on the NMstate project to provide you with a Declarative Network API, allowing you to manage host networking in a declarative manner.

In 2025 we are coming back with brand new features. Based on the feedback, we focused on air-gapped and big clusters – think hundreds of nodes with hundreds of VLANs each. We also happily married K8s and KubeVirt – no matter what your workload is, containers or VMs, NMstate is there for you.

Not only a project update – we will also show you how the Kubernetes cluster with NMState Operator manages networking on the nodes it deploys. It may sound like a chicken and egg situation, but trust us, it is not. Last but not least, we show how it protects itself from applying destructive network changes potentially taking your cluster down.

Join us and discover what’s new in the world of complex network topologies.

 "My Nix-Powered Homelab" ( 2025 )

Saturday at 13:40, 20 minutes, K.3.601, K.3.601, Nix and NixOS Josh Lee , slides , video

For me, Nix-the-package manager has replaced homebrew, ASDF, and even docker. But its potential goes far beyond managing development environments. With its declarative, reproducible configurations, Nix is also an excellent choice for managing entire servers.

In this talk, I’ll share how I use NixOS and nixos-generators in order to create both stable and ephemeral VMs on my Proxmox hypervisor hosts, and how I run services like Grafana, Docker, Tailscale, and more.

We’ll explore how to deploy and update Proxmox VMs remotely using Nix, set up a WireGuard router with NixOS, and deploy services directly to NixOS declaratively. I’ll also show how to deploy Docker services to NixOS, using the same object tree and code files as all of your other configurations.

Whether you’re managing a homelab or building out larger infrastructure, this talk will showcase how Nix can transform your approach to system configuration and service deployment.

 "Nextcloud Office: On collaborating across FOSS projects" ( 2025 )

Saturday at 13:40, 15 minutes, H.2213, H.2213, LibreOffice Julius Knorr , slides , video

How we work together and bring Collabora Online integration in Nextcloud to the next level with file conversion, document transformation and AI.

 "Programming is fun; Testing is needed; Infra is …" ( 2025 )

Saturday at 13:45, 20 minutes, K.3.201, K.3.201, LLVM Jan-Patrick Lehr , slides , video

The LLVM compiler infrastructure uses a range of resources for testing various project components, including Buildbots, Buildkite, and GitHub Actions. However, the diversity of these technologies can be confusing, particularly for new maintainers. I personally found it challenging to understand. The introduction of the new CI/CD admin role and the discussions in the RFC are promising developments that should help clarify these complexities.

AMD ROCm™ is based on the LLVM project, which is why AMD is deeply invested in supporting its development. This includes providing resources to test the AMDGPU code generation backend and various GPU offloading programming models. Consequently, AMD maintains a range of upstream buildbots for this purpose.

In this presentation, I discuss the motivation and objectives behind the AMD ROCm™ compiler buildbots and related initiatives. I share my two-year journey, which began with inheriting a single buildbot, then another, and eventually maintaining multiple machines and bot configurations. I delve into the technical challenges I encountered and the solutions I implemented. I also touch on non-technical issues from my perspective and how they were resolved by both me and the community. The presentation concludes with a forward-looking perspective on potential additions to the upstream test infrastructure to address existing blind spots from our point of view.

 "ODBC Takes an Arrow to the Knee" ( 2025 )

Saturday at 13:50, 30 minutes, UB5.132, UB5.132, Data Analytics Matthew Topol , slides , video

For decades, ODBC/JDBC have been the standard for row-oriented database access. However, modern OLAP systems tend instead to be column-oriented for performance - leading to significant conversion costs when requesting data from database systems. This is where Arrow Database Connectivity comes in!

ADBC is similar to ODBC/JDBC in that it defines a single API which is implemented by drivers to provide access to different databases. The difference being that ADBC's API is defined in terms of the Apache Arrow in-memory columnar format. Applications can code to this standard API much like they would for ODBC or JDBC, but fetch result sets in the Arrow format, avoiding transposition and conversion costs if possible..

This talk will cover goals, use-cases, and examples of using ADBC to communicate with different Data APIs (such as Snowflake, Flight SQL or postgres) with Arrow Native in-memory data.

 "Increasing security of internet downloads with Asfaload" ( 2025 )

Saturday at 13:50, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning Talks Raphaël Bauduin , video

Asfaload aims to secure internet downloads by ensuring the integrity and authenticity of downloaded files. With attacks on the software supply chain becoming more common and more sophisticated, an effective and simple to use solution has to be found for both the developers and their users. All our published software is under the AGPLv3 or MPLv2, and allows for a self-hosted deployment.

The first building block of our solution is a mirror of checksums files, which helps detect modification of released files but is of no help in case of account compromise. That's why we are also working on an upcoming multi-user multi-factor signature scheme. Initially it was blockchain-based, but we transitioned to a git repo, making it even more auditable. For end users, we develop a CLI downloader tool with its accompanying library at asfald. As for software developers, publishing a checksum file (with sha256sum or sha512sum) is sufficient to integrate with Asfaload. In this talk we will present the problem we are addressing, why it is important, how we are addressing it and what simple steps project authors can take to increase the security of their users.

 "Opening the Unlocked Manuscript Chest: A Compact Edition Template for Visualizing Archival HTR Material" ( 2025 )

Saturday at 13:50, 25 minutes, AW1.126, AW1.126, Open Research Nooshin Shahidzadeh Asadi , slides , video

Necturus is a free and open-source tool for visualizing the connection between handwritten manuscript images and their machine-readable transcriptions. While platforms like Transkribus and eScriptorium excel at generating text from handwritten material, they leave visualization to the side—Transkribus hides its solution behind a paywall, and eScriptorium offers none at all. Yet, for many research endeavors, the line-by-line relationship between text and image remains critical, as seen in projects like the Beckett Digital Manuscript Project and the Joyce Letters Project.

Designed as a lightweight, embeddable React component, Necturus makes it easy for libraries, archives, and researchers to present manuscript images alongside their transcriptions in an interactive and accessible format. A plug-and-play template allows deployment via GitHub Pages with no coding required, while a full version supports scalable, customizable setups for larger projects. By emphasizing both transcription and the manuscript as objects of study, Necturus offers a practical solution for those who value visualization in the process of, as Transkribus puts it, “unlocking the past”.

Project Repositories: Necturus, Necturus Compact

 "COOL UI / UX command tracking & analysis" ( 2025 )

Saturday at 13:55, 10 minutes, H.2213, H.2213, LibreOffice Attila Szűcs , slides , video

A presentation about the challenges of tracking and analysis COOL UI / UX commands.

 "U-Boot ACPI support on ARM64" ( 2025 )

Saturday at 13:55, 20 minutes, UB4.136, UB4.136, Open Source Firmware, BMC and Bootloader Patrick Rudolph , slides , video

The Server Base Boot Requirements (SBBR) by ARM requires UEFI and ACPI support on AArch64 platforms.

While UEFI is already natively supported by U-Boot, ACPI support on ARM64 was only recently added. A first patch series added basic support for booting Linux on QEMU's sbsa-ref machine, which doesn't provide a device-tree to the OS, but ACPI tables only. This is opening the path for U-Boot booting recent ARM server platforms using the SBBR specification.

The session gives an overview how ACPI tables are generated by U-Boot drivers. The challenges of integrating the ACPI subsystem with U-Boot's infrastructure on ARM64 are described and an outlook is provided.

Questions this talk should answer: - How does the ACPI driver model work? - How does this integrate with U-Boot? - What to expect next in U-Boot's ACPI implementation?

 "Type tips and tricks" ( 2025 )

Saturday at 13:55, 40 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Rust Nikolai Vazquez

Rust's type system can feel complicated and overwhelming. However, crates like Bevy and Divan take advantage of the advanced features to deliver simpler developer experiences. This talk will demonstrate how to create these easy-to-use APIs by covering advanced techniques like polymorphism, type states, and conditional typing.

 "High performance gRPC" ( 2025 )

Saturday at 14:00, 30 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Go Aurelien Deroide , slides , video

gRPC is a popular RPC framework and go has a quite performant gRPC implementation. However, the performance can still be significantly increased by changing the default setup and by using the library in a way that reduces memory allocations.

This talk will also show how to use the excellent go tooling to profile and benchmark some code.

 "NetworkManager and Nmstate community meetup BOF" ( 2025 )

Saturday at 14:00, 60 minutes, H.3242, H.3242, BOF - Track B Fernando Fernandez Mancera

Let's meet and talk about NetworkManager and Nmstate!

There is no fixed agenda or schedule. Everybody is welcome, and we will have an open discussion about problems, improvements, use cases and ideas for NetworkManager and Nmstate. Bring a topic you'd like to discuss, or just join to meet people.

See https://networkmanager.dev/community/ for how reach the community.

 "Stratoshark: Applying the power of Wireshark to System Calls and Logs" ( 2025 )

Saturday at 14:00, 50 minutes, K.1.105 (La Fontaine), K.1.105 (La Fontaine), Main Track - K Building Gerald Combs Nigel Douglas , video

Wireshark offers powerful exploration, drill-down, and analysis capabilities for network packets, but what if those features could be applied to other types of data? Enter Stratoshark, a brand-new sibling application to Wireshark.

Stratoshark leverages the rich data sources provided by Falco’s libraries to enable deep analysis and troubleshooting across Linux servers, Kubernetes clusters, and any system that generates Linux system calls or real-time log events.

In this talk, we’ll showcase a live demo of Stratoshark, including how it extends the familiar Wireshark user experience to AWS audit events via the Falco plugin for CloudTrail. Learn how Stratoshark builds on open-source innovation to bring Wireshark’s intuitive interface to a broader range of use cases in cloud-native computing.

 "Breaking Barriers: The Art of (Free) Gamified Security Training" ( 2025 )

Saturday at 14:00, 30 minutes, UB4.132, UB4.132, Security Joseph Katsioloudes

In a world where security training often feels like a mundane chore, discover the refreshing impact of gamification and turn learning into an enjoyable experience. Embark on an insightful journey as we unveil the success story of gh.io/secure-code-game, an open-source game hosted on GitHub Skills, that attracted over 5,000 developers within its first year.

This session will provide you with an exclusive behind-the-scenes perspective, offering valuable insights and practical strategies to revolutionize various aspects of security training for your benefit. We’ll explore a case study from a tech startup that observed, among the developers who played the game, an increased sense of ownership for code security, improved communication with security teams, and a strong willingness to embrace further security training.

 "All Open Source Toolchain for ZYNQ 7000 SoCs" ( 2025 )

Saturday at 14:00, 25 minutes, H.1302 (Depage), H.1302 (Depage), Embedded, Mobile and Automotive Yimin Gu , slides , video

Zynq 7000 SoCs are popular devices widely used in embedded scenarios when both CPU power and flexible logic are required. However, the ARM (processing system, PS) + FPGA (programmable logic, PL) combo makes developments reply on an even heavier set of propriety toolchains.

In this talk, I'll introduce the recently developed GenZ, a free software BSP generator for the Zynq 7000 PS register configuration. Together with OpenXC7, the free and open source FPGA toolchain for Xilinx 7-series chips, and a enlarging amount of open-source IP cores, development on Zynq 7000 SoCs can be done without a single piece of propriety tool.

The speed and ease of GenZ + OpenXC7 will be demonstrated on site with an ARM laptop and Zynq boards.

 "9,800 Sandboxes and Counting: Transforming Documentation with Interactive Learning Environments" ( 2025 )

Saturday at 14:00, 30 minutes, K.4.201, K.4.201, Tool the Docs Jay Clifford , slides , video

One of the reasons why Go is easy to learn is due to the interactive examples all through the documentation, we wanted to emulate this success. Six months later, we now manage 26 sandbox tutorials and totalled over 9,800 unique instances. They transformed our documentation by letting users run commands, deploy sample projects, and see real-world use cases come alive.

Scaling the concept to support over 10 products brought unique challenges for us. How could we streamline the creation of new sandbox tutorials? How could we maintain a single source of truth between our sandboxes and evolving documentation?

In this session, we’ll dive into: *What an interactive sandbox is and how it enhances developer experiences * How we created an open-source tool to automatically synchronize our documentation and sandboxes via CI/CD pipelines

This talk will help you get started integrating interactive sandboxes into your documentation and arm you with the tools you need to scale them effectively!

 "Snap!GPT: Exploring Generative AI Through Visual Programming" ( 2025 )

Saturday at 14:00, 90 minutes, UD6.205, UD6.205, FOSDEM Junior Jens Mönig Jadga Huegle

How do AI language models work and just how intelligent are they? Can generative AI be original? Let’s find out together! We’ll program an algorithm that invents stories all by itself just like ChatGPT based on texts we train it on. But what happens when we train it on other media such as songs or drawings? Will it also learn how to make music and doodle sketches? We’ll use the Snap! visual programming language. Please bring a laptop or tablet with a web browser.


Activities during FOSDEM Junior follow the Code Club policies and health and safety standards.

  • All attendees must have an adult with them
  • Remember to bring your laptop with you
  • You must book a place to attend
  • Please don’t come if you are feeling unwell

Participants are required to sign up for this activity via the registration form.

 "Native memory tracking for all - Extending NMT beyond Hotspot" ( 2025 )

Saturday at 14:00, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Free Java Johan Sjölén , slides , video

Native Memory Tracking (NMT) has supported diagnosing memory issues in Hotspot for over a decade. Yet, much of the native memory allocated cannot be accounted for using NMT, as it is not only Hotspot but core libraries, JNI and FFM which may perform native allocations. Clearly, NMT must extend itself if it intends to remain a useful tool.

In this talk, I will present a design for extending NMT to core libraries and a possible future extension to FFM. External APIs will be shown in the context of porting small portions of the core libraries. Internal design details, including data structure design, will likewise be presented and its trade offs discussed. Finally, possible ways of bringing NMT and the new Foreign Function & Memory API will be presented.

 "Towards seamless Python package installation on riscv64" ( 2025 )

Saturday at 14:00, 35 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), RISC-V Mark Ryan , slides , video

Have you ever wondered why certain Python packages fail to install on riscv64 devices? Why, instead of pleasing "Successfully installed" messages, riscv64 users are often presented with bleak screens full of errors? How, in the face of all of these errors, are those users supposed to run Python based AI or data analytic workloads? To the curious who have briefly pondered such things as the package names and errors go scrolling by, this talk is aimed at you! It will explain how Python packages are built and why upstream projects do not provide versions of their packages for riscv64 devices. It will discuss the progress being made in adding riscv64 support to the Python packaging ecosystem. Finally, it will explain how RISE is mitigating the current lamentable situation by building and distributing riscv64 wheels for a select set of popular Python packages.

 "Running Mushroom on Intel TDX" ( 2025 )

Saturday at 14:00, 20 minutes, K.4.401, K.4.401, Confidential Computing Tom Dohrmann , slides , video

Mushroom is a project for securely running Linux workloads in attestable, integrity-protected environments with a minimalistic TCB. Mushroom depends on TEEs to provide integrity guarantees for data in use. It was initially developed for AMD SEV-SNP, but it recently gained support for running on Intel TDX as well. This talk will explore some of the required changes and discuss how the differences between AMD SEV-SNP and Intel TDX informed some of the design decisions.

 "Rewriting the future of the Linux essential packages in Rust ?" ( 2025 )

Saturday at 14:00, 50 minutes, Janson, Janson, Main Track - Janson Sylvestre Ledru , video

The Linux ecosystem depends on core utilities written decades ago in C, but modern needs demand safer, more maintainable tools. Over the past four years, the Uutils (Coreutils, findutils, diff,) project has reimagined these utilities in Rust, offering secure, performant replacements. To the point that it is now shipped by default in some Linux distributions and used in production.

In this talk, we’ll explore a bold vision for the future of Linux: one where Rust becomes the backbone of its essential tools, ensuring long-term security, maintainability, and performance for generations to come.

 "Modsoup : Recipe and ingredients - Creating a modpack/gamepack for Luanti/Minetest" ( 2025 )

Saturday at 14:00, 90 minutes, UD6.203, UD6.203, FOSDEM Junior Thomas Francois Lemente

Participants will discover how to customize the game Minetest (Luanti Engine) to create their own gaming experiences from open source mods. (notions introduced: open source mods, dependencies, incompatibilities, debugging, …)

If we have the time and the public are up for it, we will briefly introduce modding in Lua, and leave the participants with the Luanti Modding Book link (https://rubenwardy.com/minetest_modding_book) if they want to go further. Participants will need a laptop, preferably with Luanti already installed (https://www.luanti.org/downloads/)

It’s better to play with a mouse! You can already explore available games and mods on https://content.luanti.org/


Activities during FOSDEM Junior follow the Code Club policies and health and safety standards.

  • All attendees must have an adult with them
  • Remember to bring your laptop with you
  • You must book a place to attend
  • Please don’t come if you are feeling unwell

Participants are required to sign up for this activity via the registration form.

 "Advanced mail security - our experience with automated reputation sharing in communities and pre-queue deep threat analyzers" ( 2025 )

Saturday at 14:00, 30 minutes, K.4.601, K.4.601, Modern Email Carsten Rosenberg , video

From out daily experience as Linux Mail Security Consultants, we see different groups of infrastructures like universities and government authorities getting similar spam and threats. We have implemented automated ways to share this information among these clusters. We will introduce the techniques used in our Rspamd implementations and we will point at some pitfalls that should be avoided. We also like to talk about our experience with pre-queue deep threat second stage security analysis like sandboxing.

 "Hijack Launcher3!" ( 2025 )

Saturday at 14:00, 30 minutes, H.2214, H.2214, Android Open Source Project Romain Hunault , slides , video

Murena team developed a new launcher for /e/OS, based on Launcher3. In this talk, we will introduce this AOSP key component, and how it is possible to use it as a base for your own Android Launcher project.

https://gitlab.e.foundation/e/os/BlissLauncher3

 "Incus cluster: private cloud with system containers" ( 2025 )

Saturday at 14:00, 30 minutes, UD2.218A, UD2.218A, Containers Jérémie Grauer

Incus is a next-generation manager for system containers, application containers, and virtual machines, forked from Canonical's LXD in August 2023.

This presentation explores the evolution of LXD/Incus, with a focus on clustering and its capabilities for natively managing both stateless and stateful workloads.

Drawing on real-world experience as a system architect at a cloud provider using LXD/Incus since 2016, we will examine the technologies underpinning Incus, including OVN-based networking and flexible storage configurations. The session will also showcase the key commands and workflows for building and managing an Incus cluster, with practical examples to highlight best practices.

This session is intended for system administrators, DevOps engineers, and container enthusiasts seeking to enhance their understanding of Incus and its role within the modern container ecosystem.

 "Fuzzing databases is difficult" ( 2025 )

Saturday at 14:00, 25 minutes, UD6.215, UD6.215, Testing and Continuous Delivery Pedro Ferreira , slides , video

After fuzzing databases for the last 3 years, I learned that simple design decisions on a fuzzer impact on the issues it can ever find. In this talk I would to address some of those decisions. As an example, I would to discuss about the design of BuzzHouse, a new database fuzzer to test ClickHouse.

 "Multicore & Concurrency: Algorithms, Performance, Correctness" ( 2025 )

Saturday at 14:00, 60 minutes, H.3244, H.3244, BOF - Track C Diogo , slides

In this BOF session, we'll discuss the application of concurrent algorithms in system software (operating systems, system libraries, database systems, runtime systems, etc). Practical requirements, techniques and trends from the industry as well as research results and limitations are interesting areas of discussion. The goal is to connect with concurrency enthusiasts and to figure out whether a critical mass exists to form a "Multicore & Concurrency" devroom next year.

Planned agenda:

  • Introduction round
  • Talk 1: Concurrent cat on a Raspberry Pi - Diogo Behrens
  • Talk 2: Modern Concurrency Made Easy(ier) - Hernan Ponce de Leon
  • Talk 3: Evaluate All the Things with benchkit - Antonio Paolillo
  • Discussion: How to evolve this to a devroom?

 "How to Save a Life" ( 2025 )

Saturday at 14:05, 25 minutes, AW1.120, AW1.120, Geospatial Skylar MacDonald , video

You, Eleanor Shellstrop, are dead. You are in cardiac arrest. Your heart has stopped beating, you have stopped breathing, and medically speaking you have died. Not a great start to your day! But worry not: someone has called emergency services. This is the story of that call — and how open geospatial information just might help save your life.

This talk, presented by the CAD & Technical Lead at the London Ambulance Service, will discuss how we use open data to locate patients, how your phone sends live geospatial information to our control room, and the other open (and some not-open) data that our emergency medical service uses to save lives across London every day.

Expect high-level conversations about medical emergencies, but this talk is suitable for all ages.

The recording of the talk stutters a bit but I've found the AV1 WebM to be a lot smoother to watch if downloaded (although it still skips in a couple of places).

 "LibreOffice on mobile with the Collabora Office app" ( 2025 )

Saturday at 14:05, 10 minutes, H.2213, H.2213, LibreOffice Skyler Grey , slides , video

Collabora Online is an online document editor based on LibreOffice, but there's also both an Android and an iOS Collabora Office app based on the same technology - LibreOffice Kit. Have you ever wondered how it works?

In this talk, I'll give a high-level overview of the architecture of the Collabora Office mobile app. Along the way, I'll discuss how it's similar but different to the Collabora Online server, and what limitations on the mobile platform (for example a lack of availability of clipboard web APIs) pushed us to write in the way that we have.

 "NixOps4: new, sustainable platform for deployment technology" ( 2025 )

Saturday at 14:05, 20 minutes, K.3.601, K.3.601, Nix and NixOS Robert Hensing , video

NixOps used to be the only Nix-native deployment and provisioning tool, but it failed. NixOps4 is a complete redesign of the tool, taking lessons from NixOps, taking inspiration from Terraform, and borrowing its providers. In doing so, it creates a unified deployment platform, architecturally similar to how Nix is a platform for unified builds. It allows you to combine configurations freely with the Nix language and build system, and it makes it easy to "extend" the tool.

In this presentation, we'll have a look at the concepts that make up NixOps4, as well as its integration into the Fediversity project, which aims to enable hosting providers to let their customers deploy applications such as Mastodon, PeerTube and Pixelfed, fully automatically - running NixOps4 "unattended" in production.

 "Security in Ceph and Rook, recent improvements" ( 2025 )

Saturday at 14:05, 30 minutes, K.3.401, K.3.401, Software Defined Storage Federico Lucifredi Sage McTaggart , slides , video

We explore the security model exposed by Rook with Ceph, the leading software-defined storage platform of the Open Source world. We discuss major updates within the past year to our threat model, dashboard, call home, and encryption, including work on TCMs, NVMe and exploration of open source post quantum encryption algorithms, within a major project. We discuss the challenges and benefits of promoting open source, and how to ensure we adhere to Executive Order 14028, and the challenges and rewards of dependency tracking and updating.

 "Open Source in Industrial Control Systems: A Cultural Challenge" ( 2025 )

Saturday at 14:05, 25 minutes, UB5.230, UB5.230, Community Davíð Berman , video

My name is David Berman. I am an electrician by trade, not a programmer by profession, but I have ventured into the world of programming out of necessity and conviction. My journey into this realm has been fueled by a desire to challenge the prevailing norms of an industry heavily skewed toward proprietary, enterprise-oriented solutions. Specifically, I have worked to advocate for open-source, cost-effective methods to control city streetlights and other industrial control systems traditionally dominated by expensive and exclusive technologies.

During my talk I would like to share my newest project, Gungnir: https://github.com/davidjrb/gungnir

This journey has been far from easy. The resistance to change in this space is significant, and the challenges are both technical and cultural. One of the key barriers is the entrenched power of profit-driven opponents, including corporate lobbyists and those with vested interests in maintaining the status quo. These forces often stifle innovation and prevent the adoption of solutions that could benefit society as a whole by reducing costs and fostering collaboration.

Another challenge comes from within the very community I advocate for. Despite the immense potential of open-source solutions, there is a tendency among many non-programmers—particularly those in traditional trades or management roles—to dismiss these solutions out of hand. This is often due to a lack of familiarity with the technology or misconceptions about its reliability and scalability. Bridging this gap requires not only technical expertise but also the ability to communicate the value and viability of open-source approaches in terms that resonate with a broader audience.

In my talk, I aim to explore these challenges in depth, sharing insights from my own experience as a non-programmer navigating a highly technical field. I will discuss the hurdles faced by the open-source community when advocating for transparency, collaboration, and cost-efficiency in an industry often resistant to such ideals. I will also highlight strategies to foster greater acceptance and collaboration between open-source advocates and those unfamiliar with or skeptical of these technologies.

Ultimately, my goal is to spark a dialogue about how we, as a community, can better advocate for open-source solutions in industrial and civic systems, ensuring that they are not only adopted but also embraced as a viable and beneficial alternative to proprietary models. By sharing stories, challenges, and strategies, I hope to inspire others—whether programmers, non-programmers, or industry professionals—to join this important movement.

Thank you for having me.

I look forward to seeing you all 14:00, Saturday, 1. February in Baudoux - UB5.230

 "Profile-Guided Optimization (PGO) in LLVM: current challenges from the adopter perspective" ( 2025 )

Saturday at 14:10, 20 minutes, K.3.201, K.3.201, LLVM Alexander Zaitsev , video

Profile-Guided Optimization (PGO) is a well-known compiler optimization technique that brings runtime statistics about how an application is executed to the Ahead-of-Time (AoT) compilation model. However, this technique is not widely used nowadays.

In this talk, I want to discuss with a wider audience typical issues that I met with PGO implementation in LLVM-based compilers (like Clang and Rustc). During my work on the Awesome PGO project, I gathered a lot of interesting data points and insights about current PGO issues in the ecosystem (mostly with LLVM-based tools since I prefer using LLVM), and discussed many issues with different stakeholders like end-users, maintainers, and application developers. We will talk about:

  • PGO documentation issues across compilers
  • Different PGO integration states across LLVM-based compilers
  • PGO awareness across the industry
  • Strengths and weaknesses of different PGO modes for different use cases in real-world
  • Top blockers for PGO adoption
  • And many other things!

I believe that after the talk more people will be aware of PGO, aware of usual PGO blockers with LLVM, and know more about how to avoid these limitations in practice.

Target audience: LLVM users (especially LLVM-based compiler engineers and LLVM adopters)

 "Treating build definitions independent of their origin" ( 2025 )

Saturday at 14:10, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning Talks Klaus Aehlig , slides , video

Most software build systems, following the tradition of make, refer to artifacts by an assigned location on the file system. However, when developing software, one is usually more interested in the contents of the file than its location. So why not take the definition itself as key? Similarly, when building typical complex targets, like libraries, additional information has to be considered when using them, e.g., transitive dependencies when linking. So why not make that part of the data of the analyzed library? In this way, we obtain definitions that are independent of their origin and hence can meaningfully be cached. This high-level caching allows a seamless transition between fine-granular building and traditional package building (obtaining all artifacts by a single lookup). As an additional benefit, when using remote build execution, it is enough to have the sources of the project you're working on, while still having the benefits of a bootstrapped build.

All those concepts are implemented in the open-source build system justbuild, available, at https://github.com/just-buildsystem/justbuild

 "Explore large image datasets with Panoptic" ( 2025 )

Saturday at 14:15, 25 minutes, AW1.126, AW1.126, Open Research Félix Alié David Godicke Edouard Bouté , slides , video

Panoptic is a tool to explore locally and easily big images datasets: https://github.com/CERES-Sorbonne/Panoptic Images abound on the web and digital social networks. Their proliferation is one of the characteristics of digital culture. In particular, they are widely mobilized in contemporary controversies, with the aim of revealing and debating important social issues. Far beyond natively digital images, whether moving or still, images are first and foremost an object of study in their own in many disciplines (art history, film studies...), just as they can be a way of accessing a research field (photographs of animal and plant species, pages from digitized books...). A key challenge for the human and social sciences is to equip themselves with tools for exploring, sorting and annotating image corpora.

While a number of tools already exist for working with such corpora (XnView, Tropy, voxel51, Aikon, Arkindex, for example), a key issue to be resolved is the multiplication in the number of images we work with: how can we efficiently explore, sort and annotate a corpus of several tens of thousands of images? How can we provide researchers with a tool that facilitates such work?

Indeed, working with a large number of images means first of all having a synoptic view of them, in order to understand them as a whole, but also being able to manipulate them directly in the presentation interface (for both exploration and analysis).

Secondly, working with a large number of images also imposes time constraints on analysis, which can be resolved by using similar-image clustering tools (computer vision tools), to group together images that have formal similarities (reduces exploration time), but also by using batch annotation functionalities (reduces analysis time).

Finally, working with images is rarely just about working with images, but also with textual data associated with the images (texts of tweets, photographer's name, shooting date, etc.). Another challenge, then, is to adopt a plurisemiotic approach to the content of the corpus being worked on, in order to avoid having to move back and forth between different work spaces.

Created at CERES, by developers, researchers and designers, Panoptic is an open source tool for visualizing, exploring and annotating large images corpora. In particular, the tool integrates algorithms for grouping images by similarity (by using ml model CLIP), to help users with sorting and exploration. The tool also offers various filtering, search and annotation options, enabling the creation, analysis and export of sub-corpora.

Our talk will present the tool we have developed, and how its various functions are designed to meet the methodological needs of research using tools for working with large volumes of images.

 "WoA laptops: a quest for getting the right DTB" ( 2025 )

Saturday at 14:20, 20 minutes, UB4.136, UB4.136, Open Source Firmware, BMC and Bootloader Dmitry Baryshkov Christopher Obbard , slides , video

Windows-on-ARM devices (primarily laptops) provide a nice execution environment for running Linux or any other open-source OS. As the provisioned ACPI tables make heavy use of PEP, it is next to impossible to make use of the ACPI in a proper way, This talk focuses on the the possible ways to select and sideload corresponding device tree blob before passing control to the OS kernel.

 "Confidential Computing devroom lightning talks" ( 2025 )

Saturday at 14:20, 10 minutes, K.4.401, K.4.401, Confidential Computing Claudio Imbrenda Steffen Eiden Kuniyasu Suzaki , video

We will close the devroom with lightning talks that will serve as a great conversation starter during the lunch break.

 "RF Swift: A Swifty Toolbox for All Wireless Assessments" ( 2025 )

Saturday at 14:25, 55 minutes, UB2.147, UB2.147, Radio Sébastien Dudek , slides , video

In an increasingly connected world, securing wireless communication is vital for protecting critical infrastructure and personal data. Traditional tools for Radio Frequency (RF) assessments, while effective, often lack flexibility, cross-platform compatibility, and adaptability for diverse environments and architectures. RF Swift addresses these limitations by providing a streamlined, modular toolbox tailored for RF Security assessments and HAM radio enthusiasts alike.

RF Swift is a multiplatform solution, seamlessly running on Windows, Linux, and a wide range of architectures. This versatility empowers users to conduct RF assessments in virtually any environment without hardware constraints. Designed with adaptability in mind, RF Swift enables security professionals and radio enthusiasts to deploy, manage, and analyze RF communications with unprecedented speed and efficiency.

Attendees will discover how RF Swift empowers both rapid assessments and deep analysis, simplifying complex tasks such as spectrum monitoring, signal detection, protocol analysis, and signal generation. Join us to explore how RF Swift redefines RF security assessment, offering a robust, scalable, and flexible approach to tackle modern wireless security challenges.

 "Reduce the size of your Java run-time image" ( 2025 )

Saturday at 14:30, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Free Java Severin Gehwolf , slides , video

When it comes to the on-disk-size of your OpenJDK installation it becomes apparent that certain files take up a large part of the entire Java Development Kit (JDK) installation. It can seem that certain files are monolithic and aren't possible to make smaller. Yet, they can be smaller if you know how.

In this talk we show how you can create a custom run-time image for your specific application without the need of the jmods folder otherwise being present in a standard JDK. Forget about JRE and go all-in on custom run-time images. The best thing about it is that - due to JEP 493 - this will no longer need JMOD files of the JDK to be present.

Tune in to hear more about using jlink from a JDK without a jmods directory and what new opportunities this allows.

 "sshproxy: how to load-balance ssh" ( 2025 )

Saturday at 14:30, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning Talks Cyril Servant , slides , video

ssh (secure shell) is a popular protocol used for remote command-line connections and file transfers.

sshproxy is more than a simple ssh proxy/load balancer. It can choose the destination node based on simple or complex rules, such as the user name/group, its previous connections, the number of total connections on the nodes, the total used bandwidth of the nodes… It can be distributed on multiple gateways, with shared states. It can track, log and monitor all the connections.

At CEA (French Alternative Energies and Atomic Energy Commission), sshproxy allows users to connect to 4 different supercomputers, with regularly more than 1,000 simultaneous connections.

 "Implementing a rootless container manager from scratch" ( 2025 )

Saturday at 14:30, 30 minutes, UD2.218A, UD2.218A, Containers Luca Di Maio , slides , video

An introduction on the basic concepts underpinning a container manager: understanding what OCI images are, how they’re structured, and how to use them as rootfs. From there, we’ll dive into the core Linux primitives that make rootless containers possible: namespaces for isolation, UID/GID mappings and dropping privileges.

The talk will use my project Lilipod https://github.com/89luca89/lilipod as an example on what and how all of this has been implemented

 "Auditing Web Trackers with the EDPB's Open-Source Website Compliance Tool" ( 2025 )

Saturday at 14:30, 25 minutes, H.1301 (Cornil), H.1301 (Cornil), Legal and Policy Jerome Gorin Amandine JAMBERT , video

The European regulations impose strict rules on the collection and use of data via cookies and other trackers on websites. Auditing the practices of these sites is crucial to ensure that the cookies placed, both before and after user consent, comply with current legal obligations. This includes the purpose of the cookies and the transparency of the information provided to users, such as cookie descriptions and an easily accessible refusal option.

Although various website analysis tools exist, their use often requires advanced technical expertise, as they typically operate via command-line interfaces. In this context, the EDPB, through the Support Pool of Experts (SPE), has developed a dedicated audit tool to assess websites' compliance with European regulatory requirements.

The tool is a Free and Open Source Software under the EUPL 1.2 Licence and is available for download on code.europa.eu. The source code is available here.

Dr. Jérôme Gorin, researcher at UniLaSalle, and Dr. Amandine Jambert, technology expert at EDPB Secretariat, will present its functionality and its adoption by numerous auditors within data protection authorities across Europe. The presentation will conclude with a discussion on the tool's improvement prospects, aiming to foster knowledge sharing and the detection of the latest online tracking technologies.

 "Katzenpost: developing privacy software in Go" ( 2025 )

Saturday at 14:30, 30 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Go Eva Infeld , slides , video

Katzenpost is a robust privacy software project. It includes a mix network implementation with a powerful, realistic threat model, hybrid post-quantum cryptography libraries, messaging protocols and metadata-private networking - all implemented in Go and under an AGPLv3 license.

The purpose of this talk is to go over all of these elements and explain how they may be implemented in other software projects, rather than explain the high level design of the mix-net in detail. The Katzenpost code can be found at [the project's GitHub](https://github.com/katzenpost).

 "Getting more juice out from your Raspberry Pi GPU" ( 2025 )

Saturday at 14:30, 25 minutes, H.1302 (Depage), H.1302 (Depage), Embedded, Mobile and Automotive José María Casanova Crespo Maíra Canal , slides , video

Unleashing the power of 3D graphics on the Raspberry Pi is an ongoing effort at Igalia. We are constantly exploring new opportunities to maximize the GPU's potential. The process of identifying applications that can be optimized is highly rewarding. Every so often, we uncover a breakthrough, enabling us to boost application performance up to ~70%.

The graphics stack for the Raspberry Pi 4 and 5 is built on the Mesa user-space drivers (V3D/V3DV) and the Linux kernel driver V3D. These drivers are fully mature, with the upstream Mesa Vulkan driver V3DV having already achieved Vulkan 1.3 conformance, and the OpenGL/ES driver V3D exposing desktop OpenGL 3.1.

However, just having working, conformant drivers isn't enough for us. In this talk, we will demonstrate how we go the extra mile to extract the maximum performance from the Raspberry Pi's GPU, proving that a more performant embedded GPU is possible.

In addition to explaining where we currently stand, we will showcase several cases where optimizations in the Mesa user-space drivers led to significant performance improvements. We will also review recent developments in the kernel driver, including support for Huge Pages in the GPU kernel driver and our experience using Transparent Huge Pages (THP) on an embedded device.

By the end of this talk, we hope the audience will have a better understanding of the graphics stack for embedded GPUs and how to start getting more juice out of an embedded board.

 "Advanced Test Harness Infrastructure for Validating ARM and FPGA-based Systems" ( 2025 )

Saturday at 14:30, 25 minutes, UD6.215, UD6.215, Testing and Continuous Delivery Stefan Raus , slides , video

Designed to cater to a wide range of peripheral devices and platforms, Analog Devices' Kuiper Linux distribution is built with more than 1000 Linux device drivers compatible with Xilinx and Intel FPGAs, Raspberry Pi boards, and several other platforms.

To ensure its quality, a test harness infrastructure must be in place to carry out continuous testing on actual hardware. This talk covers the design and implementation of such a fully automated test harness. The implemented architecture leverages the use of readily available components/technologies such as Jenkins, Docker, NetBox, and JFrog Artifactory and, at the same time, includes custom-built tools that can be tailored and extended to support existing or new devices and platform types.

By using an advanced resource locking mechanism, the hardware setups are also remotely available to others for development and debugging, when there are no automated tests running.

 "TLSRPT comes to Open Source" ( 2025 )

Saturday at 14:30, 30 minutes, K.4.601, K.4.601, Modern Email Patrick Ben Koetter , video

My talk will introduce you to TLSRPT and it will show you how to configure Postfix to send TLSRPT datagrams to a TLSRPT report service. TLSRPT is to TLS security what DMARC is to anti-phishing: it allows you not only to establish standards like STARTTLS, MTA-STS or DANE for secure message transport, but to verify via reports those security levels are being uphold.

It allows a sender platform to inform receiving platforms how often a TLS connection from the sender to the recipient had been successful and if not why. It is a major improvement over self-monitoring your MTA service, because it creates - in contrast to self-monitoring - a world-wide view how others „see“ your platform. It allows e.g. to make areas in the network visible, where TLS fails, to investigate and ideally to fix the problem in order to keep communication secure.

Previously the capability to create and send TLSRPT reports had been limited to a few major platforms running their own or a commercial MTA. This will change early 2025. The Postfix MTA will be the first Open Source MTA to implement functionality that permits to send TLSRPT-relevant DATA to a TLSRPT report service. The service will collect the DATA, create a report and pass it on to an MTA for delivery or submit it directly via HTTP.

Postfix’ new feature is the result of a collaborative effort between Wietse Venema, the creator of Postfix, and my company sys4 as we want to foster TLSRPT (also because it hinders German providers to qualify to become BSI approved „Secure E-Mail Platforms“).

We created an Open Source low-level C-library that can be used by any MTA - not only Postfix - and the service required to create TLSRPT reports. Both can be downloaded at github. And we hope many other Open Source projects will use the library and the service to implement TLSRPT reporting in their MTA.

 "Apache Arrow tensor arrays: an approach for storing tensor data" ( 2025 )

Saturday at 14:30, 5 minutes, UB5.132, UB5.132, Data Analytics Rok Mihevc Alenka Frim , slides , video

This talk introduces Apache Arrow's tensor arrays as a tool for representing an array of tensors in memory, their storage and transportation. We'll introduce the tensor array memory layout specification, its implementation in Arrow C++ and Python, showcasing how it can help interoperate with PyData and database ecosystems.

We'll present the fixed and variable shape tensor array specifications, their implementations and how they can be used to interoperate with Arrow aware ecosystem such as DLPack, NumPy, and others. Further we'll discuss design decisions we made to make the two tensor arrays as generic and universal as possible.

 "Collabora Online - richer collaboration" ( 2025 )

Saturday at 14:30, 25 minutes, H.1308 (Rolin), H.1308 (Rolin), Collaboration and Content Management Michael Meeks , slides , video

One of the interesting things about Collabora is the extremely powerful LibreOffice core it is built on. Come and hear how we've been working hard to expose even more powerful browser-based collaborative functionality from it.

Hear about our new WebGL transitions, Automatic Document generation from documents + JSON, as well as exposing much of the power of our core functionality from fonts and AutoText to more powerul configuration options.

Finally have a quick summary of UI wins and other recent improvements, as well as how to get involved.

 "TKey, an open source/open hardware security token for SSH et c" ( 2025 )

Saturday at 14:30, 30 minutes, UB4.132, UB4.132, Security Michael Cardell Widerkrantz , slides

The Tillitis TKey is a radical new open source and open hardware FPGA-based general computer in the form factor of a USB security token. Due to the mandatory measurement of apps it generates secret material on demand, with no persistance, based on the integrity of the app and provides a secure environment to do sensitive computing like, for instance, cryptographic signing, authentication, and similar uses.

In the talk I will present how the TKey works, especially with the killer app SSH, how it came about, and touch on how you develop apps for it, the tools available, and welcome you to join the open source projects behind it. With a small, dedicated team you can get a lot of things done, even with hardware designs using FPGAs and your own design of PCBs.

 "How a City Platform Became a Global Community" ( 2025 )

Saturday at 14:35, 25 minutes, UB5.230, UB5.230, Community Carolina Romero Cruz , slides , video

Picture this: an open source digital democracy platform, launched by a city government, that quickly outgrows its municipal roots and becomes a global movement. Decidim started in 2016 as a tool for participatory processes in Barcelona, but its community expanded worldwide, with users in diverse cultural and political contexts. How do you scale such a project while preserving its democratic integrity?

In this session, we’ll dive into Decidim’s evolution, focusing on the governance challenges and triumphs of managing a rapidly growing, decentralized community. We’ll explore how Metadecidim—our "eat your own dog food" instance—facilitated this transition, enabling collaborative decision-making through open assemblies and processes. We’ll also discuss how Decidim’s unique social contract ensures transparency and accountability in everything from feature development to project governance.

This session is for you if you’re interested in the nuts and bolts of scaling participatory governance of free software projects.

 "How I optimized zbus by 95%" ( 2025 )

Saturday at 14:40, 40 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Rust Zeeshan Ali Khan , video

This is a story of how I used a few readily-available Open Source tools to achieve huge optimizations in zbus, a pure Rust D-Bus library. This was long journey but gains were worth the efforts. I will go through each single bottleneck found, how it was found and why it was a bottleneck and how it was optimized away.

While attending this talk will by no means make you an expert in optimizations, it is my hope that by you will be able to relate to some of bottlenecks or solutions I will present ("hey", I also do that in my code!") and learn from my experience. Maybe afterwards, you can suggest an even better solution? Moreover, if you don't already have any experience with profiling and optimizations, this talk should be a good introduction for that.

 "How Open-Source Software is Shaping the Future of Healthcare" ( 2025 )

Saturday at 14:40, 25 minutes, AW1.126, AW1.126, Open Research Miguel Xochicale , video

Open-source software has been a powerful catalyst for innovation in computer and software engineering, driving significant advancements in healthcare, particularly in medical and surgical technologies. Recently, the open-source movement has expanded beyond software, encompassing the release of code, data, and AI models, further accelerating progress across diverse fields. However, in healthcare, open-sourcing faces distinct challenges, including navigating regulatory hurdles to meet industry standards, ensuring robust patient data protection, managing the costs of specialised hardware and software maintenance, and addressing the limited availability of expert clinicians needed to annotate, test, and validate AI innovations. In this talk, Miguel will explore how open-source technologies are advancing healthcare, with a focus on medical and surgical innovations. He will highlight key advancements while exploring the complexities of clinical translation, using three of his projects as examples: Fetal Ultrasound Image Synthesis, endoscopy-based video analysis for surgery, and real-time AI diagnosis of eye movement disorders. The talk will examine the challenges of clinical translation and showcase examples of innovative technologies that leverage open-source software, models, and data to address some of the most complex problems in healthcare. Finally, to inspire and spark innovation among the next generation of engineers, researchers, and clinicians from academia and industry, this talk will showcase how the emerging open-source software community for surgical and medical technologies is striving to: (a) Foster Collaboration and Community Building, (b) Enhance Security and Transparency, (c) Promote Customisation and Flexibility, (d) Ensure Cost-Effectiveness, Sustainability, and Scalability, and (e) Drive Rapid Innovation and Future-Proofing.

 "Optimizing Longhorn for high performance hardware" ( 2025 )

Saturday at 14:40, 30 minutes, K.3.401, K.3.401, Software Defined Storage Konstantinos Kampdais , slides , video

Longhorn is an open-source, Cloud-native volume manager, which implements its own distributed block storage system. It is a complete and independent software defined storage solution, handling internally all aspects related to capacity management, performance, fault-tolerance, as well as interfacing with both Kubernetes and the end user. Longhorn is an actively-developed and mature software, however our installations have revealed that it currently lacks the ability to take advantage of the hardware performance available in local servers that feature high-speed solid state disks and high-bandwidth network connectivity. This presentation investigates a series of performance optimizations that have been engineered in the Longhorn's core that collectively allow the system to achieve an order of magnitude better IOPS and bandwidth.

 "How to quickly build an AI startup on open source RISC-V Cores" ( 2025 )

Saturday at 14:40, 35 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), RISC-V Jeremy Bennett Florian 'Flo' Wohlrab Frédéric Desbiens , slides , video

AI is everywhere and especially open source is accelerating capabilities and delivering new breakthroughs in Models, making them smaller yet more powerful. While there is a big focus on the next big thing in Software, many overlook the goldrush in Hardware. You may have heard of companies like Nvidia, AMD or Axelera.AI, they are some of the ones selling the shovels to the diggers for a great profit margin. Have you ever wondered what it take to make your own chip?  So how to get started on your AI startup? The good news is: there is RISC-V, an open standard for CPUs, so everyone cam implement their own CPU and use common library software (in theory).  The even better news is there is an non profit open source organization called OpenHW Foundation offering high quality Apache 2.0 (or Solderpad) CPU Cores you can take as is, modify as needed and collaborate with a big community. Even better, the OpenHW Foundation is offering small platforms to debug on FPGA's but also has QEMU support and various other Models for example system Verilog cycle accurate SystemC Models. On top of this we also provide the Software eco system you need to brign your chip up and running quickly and sell it to one of the big Datacenter Companies, or just keep it running in your basement, heating your house and providing awesome AI edge capabilities for you and your family! In this talk Flo will highlight the current trends in chip development and how open source is accelerating this from the Cores to the EDA tools for designing but also open source tapeouts and then focus a little more on some of the Cores in OpenWH and how you can utilize it. Dr Jeremy Bennett world famous for his 45min overviews on "how to get GNU GCC ported on a totally new Architecture" is joining to deliver an overview which Software you need to run on your Chip, to develop your Chip and why it is easy with the OpenHW Group. Last but not least we will spill the beans on how the European Union is supportign our work as a non profit (and also for profits in that context) to guarantee sovereignty and enable academic but also research and industrial to build and innovate on a common platform via the Chips JU and programs like TRISTAN and how you can benefit, no matter if you quickly develop a MCU in your Master, need to do some measurements on real RISC-V Cores for your PhD and prove how to boost performance or if you join the real business selling shovels to all the diggers. Believe us, this talk will be a wild ride deep into the Hardware realm of RISC-V and OpenHW and make you start your own Chip while you are still listening!

 "Open Source Firmware, BMC and Bootloader devroom - outro" ( 2025 )

Saturday at 14:40, 5 minutes, UB4.136, UB4.136, Open Source Firmware, BMC and Bootloader Piotr Król , video

Closing notes and information about pPub (physical Pub) meetup.

 "How we built a new powerful JSON data type for ClickHouse" ( 2025 )

Saturday at 14:45, 30 minutes, UB5.132, UB5.132, Data Analytics Pavel Kruglov Robert Schulze , slides , video

JSON has become the lingua franca for handling semi-structured and unstructured data in modern data systems. Whether it’s in logging and observability scenarios, real-time data streaming, mobile app storage, or machine learning pipelines, JSON’s flexible structure makes it the go-to format for capturing and transmitting data across distributed systems.

At ClickHouse, we’ve long recognized the importance of seamless JSON support. But as simple as JSON seems, leveraging it effectively at scale presents unique challenges. In this talk we will discuss how we built a new powerful JSON data type for ClickHouse with true column-oriented storage, support for dynamically changing data structure and ability to query individual JSON paths really fast.

ClickHouse open-source project: https://github.com/ClickHouse/ClickHouse Links related to the topic: https://github.com/ClickHouse/ClickHouse/issues/54864, https://github.com/ClickHouse/ClickHouse/pull/58047, https://github.com/ClickHouse/ClickHouse/pull/63058, https://github.com/ClickHouse/ClickHouse/pull/66444.

 "LoRaMesher library for LoRa mesh networks" ( 2025 )

Saturday at 14:50, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning Talks Felix Freitag Joan Miquel Solé , slides , video

We present LoRaMesher, a communication library to build LoRa mesh networks. LoRaMesher interconnects geographically spread IoT devices through a LoRa mesh network. For the communication, the library implements a proactive distance vector routing protocol. Using LoRaMesher, an IoT application running on a node can send and receive data packets to and from other nodes in the LoRa mesh network. LoRaMesher has been tested on embedded boards featuring an ESP32 microcontroller and a LoRa radio. Using LoRaMesher, nodes do not connect to a LoRaWAN gateway, but among themselves. This allows new, distributed applications solely built upon tiny IoT nodes.

 "Mainline vs libhybris: Technicalities, down to the buffer" ( 2025 )

Saturday at 14:55, 20 minutes, H.2214, H.2214, FOSS on Mobile Devices Alfred Neumayer , video

This is not on behalf of a specific community, only my direct experience with Ubuntu Touch, libhybris and Halium.

SailfishOS, Ubuntu Touch, Droidian. Many options exist for running a GNU/Linux environment on an off-the-shelf mobile phone. But what makes these different from an application developer’s perspective for a smartphone OS built with libhybris drivers?

Let’s find out.

 "getaddrinfo sucks, everything else is much worse" ( 2025 )

Saturday at 15:00, 25 minutes, H.2213, H.2213, DNS Valentin Gosu , slides , video

Historically, Firefox has relied on the getaddrinfo API for DNS resolution on most platforms. However, due to inherent limitations — such as the missing Time-To-Live (TTL) information — we sometimes had to resort to alternative APIs like DNSQuery_A on Windows. When implementing DNS over HTTPS (DoH), we developed our own DNS parser, which allowed Firefox to also resolve TXT and HTTPS records. But DoH isn't available to all our users. With HTTPS records becoming increasingly important, we decided to resolve HTTPS queries using system APIs like DNSQuery_A, res_query, res_nquery, and android_res_query, with the expectation that this would cover all supported platforms. This talk will delve into the lessons learned from this journey and explain why these platform specific APIs often fall short of expectations.

 "Squashing the Heisenbug with Deterministic Simulation Testing" ( 2025 )

Saturday at 15:00, 25 minutes, UD6.215, UD6.215, Testing and Continuous Delivery Dominik Tornow , video

Modern, distributed systems are complex and present numerous challenges: concurrency, process crashes, message loss, duplication, or reordering.

How can developers confidently test distributed systems instead of continuously dreading the next hard-to-catch and hard-to-reproduce Heisenbug?

Deterministic Simulation Testing is a powerful testing technique that eliminates uncertainty-or rather non-determinism-and ensures that your system is tested exhaustively and every single test is reproducible.

Using a systems modeling approach, we will accurately and concisely discuss Deterministic Simulation Testing. In addition, we will explore real-world implementation of this technique in production in projects such as FoundationDB, TigerBeetle, and Resonate.

Gain actionable insights for crafting your own Deterministic Simulation Testing strategy. Confidently open Schrödinger's Box of testing in distributed systems.

 "The state of eBPF docs" ( 2025 )

Saturday at 15:00, 20 minutes, K.4.201, K.4.201, eBPF Dylan Reimerink , slides

eBPF is a big and complicated topic. For years it was common that the people using and writing eBPF programs were also the people involved in the development of eBPF. Those days are somewhat behind us now, eBPF is more popular than ever, and the number of non-kernel experts wanting to use eBPF is growing rapidly.

A lot of new people means a lot of learning to be done. There is a small but strong community of people to talk to, if you know how to find them. The internet is full of outdated articles that have aged like milk. The kernel has docs for a handful of subjects and man pages that are correct for some kernel versions but not others.

I started the eBPF docs project about two years ago out of frustration for the lack of comprehensive documentation. These docs are now hosted at docs.ebpf.io. Lets take a look at the state of these docs, what it took to get here and where they are going next.

 "Developing a modern shell and programming language with Go" ( 2025 )

Saturday at 15:00, 30 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Go Qi Xiao , video

I will talk about implementing Elvish (https://elv.sh), a modern shell with Go. I will cover the following topics:

  • An introduction to Elvish, including how to integrate it with Go-based tools for real-world scripting use cases
  • How Go makes it easy to implement Elvish, such as pipeline semantics, standard library
  • Testing strategy of Elvish as a case study of testing complex Go projects - Elvish has a test coverage of 92% and increasing, uses both unit tests, end-to-end tests and fuzzing

 "Engaging the Open-Source Community: Exploring the OpenSIPS Community Edition Projects" ( 2025 )

Saturday at 15:00, 10 minutes, K.3.601, K.3.601, Real Time Communications (RTC) Răzvan Crainea

The OpenSIPS Community Editions are the community effort to produce real-life SIP solutions (as platforms) already configured to fulfill precise SIP scenarios. OpenSIPS based solutions – acting as SoftSwitch or SBC – that are ready to use and simple to deploy.

This presentation offers a detailed look at the OpenSIPS Community Edition projects, exploring their capabilities, current status, and development roadmaps. It delves into the innovative ideas driving these projects and emphasizes the critical role of the open-source community in their evolution. To conclude, a brief showcase using Docker Compose will effectively demonstrate the practical utility of the OpenSIPS Community Edition projects.

 "The status of removing /sys/class/gpio and the global GPIO numberspace from the kernel" ( 2025 )

Saturday at 15:00, 25 minutes, H.1302 (Depage), H.1302 (Depage), Embedded, Mobile and Automotive Bartosz Golaszewski , slides , video

The GPIO sysfs interface for user space has been deprecated for many years. Its alternative, the GPIO character device and the associated libgpiod project, has been available since 2017. The library, along with its numerous bindings, has become the de facto standard tool for interacting with GPIOs from user space. Recently, it was supplemented by a D-Bus API and a reference implementation, addressing the long-standing issue of maintaining GPIO state persistence across different processes.

The sysfs interface is the primary user of the global GPIO number space in the kernel. Unlike other legacy components of the GPIO codebase, we cannot remove it without user space agreeing to stop using it. However, there remains a group of users who, for various reasons, refuse to migrate to the new uAPI. It has become evident that, without providing them with a 100% compatible experience, we will be stuck with the old interface indefinitely.

To address this, the latest addition to the family of user-space GPIO utilities is gpiod-sysfs-proxy[1] - a libfuse-based user-space compatibility layer for the GPIO sysfs interface under /sys/class/gpio, using libgpiod to talk to the kernel.

This talk will cover why we aim to remove /sys/class/gpio (along with the in-kernel legacy APIs), progress made so far, an introduction to gpiod-sysfs-proxy and the libgpiod D-Bus API, and a discussion of future plans.

[1] https://github.com/brgl/gpiod-sysfs-proxy

 "A Free Software App Store for iOS: the App Fair Project's perspective on the DMA" ( 2025 )

Saturday at 15:00, 25 minutes, H.1301 (Cornil), H.1301 (Cornil), Legal and Policy Marc Prud'hommeaux , video

The Digital Markets Act mandates that mobile gatekeepers open their device operating systems to competing app stores. This affects the landscape of app distribution on iOS and Android and has brought about a variety of different compliance efforts, most of which have been found lacking by regulators thus far. The law is important for Free Software, as its obligations grant smaller Free Software projects the rights to demand access to gatekeepers' infrastructure like enabling alternative app store, sideloading and un-installation of software and interoperability with operating systems.

This talk will outline the current state of compliance efforts on the part of Apple and iOS, the primary areas where they are deemed insufficient, and how they effectively block any marketplace from emerging as a viable source of FOSS software distribution for the iPhone and iPad. Financial preconditions, ongoing fees, enforced DRM, centralized notarization app review, and other factors all conspire together to maintain the status quo of monopolistic control over the app marketplace on these devices.

The App Fair Project (appfair.org) is a non-profit charity with the mission of creating an app marketplace for the distribution of digital public goods in the form of free and open-source mobile applications. We have been active in the various workshops and working groups that have examined the DMA compliance efforts on the part of the mobile OS gatekeepers, and have provided technical advice and expertise to groups such as the Free Software Foundation Europe (FSFE) and the NGI TALER project.

 "Welcome to the web performance dev room" ( 2025 )

Saturday at 15:00, 5 minutes, UA2.220 (Guillissen), UA2.220 (Guillissen), Web Performance Dave Hunt Peter Hedenskog

A five minute introduction to the dev room.

 "Hardware backed SSH keys: ssh-tpm-agent" ( 2025 )

Saturday at 15:00, 30 minutes, UB4.132, UB4.132, Security Morten Linderud , slides , video

SSH keys are an important part of system administration as they give access to remote systems. While openssh supports the PKCS11 interface, and yubikeys through the sk key types, they introduce challenges such as acquiring additional hardware, or introducing external code into sensitive processes. TPM are widely available hardware devices that allows key creating, signing and encryption operations on a separate hardware, however they do not have native supported by the openssh, and similar projects.

ssh-tpm-agent implements support for TPM wrapped SSH keys through the ssh agent interface. This allows a clear process separation for the keys, while ensuring no new support is required in the openssh project. The agent has support for RSA and ECDSA keys, while also having additional features like host keys, proxy support for additional agents, wrapping of existing keys and import of remotely created keys.

In this talk we will take a look at how the agent works, how the TPM is capable of preventing key extraction, and the other features available in the agent.

 "Living the SBOM life - the good, the bad and the evil parts" ( 2025 )

Saturday at 15:00, 50 minutes, K.1.105 (La Fontaine), K.1.105 (La Fontaine), Main Track - K Building Olle E. Johansson , slides , video

SBOMs are in the limelight now as the silver bullet for many things - open source license compliance, vulnerability management, copyright management and the path towards a healthy, secure and CRA-certified happy state of a binary life. But behind all this marketing and makeup is a fairly simple syntax and a lot of missing pieces in the puzzle. Let’s dive into the SBOM lifestyle together and look at the current status, the hopes and the vision for a toolset with less hype, but more real benefits for compliance, developers, product managers, with a chance of being a workhorse in risk management as well as the automatic vulnerability management toolchain. Help us make the SBOM dream come true, listen to the talk and then walk the SBOM walk!

 "Federated Blogging with WriteFreely" ( 2025 )

Saturday at 15:00, 30 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Social Web Matt Baer , slides , video

While much of the fediverse has historically focused on microblogging, we've built an open source, federated blogging platform called WriteFreely that enables publishing long-form content to the social web.

In this talk, I'll show how WriteFreely works, and discuss how we integrated ActivityPub into our existing software (written in Go) to give writers a new way to socialize on the open web. I'll share lessons learned from this process, and discuss some ideas for supporting new content forms (like long-form Articles) into the wider fediverse.

 "InvokeDynamic in Practice with JRuby" ( 2025 )

Saturday at 15:00, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Free Java Charles Nutter

JRuby has been one of the largest consumers of invokeddynamic and method handles since they were introduced in Java 7. With the release of JRuby 10, we have upgraded our minimum Java to 21, and implemented many new optimizations. This talk will survey how JRuby uses invoke dynamic to compile and optimize Ruby code on the JVM.

 "Sandbox IDs with Landlock" ( 2025 )

Saturday at 15:00, 30 minutes, UD2.218A, UD2.218A, Containers Mickaël Salaün , slides , video

Landlock is an unprivileged access control designed to create security sandboxes (i.e. Landlock domains). We are working on observability interfaces to identify the cause of denied requests, which require logging (audit) and a dedicated user space interface to get information about Landlock domains.

In this talk, we'll explain the challenges to tie log entries with running processes and their properties, considering the unprivileged approach of Landlock. This led us to create a new kind of ID to tie processes to Landlock domains. We are now working on a new user space interface to safely get information about these Landlock domains. Thanks to its flexibility, Landlock could be leveraged by container runtimes to better isolate processes and now also to cleanly identify them. We'll talk about the container labels/IDs challenges, how Landlock could help, and the potential limitations.

 "How FreeBSD security audits have improved our security culture" ( 2025 )

Saturday at 15:00, 30 minutes, AW1.120, AW1.120, BSD Pierre Pronchery Michael Winser , slides , video

In this presentation we will review recent security audits of the Bhyve and Capsicum subsystems, lessons learned, how this work was funded, and how it's having a lasting impact on the security culture of FreeBSD.

 "Welcome to the Microkernel and Component-Based OS Devroom" ( 2025 )

Saturday at 15:00, 5 minutes, UB4.136, UB4.136, Microkernel and Component-Based OS Udo Steinberg Alexander van der Grinten , slides

This short talk will serve as a welcome and introduction to the Microkernel and Component-Based OS devroom. We will quickly go over the rules of the devroom, as well as introducing you to the devroom managers and answering general questions.

 "Welcome to the Swift ecosystem!" ( 2025 )

Saturday at 15:00, 10 minutes, K.4.401, K.4.401, Swift Paris Pittman , video

Swift isn’t just for Apple platforms; there is something for all in this great open source general purpose programming language.

In this community welcome message, Paris Pittman, a member of the Swift Core Team, will provide an ecosystem overview. We’ll touch on milestones that we’ve achieved together and some of the up and coming work on our plates. And the best part - you can join us in the journey! Paris will detail out how you can plug in, no matter your platform of choice.

 "DMARCaroni: where do DMARC reports go after they are sent?" ( 2025 )

Saturday at 15:00, 30 minutes, K.4.601, K.4.601, Modern Email Vint Leenaars , video

In recent years DMARC has become one of the cornerstones of email deliverability. A large part of email is now protected by the combined efforts of SPF, DKIM and DMARC checks. However, the secret weapons of DMARC which are hardly used are its reports. Along with respecting the policy set by an email sender, the recipient also actively acknowledges how many emails have been sent, from which IP addresses and why some of them have been delivered and others not. This reporting is done by providing a xml file inside a zip attached to an email, which makes it rather hard to digest for humans. Imagine what happens if you get such a report every day for every internet domain you, all of your colleagues and anybody spoofing you send emails to...

Obviously this calls for a tool. Interestingly, even though DMARC is almost a decade old, no good FOSS tool was ever developed. This is why DMARCaroni was created: free and open source software (written in Haskell and Elm) to deliver all your DMARC monitoring needs. In this talk I will unveil this new tool which I wrote in the last 18 months, show off its features, and talk about the roadmap.

 "The Selfish Contributor Revisited" ( 2025 )

Saturday at 15:00, 50 minutes, Janson, Janson, Main Track - Janson James Bottomley , video

In a previous FOSDEM I described the selfish contributor:

https://archive.fosdem.org/2020/schedule/event/selfish_contributor/

Which is the archetypal scratching your own itch contribution. The original talk mostly focussed on how to deal with corporations, which tend to act rationally and are usually persuadable. In this talk I'd like to look at individuals and their motivations and how their selfish motivations can be harnessed efficiently.

By now everyone has heard the phrase "toxic individualism" which simply means putting your rights and needs over that of the community. Many Codes of Conduct try to characterize this behaviour and that, in turn, can lead to a general fear because many actions of a selfish contributor could be classified as toxic behaviour because under this definition, every non-altruistic action (even scratching your own itch) could fit the definition. One would think therefore that successful and vibrant communities must be tolerant of some form toxic behaviour to avoid driving away potential contributions, but that isn't true either. What actually happens is that successful communities evolve strategies for harnessing what would otherwise become toxic behaviours to serve the community.

This talk will explore how conditions arise in a community for harnessing selfish impulses to the good of the community. Sometimes it can be community processes, but most often it is people who spot the issue and help mediate a solution which benefits both the contributor and the community at large. This talk will also explore what those skills are and how to develop them and also touch on how, even in the best communities, those mechanisms can fail and give some hints for recognizing when this has happened and what to do about it.

Slides are here:

https://www.hansenpartnership.com/Impress-Slides/FOSDEM-2025-Main/

 "Global Voices, Inclusive Orgs: How Open-Source Sets the Standard for Inclusivity and How You Can Too BOF" ( 2025 )

Saturday at 15:00, 60 minutes, AW1.121, AW1.121, BOF - Track A Apoorv garg

Open Source thrives on the diversity of its global contributors, which has driven the creation of some of the most inclusive practices in the industry. Yet, nearly 80% of the global tech community remains underrepresented and faces numerous inclusivity barriers beyond just language. In this session, we'll see how open-source organizations have harnessed their diverse voices to craft a community that includes all identities, gender representations, and multilingual accessibility. By the end of this session, attendees will gain practical insights to implement these inclusive standards in their work, ensuring their community is welcoming and accessible to all.

This session highlights a critical issue in the tech industry - THE LACK OF INCLUSIVITY. While this problem spans multiple sectors, we will focus specifically on community practices. We'll explore how language barriers, gender biases, and accessibility gaps have historically excluded many from fully engaging with Community. We'll also look at how some of the most successful open-source communities, such as Kubernetes, and Django have faced inclusivity challenges before, how they have tackled them head-on, and what we can learn from their experiences.

This session is also to hear the voices of those who have faced issues and could share their experiences. So We can get more ideas and as an Open Source, be more inclusive.

 "OpenProject: A Review of the Latest Features and Innovations" ( 2025 )

Saturday at 15:00, 25 minutes, H.1308 (Rolin), H.1308 (Rolin), Collaboration and Content Management Wieland Lindenthal , video

Join us for a comprehensive review of the newest features and innovations in OpenProject, developed over the past year. This session will explore key updates, including enhancements to project portfolio management, deeper integration with the openDesk application bundle, and the exciting progress of a mobile app spike. Discover how these developments empower teams to collaborate more effectively, manage projects with greater precision, and streamline workflows. Whether you’re a long-time user or new to OpenProject, this talk will offer valuable insights into how the platform continues to evolve and create value.

 "Welcome to the GCC (GNU Toolchain) devroom" ( 2025 )

Saturday at 15:00, 5 minutes, K.3.201, K.3.201, GCC (GNU Toolchain) Jose E. Marchesi Thomas Schwinge Marc Poulhiès

Welcome to the GCC (GNU Toolchain) devroom from the organizers.

 "Devroom welcome" ( 2025 )

Saturday at 15:00, 5 minutes, UA2.114 (Baudoux), UA2.114 (Baudoux), Cloud Native Databases Ray Paik Franck Pachot Matthias Crauwels Lori Lorusso , slides , video

Welcome session for the Cloud Native Databases devroom

 "AT Protocol developer meet and greet" ( 2025 )

Saturday at 15:00, 30 minutes, H.3242, H.3242, BOF - Track B Dietrich Ayala , slides

The AT Protocol aka @proto is a protocol designed for decentralized social applications, the inaugural example being Bluesky - a social network application.

If you're developing with @proto or for Bluesky, join to meet others doing the same.

Learn more at:

  • https://atproto.com/
  • https://bsky.app/
  • https://bsky.social/
  • https://atprotocol.dev/
  • https://lexicon.community

You can sign up at https://lu.ma/7a0p68nw to be notified about this and other @proto events around FOSDEM.

UPDATE:

  • bsky post: https://bsky.app/profile/burrito.space/post/3lh53m4hiyc25
  • pdf slides: https://github.com/autonome/elephant/raw/master/pdf/ATPROTO%20%40FOSDEM.pdf
  • google slides for forking/remixing: https://docs.google.com/presentation/d/18iQ2OyjiYV5Mzu7z-FV68SzD3zDyYBdW-esbTcIkMTU/edit

 "Cloud Autonomy and Interoperability: The Eclipse Cloud" ( 2025 )

Saturday at 15:00, 60 minutes, H.3244, H.3244, BOF - Track C Gaël Blondelle Jean-Baptiste Piacentino

Join us at for an engaging session on the Eclipse Cloud Interest Group! This session will explore our mission to foster cloud autonomy and interoperability, offering insights into the group’s objectives and ongoing efforts. We’ll also feature presentations from key technical projects associated with the Interest Group, such as Xpanse, Biscuit, Conformity Assessment Profile, and XCP-ng, highlighting their contributions to creating an open, resilient, and interoperable cloud ecosystem. You are interested in cloud interoperability? This session is your chance to connect, collaborate, and contribute. Join us to learn more about the Interest Group, get involved in the projects, and help shape the future of cloud services!

 "HelenOS: 20 years of past history, 20 years of future vision" ( 2025 )

Saturday at 15:05, 20 minutes, UB4.136, UB4.136, Microkernel and Component-Based OS Martin Decky , slides , video

The basic foundations of the HelenOS project as we know it today have been laid in late 2004 and early 2005. This 20th anniversary is an opportunity not only for the usual status update talk about the recent developments and near future plans, but also a great opportunity to look at the bigger picture.

While the first 5 years of HelenOS were exploratory and the next 10 years were defined by dynamic expansion on all fronts by more than 80 individual contributors, the last 5 years could be fairly described as maintenance with much less activity.

HelenOS is alive and well, but there are no longer any low-hanging fruits in terms of major subsystems or frameworks missing. There is obviously still a sheer amount of individual hardware devices, file systems, standard APIs and polished features that could be supported or implemented, but that is clearly a less rewarding endeavor for potential contributors than working on the major building blocks like before.

Are there generic lessons to be learned from the story of HelenOS? Is every community-driven non-mainstream OS destined to end up in this "serene valley"? How do we plan to get out of it? The goal of this talk is to discuss these questions.

 "Building the next generation of Cloud Native Database" ( 2025 )

Saturday at 15:05, 30 minutes, UA2.114 (Baudoux), UA2.114 (Baudoux), Cloud Native Databases Sunny Bains , slides , video

Cloud Native databases architecture has evolved to leverage the elasticity, reliability and scalability available in the cloud. There is a growing trend to leverage object storage systems such as AWS S3 for architecting cost-effective, performant and scalable systems. S3 is a large-scale, high throughput key-value storage system, which it trades for a slightly higher latency. In this session we will present techniques used to leverage S3 for a low latency scalable distributed SQL database, in particular how to get around S3’s high latency by leveraging a novel new LSM Cloud Storage Engine that uses EBS as a cache to lower latency.

 "Active Tigger: Accelerating Collaborative Text Annotation for Social Sciences and Beyond" ( 2025 )

Saturday at 15:05, 15 minutes, AW1.126, AW1.126, Open Research Emilien SCHULTZ , video

This presentation introduces Active Tigger, an open-source research tool designed to accelerate collaborative text annotation in the social sciences.

The increasing use of text-as-data in social science research has created a pressing need for efficient annotation tools. While small datasets can be manually annotated, the exponential growth in available textual data (e.g., from newspapers and social media) demands solutions that enable collaborative annotation and automation. Moreover, the emergence of generative AI and large language models (LLMs) has highlighted the importance of robust corpus annotation practices, particularly for evaluating prompt-engineered outputs from LLM-as-a-service platforms like OpenAI or Hugging Face.

To address these challenges, we created an annotation platform, Active Tigger. A first version was developed in 2022 using R and RShiny (J. Boelaert, GitLab Repository). This tool embeds several annotation heuristics, including active learning—iteratively predicting and selecting annotations to maximize training quality—to help researchers build training datasets in order to fine-tuning encoder models. The tool quickly became integral to the research team's activities and beyond, which incited us to develop of a second, more robust version.

The current iteration of Active Tigger, built with a Python-based API and a React frontend, introduces enhanced flexibility and scalability. It supports collaborative workflows, accommodates a broader range of use cases, and is now in beta testing, with early adopters exploring its potential.

This presentation will cover three key aspects:

The journey of Active Tigger: From addressing specific social science needs to adapting to the evolving landscape of LLMs. Showcase: Demonstrating the annotation workflow using active learning and BERT fine-tuning. Future directions: Exploring the tool's evolution in the context of widespread LLM availability, discussing the trade-offs between focusing on specialized tasks and enabling broader applications.

Github repository of Active Tigger : https://github.com/emilienschultz/activetigger

 "From Side Projects to Sustainable Open Source" ( 2025 )

Saturday at 15:05, 25 minutes, UB5.230, UB5.230, Community Orhun Parmaksız

Ever wondered what it's like to maintain open source projects full-time?

In this talk, I'll share my journey from hobbyist to full-time open source maintainer, offering insight into the challenges and rewards of turning passion projects into a career.

Join me as I walk you through my journey, motivation, challenges, and tips for:

  • Building a community around your open source project
  • Increasing visibility and attracting contributors
  • Navigating social media and livestreaming to grow your audience

And more! Along the way, I'll share insights from other maintainers, highlighting what works and what doesn't.

Blood, sweat, and code — it's all here, for the love of open source!

 "Pushing the Sega Dreamcast with GCC" ( 2025 )

Saturday at 15:05, 30 minutes, K.3.201, K.3.201, GCC (GNU Toolchain) Falco Girgis , video

GCC is the lifeblood which powers continued development for many legacy and niche processors, such as the Hitachi SH4, found in the Sega Dreamcast. See how far a group of retro game developers, reverse engineers, and language enthusiasts are able to push the console, armed with the latest version of the GNU Toolchain, taking a deep-dive through community-driven ports to the platform, such as Super Mario 64, Sonic Mania, Doom 64, and Grand Theft Auto 3.

 "Blink them to death using Embedded Swift" ( 2025 )

Saturday at 15:10, 10 minutes, K.4.401, K.4.401, Swift Eric Bariaux , slides , video

Using the recently announced Embedded Swift Swift.org - Get Started with Embedded Swift on ARM and RISC-V Microcontrollers we'll program an nRF52840 micro-controller.

We’ll start by introducing the world of embedded devices and their specific characteristics. The talk will explain what Embedded Swift is and how it allows us to program these devices using the Swift language. We’ll also cover some of the current limitations of using Swift in this context, particularly when compared to developing on Apple platforms.

Starting from the "blinky" example published by Apple—a simple program that makes an LED blink, widely considered the “Hello World” of embedded programming, we'll progressively modify the code, making it more closely resemble idiomatic Swift code, so that any Swift developer can feel at home.

In the final part of the presentation, we'll explore more advanced projects implemented using Embedded Swift, talk about the other domains where these concepts can be applied and the future of this budding initiative.

Although having a foundational understanding of Swift helps, attendees without prior experience with Swift should still be able to follow along quite easily. No prior embedded systems experience is required.

 "All the World's a Stage: running a theatre show on open source software" ( 2025 )

Saturday at 15:10, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning Talks Pieter De Praetere , slides , video

You can run anything on open source software, even a big conference. But have you ever tried running a theatre show with free and open software? Turns out you can. For the last five years, I have been running the technical side of a local theatre company with only free and open source software. Come to my talk to hear how we did it, what software we use(d) (and why), and what kind of bumps we hit.

We use open source software for the entire process, from preparation (writing the script, holding meetings), to ticket sales, our website, seat planning, audio mixing and broadcasting, video broadcasting and programming the lights. No closed source software is used in the process. An added challenge is that neither the theatre group, nor the public, are a technical audience or are aware what open source software is.

If you ever want to assist your local theatre group (do, they really can use technical people who don’t want to be on stage), come and listen!

 "How browsers REALLY load Web pages" ( 2025 )

Saturday at 15:10, 40 minutes, UA2.220 (Guillissen), UA2.220 (Guillissen), Web Performance Robin Marx , slides , video

When browsers load a Web page and its subresources, A LOT happens under the hood. They need to take into account render/parsing blocking resources, use a preload scanner, listen to resource hints (like preload/preconnect), loading modifiers (async/defer/module), fetchpriority, responsive images, and much more. Based on all those signals, they then need to somehow decide when to load which resources, to make optimal use of the modern HTTP/2 and HTTP/3 connections. And, as you might have guessed, none of the browsers do this in quite the same way (understatement alert!). Several even intentionally delay requesting some resources until others have been downloaded (shocked face emoji here).

This talk is a deep dive into how browsers decide when to load a specific resource, and some ways in which you can influence them to modify their behaviour (so you can make sure that important LCP image is definitely one of the first things to come in!). We will look at A LOT of different waterfalls and discuss why each looks the way it does, why browsers often make different decisions, and how to solve common problems (no, don’t just preload everything with fetchpriority=high, you monster!).

You will walk away with a deeper understanding of what happens under the hood, which will allow you to better deal with the various gotchas and quirks present in today’s browsers and resource loading features.

 "OAuth Authentication and Identity Validation in SIP Systems" ( 2025 )

Saturday at 15:15, 15 minutes, K.3.601, K.3.601, Real Time Communications (RTC) Jehan Monnier jehan.monnier@belledonne-communication.com , slides , video

User authentication in real-time communication systems using SIP (Session Initiation Protocol) is evolving with the adoption of OAuth 2.0, as outlined in RFC 8898, published by the IETF in 2020. This protocol secures user access through authentication tokens (instead of traditional methods like Digest). This "Single Sign-On" approach allows for the use of a unified identity verification source across the entire information system, and is now being extended to VoIP. In this conference, we will explore how OAuth 2.0 and OpenID Connect are integrated into a modern SIP environment, with a focus on managing and validating access tokens. To illustrate this, we will use our Flexisip server solution.

Key Topics: - OAuth 2.0 and OpenID Connect: Introduction and benefits for authentication in modern SIP systems. - JWT for Authentication: Token signature validation and extracting user identity. - Integration in Flexisip: Demonstration of OAuth-based authentication with Flexisip, and token validation in a SIP environment. - Authorization Management: Controlling requests based on identity information extracted from access tokens.

This conference will provide an overview of how to implement and secure user authentication with OAuth 2.0 and JWT in a SIP server, using Flexisip as a concrete example.

 "SDR++, a modular, cross-platform SDR utility" ( 2025 )

Saturday at 15:20, 55 minutes, UB2.147, UB2.147, Radio Alexandre Rouma , video

This talk is would be a presentation of the SDR++ project with roughly the following sections: 1) A small history segment about the project and its origins 2) An in-depth explanation of the architecture and design choices of the software 3) A short demo showcasing the features of the software

 "From Rust-VMM to KataContainers: THE DEVELOPMENT OF H EXT. BASED SOFTWARE ECOSYSTEM" ( 2025 )

Saturday at 15:20, 35 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), RISC-V Ruoqing He , video

Our efforts to develop a complete Rust-based software stack for secure, cloud-native applications on the emerging RISC-V architecture. Despite the unavailability of current-generation hardware with H Extensions, Advanced Interrupt Architecture (AIA), and IOMMU support, we are proactively building and testing our stack in preparation for future hardware releases. Centered around the rust-vmm framework, we enable lightweight hypervisors like Dragonball, StratoVirt, Cloud-Hypervisor, and Firecracker—all designed to provide high performance, strong isolation, and virtualization-based security. Integrating these hypervisors with Kata Containers, we explore virtualization-based isolation of containerized workloads on RISC-V. By simulating hardware environments and leveraging forward-compatible software designs, we aim to be fully prepared for the introduction of real RISC-V hardware that meets RVA23 standard and RISC-V Server Platform specification, ensuring a seamless deployment path for confidential computing and secure cloud-native platforms.

 "Kernel support for Mobile Linux: The missing 20%" ( 2025 )

Saturday at 15:20, 20 minutes, H.2214, H.2214, FOSS on Mobile Devices Luca Weiss , slides , video

Supporting modern smartphones on mainline Linux is getting easier by the year; it's now possible to get a lot of hardware working with fairly minimal effort or issues.

But what do we do for the parts which are not easy, the bits where you as a developer get stuck? Users of mobile phones expect everything to work, but the closer we get to that the more issues become apparent which are not just missing feature bringup.

We've managed to get 80% of the way, so let's talk about what's missing to get the remaining 20% to work and actually make phones mostly feature complete from a kernel perspective.

 "bpftrace: a path to the ultimate Linux tracing tool" ( 2025 )

Saturday at 15:20, 20 minutes, K.4.201, K.4.201, eBPF Viktor Malik , slides , video

We present bpftrace [1], a tracing tool for Linux based on eBPF which comes with a simple domain-specific language, "bpfscript". The language offers a convenient way to write eBPF tracing programs, without the need to dive deep into the complexities of eBPF. This makes bpftrace suitable as the entry point into the eBPF world. In addition, the terse nature of the language facilitates on-the-fly writing of very powerful short programs (so-called "one-liners") specifically tailored at the user's immediate tracing purposes.

Where bpftrace has struggled in the past, is writing complex tools which are intended to run and be maintained for a prolonged period of time. This has recently started to change with the introduction of many new bpfscript features such as variable and type declarations, user-defined functions, and more.

Ultimately, our goal is to make bpftrace the number one choice for most tracing tasks on Linux. In this talk, I will guide you through our way to achieve that - the current state of the project, the latest significant additions, and the planned future work.

No prior knowledge of eBPF or bpftrace is required for this talk. A basic understanding or a prior experience with Linux tracing is helpful.

[1] https://github.com/bpftrace/bpftrace/

 "[RESCHEDULED] From Particle Collisions to Physics Results: EOS Open Storage at CERN" ( 2025 )

Saturday at 15:20, 30 minutes, K.3.401, K.3.401, Software Defined Storage Abhishek Lekshmanan Guilherme Amadio , video

In this talk, we'll explore the lifecycle of data at CERN, the European Organization for Nuclear Physics, starting at particle collisions ultimately leading to physics research. The bulk of the data from the physics programme at CERN is stored in an open source storage system developed at CERN, EOS - EOS Open Storage.

We'll delve into technical & architectural details on EOS and cover how it solves the problem of large scale storage for scientific data and analysis use cases. EOS supports FUSE, HTTP & GRPC as access protocols. EOS is used also outside of physics use cases, for eg. powering CERNBOX, a cloud storage for CERN users, at JRC, for analytics etc and may power your next large scale storage needs!

 "PICO Scholar: Advancing Open Research with an Open-Source AI Platform" ( 2025 )

Saturday at 15:20, 15 minutes, AW1.126, AW1.126, Open Research Cristina DeLisle Matias Vizcaino , slides , video

PICO Scholar is an open-source project at the proof-of-concept stage, developed by a team from Georgia Tech’s Master in Computer Science program with early guidance from Robert Gordon University (Andrews et al., 2023). Recently recognized with a 2nd place finish at the Red Hat & Intel AI Hackathon, PICO Scholar aims to tackle the growing challenge of sifting through massive, fast-evolving literature—whether in healthcare, engineering, or education. Traditional search tools often struggle with specialized terminology, inconsistent metadata, and a lack of transparent workflows. By integrating domain-adaptive AI and real-time collaboration features, our platform offers a more robust, efficient way for researchers to discover, analyze, and evaluate relevant studies.

We’re not just building another search engine—we’re creating an AI-driven collaboration hub designed to adapt across multiple domains and languages. As we move toward our first functional use case—helping conference organizers manage submissions—we’re actively seeking developers, researchers, and domain experts to guide our roadmap and expand the platform’s capabilities. Join us in making systematic reviews faster, more accurate, and truly open to all.

PICO Scholar GitHub repository

Join the PICO Scholar community questionnaire

 "volesti: sampling efficiently from high dimensional distributions" ( 2025 )

Saturday at 15:25, 30 minutes, UB5.132, UB5.132, Data Analytics Vissarion Fisikopoulos , slides , video

Sampling from multidimensional distributions is a fundamental operation that plays a crucial role across sciences including modern machine learning and data science. An impressive number of important problems such as optimization and integration can be efficiently solved via sampling.

This talk is an introductory tutorial on open-source software volesti, a C++ package with R and Python interfaces. volesti offers efficient implementations of state-of-the-art algorithms for sampling as well as volume computation of convex sets in high dimensions. volesti provides the most efficient implementations for sampling and volume to date allowing users to solve problems that cannot be solved with alternative software packages.

The structure of the talk has two parts: first an introduction to volesti library and relevant background and second a tutorial that shows how volesti can be used with a focus on applications in artificial intelligence, finance and bioinformatics.

 "Why Swift is the Next Big Thing for IoT" ( 2025 )

Saturday at 15:25, 10 minutes, K.4.401, K.4.401, Swift Lilly Seay , slides , video

Internet of Things (IoT) connects everyday devices, from sensors to smart home gadgets, with apps that control and monitor them. Building these systems requires programming languages that can work seamlessly across both embedded devices and applications. Swift has been great with C and C++ interoperability, but the introduction of Embedded Swift has brought this to a new level.

With Swift, we can now program embedded systems with low-power sensors and small memory footprints, while also taking advantage of Swift’s simplicity and safety to create interfaces that integrate seamlessly with high-level UI code.

This talk explores why Swift is the next big thing for IoT, demonstrating how it bridges the gap between embedded systems and user-interfacing Swift apps. You’ll learn why Swift’s expressive syntax, interoperability, and cross-platform capabilities simplify development for IoT.

 "Programming ROS 2 with Rust" ( 2025 )

Saturday at 15:25, 20 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Rust Júlia Marsal Perendreu

Discover how the Rust programming language and the ROS 2 framework are transforming robotics development in this talk. Everything can be found in this repository: https://github.com/roboticswithjulia/ros2_rust_workshop. Participants will dive into the fundamentals of the ROS2 Rust package: https://github.com/ros2-rust/ros2_rust.

The session will highlight Rust's performance and safety benefits, its integration with ROS 2 for robotic systems, and practical implementation techniques. Through guided exercises, attendees will learn how to program and control a quadruped robot using Rust within the ROS 2 framework, gaining insights into the challenges of robotic systems and how this powerful combination addresses them effectively.

This talk is ideal for developers looking to enhance their robotics expertise using a modern programming language and a robust middleware. Whether you're new to Rust, ROS 2, or seeking to deepen your robotics knowledge, this session offers a unique opportunity to build robust and efficient systems for the robots of tomorrow.

 "Catalog Zones in the PowerDNS Recursor (TALK REPLACES CANCELLED TALK)" ( 2025 )

Saturday at 15:25, 10 minutes, H.2213, H.2213, DNS Otto Moerbeek Kevin P. Fleming , slides , video

Catalog Zones in the PowerDNS Recursor

 "Reverse engineering CAN communication and building ECUs using Elixir and the BEAM" ( 2025 )

Saturday at 15:30, 25 minutes, H.1302 (Depage), H.1302 (Depage), Embedded, Mobile and Automotive Thibault Poncelet , slides , video

When tinkering with cars or other vehicles, being confronted with CAN communication or a similar bus is unavoidable. Throughout the past year, Thibault has been using CAN communication to build an Open Vehicle Control System and using it on a real car. In this talk, Thibault will explain how to get started with CAN reverse engineering, how he made different car parts from different brands talk together, and why Elixir and the Erlang Virtual Machine (the BEAM) is a good candidate for them to quickly prototype ECUs with cheap parts.

 "Immich: Self-hosted photo and video management solution" ( 2025 )

Saturday at 15:30, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning Talks Immich Team , slides , video

An overview of Immich, and how it helps you backup, browse, search and organize your photos and videos with ease.

 "An Intro to eBPF with Go: The Foundation of Modern Kubernetes Networking" ( 2025 )

Saturday at 15:30, 30 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Go Donia Chaiehloudj , slides , video

eBPF is revolutionizing how we secure, observe, and scale Kubernetes networking, but its complexity can be daunting. This session demystifies eBPF by exploring how Go makes it accessible, focusing on its integration with Kubernetes through the open-source project Cilium. Attendees will learn the basics of eBPF, how Go simplifies working with it, and practical use cases that demonstrate Cilium’s ability to enforce secure, scalable network policies. This talk is perfect for Kubernetes practitioners curious about eBPF and Go but unsure where to begin.

 "Friendica - under the radar since 2010" ( 2025 )

Saturday at 15:30, 30 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Social Web Tobias Diekershoff Michael Vogel , slides , video

Friendica has been part of the Fediverse since 2010, building bridges between Laconica and Diaspora*, making it one of the oldest active projects of the Fediverse - yet Friendica has flown under the radar most of the time.

In this talk we will give a short introduction to Friendica, its unique features and how it differs from other systems.

The Friendica project homepage can be found at friendi.ca, the source code for the core is maintained on github and for the addons on git.friendi.ca.

 "Cristal - A flexible wiki UI" ( 2025 )

Saturday at 15:30, 25 minutes, H.1308 (Rolin), H.1308 (Rolin), Collaboration and Content Management Manuel Leduc , slides , video

Cristal is an innovative, modular Wiki User Interface built entirely with TypeScript. It enables navigation and content creation across multiple knowledge sources, including XWiki, local folders, GitHub or NextCloud. Designed with a focus on modularity and extensibility, Cristal offers a modern, polished interface build with VueJS. Its features include offline capabilities, and real-time collaboration.

In this talk, we will showcase the progress made over the past year, including key features and the challenges we faced. We will also discuss how the project has evolved and outline the roadmap for the upcoming year.

 "Running Containers Under Systemd: Exploring Podman Quadlet" ( 2025 )

Saturday at 15:30, 20 minutes, UD2.218A, UD2.218A, Containers Axel STEFANINI , slides , video

Containers are typically deployed in Kubernetes clusters. But at a smaller scale, on a single-node server, or for development purposes, Kubernetes will be overkill. What’s the recommended way to run a fully autonomous application with several interacting containers in these cases?

The answer is systemd. It can orchestrate containers as is an already running process manager, and containers are just child processes. It’s a perfect fit for running containerized workloads without human intervention.

The concept of Quadlet has been introduced in Podman v4.4.0. It’s a systemd-generator that writes and maintains systemd services using Podman. It can manage containers lifecycle (start, stop, restart), volumes, pods, deployments etc. via systemd. The name comes from the following: “What do you get if you squash a Kubernetes kubelet? A quadlet”. Both system and user systemd units are supported to deploy applications without root privileges.

In this presentation, we will discuss what are Podman Quadlets and demonstrate how Podman Kubernetes features can be associated with it to deploy a fully autonomous application.

 "Breaking tech monopolies in Europe: A fireside chat with the European Commission" ( 2025 )

Saturday at 15:30, 25 minutes, H.1301 (Cornil), H.1301 (Cornil), Legal and Policy Lucas Lasota Alexandre Ruiz Feases Victor Le Pochat , slides , video

The EU Digital Markets Act is a law regulating the economic power of very large technology companies. The law includes several obligations to tackle unfair practices and improve market contestability addressed at companies considered "gatekeepers" of digital markets in the EU.

The DMA creates new opportunities impacting Free Software, like the obligations to allow alternative app stores, the prohibition of non-removable pre-installed software, the enabling of side-loading of software in devices, and interoperability rules regarding software and hardware.

The European Commission is the main authority responsible for implementing and oversight the DMA. The Commission has been investigating companies like Apple, Google and Meta due to their behaviour and practices.

This fireside chat will provide the audience the opportunity to interact with Commission's officers working directly with the DMA. The session will focus on the legal and technical challenges the Commission faces for DMA compliance, in particular: (a) Enabling alternative app stores in iPhones and iPads; (b) Enhancing interoperability in Apple devices; (c) Breaking lock-ins by leveling the playing field for smaller Free Software projects against gatekeeper commercial practices.

The format consists of: (1) a short presentation by the Commission's officers on the importance of DMA for Free Software contributors; (2) A longer Q&A session together with the audience moderated by Dr. Lucas Lasota about the technical and legal aspects of the DMA.

This fireside chat will provide valuable insights for the audience on the work of regulators in Europe, and how they implement key legislation for Free Software.

 "Inner Workings of the FFI API in the JVM" ( 2025 )

Saturday at 15:30, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Free Java Martin Doerr , slides , video

The Foreign Function & Memory API (JEP 454) introduced a new way of interacting with libraries written in other languages. It can be used as replacement for JNI. This talk examines the inner workings of the Foreign Function Interface (FFI) API. After having it implemented for PowerPC, I'd like to discuss how the JVM handles native function calls and Java callbacks, focusing on key concepts like stack layouts, calling conventions, and cross-platform challenges. The session is intended for developers curious about the technical foundations of free and open Java technologies and how JVM enhancements like the FFI API are realized. It will shed light on the low-level mechanisms that enable seamless integration of Java with native code while maintaining the performance and safety Java developers expect.

 "Sigsum: Detecting rogue signatures through transparency" ( 2025 )

Saturday at 15:30, 30 minutes, UB4.132, UB4.132, Security Niels Möller , video

When you install a properly signed software update, maybe the update you got is different from what everyone else get. Maybe the attacker was able to sign a malicious update due to key compromise, or coercion of the legitimate key holder. How would you, or anyone else, notice?

One way to enable detection (but not prevention) of this kind of attack is transparency. When installing updates, verify the signature as usual. In addition, require that the signature is visible in a public append-only transparency log, where entries can be added but never removed.

Sigsum is a minimalistic transparency log that can accept signed checksum submissions for a wide variety of applications and entities that are neither known, nor trusted, by the log operator. The log itself does not become a trusted third party for applications, instead, applications depend on m-of-n trusted witnesses attesting that the log behaves correctly. One of the many use-cases of Sigsum logging is transparency for signed software packages and updates.

This talk explains the "detection, not prevention" benefits one can get from Sigsum, and describes the different roles that make up the Sigsum system.

 "Celebrating kernel diversity with Genode" ( 2025 )

Saturday at 15:30, 25 minutes, UB4.136, UB4.136, Microkernel and Component-Based OS Alexander Boettcher , slides , video

The Genode OS framework is an open-source tool kit for building component-based operating systems. It scales from rather static embedded appliances to highly dynamic general-purpose computing as showcased by Sculpt OS. Nowadays Sculpt OS is mature, in daily use, and supports PCs, ARM notebooks and the PinePhone.

Since its inception, the Genode framework supports various microkernels and Linux at the lowest layer. Even so Genode leveraged the characteristic features of the underlying kernels, each kernel called for different trade-offs. All the requirements and expectations by the Genode framework towards the kernel are institutional knowledge of Genode's core developers and implicitly documented in Genode's foundation book.

As I'm currently in the process to enable another kernel, let's take a look back, review our experiences, re-iterate challenges we had to surmount, and draw the connection to the ongoing endeavor of broadening Genode's kernel landscape even more.

It goes without saying that no Genode talk is without a demo!

 "Testing Support for Multiple Authentication Methods in ClickHouse Using Combinatorics and Behavioral Models" ( 2025 )

Saturday at 15:30, 25 minutes, UD6.215, UD6.215, Testing and Continuous Delivery Alsu Giliazova , slides , video

In this talk, I’ll share how combinatorial testing and behavioral modeling helped uncover tricky edge cases while testing ClickHouse’s (open-source column-oriented DBMS) multiple authentication methods feature. I’ll demonstrate how these methodologies can systematically identify gaps in testing, validate complex features, and improve software quality. Attendees will learn practical steps for applying combinatorial testing to define comprehensive test scenarios, as well as how behavioral modeling can simplify result validation and solve the test oracle problem. This session is for QA engineers, testers, and developers looking to adopt smarter, more effective testing strategies.

 "Hachyderm @ FOSDEM!" ( 2025 )

Saturday at 15:30, 60 minutes, H.3242, H.3242, BOF - Track B Preston Doster -- @esk@hachyderm.io

Kris Nova first announced Hachyderm -- a Mastodon instance that's a safe space for LGBTQIA+, BLM, and other historically marginalized communities -- on the FOSDEM stage in 2023. While Nova is no longer with her vision and spirit for bringing people together through tech and hacking the system is still with us. Today, Hachyderm is about 50,000 users (with about 10,000 monthly active users) strong.

We would like to host an in-person gathering for members of the Hachyderm community who are attending FOSDEM, but anyone is welcome. Come join us to talk about your favorite Nova stories, Hachyderm moments, or the Fediverse in general. Several members of the Nivenly & Hachyderm teams will be joining us as well.

 "Panel discussion: 5 years of JMAP - experiences and outlook" ( 2025 )

Saturday at 15:30, 30 minutes, K.4.601, K.4.601, Modern Email TELLIER Benoit Hans-Jörg Happel Ben Bucksch Mauro De Gennaro Zhivko Vasilev , video

It's slightly more than five years that RFC 8620 - The JSON Meta Application Protocol (JMAP) - was published, aiming to provide a modern replacement for IMAP. Our panelists are involved in various ways of implementing this new protocol in Open Source software and will provide insights and perspectives.

Participants: - Ben Bucksch (Parula; Client) - Benoit Tellier (Twake/Apache James; Client/Server) - Mauro De Gennaro (Stalwart; Server) - Zhivko Vasilev (Mailtemi; Client) - Hans-Jörg Happel (Moderator)

(Update: The initially planned talk for this slot can unfortunately not be held)

 "Human-Computer Counter-Choreographies" ( 2025 )

Saturday at 15:35, 25 minutes, AW1.126, AW1.126, Open Research Joana , slides , video

Human-Computer Counter-Choreographies is an artistic research project that combines critical design, choreography and embodied sense-making with data tracking. The project has evolved into various formats such as workshops, a live-coding performance piece, web-based tools and artworks. In this talk, Joana Chicau will introduce the motivations behind the project and how it has impacted audiences by raising awareness of data tracking. She will also demo a custom version of the open-source DuckDuckGo privacy extension which unveils online tracking algorithms through audio and visual feedback.

 "Reusing PostgreSQL codebase in a Distributed SQL Architecture (YugabyteDB)" ( 2025 )

Saturday at 15:35, 30 minutes, UA2.114 (Baudoux), UA2.114 (Baudoux), Cloud Native Databases Franck Pachot , video

YugabyteDB distinguishes itself among distributed SQL databases by utilizing PostgreSQL's C code rather than building a compatibility layer from the ground up. This session will explore both the advantages and challenges of this architecture. We will drill down from PostgreSQL's familiar query layer to the distributed storage system, which stores PostgreSQL tuples and lock intents within RocksDB's LSM trees using Raft replication.

We will be guided by analyzing execution plans that closely resemble those of PostgreSQL and adding further metrics that shed light on the underlying storage operations. We may also evaluate stack traces to identify the PostgreSQL and RocksDB functions involved in query execution. Finally, the session will discuss the rationale behind forking PostgreSQL, focusing on its benefits and trade-offs.

 "Empowering Communities and Local Tech Companies with Government-Supported FOSS Localization Project" ( 2025 )

Saturday at 15:35, 25 minutes, UB5.230, UB5.230, Community Open Culture Foundation Ian Liu , video

Since 2022, the Open Culture Foundation (OCF) has been collaborating with Taiwan’s Ministry of Digital Affairs (MoDA) and STEPS (a local tech company) on government-funded localization projects. These initiatives aim to make civic tech and open-source tools more accessible in Taiwan while enabling international projects to take root and thrive locally.

As a coordinator, OCF has completely localized projects such as GOV.UK Notify, GOV.UK Forms, Matrix Client (Element Series), IRMA, Yivi, Standard for Public Code, Bitwarden, Nextcloud, FreeOTP, GIMP, and Mattermost. Some of these projects have been contributed back to their upstream repositories, while others have evolved into localized solutions tailored to Taiwan's needs. OCF’s efforts focus on three key areas to ensure government funding provides not only financial support but also a foundation for sustainable development.

This talk will explore these three main focus areas:

  • Optimizing the Government Perspective on Open Source Educating government officials about the nature of open-source communities, their collaboration models, and the unique attributes of various international open-source projects. OCF also developed a collaborative glossary process to bridge communication gaps among stakeholders and ensure consistent terminology usage.

  • Collaboration Among Taiwan’s Communities Partnering with Taiwan’s L10N community, OCF established structured review processes to meet the government’s high standards for quality and timeliness. Over three years, OCF conducted two major surveys during COSCUP. One survey identified critical open-source projects needed in Taiwan, while the other focused on addressing challenges that hinder contributions, aiming to encourage broader participation.

  • Engagement with Local Industry and International Communities Although Taiwanese tech teams are highly skilled, many are unfamiliar with the culture of open-source contributions. OCF facilitated understanding of licensing, contribution practices, and engagement with upstream communities. For example, OCF helped Mattermost report and resolve a date display bug in Chinese (CJK) scripts and worked with upstream communities to address significant differences between Simplified and Traditional Chinese, including grammar and linguistic nuances.

Localization is not merely about technical translation; it is a strategic approach to connecting governments, communities, and international open-source projects. This talk will share OCF’s experiences in bridging these gaps and invite Community DevRoom participants to exchange ideas on how to effectively integrate open-source projects into their respective countries.

 "Enabling AI-Powered Conversations at Scale with Kamailio, FreeSwitch, and RTPEngine" ( 2025 )

Saturday at 15:35, 15 minutes, K.3.601, K.3.601, Real Time Communications (RTC) Nuno M Reis , video

In a call center environment, this talk will explore how to leverage the power of Kamailio, FreeSwitch, and RTPEngine to enable AI-driven real-time conversations at scale.

We will dive deep into how to integrate AI copilots, providing real-time call transcriptions and conversational context, as well as AI autopilots, enabling call conversations with specialized bots.

By taking advantage of well-defined standards like SIPREC, and leveraging the capabilities of Kamailio, FreeSwitch, and RTPEngine, along with some additional custom code, we will demonstrate ingenious ways to enable these AI-powered capabilities for any VoIP environment, even legacy proprietary systems.

Attendees will learn practical techniques and best practices for building scalable, AI-enhanced call center solutions that can improve customer experience, increase agent productivity, and drive business outcomes.

 "Wake up, FreeBSD! Implementing Modern Standby with S0ix" ( 2025 )

Saturday at 15:35, 15 minutes, AW1.120, AW1.120, BSD Aymeric Wibo , slides , video

Modern laptops, such as the AMD Framework and newer Intel models, no longer support the traditional ACPI S3 sleep state. Instead, they rely on S0ix, a modern standby mechanism that enables low-power idle states. This is one of the only big features still missing for FreeBSD to be a first-class citizen on contemporary laptops, and this talk will explore the journey and current progress of supporting it. Attendees will learn about the nitty-gritty of the implementation including the relevant ACPI objects, tables, and DSMs, CPU and device power states, and future plans for device idleness determination to automatically put them to sleep.

Blog post tracking progress: https://obiw.ac/s0ix FreeBSD Project website: https://www.freebsd.org/ Working GitHub repo: https://github.com/obiwac/freebsd-s0ix

 "Is Big DNS Taking Over? (REPLACES CANCELLED TALK)" ( 2025 )

Saturday at 15:35, 10 minutes, H.2213, H.2213, DNS Farzaneh Badiei , slides , video

One of the central questions driving this research is to learn why there are so few trusted public DNS resolvers.

 "Bpftrace OOM Profiler" ( 2025 )

Saturday at 15:40, 20 minutes, K.4.201, K.4.201, eBPF Samuel Blais-Dowdy , slides , video

Scuba, a real-time data ingestion system similar to Elasticsearch, is often experiencing memory pressure as part of normal operations. The pressure is sometimes overwhelming, leading to OOM (out-of-memory) issues. These are difficult to track in user space as the symptoms of such issues are only visible in kernel space (SIGKILL, kernel oom killer). This talk will highlight how we leveraged bpftrace to monitor our service and help bridge our observability gap.

 "Building a Ferrofluidic Music Visualizer with Embedded Swift" ( 2025 )

Saturday at 15:40, 10 minutes, K.4.401, K.4.401, Swift Rauhul Varma , slides , video

Discover the possibilities of Embedded Swift in action with a unique open-source project: a ferrofluidic music visualizer and Bluetooth speaker. This lightning talk will introduce Embedded Swift, explain how it integrates seamlessly with C code, and address common challenges faced when building firmware for embedded systems.

The talk will feature a high-level walkthrough of the firmware, including an overview of the DSP logic for generating I2S output to control the device’s electromagnets. The project—fully open-source and hosted in the swift-embedded-examplesGitHub repository—showcases the use of the Raspberry Pi Pico W SDK alongside Swift to create a functional, innovative product.

To wrap up, the firmware will be deployed live, culminating in a demo where the device visualizes music with ferrofluid. Perfect for developers curious about leveraging Swift for embedded systems, this session offers a fast-paced glimpse into the creative potential of Embedded Swift.

 "First contributions to GCC: from plugins to trunk" ( 2025 )

Saturday at 15:40, 10 minutes, K.3.201, K.3.201, GCC (GNU Toolchain) Javier Martinez

C++ has many features but sometimes we want more. We will briefly tell the story of why and how we wrote a GCC plugin, used it in production, and later contributed the feature in-tree - now part of GCC 14. The goal of the talk is to motivate users to try GCC development, highlighting that there can be a smooth transition from plugins to in-tree patches.

There will be a written tutorial to go with the talk available to anyone to follow in their own time. The tutorial goes over writing your first custom attribute, static analysis, and instrumentation passes. All packed in the exercise of writing a toy Aspect Oriented C++ via plugins.

 "Physics count game using ZIM" ( 2025 )

Saturday at 15:45, 90 minutes, UD6.203, UD6.203, FOSDEM Junior Karel Rosseel

With ZIMjs.com you can make elearning apps, zimjs.com/apps

Kids need to know Englisch because ZIM code need to be typed (not dragging blocks). Kids use an online free editor ZIM SLATE

The framework ZIM uses CREATEJS.com (used by Adobe Animate). ZIM now 10 years anniversity, started in 2014 by highschool teacher Dan Zen video who created ZIM KIDS where there are several levels of coding lessons free online with simple editor coding with shapes, if you want to use assets students(kids 8+) start coding textual games and apps in SLATE and can save the code online zapp.html file.

You will learn to make a ZIM APP (Zapp) with physics. for example to count with hitting a ball original example on ZIMjs.com/physics/keep up the ball in the air * soccerball zapp with the ball, you can pause

  • Note: You can change your ball to whatever ZIM assets
  • and let it fall onto the ground or beach or waterwaves.
  • playbeachball physics drag and stop onto waterwaves example zapp that opens in free online editor for kids ZIMjs.org/KIDS/SLATE where you can copy the code to your own file.

Activities during FOSDEM Junior follow the Code Club policies and health and safety standards.

  • All attendees must have an adult with them
  • Remember to bring your laptop with you
  • You must book a place to attend
  • Please don’t come if you are feeling unwell

Participants are required to sign up for this activity via the registration form.

 "Weather and emergency alerts" ( 2025 )

Saturday at 15:45, 20 minutes, H.2214, H.2214, FOSS on Mobile Devices Volker Krause Nucleus , slides , video

Being able to receive weather and public emergency warnings can save lives, and we don't want people using FOSS to be at a disadvantage compared to proprietary platforms when it comes to that.

Cell broadcast covers some of this, but it's only part of the puzzle. It's typically only used for the most severe and urgent cases, is limited in the amount of data it can transmit, and doesn't allow monitoring of other areas. Public alerting is, therefore, often augmented by additional channels, including mobile apps. Despite being funded by public money, those are usually limited to proprietary platforms. So, as usual, we have to build this ourselves.

The foundation for this is OASIS' Common Alerting Protocol (CAP), which has been in widespread use for many years all over the world, and UnifiedPush as a free alternative for proprietary push notifications. On top of that, we currently have an aggregation server for alerts from about 100 countries, which notifies clients about incidents in their respective areas of interest.

In this talk, we'll show how this works and how alerts can be integrated into applications.

 "The Magic of Making a Radio Remote Controller" ( 2025 )

Saturday at 15:45, 90 minutes, UD6.205, UD6.205, FOSDEM Junior Kathy Giori John Maloney

Participants will learn to remotely control robotic dogs, cars, LED displays, music making machines, and other fun gadgets using the magic of radio communications. MicroBlocks, a human-friendly programming environment, will be used to program education-friendly hardware such as the micro:bit board. As a radio remote controller, the micro:bit supports both simple radio broadcasts and paired Bluetooth Low-Energy (BLE) connections.

We will also have available the CoCube, a tiny cube robot that can sense its position and orientation while driving on a special mat. Thanks to the CoCube team, we should have enough CoCubes for all workshop participants. This workshop is recommended for those planning to take the more advanced "Learn to program tabletop football playing robots with MicroBlocks" on day 2.

Advanced users can further challenge themselves to leverage a starter app or create their own app on a smartphone or tablet that can control the micro:bit devices over BLE. Starter project tutorials will be available to make sure all participants can succeed!


Activities during FOSDEM Junior follow the Code Club policies and health and safety standards.

  • All attendees must have an adult with them
  • Remember to bring your laptop with you
  • You must book a place to attend
  • Please don’t come if you are feeling unwell

Participants are required to sign up for this activity via the registration form.

 "DNS for enterprise domains: FreeIPA and Samba AD experience" ( 2025 )

Saturday at 15:50, 25 minutes, H.2213, H.2213, DNS Alexander Bokovoy , slides , video

Active Directory-like deployments rely heavily on working DNS infrastructure. FreeIPA project handles this by providing an integrated DNS server based on Bind 9. Samba Active Directory also uses Bind 9, although in a different style. While both are capable to use an external DNS server infrastructure, ability to kickstart a whole enterprise environment from scratch with an integrated DNS server is valuable to administrators, as practice does show.

The talk will reflect on FreeIPA and Samba teams' experience on DNS requirements these Kerberos-dependent and certificate-heavy environments do have.

 "Lessons from rewriting systems software in Rust" ( 2025 )

Saturday at 15:50, 40 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Rust Ruben Nijveld , slides , video

Rewrite it in Rust has been a theme (and meme) for almost as long as Rust exists. But what actually makes a rewrite work? At first glance you would think that just making a memory safe implementation of a protocol, library or program should be enough. But in practice there are many factors that make an implementation work.

Our work on, among others, ntpd-rs, zlib-rs and sudo-rs gave us some insight into that. Both from outside the Rust community: How to identify projects that could benefit from a rewrite? What do you need to do to get your Rust project accepted in a wider community? How do you get your project known? How do I get my project distributed? But also from inside the Rust community: Which crates do can I use as dependencies? What if my preferred crate name is already in use? Should I publish on crates.io? Do I offer a Rust interface for my crate?

 "Celebrating Open Standards: How Podcasting 2.0 Shaped the Future of Podcasting" ( 2025 )

Saturday at 15:50, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning Talks Benjamin Bellamy , slides , video

Two years ago at FOSDEM, I gave a talk titled “How Podcasting 2.0 Will Save the Open Internet”. I’ll be honest—it was partly a bluff. But it turns out I was right. Today, we are here to celebrate the victory of open standards in podcasting.

Podcasting 2.0, launched in 2020 to revitalize a stagnant ecosystem, introduced innovations like transcripts, funding tags, and social interaction features. These weren’t just tools; they empowered creators, listeners, and developers while keeping podcasting open and decentralized.

In a surprising turn, even Apple—long resistant to adopting anything "not invented here"—embraced the Podcasting 2.0 DTD specification in April 2024, bringing transcription features to its platform.

This was a milestone for open standards and open source. Transcriptions improve accessibility for millions, while also boosting SEO, content discoverability, and personalized recommendations. Through Castopod—one of the first platforms to implement Podcasting 2.0 features.

A grassroots, open-source movement is reshaping an entire industry.

But this victory is just the beginning. Together, let us explore how the lessons of Podcasting 2.0 can be applied to other areas, ensuring that technology remains open, accessible, and collaborative.

Sources: - Castopod source code - Podcasting 2.0 Namespace - How Podcasting 2.0 will save the Open Internet (FOSDEM 2023)

 "Could we actually replace containers?" ( 2025 )

Saturday at 15:50, 20 minutes, UD2.218A, UD2.218A, Containers Dan Phillips , video

The now infamous quote:

“Webassembly on the server is the future of computing” – Solemn Hykes, creator of Docker

But really, what would it take? I'm talking about FULL feature parity. This talk will go deep into how we looked at and attempted to solve every single piece of this very large problem.

While containers have been pivotal in cloud computing, offering isolated environments for applications, they bring notable drawbacks. These include substantial overhead, resulting in larger, less efficient deployments and startup times, and a dependency on the underlying OS for security, posing potential vulnerabilities.

WebAssembly (Wasm) addresses these challenges, and this talk will introduce the open-source project Boxer (https://boxer.dev), which offers tooling for taking existing containerized workloads and definitions, and creating near-universally deployable Wasm distributions (“Boxes”) offering roughly the same environment, with all the benefits of the WebAssembly target. Wasm, a compact binary instruction format, enables lightweight, sandboxed execution, significantly reducing overhead compared to traditional containers. This leads to enhanced performance and smaller, more efficient deployments, ideal for cloud computing. Additionally, Wasm's memory-safe, isolated execution environment provides superior security, independent of the OS. Thus, Wasm, with its blend of efficiency and security, emerges as not just an alternative, but a substantial improvement over container technology for cloud deployments.

Marcotte (https://github.com/dphilla/marcotte) -- the underlying tool for virtualizing layers of system functionality -- allows us to make safe, sandboxed, discrete, and composable system functionality, by leveraging Rust's memory safety model, and the inherent properties of WebAssembly.

This talk will critically examine this new technology, its approach, benefits, and existing limitations compared with containers, and its path forward as a new standard in cloud infrastructure.

 "age-plugin-se: Building a lean cross-platform cryptography tool" ( 2025 )

Saturday at 15:55, 5 minutes, K.4.401, K.4.401, Swift Remko Tronçon , slides , video

age-plugin-se allows you to protect arbitrary files with your Apple Secure Enclave. This plugin for age (a simple, modern and secure file encryption tool) is written entirely in Swift, and works on macOS, Linux, and Windows.

In this talk, I will show age-plugin-se in action, and touch on the steps taken to make it robust, simple, and distributable on multiple platforms (including Alpine Linux), all while keeping the dependencies (including tools) to a minimum.

 "Tracking bulk builds in pkgsrc - from Cloud to NetBSD Native" ( 2025 )

Saturday at 15:55, 25 minutes, AW1.120, AW1.120, BSD Benny Siegert , video

pkgsrc, the NetBSD package collection, includes the pbulk tool to build all (or a subset of) packages. Bulk build reports are an invaluable resource for pkgsrc developers to find build breakage and its causes.

Since 2014, I have maintained a web app called Bulk Tracker (written in Go) to visualize bulk build results along different dimensions such as package name, platform and compiler. Originally written as a "serverless" App Engine application, it has recently been completely rewritten to run natively on NetBSD, on a server owned by the project.

This talk will show how bulk build data is useful and some typical use cases the app supports. It will also be about the journey out of the cloud and from a document datastore to SQLite.

https://releng.NetBSD.org/bulktracker/

 "RTCP, Racecars, video and 5g" ( 2025 )

Saturday at 15:55, 15 minutes, K.3.601, K.3.601, Real Time Communications (RTC) Tim Panton , slides

We have built a low latency 5g Video camera for race cars using linux and WebRTC.

We use RTCP (RTP's companion protocol) to help cope with the variability in quality and bandwidth of a 5g connection.

The talk will describe the problems we encountered, how we used data from RTCP to solve them. We will present experimental data from tests run with and without RTCP at varying speeds (30->160km/h).

We will also describe the opensource java (S)RTP/RTCP library we developed and used for this work https://github.com/steely-glint/srtplight as well as an LGPL demo program that uses srtplight implement the WebRTC based WHIP protocol (https://github.com/pipe/whipi)

 "Tutorial: How to add a builtin function to the GCC backend" ( 2025 )

Saturday at 15:55, 25 minutes, K.3.201, K.3.201, GCC (GNU Toolchain) Jeremy Bennett , slides , video

A common first step to adding full code-generation functionality for a new instruction, or set of instructions is to add them to the back-end as a builtin function. This is particularly common with RISC-V where custom ISA extensions are common place.

In this tutorial I will take you through the steps to add a builtin-function to the back-end, using a case study from the OpenHW CV32E4Pv2 RISC-V core. This has 8 ISA extensions, with a total of more than 300 instructions.

I will conclude by looking at some of the things we got wrong. In particular unexpected consequences when the new compiler started being used more widely.

 "[RESCHEDULED] CERN CTA Service: writing LHC data to tape with opensource software on commodity hardware" ( 2025 )

Saturday at 15:55, 30 minutes, K.3.401, K.3.401, Software Defined Storage Julien Leduc , slides , video

CERN (European Organization for Nuclear Research) is one of the world's largest and most respected centres for scientific research. It is home to the world's largest particle accelerator (Large Hadron Collider, LHC) and is the birthplace of the Web.

CERN's Storage and Data Management Group is responsible for enabling data storage and access for the CERN laboratory, in particular the long-term archival, preservation and distribution of LHC data to a worldwide scientific community (WLCG).

The CERN Tape Archive (CTA) Service manages more than 900 PBs of data distributes over about 50,000 high-capacity tapes in 6 tape libraries. The service ingests this exponentially growing amount of data at LHC data acquisition rates though its EOS based flash buffer and feeds up to 180 tape drives that write date on mounted tapes at over 90% write efficiency.

This high efficiency archival service runs on open-source software and is deployed on-premise on commodity hardware.

In this talk I would like to give you a high level view of the global CERN tape service performances and dive in the details of its real life deployment: from the flash buffer design principles to the tape servers connected to multiple tape drives via a dedicated network topology.

All of the presented software are open source and available for use and are deployed in other laboratories around the world.

 "Making Sense of the Long Animation Frames (LoAF) API" ( 2025 )

Saturday at 15:55, 40 minutes, UA2.220 (Guillissen), UA2.220 (Guillissen), Web Performance Andy Davies , slides , video

Over time the web has become more reliant on JavaScript… but we've very little information on how its growth is affecting our visitors' experience.

Some believe JavaScript is the only way to build the modern web and dismiss the performance concerns, while others hold opposing views.

Wouldn't it be great if we had data on how scripts actually perform in our visitor's browsers – when they delay loading, cause jankiness and slowdown interactions, and perhaps more importantly which scripts are responsible?

After all, if we can't measure it, how can we improve it?

The W3C Long Tasks API was a first attempt at providing this data but it only helped us to understand when the Main Thread was busy and couldn't answer the question of why it was busy.

The W3C Long Animation Frames (LoAF) API aims to overcome the weaknesses of the Long Tasks API and provides both information on when there were long frames during rendering the process, and where possible, details on what Main Thread activity caused the long frame.

In this talk we'll explore:

  • What data the API provides and how it relates to the Main Thread activity we see when profiling pages using Chrome DevTools

  • How we can use this data to get a better understanding of our visitors experience in the wild and identify scripts that are having a harmful impact on our visitors experience

  • What data the API doesn't currently provide and how some of these gaps might be filled in the future

At the end of this talk you'll have a good understanding of the Long Animation Frames API and how to use the data to identify scripts that need improvement.

 "OpenStack Community Meetup BOF" ( 2025 )

Saturday at 16:00, 60 minutes, AW1.121, AW1.121, BOF - Track A Amy Marrich

In this Birds of a Feather session, members of the OpenStack Community will have the opportunity to get together to discussion issues ranging from development to operations. It is also a goal of this session to welcome potential contributors and users who might want to learn more about the project and how they can get involved.

The OpenStack project is part of the OpenInfra Foundation. Code for the project is hosted at opendev.org

 "Foreign Function and Memory APIs and Swift/Java interoperability" ( 2025 )

Saturday at 16:00, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Free Java Konrad 'ktoso' Malawski , video

Swift is a fantastic general purpose language, which can and has been successfully used beyond its mobile origins, from embedded through server-side systems. One of Swift’s unique strengths is its powerful native language interoperability with C and C++. Recently, the Swift project started work on integrating improved Swift/Java interoperability with the use of both JNI and the new Foreign Function and Memory APIs introduced in JDK22. In this talk we’ll deep dive into the deep integration approach taken between the language runtimes using the FMM APIs and their unique strengths but also challenges.

 "Authentication and autoconfig for email - Update on standardization efforts" ( 2025 )

Saturday at 16:00, 30 minutes, K.4.601, K.4.601, Modern Email Ben Bucksch , slides , video

The talk shows the status of the standarization efforts for autoconfiguration and 2FA authentication for email, for example based on OAuth2 or Passkeys. It shows the various Draft RFCs discussed at the moment, and the state of their standards efforts.

There are a few strategic choices to be made, and tradeoffs, which give advantage to certain parties, e.g. email providers or email clients or their users. The talk highlights these choices and it might ask the audience for an opinion poll of some of these choices.

https://datatracker.ietf.org/doc/draft-ietf-mailmaint-autoconfig/ https://datatracker.ietf.org/doc/draft-bucksch-mauth/ https://datatracker.ietf.org/doc/draft-jenkins-oauth-public/ https://benbucksch.github.io/sasl-passkey/draft-bucksch-sasl-passkey.html

 "WebAssembly for Gophers: from Wasm to Asm and back!" ( 2025 )

Saturday at 16:00, 30 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Go Edoardo Vacchi , video

Have you ever heard about WebAssembly?

WebAssembly is a compilation target meant for efficient compilation, portability, and safe execution. A WebAssembly runtime is a language VM that is small and easy to embed.

All cool gophers know they can compile their Go software into Wasm using the Go compiler and TinyGo. But did you know that you can also embed Wasm binaries in your applications? Did you know that you can use Wasm to dynamically load code at runtime without giving up memory safety and performance?

In this talk, we will first show how WebAssembly might be relevant to your use cases, such as providing extension points to your end users or importing foreign libraries.

We will then dive deep into the implementation of one such language VM specifically designed for embedding in Go, and show how a WebAssembly function is compiled into efficient native code and then invoked without sacrificing the portability, safety, and integrity of your Go code base.

Join this session for a journey from Wasm to Asm from the eye of a gopher!

 "Samsung Camera to Mastodon Bridge" ( 2025 )

Saturday at 16:00, 10 minutes, H.1302 (Depage), H.1302 (Depage), Embedded, Mobile and Automotive Georg Lukas , video

Between 2009 and 2015, Samsung released over 30 WiFi-equipped compact and mirrorless camera models that could email photos or upload them to social media. In 2021, they shut down the required API services, crippling the WiFi functionality.

To revive the WiFi feature, the firmware of multiple camera models was reverse-engineered to understand the protocol and to “circumvent” the WiFi hotspot detection implemented by Samsung.

Based on the gained knowledge, a FOSS implementation of the API was created using the Python Flask framework, allowing to post to Mastodon right from the camera. The project supports ~75% of the camera models, looking for hardware donations and better-skilled reverse engineers to close the gap.

It was exemplarily deployed on an inexpensive LTE modem running Debian, allowing on-the-go use of the camera WiFi.

 "Auto-instrumentation for GPU performance using eBPF" ( 2025 )

Saturday at 16:00, 20 minutes, K.4.201, K.4.201, eBPF Annanay Agarwal Marc Tuduri , slides , video

Modern AI workloads rely on large GPU fleets whose efficient utilisation is crucial due to high costs. However, gathering telemetry from these workloads to optimise performance is challenging because it requires manual instrumentation and adds performance overheads. Further, it does not produce telemetry in a standardised format for commonly used visualisation tools like Prometheus.

This talk explores the potential of leveraging eBPF to capture CUDA calls made to GPUs, including kernel launches and memory allocations. Data from these probes can be used to export Prometheus metrics, facilitating detailed analysis of kernel launch patterns and associated memory usage. This approach offers significant benefits as eBPF imposes minimal overhead and requires no intrusive instrumentation. Our implementation is also open-source and available on GitHub.

 "MACHINA: Lessons and Insights from Reimplementing the Mach Microkernel" ( 2025 )

Saturday at 16:00, 20 minutes, UB4.136, UB4.136, Microkernel and Component-Based OS Gianluca Guida , slides

Mach, famous for its complex IPC and VM subsystems, remains to this day an influential and historically significant Microkernel.

This talk introduces MACHINA, a new microkernel for AMD64 and RISCV64 modelled after the Mach 3 Microkernel. Currently in prototype stage, MACHINA aims to create a modular architecture for experimenting with "Mach-like" systems, reinterpreting Mach’s principles for modern hardware and software environments.

The talk will describe Mach 3’s abstractions and architecture—with a particular focus on its IPC and VM subsystems—and explore the process, design choices, and challenges of reimplementing them from scratch.

 "Accelerating CI Pipelines: Rapid Kubernetes Testing with vCluster" ( 2025 )

Saturday at 16:00, 25 minutes, UD6.215, UD6.215, Testing and Continuous Delivery Hrittik Roy Saiyam Pathak , video

Continuous Integration (CI) workflows often encounter bottlenecks when testing Kubernetes applications. Traditional methods of building and tearing down full clusters, whether locally or in the cloud, can be both time-consuming and resource-intensive. vCluster, an open-source virtual cluster solution, offers a game-changing alternative by enabling lightweight Kubernetes clusters to be created on demand and quickly

This talk will guide you through integrating vCluster into your CI pipelines and the benefits you get from it. Virtual Cluster enables rapid application testing in production-like environments, including support for custom resource definitions (CRDs) without the overhead of traditional cluster setups. By the end of this session, you'll be equipped to reduce build times, accelerate testing cycles, and enhance the overall developer experience, as your clusters will take less time to build and you will have more time to test.

 "An overview on detecting Login Anomalies with BuffaLogs" ( 2025 )

Saturday at 16:00, 30 minutes, UB4.132, UB4.132, Security Federico Foschini Lorena Goldoni , slides , video

The infosec industry has seen a big growth in recent years, with a plethora of mostly closed-source solutions such as Endpoint Detection and Response (EDR), Security Information and Event Management (SIEM), and Security Orchestration, Automation, and Response (SOAR) marketed as indispensable tools for defending organizations. These solutions often emphasize protection against sophisticated adversaries, zero-day exploits, and malicious insiders. However, our real-world experience reveals that the majority of initial compromises occur through simpler approaches, such as stolen credentials and phishing attacks.

In this talk, we introduce Buffalogs, an open-source solution designed to detect and alert on anomalous login behaviors. Adhering to the Unix philosophy of "do one thing and do it well," Buffalogs offers a way to analyze common application logs (ssh, Apache, Microsoft Entra ID, etc) and detect credential misuse. Attendees will gain insights into the challenges of login anomaly detection, the development of Buffalogs and the differences between our solution and other commercial alternatives.

 "RISC-V Linux bug hunting" ( 2025 )

Saturday at 16:00, 35 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), RISC-V Ben Dooks , slides , video

Debugging issues with the Linux kernel and user space can be both interesting and challenging. This talk goes through looking at a couple of bugs we found while working with RISC-V in both kernel and user space.

The aim is to show multiple ways of approaching issues in both the kernel and user space, a run through why these happen, and how we fixed these problems. We will include taking an syzbot report and analysing what is going on during a strange kernel OOPS, and going through a user report of a crashing system where there was an issue with a Buildbot on a set of remote workers.

As part of this we will go into how to decode kernel OOPs, how to dump object code and attempt to decpher bug reports without the aid of attaching a debugger.

 "Collaborative editing in a MediaWiki environment" ( 2025 )

Saturday at 16:00, 25 minutes, H.1308 (Rolin), H.1308 (Rolin), Collaboration and Content Management Richard Heigl Markus Glaser Robert Vogel , slides , video

Real-time editing offers users many advantages, editing conflicts are reduced, writing minutes before and during the meeting is much more effective, and much more. However, the fact that real-time editing is now a standard requirement for a modern visual editor is primarily due to the fact that user expectations have changed with Google Docs and Confluence. The open source world has faced and continues to face the challenge of keeping up.

We have therefore extended the Wikimedia VisualEditor with real-time editing for the MediaWiki distribution BlueSpice. The result is a freely available, 100% open source solution for real-time editing, which is based on the most popular wiki software.

In this talk we will provide a first, thoroughly self-critical field report: we will show which technical problems had to be solved, we will report on use cases and initial experiences and on the impact on knowledge sharing with wikis. For example, questions of version control and accountability had to be redefined. Was it worth the effort? Definitely.

 "Zephyr: Open Source Project Best Practices Over Time" ( 2025 )

Saturday at 16:00, 50 minutes, K.1.105 (La Fontaine), K.1.105 (La Fontaine), Main Track - K Building Kate Stewart , slides , video

In 2024, the Zephyr project hit a milestone by becoming one of the few open source projects with over 100,000 commits in it's main repo. Why are developers joining and contributing to it?

When the project launched in 2016, there was the commitment from the start apply known best practices to its development. While Zephyr is a different code base, a lot of the lessons learned from the Linux Kernel Community were applied to forming it's community. The project focused on incorporating security best practices as the were identified right from the start, and is now working towards formal safety certification.

This talk will go through some of the best practices that have been applied for developing open source projects, and illustrate the results of applying these best practices.

 "Funkwhale presentation : to audio federation" ( 2025 )

Saturday at 16:00, 10 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Social Web petitminion , slides , video

A presentation of the Funkwhale project with a focus on interoperability. We want to highlight the role of the activityPub protocol but also show the interest of musicbrainz, rss, wikipedia to build a web of knowledge.

 "Let's talk about anti-trust!" ( 2025 )

Saturday at 16:00, 25 minutes, H.1301 (Cornil), H.1301 (Cornil), Legal and Policy Karen Sandler Alanna Rutherford , slides , video

Many views about antitrust abound in the FOSS communities, but what do the laws actually say? We've invited Alana Rutherford, an accomplished United States antitrust lawyer to answer our questions about how these laws actually work.

 "14 Years of systemd" ( 2025 )

Saturday at 16:00, 50 minutes, Janson, Janson, Keynotes Lennart Poettering , slides , video

Almost a decade and a half ago we introduced systemd, and it since has been adopted by most commercial and community distributions in one form or another.

Let's have a look back at the tumultuous beginnings, how we became what we are now, and let's talk a bit the perspective for the future, what systemd is supposed to be in the eyes of its developers – and what it shouldn't be.

 "Open-Hardware E Ink Devices with Modos: Discussion & Demos" ( 2025 )

Saturday at 16:00, 30 minutes, H.3244, H.3244, BOF - Track C Alexander Soto

Modos is an open-hardware and open-source company, building an ecosystem of e-ink devices to re-imagine personal computing with a focus on creating calm, inclusive, and humane technology.

Join us for an informal BoF session to discuss open-hardware e-paper projects, come and try our Caster development board and Paper Monitor, and discuss improvements and ideas. There’s no fixed agenda—just a chance to share use cases, get feedback, and build a community around e-paper and open hardware. Bring your questions or come meet others in the community.

 "Open Research Organizers Panel" ( 2025 )

Saturday at 16:00, 15 minutes, AW1.126, AW1.126, Open Research Mathieu Jacomy Paul Girard Luisa Orozco Diego Victor Daussy-Renaudin Sara Petti Célyagd Violeta Menéndez González Jim Madge Emilien SCHULTZ Deborah Udoh , video

The Open Research organizers panel will propose the audience to exchange about the devroom organisation, scope, feedback... Let's open the box about who, how, why FOSDEM welcome a space to discuss FLOSS in academia issues. The Open Research devroom's been existed since 2020, what about discussing how to do better future editions? It could also be the occasion to consider joining the org team!

 "dbt-score: a linter for your dbt model metadata" ( 2025 )

Saturday at 16:05, 30 minutes, UB5.132, UB5.132, Data Analytics Jochem van Dooren Matthieu Caneill , slides , video

dbt (Data Build Tool) is a great framework for creating, building, organizing, testing and documenting data models, i.e. data sets living in a database or a data warehouse. Through a declarative approach, it allows data practitioners to build data with a methodology inspired by software development practices.

This leads to data models being bundled with a lot of metadata, such as documentation, data tests, access control information, column types and constraints, 3rd party integrations... Not to mention any other metadata that organizations need, fully supported through the meta parameter.

At scale, with hundreds or thousands of data models, all this metadata can become confusing, disparate, and inconsistent. It's hard to enforce good practices and maintain them in continuous integration systems. We introduce in this presentation a linter we have built: dbt-score. It allows data teams to programmatically define and enforce metadata rules, in an easy and scalable manner.

dbt-score is an open-source linter for dbt metadata. It is designed to be flexible to enforce and encourage any good practice set up by data teams. Through its CLI, data practitioners can easily obtain a maturity score of their data models, keep the metadata chaos manageable, improve consistency, and eventually deliver high-quality data.

 "Designing YDB: Constructing a Distributed cloud-native DBMS for OLTP and OLAP from the Ground Up" ( 2025 )

Saturday at 16:05, 30 minutes, UA2.114 (Baudoux), UA2.114 (Baudoux), Cloud Native Databases Evgenii Ivanov , slides , video

Distributed systems are great in multiple aspects: they are built to be fault tolerant and reliable, can scale almost infinitely, provide low latency in geo-distributed scenarios and, finally, they are geeky and fun to explore. YDB is an open source distributed SQL database which has been running production for years. There are installations with thousands of servers storing petabytes of data. To provide these capabilities, any distributed DBMS must achieve consistency and consensus while tolerating unreliable networks, faulty hardware and absence of a global clock.

In this session, we will provide a gentle introduction to problems, challenges and fallacies of distributed computing, explaining why sharded systems like Citus are not always ACID and differ from truly distributed systems. Then, we will dive deep into the design decisions made by YDB to address these difficulties and sketch YDB's architecture layer by layer - from the bare metal disks and distributed storage up to OLTP and OLAP functionalities. At the end, we will briefly compare our approach with that of Calvin, which originally inspired YDB, and Spanner.

 "Why Swift is the best language for building modern applications on the backend" ( 2025 )

Saturday at 16:05, 20 minutes, K.4.401, K.4.401, Swift Tim Condon , video

Swift is a relatively new language in the server world but provides a significant number of benefits that makes it ideal for building applications for servers. In this session you’ll see how Swift's tenets of Safety, Performance, Ease of Use using modern features along with a goal of making it an ideal language for anywhere in the stack make it the perfect language for backend development.

We’ll take a short tour of the language and see how easy it is to write clear, maintainable safe code that scales for large asynchronous applications. We'll discuss the language features that eliminate entire classes of common programming errors and see the capabilities that enable Swift to run on embedded devices, Lambda functions, WASM environments, and Docker containers. Finally we’ll discuss Swift’s interoperability with other languages such as C, C++ and Java that make it easy to migrate codebases to Swift.

 "Kickstarting an Open Source Culture: A Guide for Mentors" ( 2025 )

Saturday at 16:05, 25 minutes, UB5.230, UB5.230, Community Martin Hickey , slides , video

Many companies are understanding the value of having open source contributors and maintainers within their ranks. Growing that open source culture internally is not quite as easy as simply hiring developers to “work on open source” and pointing them at a GitHub repository. Martin and Phil both became open source contributors and, ultimately, maintainers in the past decade with the support of company efforts to increase contributors. They both learned a lot of open source lessons along the way and are taking that knowledge into leadership and specific mentoring roles at IBM and AWS today.

In this talk, Martin and Phil will provide guidance for both employees and technical leaders who are looking to invest in growing an open source culture where they work. We’ll help detail the ways that open source investment is valuable both for the company and for the employee’s own vitality and career advancement. We’ll share how our own open source journeys have unlocked career opportunities that may have been unavailable to us before, and how we are investing in others through various programs and career mentoring at our respective companies today.

 "Bringing Oniro to Mobile: Challenges in Hardware Enablement" ( 2025 )

Saturday at 16:10, 10 minutes, H.2214, H.2214, FOSS on Mobile Devices Francesco Pham , slides , video

The Oniro Project, an open-source operating system built upon OpenHarmony and tailored for European market needs, is expanding its ecosystem to include mobile devices. In this lightning talk, we will discuss the ongoing effort to bring Oniro to the Volla X23 smartphone, focusing on the technical challenges and solutions in adapting Android drivers to a musl libc-based platform.

We will explore the role of libhybris in enabling compatibility with proprietary Android drivers, a critical step in hardware enablement for Oniro on mobile devices. The presentation will highlight how libhybris bridges the gap between the Bionic and musl libc environments, allowing us to leverage GPU acceleration and other hardware features while maintaining an open-source user space. Key challenges, such as adapting Android’s graphics stack and addressing ABI compatibility issues, will be outlined, along with our current progress in running Oniro in an LXC container for rapid testing.

This talk will provide insights into the broader implications of this work for the FOSS on Mobile ecosystem, offering a pathway to more accessible open-source mobile platforms. Join us to learn how Oniro aims to contribute to the vision of a truly open mobile ecosystem.

 "Elk: A Nimble Client for Mastodon" ( 2025 )

Saturday at 16:10, 10 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Social Web Ayo Ayco , slides , video

Elk is a nimble Mastodon client with great attention to user experience, boasting features such as being an installable Progressive Web App (PWA), support for code blocks with syntax highlighting, chronological threading, and markdown formatting.

Started by core maintainers behind popular developer tooling in the Vue/Vite/Nuxt ecosystem in 2022, it attracted hundreds of contributors and resulted to the creation of new libraries now widely used in other projects.

In this talk, I will give a brief history of Elk development from the perspective of a contributor who has never written a Vue component (before Elk), a walkthrough of key strengths of the technology under the hood, and a look forward to the future of the project.

 "DNF manifest: A new way to replicate your package configuration, debug customer issues, manage container files and more" ( 2025 )

Saturday at 16:10, 10 minutes, UD2.218A, UD2.218A, Containers Jan Kolarik , video

Managing packages across systems and containers can be complex, especially when debugging issues or ensuring consistent deployments.

This short presentation introduces the manifest plugin for the DNF package manager, a tool that simplifies such workflows by capturing system package states into YAML-based manifest files. These files enable users to replicate environments, debug customer issues by mirroring setups, and streamline container builds with transparent, manifest-driven package management.

 "Introduction to pmbootstrap" ( 2025 )

Saturday at 16:10, 10 minutes, H.1302 (Depage), H.1302 (Depage), Embedded, Mobile and Automotive Anjan Momi , slides , video

PostmarketOS is a distribution based on Alpine Linux that boots on everything from Amazon Alexas to Android phones (over 500 devices). To help users install and develop this distribution, we use pmbootstrap - a swiss army knife for embedded and mobile development. In this talk, I will go over how we use pmbootstrap to develop postmarketOS and how you can use pmbootstrap for general embedded linux development.

https://gitlab.postmarketos.org/postmarketOS/pmbootstrap

https://postmarketos.org/

 "Status of CJK input system in Wayland" ( 2025 )

Saturday at 16:10, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning Talks Sungjoon Moon , slides , video

This session will give you an overview of the current status of the CJK input system in Wayland.

We will start with an overview of how to input CJK languages, focusing on the Korean writing system(한글, Hangul).

Next, we'll look at the different input protocols in Wayland and how they work. I will also show what still needs to be done to improve the CJK input system in Wayland.

 "Broadband data transfer over USB for GNU/Linux: 1-2 GHz (L-band) SDR receiver dedicated to GNSS (and other) reception, interfacing with PocketSDR, GNU Radio and gnss-sdr" ( 2025 )

Saturday at 16:15, 55 minutes, UB2.147, UB2.147, Radio Jean-Michel Friedt , slides , video

A dual-MAX2771 radiofrequency frontend fitted on a FX2LP parallel to USB interface is presented as an update to Tomoji Takasu's PocketSDR. Having understood the underlying operating principles of the FX2LP configured through its 8051 microcontroller core using the opensource sdcc compiler, we configure the MAX2771s to collect samples up to 44 MS/s in the L-band ranging from 1 to 2 GHz. We first demonstrate proper operation by collecting and decoding Iridium messages using gr-iridium, despite the 2 or 3-bit resolution of the IQ ADCs, before demonstrating post-processing and real time processing of GNSS data. Both real time data collection, processing and streaming using GNU Radio and GNSS signal decoding using gnss-sdr are demonstrated. Tomoji Takasu's PocketSDR software provides invaluable insight and our contribution is porting the firmware to sdcc to get rid of any proprietary tool for developing the PocketSDR-like board.

The coherent multi-receiver architecture allows for processing the same L-band with two antennas for Controlled Radiation Pattern Antenna (CRPA) processing and detecting spoofing by inconsistent direction of arrival ; or processing two bands (e.g. L1/L5 or L1/L2) simultaneously.

See https://github.com/jmfriedt/max2771_fx2lp/: the subject of this presentation was the core project of the opensource tools for embedded systems development ELISE Master teaching at University of Franche-Comté is Besançon, France.

 "SIP-V+T=❤️? Tales of taking VoIP out of SIP and adding TCP instead, or Proxy All Things" ( 2025 )

Saturday at 16:15, 15 minutes, K.3.601, K.3.601, Real Time Communications (RTC) Maksym Sobolyev

Our exploratory quest of previously uncharted territory of real-time TCP/TLS media over SIP RFC4145 (hey don't confuse it with TCP as a SIP transport!) and all the fun and possibly profit that can be had from it potentially. As part of the presentation I would announce the SIP Proxima project implementing this functionality and do a demo of various application protocols (e.g. postgresql, mysql, rrdcache, thrift, https etc) operating over it.

 "NetBox DNS - Single source of truth for DNS" ( 2025 )

Saturday at 16:15, 25 minutes, H.2213, H.2213, DNS Peter Eckel , slides , video

I started with the question "how can I make managing DNS more user friendly for a customer" and the discovery of a small plugin for NetBox and ended up as the maintainer of a moderately complex and increasingly powerful DNS management tool.

The talk will touch the core features of the plugin: * Validation of names and values * Automatic generation of NS, SOA and PTR records * Zone and record templates * Handling of RFC2317 zones * Automatic generation of DNS address records for IPAM IP addresses

 "Research 101: Promoting Diversity Through Open Science Literacy" ( 2025 )

Saturday at 16:15, 15 minutes, AW1.126, AW1.126, Open Research Deborah Udoh , video

In an era driven by data and digital collaboration, access to foundational research skills is increasingly essential—yet research capacity remains deeply unequal across the globe. For instance, Africa has only 20 health researchers per million people, compared to 246 per million in Europe, according to the World Health Organization’s Global Observatory on Health Research and Development. This stark disparity highlights the urgent need for accessible, inclusive research training to bridge the gap in global knowledge production.

Pre-Seeds (Research 101) is an open-source, community-driven initiative inspired by OLS’s capacity-building programs, such as Open Seeds and Nebula. The course is designed to break down barriers to research literacy and amplify underrepresented voices in open science. It is targeted at research enthusiasts, citizen scientists, early-career researchers, and Research Software Engineers (RSEs) from non-academic backgrounds.

Currently in its early stages, Pre-seeds aims to create a flexible, modular curriculum covering key aspects of research often taken for granted, such as research design, ethical considerations, data management, and collaborative practices. The project leverages open tools like GitHub to promote collaboration, transparency, and reproducibility, inviting broad participation across disciplines and experience levels.

This session will present Pre-Seeds as a growing, collaborative effort to build an inclusive research ecosystem. By showcasing the project’s vision and its potential real-world applications, we’ll open the floor to feedback and invite attendees to join us in shaping this initiative—whether through expertise, funding, or community engagement—to co-create a more diverse and accessible future for open science.

 "Kubernetes outside of the cloud: Lessons learned after 3 years" ( 2025 )

Saturday at 16:20, 30 minutes, UD2.218A, UD2.218A, Containers Nadia Santalla (she/her) , slides , video

Kubernetes is commonly run on cloud, and even more commonly on its managed form. However, self-managing k8s on your own metal is also fun!

In this talk I will walk through some of the challenges I've found while doing this for the last three years, and share what are the tools I've used to conquer them, such as kubeadm, cilium, metallb, stateless-dns (external-dns + powerdns), and others.

 "Interacting with Tesla vehicles locally over BLE using ESPHome" ( 2025 )

Saturday at 16:20, 10 minutes, H.1302 (Depage), H.1302 (Depage), Embedded, Mobile and Automotive Yasir Ekinci , slides , video

In early 2024, Tesla introduced strict API rate limits, reducing the number of commands to just 50 per day. This disrupted my smart charging automations, which were sending thousands of commands on a daily basis for tasks like solar charging and load balancing. To overcome this, I re-implemented Tesla's vehicle protocol in C++ for the ESP32 microcontroller, enabling local control of my Tesla by acting as a BLE (Bluetooth Low Energy) vehicle key.

In this talk, I'll give an overview of Tesla's vehicle protocol, dive into BLE communication using an ESP32, and show practical ESPHome implementations for common vehicle controls. The result is a cheap, open-source solution operating entirely locally with sub-second response times - no internet or API tokens required.

 "Build your own timeline algorithm" ( 2025 )

Saturday at 16:20, 10 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Social Web Davide Eynard , slides , video

Timeline algorithms should be useful for people, not for companies. Their quality should not be evaluated in terms of how much more time people spend on a platform, but rather in terms of how well they serve their users’ purposes. Objectives might differ, from delving deeper into a topic to connecting with like-minded communities, solving a problem or just passing time until the bus arrives. How these objectives are reached might differ too, e.g. while respecting instances’ bandwidth, one’s own as well as others’ privacy, algorithm trustworthiness and software licenses. This talk introduces an approach to personal, local timeline algorithms that people can either run out-of-the-box or customize. The approach relies on a stack which makes use of Mastodon.py to get recent timeline data, llamafile to calculate post embeddings locally, and marimo to provide a UI that runs in one’s own browser. Using this stack, we will show how to perform search, clustering, and recommendation of posts from the fediverse without any of them leaving your computer.

 "Sxmo: A mobile UI for hackers" ( 2025 )

Saturday at 16:20, 10 minutes, H.2214, H.2214, FOSS on Mobile Devices Maarten van Gompel (proycon) , slides , video

In this talk we briefly present Sxmo and share the current state of things. Sxmo is a hacker-friendly mobile UI for Linux phones, like those running on postmarketOS. Our approach differs from what the mobile user is accustomed too, but one that will appeal to those drawn to software minimalism and those with an urge to tweak and control their system to the max! We tie together various FOSS components, some interchangeable, via POSIX shell scripts. Through our hook system users can customize these to a large extent.

  • Do you want to SSH into your phone and have all functionality available remotely?
  • Do you like the idea of running a tiling window manager (sway, dwm) on your phone just like on your desktop?
  • Do feel nostalgia for operating your phone with menus (dmenu, bemenu, wofi) and hardware buttons?
  • Do you want to be the one in control of our own device and data, rather than be on the leash of big tech companies?

Then this talk may be interesting for you!

 "Extracting reliable data for short-lived processes using eBPF for Linux Security Threat Analysis" ( 2025 )

Saturday at 16:20, 20 minutes, K.4.201, K.4.201, eBPF Ankit Garg Meghna Vasudeva Lakshmy A V , slides , video

Endpoint Detection and Response (EDR) solutions continuously monitor the events occurring on an endpoint, create detailed process timelines, and analyse these data, to reveal suspicious patterns that could indicate threats such as ransomware. To create these detailed timelines, EDR solutions collect a variety of information about each process running on the endpoint, such as timestamp, PID, process name, path, command line, etc. On Linux systems, this is often done using the proc filesystem provided by the operating system, which provides rich information for each process currently running on the system. However, if a process is short-lived and exits quickly, the proc filesystem entries for it get cleared out before the EDR solution can read them, leading to incomplete timelines. To take a simple example, suppose a malicious actor runs a script that downloads a binary from the network and then executes it. This downloaded binary quickly spawns a bunch of long-running malicious processes and exits itself. If EDR solution is unable to extract the complete process information about the execution of the downloaded binary from proc filesystem (being a short-lived process), it'll miss details about the creator of the malicious process in the system. Hence, EDR solution will have visibility gaps about the downloaded binary required for Security Threat Analysis. We propose a solution to address the gaps by attaching extended Berkeley Packet Filter (eBPF) programs dynamically to the Linux kernel system calls (such as fork, exec and exit) and extracting all the required information directly from the kernel hooks using BPF Type Format (BTF). These hooks use fundamental task structure in kernel representing a process or thread to extract variety of information about the process. Our proof of concept shows that eBPF-based process data extraction provides process timelines with near 100% reliability, compared to proc filesystem-based approaches which have a reliability of only around 83% for short lived processes.

 "Using the Valgrind error manager for file descriptor tracking" ( 2025 )

Saturday at 16:25, 25 minutes, K.3.201, K.3.201, GCC (GNU Toolchain) Alexandra Petlanova Hajkova , slides , video

The valgrind error manager makes it easy for valgrind tools to report issues that can include execution backtraces for multiple events, integrate with gdb, generate xml reports and lets users suppress specific issues. The valgrind error manager contains a fast unwinder which can be used to detect "equivalent" issues.

For valgrind 3.23.0 we introduced "core errors" which are tool independent and can be used to report on core events for resources that are explicitly created and destroyed. We used this to add errors when using file descriptors that can be reported by any valgrind tool by using --track-fds=yes. This allows reporting on bad use of file descriptors, file descriptors that are double closed, used after closing, and file descriptors that "leak". Because these are "normal" valgrind errors all these events can be reported in the xml output, suppressed by the user, intercepted by gdb and integrated in CI runs with --error-exitcode.

For Valgrind 3.24.0 we added bad file descriptor usage errors.

 "CMRX: Microkernel-based RTOS with memory isolation on MMU-less architectures" ( 2025 )

Saturday at 16:25, 20 minutes, UB4.136, UB4.136, Microkernel and Component-Based OS Eduard Drusa , slides

Despite memory isolation being used for decades now; a typical contemporary low-power IoT embedded system does not use this technique. One of reasons might be that in virtually all available systems memory isolation is an afterthought. We proposed, designed and implemented CMRX real-time operating system targeted towards devices without MMU which takes memory isolation as non-negotiable feature.

Achieving usable memory isolation on such constrained hardware has its challenges and there are compromises to be made. In this talk I will outline high-level design decisions and overall system design of the CMRX RTOS. Why micro-kernel design is suitable in this situation, what advantages does it bring? I will tackle benefits and potential drawbacks of proposed architecture and finally cybersecurity point of view will be discussed.

 "High Performance Packet filtering in BSD. A holistic review" ( 2025 )

Saturday at 16:25, 25 minutes, AW1.120, AW1.120, BSD Emmanuel Nyarko , video

Packet Filtering in BSD could be seen from several angles. There are quite a number of packet filters in the BSDs. some Implemented in the kernel, some in the user space. In this talk, we will go through a particular NetBSD packet filter, NPF, evaluate its numerous advantages and assess critical performances and share its directions going forward.

 "Advanced Build Tools and Remote Execution API" ( 2025 )

Saturday at 16:30, 25 minutes, UD6.215, UD6.215, Testing and Continuous Delivery Son Luong Ngoc , slides , video

In this talk, we will walk through different scalability challenges various modern CI setups encounter today: caching, distributed computing, reproducibility, telemetry... and how advanced build tools such as Bazel, Buck2, Pants,... addressed them at scale at big enterprises. We will then drill down into the common Remote Build Execution protocol that these tools all have in common. Finally, we shall reflect upon the current state of the build tool ecosystem and highlight key areas to improve upon.

 "MicroPython - Python for microcontrollers and Embedded Linux" ( 2025 )

Saturday at 16:30, 25 minutes, H.1302 (Depage), H.1302 (Depage), Embedded, Mobile and Automotive Jon Nordby , slides , video

MicroPython is a tiny implementation of Python, designed for very constrained environments such as microcontrollers and embedded devices. It can run on devices with as little as 64 kB of RAM and 256 kB of FLASH. Over the last 10 years, MicroPython has become a productive development environment and mature platform for firmware development. It has been used in many applications - and has been deployed on everything from smartwatches to medical devices and satellites.

There are many features of MicroPython that make it an attractive way of developing firmware, such as: the built-in file systems, first-class package management, built-in communication over WiFi/Ethernet/BLE/USB/etc, interactive programming via REPL, automated testing on PC and device. We will introduce these features briefly, and then discuss our favorite feature: the support for C modules, and how it enables building sensor systems that are both computationally efficient and fast to develop.

 "Playing games without a computer: Hardware fun with TinyGo" ( 2025 )

Saturday at 16:30, 30 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Go Daniel Esteban , video

What if gaming didn’t require a powerful computer or even a traditional console? In this talk, we’ll explore how with TinyGo you can create interactive games and experiences directly on microcontrollers and embedded hardware. From LED matrix games to unconventional input methods and minimalist sound effects, we’ll demonstrate how to harness the simplicity of TinyGo for innovative hardware projects.

Whether you're a seasoned Go developer curious about embedded systems or a hardware tinkerer looking for new ways to code your ideas, join us for a fun, hands-on dive into the possibilities of TinyGo-powered gaming, no computer required!

 "Live coding a streaming ChatGPT proxy with Swift OpenAPI—from scratch!" ( 2025 )

Saturday at 16:30, 20 minutes, K.4.401, K.4.401, Swift Si Beaumont Honza Dvorsky , slides , video

Join us as we build a ChatGPT client, from scratch, using Swift OpenAPI Generator. We’ll take advantage of Swift OpenAPI’s pluggable HTTP transports to reuse the same generated client to make upstream calls from a Linux server, providing end-to-end streaming, backed by async sequences, without buffering upstream responses.

In this session you’ll learn how to:

  • Generate a type-safe ChatGPT macOS client and use URLSession OpenAPI transport.
  • Stream LLM responses using Server Sent Events (SSE).
  • Bootstrap a Linux proxy server using the Vapor OpenAPI transport.
  • Use the same generated ChatGPT client within the proxy by switching to the AsyncHTTPClient transport.
  • Efficiently transform responses from SSE to JSON Lines, maintaining end-to-end streaming.

 "The EU CRA and Copyleft" ( 2025 )

Saturday at 16:30, 25 minutes, H.1301 (Cornil), H.1301 (Cornil), Legal and Policy Jimmy Ahlberg , video

With the introduction of the EU Cyber Resilience Act a number of interesting questions are raised. This talk focus on the EU CRA and discuss some of the implication when applied to Free and Open Source Software licensed under Copyleft licenses such as the GPL.

The EU CRA introduces, under some circumstances, an obligation to contribute upstream if there are vulnerabilities, what will best practices be to manage this obligation in permissively licensed project respective in Copyleft licensed projects, how will this impact customer agreements, R&D collaborations and similar.

 "Project Leyden - Past and the Future" ( 2025 )

Saturday at 16:30, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Free Java Ashutosh Mehra , slides , video

Project Leyden was created in May 2022 with the goal of improving footprint, startup time and time to peak performance of Java applications. Initially, a variety of different approaches were under consideration and the first proposed solutions only started to clarify around 18 months ago. An early preview of the 'premain' solution, prototyped by Oracle, was presented at the August 2023 JVM Language Summit. It has been under very active development since then, with a team that includes developers from Oracle, Red Hat, Microsoft, Amazon and Google, and has already delivered improvements to JDK and application startup time in OpenJDK 24 via JEP 483. The plan is for the project to deliver a series of JEPs that improve performance step by step rather than wait for a complete, shrink-wrapped solution and the Leyden team is already working on the next set of enhancements. In this talk we will explain what was delivered in JEP 483 and how it works to improve startup, then go on to describe what other features are in the pipeline. We will also touch upon some of the barriers we currently face to improving performance and ideas we are exploring to resolve them.

 "Managing Vulnerabilities in Open-Source Dependencies" ( 2025 )

Saturday at 16:30, 30 minutes, UB4.132, UB4.132, Security Eva Sarafianou , slides , video

In today’s software development landscape, products are often an intricate blend of in-house code and open-source third-party dependencies. While many organizations have robust procedures to secure their own codebase, the strategies to safeguard against vulnerabilities in open-source components are not as well-developed.

In this session, we will navigate the complexities of implementing an effective process to manage vulnerabilities within open-source dependencies. Our discussion will cover key considerations for evaluating software composition analysis tools and detail the steps necessary for a successful tool rollout. We will delve into effective strategies for triaging findings and shifting from a reactive to a proactive security posture.

You will leave the session equipped with a foundational but adaptable process, ready to enhance the security of your products that depend on open-source dependencies.

 "Building Bridges Between Researchers, Technologists, and Infrastructure" ( 2025 )

Saturday at 16:30, 25 minutes, AW1.126, AW1.126, Open Research Jonathan Starr , video

Open science is at the forefront of transformative progress in research, yet its advancement is often stymied by fragmented infrastructure, limited interoperability, and inadequate crediting of research outputs. These challenges hinder the accessibility, reproducibility, and verification of research, slowing the pace of and trust in discovery and innovation.

This talk introduces the Scientific Coordination Infrastructure and Operating Systems Collaborative (SciOS) as a solution-oriented 501c3 (US non-profit) initiative to bridge the gap between researchers and technologists. SciOS facilitates the ongoing development of open, scalable, and interoperable infrastructure that empower the scientific community.

This talk will explore the rapid development of solutions possible when researchers and technologies exist in the same space.

Key Technologies and Innovations:

  • dPIDs and CODEX:
    Decentralized Persistent Identifiers (dPIDs) generate cryptographically unique, permanent identifiers for research artifacts. Combined with CODEX, an open system for managing versionable research objects, dPIDs ensure trust, reproducibility, and accessibility in scientific outputs.

  • Journal Creation Software:
    SciOS supports tools that enable decentralized, community-driven curation-based journals. These platforms exist on an open repository of human knowledge accessible to everyone, and empower scientific communities to elevate from that repository research that aligns with their values, quality definitions, and scope with minimal friction.

  • DeSci Publish:
    Operating on CODEX, DeSci Publish redefines scientific publishing by allowing researchers to share data, code, manuscripts, and more as versionable objects.

  • Granular Citation Systems:
    Through dPIDs, CODEX, and decentralized platforms, SciOS enables journals to credit contributions ranging from datasets and software to peer review and editorial work.

  • Automating Metadata Creation:
    In partnership with DeSci Labs and Discourse Graphs, SciOS automates the generation of metadata and discourse nodes. This initiative creates a map of research claims and evidence, allowing researchers to evaluate the relevance of prior work at a granular level.

  • Research Assessment Tools:
    Collaborating with the CoARA ERIP working group, SciOS is developing tools that combine human expertise with AI to evaluate modular research objects. These tools enable clear, reliable assessments tailored for rapid response to research outputs.

  • Open Source Permanent Versionable Containers and Attestation Platform:
    SciOS supports this platform to create immutable repositories for software tools. It provides versionable digital containers enriched by community validations, enabling researchers and engineers to track, validate, and determine software impact across domains.

  • Institute of Open Science Practices (IOSP):
    IOSP fosters collaboration between researchers and technologists, guiding the adoption of innovative infrastructure. It facilitates workshops and conferences powered by novel tools, enabling open science practices throughout the research lifecycle.


Join us to explore how SciOS’s collaborative efforts and cutting-edge tools are transforming open science. Discover how decentralized infrastructure, automated metadata, and innovative publishing systems can break barriers, foster trust, and accelerate discovery across disciplines. Together, we can build the open science infrastructure the world needs.

 "How email addresses are growing to support unicode" ( 2025 )

Saturday at 16:30, 30 minutes, K.4.601, K.4.601, Modern Email Arnt Gulbrandsen , video

This talk will include a presentation about changes that are happening to email address syntax, as well as recent developments to Unicode email addresses. In addition, IETF and W3C email syntax rules, which are primarily compatible, will be discussed. Both organizations have proposed updates to extend the rules (i.e., via an IETF draft and W3C Github pull request). There'll be brief information regarding the proposed changes, address validation and web browsers/forms and of course implementation progress

 "Non-Microblogging Software Design on the Fediverse" ( 2025 )

Saturday at 16:30, 30 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Social Web Casey Kolderup , slides , video

Postmarks is a piece of Fediverse software meant to provide a social bookmarking platform along the lines of De.licio.us and its successors. Despite the published ActivityPub spec having in mind a variety of verbs and nouns, and the ability to create "extensions", most software that I found while looking around in the early days of Postmarks looked to be recreating "timeline-based social media", where the primary activity took place on the platform itself and involved reading content from other users and generating more content of the same expectations. This is not to say there are none, but how much they expect to integrate with platforms like Mastodon varies.

When thinking about what that meant for Postmarks, deciding how interoperability should work presents some interesting questions. There are opportunities in interoperability: even if you're not the kind of person to whom the activity of bookmarking and curating links is interesting, you may know someone who does whose work you want to follow, which you can then do from Mastodon. On the flipside, you may be a researcher who spends time collecting information and values the viewpoints of others but doesn't want to take part in a product designed like a traditional social media site. There are also drawbacks: as an individual maintainer with a handful of contributors to my platform, integrating with existing platforms that are already large enough to have abusers, scrapers, and other bad actors opens me up to those problems much sooner than it would if I were creating my own siloed ecosystem. Less urgently, there are new software design questions raised by the functionality of the platforms interacting. How do I make Postmarks content appear on platforms like Mastodon? As I build out the ability to find bookmarkable content from the Fediverse within Postmarks, how do I do that in a way that keeps in mind the ideals of Postmarks rather than the spaces it's connecting to? What choices have been made that add extra requirements on top of the ActivityPub spec in order to make interoperability smooth and consistent? In designing a piece of ActivityPub software designed to have one small "instance" that hosts the activity of one "actor", I also found myself stumbling across design decisions made in the creation of large platforms like Mastodon and Pixelfed that left me with questions about the ethics of designing software that can interact with those places. How do I prevent my software from becoming a tool for bad actors targeting those places?

By looking at the design problems introduced within the early development of Postmarks and an analysis of other ActivityPub platforms that have either dealt with, are still working on, or have not faced these questions, we can create space for discussing what a future looks like where a broad variety of ActivityPub software is out on the internet speaking the same protocol but choosing when and how they interact in a way that cultivates communication and works to minimize harm.

 "From Open Collaboration to Customized Control: Transitioning from Wikidata to Wikibase" ( 2025 )

Saturday at 16:30, 25 minutes, H.1308 (Rolin), H.1308 (Rolin), Collaboration and Content Management John Samuel , slides , video

Transition from open collaboration to customized control with Wikibase, a self-hosted platform designed for tailored data management. While Wikidata provides a robust, open, multilingual, and collaborative environment, it may not fully address the specific needs of personal or institutional data. Wikibase empowers you to structure and manage your information on your own infrastructure, combining the strengths of Wikidata with the flexibility of a self-hosted solution. By seamlessly integrating global entities, leveraging existing translations, and aligning with linked open databases, including Wikidata, Wikibase enables you to build a connected and enriched data ecosystem. Discover how Wikibase bridges collaboration and control, offering independence while staying interconnected within the open data landscape.

References: 1. Wikidata 2. Wikibase 3. Wikibase on GitHub 4. Wikibase Cloud 5. The Linked Open Data Cloud

 "Advancing Large Scale Scientific Collaborations with Rucio" ( 2025 )

Saturday at 16:30, 30 minutes, K.3.401, K.3.401, Software Defined Storage Hugo Gonzalez Labrador Martin Barisits , slides , video

Managing the data deluge (exabytes) generated by worldwide large-scale scientific collaborations is a challenge.

The Rucio Data Management platform is an open-source framework written in Python engineered to orchestrate the storage, distribution, and management of massive data volumes across a globally distributed and heterogeneous storage infrastructure.

Rucio meets the requirements of high-energy physics, astrophysics, genomics, and beyond, pioneering new ways to facilitate research at the exabyte-scale and is used by major scientific experiments: the ATLAS and CMS experiments at CERN, Square Kilometer Array Observatory, Cherenkov Telescope Array, KM3NET and Belle II to name a few.

This presentation introduces the Rucio project and the technology behind it.

 "Debian BoF" ( 2025 )

Saturday at 16:30, 60 minutes, H.3242, H.3242, BOF - Track B Paulo Henrique de Lima Santana

Every year there are a lot of Debian community members at Fosdem, so let's gather Debian Developers, contributors and enthusiasts to talk about Debian, their contributions, answer questions and talk about DebConf25 (The Debian Conference will take place in France this year).

 "Patchouli: Open-Source EMR Drawing Tablet" ( 2025 )

Saturday at 16:30, 30 minutes, H.3244, H.3244, BOF - Track C Alexander Soto , slides

Patchouli is an open-source electro-magnetic drawing tablet hardware implementation, including a coil array, an RF front end built using commercially available parts, and digital signal processing algorithms. The design is compatible with most commercial pens from different vendors, offering an ultra-low-latency pen input experience for your customized hardware projects.

Join us for an informal BoF session to discuss and try out Patchouli and discuss improvements and ideas. There’s no fixed agenda—just a chance to share use cases, get feedback, and build a community around Patchouli. Bring your questions or meet others in the community.

 "From Pixels to Procedures: An Open Source Design Suite for 2025" ( 2025 )

Saturday at 16:30, 15 minutes, H.2215 (Ferrer), H.2215 (Ferrer), Lightning Talks Dennis Kobert , slides , video

Graphite is reinventing open source design tools by combining vector and raster workflows through a node-based, procedural approach borrowed from the 3D industry. This lightning talk showcases how nondestructive editing and procedural generation are making creative tools more powerful, hackable, and fun.

 "Writing safe PostgreSQL extensions in Rust: a practical guide" ( 2025 )

Saturday at 16:35, 40 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Rust Damien Clochard , slides , video

PostgreSQL's extensibility is legendary, and a revolution is brewing: Rust is emerging as the new gold standard for writing robust, performant database extensions, with the promise to make them safer, faster, and more maintainable than ever before.

In this hands-on session, we'll discover the PGRX framework through 4 practical examples showcasing:

  • Memory safety guarantees
  • A fully managed development environment
  • Access to Rust's vast ecosystem of libraries
  • Seamless PostgreSQL integration

Based on my experience rewriting the PostgreSQL Anonymizer extension from C to Rust, I'll share the lessons learned along the way.

Whether you're a seasoned C developer, a rustacean, or a new to PostgreSQL extension writing, this talk will equip you with the knowledge to leverage Rust's powerful features in your next database projects.

 "Mirror Hall: Building virtual network displays to bridge mobile and desktop" ( 2025 )

Saturday at 16:35, 20 minutes, H.2214, H.2214, FOSS on Mobile Devices Raffaele Tranquillini , slides , video

Wireless displays are something most of us use, but in a fragmented and proprietary landscape. We propose a new approach to virtual screen sharing between Linux mobile and desktop devices.

This solution uses a combination of video pipelines optimized for ARM and x86 hardware, D-Bus, and low-latency UDP streaming to create virtual “second monitors” and stream the desktop between peer devices. It is optimized to be usable even on low-power hardware such as the Librem 5, allowing us to repurpose older devices as secondary network monitors without proprietary tools. [2]

In this talk, I will try to demystify some of the technicalities required for implementing efficient wireless desktop streaming using GStreamer, PipeWire, and D-Bus. To this end, we will explore how to build network video pipelines from scratch, with a focus on minimizing latency and making good use of hardware acceleration. Finally, we will present the Mirror Hall app, an experimental GTK4 app that encapsulates the above concepts. [2]

Links: 1. https://notes.nokun.eu/post/2024-09-22-mirrorhall/ 2. https://gitlab.com/nokun/mirrorhall

 "WebRTC support in WebKitGTK and WPEWebKit with GStreamer: Status update" ( 2025 )

Saturday at 16:35, 15 minutes, K.3.601, K.3.601, Real Time Communications (RTC) Philippe Normand , slides , video

The WebKit WPE and GTK ports are aiming to leverage GstWebRTC as their WebRTC backend. Over the years we made progress towards this goal both in WebKit and in GStreamer. During this talk we will present the current integration status of GstWebRTC in WebKit and the plans we have for the coming months.

 "Migrating Massive Aurora and MySQL Databases to Vitess Kubernetes Clusters with Near-Zero Downtime" ( 2025 )

Saturday at 16:35, 30 minutes, UA2.114 (Baudoux), UA2.114 (Baudoux), Cloud Native Databases Matthias Crauwels Rohit Nayak , slides , video

Vitess, a CNCF-graduated, open-source, MySQL-compatible database, is designed for massive scalability and cloud-native deployments. As one of the most robust solutions for managing large-scale database workloads, Vitess on Kubernetes powers some of the largest systems in the world.

Modern data teams face a growing challenge: scaling databases dynamically to handle surges, such as holiday sales or viral trends. For many, vertical scaling has reached its limits, leaving fundamental architectural changes as the only option. Vitess, with its built-in horizontal sharding capabilities, provides a seamless path for organizations to scale beyond the constraints of legacy MySQL or Aurora clusters. This talk explores how Vitess enables smooth migrations from Aurora and MySQL into Kubernetes clusters with near-zero downtime. We will begin with an overview of Vitess’ architecture, highlighting horizontal sharding and its advantages for scaling. Next, we will dive into the powerful workflows Vitess provides for data import and live production migrations, emphasizing their safety, efficiency, and reversibility—even for massive datasets.

To ground these concepts, we will share real-world examples of successful migrations from web-scale Aurora and legacy MySQL databases, including performance metrics, data sizes, and challenges encountered. Attendees will gain practical insights and a clear blueprint for transitioning large-scale database systems to Vitess, unlocking unprecedented scalability and operational agility.

 "Talking to Robots: Uses and Abuses of LLMs in Communities" ( 2025 )

Saturday at 16:35, 25 minutes, UB5.230, UB5.230, Community David Allen , video

Large language models (LLMs) may represent a shift in how open source communities support their members. This talk explores the nuanced and evolving role of LLMs in fostering community engagement. Specialized companies offer tailoring of LLM and automation of responses to technical questions. We will explore a range of adoption options from cautious, opt-in approaches confined to specific channels to fully embracing LLMs for first-line support across forums. These strategies raise questions like:

  • Could automation stifle organic, person-to-person connections in communities, or can it expedite learning and enable meaningful contributions from newcomers?
  • How do LLMs reshape the balance between in-person and digital interactions, and what does this mean for the future of community building?
  • Are LLMs the natural evolution of IRC-era bots, or will they alter the patterns of open source collaboration?

We’ll look at case studies from real communities. Attendees will get actionable insights for navigating the adoption of LLMs in their own communities, striking a balance between automation and authentic human connection.

 "Scheduling HTTP streams" ( 2025 )

Saturday at 16:40, 40 minutes, UA2.220 (Guillissen), UA2.220 (Guillissen), Web Performance Alexander Krizhanovsky , video

Scheduling problem arise in many subsystems such as the CPU scheduler, disk IO or Qdisc. Despite extensive research during several decades, this problem remain challenging to solve due to varying workload requirements, diversity of scheduled resources, latency versus throughput considerations, scheduler overhead and many others. For instance, the Linux CPU scheduler continues to evolve.

In this talk, we’ll explore another scheduling scenario: HTTP streams prioritization. Having that a busy web server can manage millions of TCP connections, each potentially containing hundreds of HTTP/2 or HTTP/3 streams, a pretty efficient stream is essential. It should be fair, say, for progressive JPEGs, but it should prioritize shorter load times for PNG images. It should also be smart enough, particularly if browsers don’t adequately prioritize streams (which is still could be an issue for mainstream browsers in 2024). Additionally, it must be resilient against DDoS attacks.

This talk will cover the following topics:

  • The different nature of resources, their relationships, and how these factrors affect streams scheduling used for delivering these resources

  • Fair O(logN) and fast O(1) scheduling algorithms

  • Discussions on underlying data structures to optimize the scheduler for a large number of streams

  • HTTP/2 streams prioritization in servers such as Nginx, H2O, nghttp2 (Envoy, Apache HTTPD) and Tempesta FW

  • Differences between stream prioritization in HTTP/2 and HTTP/3, along with corresponding RFCs

  • How modern browsers construct stream priority trees

  • Server-side optimizations for streams scheduling in Cloudflare and Tempesta FW

  • Known vulnerabilities exploiting the HTTP/2 prioritization mechanisms

 "How good is RISC-V: Comparing benchmark results" ( 2025 )

Saturday at 16:40, 35 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), RISC-V Jeremy Bennett , slides , video

As RISC-V reaches maturity, we look at how RISC-V designs are performing. We look at how performance has improved over the years and how performance compares to other cores, particularly those from Arm. We'll explore the impact of different extensions and compilers on performance of compiled code. We'll also look at how useful measuring performance using models is for predicting the performance of real silicon.

Throughout we will use mostly the Embench benchmark suites, with some use of SPEC CPU for application class cores. We will present the first results from the new Embench IoT version 2.0 test suite.

Finally we will show how combining accurate benchmarking with simple machine learning can yield additional performance of compiled software. This will be illustrated with the OpenHW CV32E40Pv2, where we were able to improve benchmarked code density by 7% in just 24 hours.

 "Latest kprobe and uprobe development" ( 2025 )

Saturday at 16:40, 20 minutes, K.4.201, K.4.201, eBPF Jiri Olsa , slides

I'll give an update on the latest development from kprobe and uprobe world including new session feature and uprobe performance enhancements that already got merged and those that are still being worked on.

 "rDNS Map In Your Hands" ( 2025 )

Saturday at 16:40, 25 minutes, H.2213, H.2213, DNS Alexey Milovidov , video

I've created an rDNS map, available at https://reversedns.space/, and I want to tell you how.

It was not hard to do, but there was a lot of unusual and amusing stuff in the process.

 "Open Source Business Intelligence - Introduction to Apache Superset" ( 2025 )

Saturday at 16:45, 30 minutes, UB5.132, UB5.132, Data Analytics Evan Rusackas Maxime Beauchemin , slides , video

Open Source Business Intelligence (BI) is here, and here to win!

In this talk, we'll take a look at Apache Superset, the Apache Software Foundation (ASF)'s #1 project by GitHub stars, and learn about the features and flexibility that make it the leading tool for data visualization in the open-source data stack. We'll talk about what it does, how it works, and how it's built, highlighting its key workflows and philosophies.

 "Syd+Youki=Syd-OCI: Introduction to a Secure Container Runtime for Linux" ( 2025 )

Saturday at 16:50, 30 minutes, UD2.218A, UD2.218A, Containers Ali Polatel , video

In this talk, I will introduce Syd-OCI, a secure OCI container runtime for Linux systems (version 5.19 and above). Syd-OCI seamlessly integrates the advanced sandboxing capabilities of Syd -- our rock-solid application kernel designed for sandboxing applications -- into containerized environments by leveraging Youki, a modern container runtime written in Rust.

Syd-OCI operates as a thin wrapper around Youki, utilizing Youki's robust OCI implementation while replacing its default executor with a custom one that runs container processes under Syd's comprehensive sandboxing framework. This integration allows Syd-OCI to provide enhanced security features -- such as Path Sandboxing, Execution Control with SegvGuard, Network Sandboxing, and advanced mechanisms like Lock Sandboxing and Proxy Sandboxing -- within standard OCI-compliant containers.

The presentation will cover Syd-OCI's key features:

  • Integration of Syd and Youki: How Syd-OCI combines Syd's advanced sandboxing mechanisms with Youki's efficient OCI runtime, creating a secure container runtime without requiring extra privileges, SETUID binaries, or privileged kernel context.
  • Technical Architecture: An in-depth look at how Syd-OCI replaces Youki's default executor with a custom executor that runs commands under Syd, enabling seamless integration of Syd's security features into container workflows.
  • Configuration and Usage: Guidance on setting up Syd-OCI with container platforms like Docker, Podman, and CRI-O, including configuring the Syd sandbox using profiles and integrating sandbox configurations into container images.
  • Advanced Sandboxing and Verified Images: Showcasing practical use cases where Syd-OCI enhances container security through advanced features like Force Sandboxing for verified execution and Crypt Sandboxing for transparent file encryption using AES-CTR. We will explore how these mechanisms provide integrity verification for container images and binaries, ensuring that only trusted and securely encrypted code is executed within containers, thereby strengthening protection against unauthorized modification and data breach.

Attendees will gain insights into the design and implementation of Syd-OCI, understanding how the integration of Syd and Youki provides a secure, efficient, and practical solution for container security. This talk will illustrate how Syd-OCI can be seamlessly integrated into existing container workflows, enhancing security without compromising performance or compatibility, and adhering to the UNIX philosophy of doing one thing well with the least privilege necessary.

 "Obtaining Safety & Security Certifications for L4Re" ( 2025 )

Saturday at 16:50, 25 minutes, UB4.136, UB4.136, Microkernel and Component-Based OS Marcus Hähnel , slides , video

In this talk I will share some details on the path towards the recently obtained Security (EAL4+, German GEHEIM) and Safety (ISO26262 ASIL-B, SIL-2) certifications that have been achieved for the L4Re Operating System Framework. I will show some details on where generic software development, operating systems, and third-party code clash with the expectations of the safety norms. I will also shed some light on the challenges we face in maintaining these certifications while staying true to the open source nature of the system with contributions form a multitude of actors from various fields. I will conclude with an outlook of the things to come and how we want to ensure that open source microkernel-based operating systems can be a vital cornerstone to safe & secure systems.

 "A packet's journey through pf" ( 2025 )

Saturday at 16:55, 30 minutes, AW1.120, AW1.120, BSD Kristof Provost , slides , video

A walkthrough of a packet's journey through (FreeBSD's) pf, concentrating on the big picture and its implications.

We'll cover when packets are inspected, when rules are evaluated and how states are used. Along the way we'll cover what DTrace probes can show us, what some of pfctl's counters mean and just how many times pf can look at a single packet.

This talk is intended for firewall admins looking for a deeper understanding and aspiring pf developers. It is not a "How to use pf" talk.

 "How to put Swift in a box: Building container images with swift-container-plugin" ( 2025 )

Saturday at 16:55, 20 minutes, K.4.401, K.4.401, Swift Euan Harris , slides , video

Did you know that you can write a cloud-native service in Swift and publish it in a container image, ready to run on any standard container-based cloud infrastructure, all using just the Swift compiler and its build system?

In this talk we'll see how Swift's strong multi-platform support and highly extensible package manager can take care of the whole process for you, allowing you to build your application, package it and upload it in one efficient step:

We'll see these tools in action and peek behind the scenes to learn how they actually work. Along the way we'll answer questions such as:

 "Voluntary data sharing is broken: Data donation for scientific research as site of digital repair" ( 2025 )

Saturday at 16:55, 25 minutes, AW1.126, AW1.126, Open Research Dwayne Ansah , video

In the digital age, the pervasive presence of the internet has fundamentally altered the landscape of capitalism, knowledge and human communication. However, alongside its transformative potential, voluntary data sharing in the public interest, or data donation, is plagued by systemic issues, ranging from lack of trust and privacy breaches to legal uncertainty, undermining its intended role as a democratizing force.

Recognizing this brokenness, we turn to the concept of digital repair as a lens through which to understand and address these deficiencies. This talk advances the sociology of repair centered on the concept of data altruism, the new EU framework for voluntary data sharing for objectives of general interest, including scientific research purposes. This talk explores the potential of data donation as a means to not only rectify the fractures in the digital data ecosystem, but also to stimulate a more socially sustainable data economy.

By conceptualizing data donation within the framework of sociology of repair, this talk proposes its implications for reframing three different sites where different actors have convened to work on data sharing. This talk is explicitly an effort to facilitate discussion about useful and plausible conceptual tools to theorize data donation. Through an ethnographically-informed investigation, this talk contributes to an understanding of the infrastructure enabling data altruism for scientific research purposes in the Netherlands, offering insights that are fruitful for navigating future research journeys into the European data economy.

 "Kamailio 6.0 (development) update" ( 2025 )

Saturday at 16:55, 10 minutes, K.3.601, K.3.601, Real Time Communications (RTC) Henning Westerholt , video

Kamailio is one of the most widely used open source SIP servers for large VoIP and real-time communication platforms. The talk will give an overview of the key topics of the newly released version 6.0, describing the improvements in the UDP worker architecture, asynchronous processing, the new build system and other important changes. The presentation is aimed at people who are interested in developing high-performance VoIP platforms, developers who want to extend or improve Kamailio, and operations experts who run Kamailio infrastructures.

 "Cobol is the Original Safe Language" ( 2025 )

Saturday at 16:55, 20 minutes, K.3.201, K.3.201, GCC (GNU Toolchain) James Lowden

Although it was invented decades before the term "safe language", COBOL was created to meet that very need. At the time in that environment, the predominate alternatives were FORTRAN, and assembly language.

Safety means different things to different people and in different contexts. By some definition, no language is safe. By others, COBOL may be considered among the safest.

 "Let's huddle around Nextcloud BOF" ( 2025 )

Saturday at 17:00, 60 minutes, H.3244, H.3244, BOF - Track C Jos Poortvliet

Nextclouders, unite!

We don't have a booth this year, so let's instead get together for an hour and talk about all the good stuff in one place and time. Come with your questions, ideas, feature requests, bugs and hugs and share them!

Next-what? Oh, you're in for a treat. Sick of Big Tech owning your data? We have the answer. You can share and work on documents, participate in video calls, have chats, automate stuff or even talk endlessly and uselessly to an artificial intelligence - WITHOUT having to hand over your data. Yes. it is possible. And fully open source too. You just have to host it yourself, as we only make software. No real clouds here!

 "Fediscovery: Improving Search and Discovery on the Fediverse" ( 2025 )

Saturday at 17:00, 30 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Social Web David Roetzel , slides , video

Today, each application (and server/instance) that participates in the Fediverse is largely independent when it comes to discovery. User search, discovery of content, trends and recommendations are not easily possible across the network. This is especially problematic for small servers.

"Fediscovery" is a project led by Mastodon gGmbH and funded by NGI Search that explores a way to improve this situation with a set of external services that any fediverse software can use.

The project is meant to produce both specifications that everyone can implement and a reference server implementation.

This talk will give an overview of the project and its goals. And it will give an update about the current state of both the specification efforts and the reference implementation.

 "Streamlining package testing with Molecule and Jenkins" ( 2025 )

Saturday at 17:00, 25 minutes, UD6.215, UD6.215, Testing and Continuous Delivery YASH PANCHAL , slides , video

Testing packages across diverse environments often involves integrating legacy setups like bash scripts with modern frameworks such as testinfra. For many testing teams, traditional Jenkins setups rely on pre-provisioned worker nodes managed exclusively by DevOps, Build and Release, or Operations teams. This reliance often creates a bottleneck, as testing teams are restricted from modifying infrastructure directly, limiting their ability to adapt environments dynamically to meet specific testing requirements.

In this talk, we will demonstrate how Molecule, an open-source testing tool, provides a robust framework for overcoming these challenges. By decoupling test environment management from pre-configured nodes, Molecule empowers testing teams to independently define and execute their tests across multiple environments. We’ll discuss how this approach integrates seamlessly with Jenkins pipelines and supports both legacy and modern testing frameworks.

Attendees will learn how to use Molecule to reduce infrastructure dependencies, streamline testing workflows, and increase flexibility in testing.

 "(Avoid) Implementing STARTTLS" ( 2025 )

Saturday at 17:00, 30 minutes, K.4.601, K.4.601, Modern Email Damian Poddebniak , video

I want to keep up my mission to make STARTTLS a technology of the past by recapping on the issues STARTTLS creates and providing advice how to (avoid) implementing (most of) it. The talk will be 5 to 10 minutes and is motivated by my research about real-world STARTTLS issues (https://nostarttls.secvuln.info/) and the implementations I (reluctantly) wrote (https://github.com/duesee/imap-next).

 "Building Local AI with a full-stack approach" ( 2025 )

Saturday at 17:00, 50 minutes, K.1.105 (La Fontaine), K.1.105 (La Fontaine), Main Track - K Building Rex Ha , video

Local AI requires a full-stack problem-solving approach to succeed. At Homebrew, we’ve addressed key issues like hardware compatibility, multimodal model optimization, and enabling efficient inference on edge devices.

In this talk, we’ll draw from our experience deploying local AI to over 1M+ devices with Jan, a small multi-modal AI. We’ll share insights into optimization hurdles, architectural trade-offs, hardware requirements, and their impact on developers and users alike.

Plus, we’ll share how a full-stack approach enables us to integrate user feedback loops and collect RLHF data, continuously improving model performance and delivering more effective solutions.

 "Forked Communities: Project Re-licensing and Community Impact" ( 2025 )

Saturday at 17:00, 50 minutes, Janson, Janson, Main Track - Janson Dawn M Foster Brian Proffitt Stephen Walli Ben Ford , slides , video

Many popular free and open source projects are owned and driven by corporations, and in today's difficult economic climate, those companies are under increasing pressure to protect their businesses or show stronger returns for investors. One response to this pressure has been the relicensing of popular open source projects to more restrictive licenses like what we’ve seen with MongoDB, Elasticsearch, HashiCorp’s Terraform / Vault, and Redis to name just a few. These companies are putting their projects under non-open source licenses, despite there not being consistent evidence that this actually generates improved financial outcomes for those companies.

In some cases, this relicensing has resulted in a hard fork of the original project. Both the relicensing and the resulting fork create turmoil for the users of that project and the community of contributors. In this panel, we’ll discuss the following topics: dynamics around relicensing that results in such hard forks; examples of forks along with the impact on the communities; and thoughts about what this means for the future of free and open source software. The audience will gain an appreciation of why relicensing results in hostile forks and how to think about this issue when selecting projects for contribution or usage.

 "Legislative overlay: anticipating and navigating through regulatory vectors" ( 2025 )

Saturday at 17:00, 25 minutes, H.1301 (Cornil), H.1301 (Cornil), Legal and Policy Alexander Sander fukami Michael Schuster , video

In recent years, Europe has seen an increase in regulations directly affecting the software industry, and with implications for free and open source software. The regulatory landscape is complex and evolving, which makes a deeper understanding of the intended and unintended consequences on FOSS projects and the ecosystem necessary.

This session will explore the intricacies of EU legislative processes, using the CRA as a focal point. The panel aims to share and identify key moments of realization ('aha' moments) that enable navigating regulatory challenges more efficiently.

Participants will hopefully gain practical models and strategies for navigating legislative processes, and actionable methods to effectively engage with policymakers and other stakeholders, or in short: to be better able to talk to the right people at the right moment about the right subject to have most impact.

 "Cypht integration in Tiki: Email as a first-class citizen" ( 2025 )

Saturday at 17:00, 10 minutes, H.1308 (Rolin), H.1308 (Rolin), Collaboration and Content Management Jean-Marc Libs , slides , video

Cypht is an awesome Free/Libre/Open Source webmail aggregator written in PHP and JavaScript. Tiki is the Free/Libre/Open Source Web Application with the most built-in features, obviously including a webmail. Cypht within Tiki expands on the collaboration possibilities.

Email handling (reading, replying and archiving) should be part of a larger collaborative workflow. Instead of one gigantic mail store, we should have a number of smaller ones that make sense to one's workflow (ex.: around projects, tasks, clients, etc.) and that can easily be shared and prioritized.

Note: Due to technical issues, a short section of the video had to be recorded again afterwards so you can get a complete presentation.

 "Implementing parallelism: how we added threading and multicore support in TinyGo" ( 2025 )

Saturday at 17:00, 30 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Go Ayke van Laethem , video

Parallelism is hard. So until recently, TinyGo (the alternative Go compiler for small systems) simply did not implement it. Instead, we used a simple single threaded scheduler that provides concurrency, but not parallelism. This made all programs act like GOMAXPROCS=1, which caused some practical issues.

Over the past few months we added support for running multiple goroutines in parallel on Linux, MacOS, and on the dual-core RP2040 chip. This required changes in many parts of TinyGo that previously assumed single threaded operation.

This talk will cover a variety of topics that may be interesting to anybody who wants to learn about low level primitives:

  • Which parts of Go are affected by parallelism.
  • Futexes: the building block of concurrency primitives on modern operating systems.
  • How some synchronisation primitives like channels and sync.Mutex are implemented in TinyGo.
  • How parallelism is implemented in TinyGo on Linux, MacOS, and the RP2040 chip.

 "Zephyr RTOS Roasting Party" ( 2025 )

Saturday at 17:00, 25 minutes, H.1302 (Depage), H.1302 (Depage), Embedded, Mobile and Automotive Benjamin Cabé , slides , video

You've heard it from colleagues, you've seen it on Reddit... Zephyr RTOS can be difficult to navigate.

Join this session for a "Zephyr Roasting Party" where we'll openly look at and discuss the most complained-about aspects of Zephyr, and try to honestly answer common questions and criticisms such as:

  • "Zephyr is bloated and really has poor real-time performance compared to other RTOSes"
  • "I already have a HAL from my silicon vendor, why would I need even more HW abstractions?"
  • "Devicetree is so complex! How do I even understand what's going on with all these 'macrobatics'?"
  • "There's lots of drivers available upstream, sure, but how do I know how mature they are?"
  • "What is this west thing, and why are you asking me to learn Python?"
  • "Why is my board/driver not supported?"

The goal of the talk is NOT to rhetorically question some of the "bad" parts of Zephyr, only to immediately tell you why Zephyr is in fact the best thing since sliced bread. Instead, we will honestly discuss these pain points to help you understand better some of the design decisions behind Zephyr, and why they might (or might not!) actually be worth the steep learning curve. This will also prove to be an interesting exercise that will help you understand when you might not need or want an RTOS in the first place.

Through practical demos and examples, we’ll show how tools like Devicetree, Kconfig, or West can actually make embedded development more efficient, and we'll try to make those "scary" parts of Zephyr more approachable, and give a sense of the roadmap for all the other areas of Zephyr that still need work and love.

 "Valhalla Stage 2 - Nullness Emotion" ( 2025 )

Saturday at 17:00, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Free Java Rémi Forax

The first stage of Valhalla (https://openjdk.org/projects/valhalla/) is almost ready, soon we will release the first stage of the rocket, the ability to declare a class as a value class. A value class object is like a cheap box that is able to solarise itself on stack, avoiding the traditional boxing cost. The next phase is to allow to flatten value class into fields, but for that we need to get ride of null as a possible value. This talk is about the challenges to introduce nullness emotion ('?' Or '!') to the Java type system. Sadly, if you hope that Java can be turned into Kotlin, you will be disappointed.

 "What if Log4Shell were to happen today?" ( 2025 )

Saturday at 17:00, 30 minutes, UB4.132, UB4.132, Security Piotr P. Karwasz , slides , video

The Log4j project gained worldwide attention, when the Log4Shell bug shook the foundations of many software companies and government agencies, affecting millions of applications worldwide.

While the possibility of a security vulnerability can never be excluded, we will look at the steps taken by the Log4j project to minimize the security exposure of its users and drastically improve reaction times to any future vulnerability.

 "Performance evaluation of the Linux kernel eBPF verifier" ( 2025 )

Saturday at 17:00, 20 minutes, K.4.201, K.4.201, eBPF Julia Lawall Maxime Derri , slides , video

Integrated in the Linux kernel since 2014, eBPF has allowed the creation of a large variety of projects (observability, security, network, etc.). Unlike kernel modules, eBPF programs can be loaded by unprivileged users. The Linux kernel is protected by a static analyzer, called the eBPF verifier, which verifies that eBPF programs cannot harm the kernel and respect required security properties. Recently, several research works have shown that the eBPF verifier, which is a critical component, is not sound. This means that programs which should be rejected are accepted by the verifier, allowing unprivileged users to run malicious programs (e.g [1,2,3,4,5]). In this talk, we propose to evaluate the performance of the eBPF verifier through the measurement of three main aspects:

  • Performance evaluation: to understand the evolution of the eBPF verifier versions, we evaluated the verification time and consumed memory of six eBPF verifier versions (Linux kernel 5.0 to 6.8, both included). The results show that for some eBPF programs, the verifiers have nearly the same verification times (except for the conditional jumps, where the verification time has decreased since the introduction of the bounded loops in the Linux kernel 5.3). Consumed memory remains also stable.

  • Comparative evaluation with PREVAIL: as the eBPF verifier is not sound, we compared it to PREVAIL, which is another verifier proposed in 2019 at the PLDI conference. PREVAIL is a sound verifier that runs in user space and is used in the eBPF infrastructure of Windows. On the one hand, we were interested in the implementation differences between the two verification solutions and on the other hand, we observed the performance difference between the two verifiers. We observed that, although PREVAIL's performance has improved, it remains less efficient than the eBPF verifier. Nevertheless, PREVAIL showed that it can efficiently verify programs containing a lot of paths (implied by conditional jumps) thanks to the join operator and the fixpoint computation used for the bounded loops, where the eBPF verifier would have created a lot of paths, trying to reduce them with pruning.

  • Impact of compilers: beyond the verification mechanisms, there are external constraints such as the compilers: An eBPF program is first compiled into eBPF bytecode and then analyzed. However, we observed that for the eBPF verifier with a specific eBPF program, which varies only by its number of loop iterations, Clang-8 produced more programs accepted by the eBPF verifier and these programs are verified faster than those produced by Clang-14.

 "How to Become a Contributor? An Open Source Masterclass BOF" ( 2025 )

Saturday at 17:00, 60 minutes, AW1.121, AW1.121, BOF - Track A Xavier Antoviaque Rémi SHARROCK Marc Jeanmougin

Want to get more involved in open source and understand better how to contribute? Making your first contributions can be a daunting prospect, regardless of technical background. But fear not! This burd of a feather welcomes those who want a gentle introduction to the topic, and will equip you with what you need to get up to speed.

We will demystify the process of contributing to an open source project, offering insights from the Open Source Masterclass MOOC https://opensourcemasterclass.org/ and several major open source projects and contributors. Whether you're aiming to submit code, improve documentation, or participate in discussions, you'll learn key strategies for making your first contribution meaningful and accepted by the community.

Open source projects are the backbone of innovation in today's technology landscape, and contributing to them can be a fulfilling and career-enhancing experience. However, taking that first step into an active project can seem overwhelming.

We will explore the different types of contributions valued by open source communities: from code and documentation to community support and quality assurance. You will gain knowledge about the importance of communication, how to interact with project maintainers, and ways to align contributions with the current needs and priorities of the project.

Furthermore, this session will touch upon the practical aspects of the open source contribution lifecycle, including how to stay motivated, deal with feedback or rejection, and find mentorship opportunities within the community.

 "OpenAGPS - Open source GNSS Assistance" ( 2025 )

Saturday at 17:00, 20 minutes, H.2214, H.2214, FOSS on Mobile Devices Alexander Richards , slides

Most, if not all, mobile devices have a GPS receiver in them, and most, if not all of them, support A-GPS. A-GPS as a technology is not designed with privacy in mind (in fact, it is specifically designed to not be private, as it sends the phones' IMSI to the A-GPS server), and one of the few providers of A-GPS services is Google. There exists, at present, no open source, privacy-respecting A-GPS service; mostly impacting FOSS on Mobile projects, such as Ubuntu Touch, who do not wish to use this Google service (and may not be allowed to either, as Google only officially provides SUPL services for Android devices, as far as I understand)

The OpenAGPS project aims to create a open-source A-GPS / SUPL (Secure User Plane Positioning) service. GNSS systems (such as GPS) are both surprisingly simple and complicated; the talk would provide a short overview into the functioning of a GNSS system, how assisted GNSS / A-GPS / SUPL works, how a privacy-respecting system could be built, and the current state of the OpenAGPS project.

This project has also received a grant from NLNet (Mobifree call) very recently; at the time of this submission we do not have any fully functioning code/codebase, although we hope to get a working prototype of the system in time for it to be potentially showed off as a working demo at FOSDEM.

Website (slight update: placeholder has been replaced with a blog, although it's still not got too much yet): https://openagps.net/ Source: https://gitlab.com/openagps/

 "Tracing the Internals of a Cloud-Native Database" ( 2025 )

Saturday at 17:05, 30 minutes, UA2.114 (Baudoux), UA2.114 (Baudoux), Cloud Native Databases Josh Lee , video

Have you ever wondered what happens inside a distributed database when you run a query? In this talk, we’ll explore the inner workings of ClickHouse using OpenTelemetry-compatible distributed tracing to analyze the internal workings of various ClickHouse clusters while we run a variety of queries. Perfect for database enthusiasts and cloud-native developers, this session offers practical insights into tracing tools and query optimization in distributed systems.

 "Open Source Governance for Software Engineers" ( 2025 )

Saturday at 17:05, 25 minutes, UB5.230, UB5.230, Community Tobie Langel , video

The goal of this presentation is twofold:

Firstly, we want to demystify open source project governance. Do you freeze when you hear the term governance? Do you blindly copy and paste the governance of other projects hoping it works for your project too? Do you struggle to keep governance up to date or aligned with what’s actually going on in the project? You’re not alone.

Secondly, we want to provide a simple, practical, and proven approach to writing governance that’s directly inspired from coding best practices. The very same concepts that are used when writing code (e.g. Don’t Repeat Yourself, Keep It Simple, or Separation of Concerns) have direct application when authoring governance documents and create the same kind of positive outcomes: governance that is simple to understand, flexible, and and easy to maintain. You’ll never come back from thinking about governance as code.

By the time you leave this presentation, you’ll have an entirely new perspective on governance and will feel empowered by your ability to leverage your existing software engineering skills in this new domain.

 "Prove website, domain, and network ownership" ( 2025 )

Saturday at 17:05, 25 minutes, H.2213, H.2213, DNS Mark Overmeer , slides , video

In an attempt to increase security and reduce spam, website services ask for more proofs. Most services require you to confirm your email address, but nowadays, some services also demand a proof of domain ownership. Sometimes you need to prove write access to a website. Registration gets much harder, and we have to do it so often. Time to rethink.

We have been used to creating usernames for three decades by now, but the practice has reached it limits: users need to do much more to get access to a service. A tiny simplification is offered via OpenID ("Login via Google"), but the new Open Console project offers a more integrated solution to build a trust relation between a person and a service provider.

In Open Console, a person (or group) collects personal (and group) facts, and can share them with the requirements of the service. When the service only needs a proven email-address, it only gets that email address, not your name. The negotiation about which data is delivered is totally transparent and far more diverse.

Besides personal facts, many different kinds of proofs can be maintained, like a proof of website-ownership. You only need to prove ownership once, and this can be shared with any service which requires it.

Proving website ownership is not easy. The focus of this talk is on the process of establishing this proof. There are many complications in checking the validity of a website. We implemented different approaches for this proof (via DNS, HTML-meta, and file). We would also like to discuss the possible proofs of domain and network (ip-range) ownership with the participants: how to express them in DNS.

Open Console received support from NGI OpenWebSearch.EU and the NLnet Foundation.

 "Meshtastic - off-grid communication for everyone" ( 2025 )

Saturday at 17:10, 55 minutes, UB2.147, UB2.147, Radio Thomas Göttgens , slides , video

Meshtastic is an open source, off-grid, decentralized, mesh network built to run on affordable, low-power devices. A bit of history, a bit of the future and lots of hands-on action, running on the ISM and SRC frequencies below and above 1GHz. It uses Lora-P2P with dedicated radio chips and forms ad-hoc meshes. In HAM mode the encryption is switched off and the ISM airtime restrictions are lifted.

 "A long, short history of realtime AI agents" ( 2025 )

Saturday at 17:10, 15 minutes, K.3.601, K.3.601, Real Time Communications (RTC) Rob Pickering , slides , video

Until a few months ago, the only working approach for connecting realtime AI agents to WebRTC streams and phone calls was to use lengthy pipelines of speech to text, agent orchestration, and text to speech, often using multiple machine learning models from commercial vendors. That has changed with new realtime speech to speech models, most famously the (closed) OpenAI advanced voice, but what are the open source ways to build these kind of systems? This talk walks through my experience with using 4 different projects to build functional systems which can use open source (open weights) models at their core. We will talk about how we have integrated Jambonz, Livekit, and Ultravox (Fixie.AI) within our Aplisay framework and what this allows us to do.

 "CephFS: from synthetic benchmarks to real-world user workloads" ( 2025 )

Saturday at 17:10, 30 minutes, K.3.401, K.3.401, Software Defined Storage Mattia Belluco , slides , video

Since CephFS was declared stable, it has become a viable option for workloads ranging from High Performance Computing to Kubernetes. In this talk we discuss the configuration tuning we applied to transition from a freshly deployed filesystem to one suitable for a production usecase that mixes decent performance, reliability and capacity.

 "A wiki as shared collaboration arena for humans and artificial agents?" ( 2025 )

Saturday at 17:15, 10 minutes, H.1308 (Rolin), H.1308 (Rolin), Collaboration and Content Management Richard Heigl Markus Glaser Robert Vogel , slides , video

Wikis are a place where humans collaborate to store knowledge. It excels at free-form natural language representation of knowledge which can be stored and retrieved easily by humans. It also increasingly serves as a knowledge base for chat bots and other artificial agents which are based on LLMs and their technologies.

While interacting with humans in a chat, AI agents can also gain new knowledge. This talk proposes that the wikis can also be a place where AI agents can persist this information. In that way, it would be readable for both humans and AI agents. This would make the wiki a perfect place for human / AI collaboration.

 "Open-Source CPU: Deep-dive into RISC-V CFU and Zephyr" ( 2025 )

Saturday at 17:20, 35 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), RISC-V Mohammed Billoo , slides , video

RISC-V's instruction set architecture (ISA) has enabled seasoned embedded software engineers to experiment with FPGAs since numerous open-source RISC-V cores can be flashed onto an FPGA.

The Zephyr Project is rapidly emerging as a leading real-time operating system (RTOS). Zephyr integrates open-source and security best practices to ensure a vendor-neutral, secure, and reliable platform.

One of the exciting features of the RISCV ISA is the Custom Function Unit (CFU), which enables a framework to support custom operations in hardware, which is accessible from software. In this talk, Mohammed will provide an in-depth demonstration on how to add a CFU into a RISCV core on an FPGA, how to make the appropriate calls from Zephyr, and the possibilities that the CFU enables for hardware acceleration in embedded systems.

 "Optimizing switch statements: overview and what's new" ( 2025 )

Saturday at 17:20, 20 minutes, K.3.201, K.3.201, GCC (GNU Toolchain) Filip Kastl , slides , video

During compilation, GCC breaks down switch statements into simpler statements. If a switch has a specific structure, GCC may use techniques that result in faster code. We call these techniques "switch optimizations".

In this talk we'll overview switch optimizations in GCC. Then we'll go into more detail on turning switches into array lookups. In GCC this is called "switch conversion". I'll introduce a new method called "exponential transformation" that I recently contributed to switch conversion. If time permits, we will also discuss potential future work on switch optimizations.

I plan to make this talk beginner-friendly. I myself have started working on GCC just 2 years ago. The talk should however give the audience a good idea about what switch optimizations are available and what they do.

Expected prior knowledge: What is a C switch statement. Very basic understanding of assembly.

 "Building Truly Native Cross-Platform Desktop Apps (With a Focus on GNOME)" ( 2025 )

Saturday at 17:20, 10 minutes, K.4.401, K.4.401, Swift David Häner , slides , video

Get to know the Aparoksha project. Write your app once and deliver a truly native look and feel across the major desktop platforms, all with a declarative framework!

The most mature part of this project is the Adwaita for Swift package, allowing the creation of native GNOME apps.

In this presentation, I'll introduce the core principles of Aparoksha, showcase its current capabilities, and share my vision for its future.

 "The conundrum challenges for Research Software and Research Data in Open Science" ( 2025 )

Saturday at 17:20, 25 minutes, AW1.126, AW1.126, Open Research Teresa Gomez-Diaz , slides , video

Abstract

The Borgman's conundrum challenges [1] have been initially formulated concerning the difficulties to share Research Data: which Research Data might be shared, by whom, with whom, under what conditions, why, and to what effects.

In our previous work, we have proposed a Research Software Definition [2] with a formulation that we have adapted in order to propose a Research Data definition [3,4]. We have thus constructed a framework to understand and to explain Research Software and Research Data in the Open Science context [5].

This framework is constructed in three stages: definition, dissemination, and evaluation of these research outputs [2,3,4], and it is now completed with answers to the Borgman's conundrum challenges for Research Data [3] and for Research Software [6].

In this talk we will present our answers to the Borgman's conundrum challenges, and we will explain the comparison methodologies that we have developed in order to construct and to complete this Open Science framework.

It is our understanding that to provide correct and clear answers to the conundrum questions will have, as a consequence, the improvement of Research Software and Research Data sharing and dissemination practices, which, in turn, will enhance trustworthiness, correctness, rigor, reproducibility, reusability and transparency in the research endeavor.

This is a joint work with Prof. Tomas Recio, Universidad Antonio de Nebrija, Madrid.

This FOSDEM'25 presentation follows and extends our previous talks at FOSDEM:

References

[1] Borgman, C.L. The conundrum of sharing research data. J Am Soc Inf Sci Tec 2012, 63, 1059–1078. https://doi.org/10.1002/asi.22634

[2] Gomez-Diaz, T.; Recio, T. On the evaluation of research software: the CDUR procedure [version 2; peer review: 2 approved]. F1000Research 2019, 8 1353. https://doi.org/10.12688/f1000research.19994.2

[3] Gomez-Diaz, T.; Recio, T. Research Software vs. Research Data I: Towards a Research Data definition in the Open Science context. [version 2; peer review: 3 approved]. F1000Research 2022, 11 118. https://doi.org/10.12688/f1000research.78195.2

[4] Gomez-Diaz, T.; Recio, T. Research Software vs. Research Data II: Protocols for Research Data dissemination and evaluation in the Open Science context. [version 2; peer review: 2 approved]. F1000Research 2022, 11 117. https://doi.org/10.12688/f1000research.78459.2

[5] Gomez-Diaz, T.; Recio, T. Towards an Open Science definition as a political and legal framework: on the sharing and dissemination of research outputs.

[6] Gomez-Diaz, T.; Recio, T. The conundrum challenges for Research Software in Open Science, Computers, 2024, 13(11), 302. https://doi.org/10.3390/computers13110302

 "Rust-ifying the Linux kernel scheduler (in user space)" ( 2025 )

Saturday at 17:20, 40 minutes, UB2.252A (Lameere), UB2.252A (Lameere), Rust Andrea Righi , slides , video

In the realm of operating systems, the heart of performance lies in the CPU scheduler: a critical component responsible for managing the execution of tasks on a system.

Exploring and customizing CPU scheduling policies has long been the realm of few highly specialized kernel developers, leaving most developers and researchers without the tools to tailor system performance to their unique needs.

What if we could unlock this potential and make it accessible to a wider audience, from game developers, cloud service providers to AI researchers and performance engineers?

With sched-ext [1], eBPF and Rust, this vision can become a reality, enabling the development of multiple dynamic specialized schedulers, tailored to specific system workloads and architectural topologies, that can be loaded and managed as regular user-space programs [2].

[1] https://sched-ext.com/ [2] https://github.com/sched-ext/scx/tree/main/rust/scx_rustland_core

 "A Formal Specification of the NOVA Microhypervisor" ( 2025 )

Saturday at 17:20, 25 minutes, UB4.136, UB4.136, Microkernel and Component-Based OS Hoang-Hai Dang , slides , video

We present a formal specification of NOVA that captures its complex concurrent and architectural behavior. Our specification combines an operational specification for unprivileged user code with a separation logic specification of privileged state and operations. The specification precisely captures the subtle behaviors of NOVA such as address translation and user faults. Separation logic’s small footprint and open world nature makes the specification highly modular and reasonably high level, allowing us to abstract architectural details that are encapsulated by NOVA and evolve the formal specification as NOVA evolves. Using the specification, we have carried out proofs of the NOVA source code as well as of applications running on top of NOVA.

 "Mitigating Bugs in the Linux eBPF Verifier using Rust- or PREVAIL-based Layered Verification" ( 2025 )

Saturday at 17:20, 20 minutes, K.4.201, K.4.201, eBPF Luis Gerhorst , slides , video

The eBPF verifier has repeatedly suffered from bugs in its verification algorithm which enable malicious applications to perform container escapes and privilege escalation. To improve upon this, existing work applies fuzzing (Chaignon'24) and formal methods (Agni) to the verifier in order to find and fix bugs. However, in the mid-term, these approaches are unlikely to result in a verifier that is fully bug-free. While academic works have proposed the use of hardware-based isolation (MOAT, Hive, SafeBPF) and software-fault isolation (BeeBox) to mitigate verifier bugs, these approaches suffer from portability issues, require significant design-changes with unclear consequences, or have runtime overheads.

Motivated by the shortcomings of the existing approaches, this talk discusses an alternative approach to prevent verifier-bugs from being exploited. By requiring eBPF bytecode to be compiled from safe Rust source code by a trusted systems service, program-safety would effectively be checked twice by two very different static analyzers (i.e., rustc's compiler passes and the eBPF verifier). Therefore, a bug in one of the analyzers will no longer directly result in a kernel exploit as the other analyzer is unlikely to exhibit the same buggy behavior and therefore still catch malicious programs. This approach is appealing as it is unlikely to result in runtime overheads and does not require significant changes to the kernel.

We analyze whether this is a viable approach to mitigate bugs in the eBPF verifier, taking runtime-overheads, expressiveness, and security into consideration. Specifically, we analyze whether past bugs in rustc and the eBPF verifier could have been chained together in order to exploit the proposed design as a whole.

We find that the fundamental flexibility of the Rust-IR-to-eBPF mapping allows attackers to still exploit the system as a whole. We also investigate whether using the alternative PREVAIL eBPF verifier would prevent a similar attack, but find that there exists a simple construction that allows attackers to combine exploits for the individual verifiers into an exploit that works for the verifiers when chained together.

 "Less overhead, strong isolation: Running containers in minimal specialized Linux VMs" ( 2025 )

Saturday at 17:20, 20 minutes, UD2.218A, UD2.218A, Containers Charalampos Mainas Anastassios Nanos , slides , video

Containers have become the preferred solution for cloud-native applications due to their lightweight nature and scalability. However, their security limitations, particularly from shared kernel access, have led to a renewed interest in traditional VMs for stronger isolation. Technologies like kata-containers enhance security by running containers inside microVMs, offering better isolation, but they introduce complexity and overhead. Specifically, the container runtimes spawn additional processes to manage the container within the VM, adding extra layers of complexity and resource consumption.

This talk examines the pros and cons of sandboxed container runtimes, focusing on the added complexity of auxiliary processes. It then proposes a more efficient and streamlined approach based on the unikernel paradigm, where only the application and its dependencies are running. Rather than using strict unikernels, it explores how containers can run inside specialized, stripped-down Linux VMs, containing only the components required by the application and without additional services. This is achieved through urunc, a CRI-compatible container runtime that treats unikernels like standard containers, managing the user application via the VM process.

 "Enhancing Airflow for Analytics, Data Engineering, and ML at Wikimedia" ( 2025 )

Saturday at 17:25, 30 minutes, UB5.132, UB5.132, Data Analytics Ben Tullis Balthazar Rouberol , slides , video

The Wikimedia Foundation supports hundreds of thousands of people around the world in creating the largest free knowledge projects in history. In order to do this we run on-premise infrastructure at significant scale, using almost exclusively free and open-source components. Our data processing and real-time analytics requirements are constantly evolving and our Data Platform Engineering teams face complex challenges in the fields of data-engineering and machine-learning, as well as the operational workload of supporting these systems in production.

Wikimedia’s data platform today runs on some of the most vital open source projects such as Hadoop, Kubernetes, Ceph, Druid, Cassandra, Spark, Hive, Iceberg, Flink, Presto, Jupyter, MariaDB, PostgreSQL, Superset, and Airflow.

We started working with Airflow in 2019, when it was still an Apache incubator project. Over the past five years our deployments have matured and we succeeded in migrating the last of our Oozie-based workflows to Airflow in mid-2023. In addition, we offer Airflow services to other data-focused WMF engineering teams, in order to facilitate a self-service approach to data pipelines.

During 2024, the Data Platform SRE team undertook a major project to enhance our Airflow services by migrating them from bare-metal and VMs to our on-premise Kubernetes and Ceph clusters. This burgeoning integration between Airflow, Kubernetes, Spark, and Ceph has enabled us to broaden the scope and applicability of Airflow to include ML model training and data publishing workloads, plus more in future.

This is an account of how we got here, the challenges we overcame and where we plan to go from here.

 "Chromium on Android: How we doubled Speedometer & developed the LoadLine benchmark" ( 2025 )

Saturday at 17:25, 50 minutes, UA2.220 (Guillissen), UA2.220 (Guillissen), Web Performance Eric Seckler Gurj Bahia , slides , video

Chrome's Speedometer scores have more than doubled in the last ~two years. We'll outline major improvements and dig deeper into build optimizations and their impact on CPU microarchitecture bottlenecks. We'll also discuss the relevance of benchmarking end-to-end user journeys in the lab, and how we approached building a page load benchmark (bit.ly/loadline) to allow optimizing across the software/hardware stack.

 "Mobile Browsers: the Best of Times, the Worst of Times" ( 2025 )

Saturday at 17:25, 20 minutes, H.2214, H.2214, FOSS on Mobile Devices David Llewellyn-Jones , slides , video

Arguably the single most important piece of software on any mobile phone is its Web browser. This is especially true on alternative mobile platforms where Web apps are often the best or only way to access essential services and functionality.

While mobile apps are increasingly targeted at just the dominant platforms, they are also increasingly built using Web technologies, making them accessible to any platform with a decent browser. The result is that Linux-based mobile platforms beyond Android and iOS have the potential to be more viable than ever before.

But the embedded browser landscape is in continual flux, with multiple offerings built on different technologies, including Blink, V8, WebKit, JavaScriptCore, Gecko, SpiderMonkey and Servo Layout. On top of these are frameworks intended to make their use more accessible to embedded systems. These include the Chromium Embedded Framework, Web Platform for Embedded, Qt WebEngine and Gecko WebView.

In this talk I'll look at the different offerings available and consider their appropriateness for mobile Linux. What features do they offer, how practical is their use and why should you choose one over another? In particular I'll look at the minimal API needed for any practical implementation, how the APIs differ across the offerings and how they can be made use of as embedded browsers in mobile applications.

To give a more complete understanding of what embedded browsers are like to use in practice, the talk will include example applications with demonstration code.

 "Secure credential collaboration with Passbolt" ( 2025 )

Saturday at 17:30, 10 minutes, H.1308 (Rolin), H.1308 (Rolin), Collaboration and Content Management Remy Bertot , video

Passbolt is an open-source platform for secure credential management. The solution has demonstrated its effectiveness with over 400,000 daily users and thousands of companies relying on it worldwide.

In this talk, we will present real-world use cases, and discuss Passbolt strengths in centralizing, organizing, and sharing credentials without compromising security or privacy. We will also provide a sneak peek at the upcoming v5 release, which features a new security model.

This talk aims to provide insights into technical advancements while sparking discussions on the challenges and opportunities posed by the need for secure collaboration.

 "Modern zone replication using LMDB and Lightning Stream" ( 2025 )

Saturday at 17:30, 25 minutes, H.2213, H.2213, DNS Kevin P. Fleming , slides , video

As a follow up to my award-winning FOSDEM 2023 talk "Hosting your own DNS for 'fun' and zero profit", I'll provide an update covering my experiences using Lightning Stream for zone replication between PowerDNS authoritative servers.

Lightning Stream offers significant advantages over traditional database-style replication (typically using relational databases like MariaDB and PostgreSQL), including simpler configuration, easier troubleshooting, and the ability to add/remove cluster members without having to reconfigure existing cluster members (providing a very loosely coupled 'cluster').

PowerDNS Lightning Stream LMDB

 "Advancing Java Profiling: Achieving Precision and Stability with JFR , eBPF and user context" ( 2025 )

Saturday at 17:30, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Free Java Johannes Bechberger Jaroslav Bachorik , slides , video

Java developers struggle with the trade-off between precise profiling and application stability. Unofficial methods like AsyncGetCallTrace offer precision but risk crashes, while official APIs such as JVMTI, JMX, and StackWalker are stable but biased due to safepoint polling. Java Flight Recorder (JFR) reduces this bias but introduces interpolation errors.

This talk addresses these challenges with three key topics: • Combining precise sampling with JFR’s stability to remove biases without sacrificing reliability. • Using eBPF probes and examining JVM internals for safer, detailed profiling. • Enhancing precision with user-supplied profiling contexts.

We will review the history of Java profilers and discuss the future of JVM profiling, with a focus on CPU profiling. Attendees will gain insights into new methods aimed at achieving accurate, stable performance analysis in Java applications, comparing them with async-profiler and existing tools.

 "Today's fediverse: a good start, but there's more to do" ( 2025 )

Saturday at 17:30, 10 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Social Web Christine Lemmer-Webber Jessica Tallon , video

ActivityPub remains, to this day, the most successful decentralized social networking platform to date: dozens of interoperable implementations, thousands of servers, millions of users, all speaking over the same protocol in what's today called the "fediverse" (federated social web). The modern-day fediverse is an impressive achievement, but it also leaves many issues to be addressed. Servers can go down, content can disappear and users can lose access to their identity. Authorization mechanisms are under-specified and rich interactions are fairly limited. This talk, by the two primary editors of the ActivityPub specification, explores where we think the fediverse should go and how we're building a future for "secure collaboration" technology at the Spritely Institute.

 "Making NetBSD as a fast(er) booting microvm" ( 2025 )

Saturday at 17:30, 30 minutes, AW1.120, AW1.120, BSD Emile 'iMil' Heitor , video

How we implemented PVH boot capability to the NetBSD kernel, allowing it to start straight from QEMU's -kernel parameter or Firecracker's VMM. In the process, we reduced boot time from 300 to 20ms, using methods borrowed from FreeBSD, and some in-house optimisations to get rid of unnecessary delays.

 "How Threat Actors Are Weaponizing Your Favorite Open-Source Package Registry" ( 2025 )

Saturday at 17:30, 30 minutes, UB4.132, UB4.132, Security Ian Kretz Sebastián Obregoso , slides , video

What was the last npm package you installed? Did anything unexpected happen? Are you sure?

The scale and pace of modern software development are made possible by the ready availability of open-source packages via major registries like npm and PyPI. These registries are always within reach of developers thanks to command-line package managers like npm and pip, enabling rapid testing and deployment of third-party code as part of normal workflows. However, these benefits come at the cost of particular security concerns: threat actors routinely target software developers via open-source package registries, either by publishing backdoored packages or by taking over and corrupting legitimate software. In many such supply-chain attacks, merely installing the malicious package is enough to hand control of one’s system over to the adversary.

In this talk, we lay out the strategies that threat actors use when targeting software developers via open-source package registries. We do so by examining case-studies in open-source malware delivery via npm and PyPI, some involving nation-state actors, that we at Datadog Security Research have collected while continuously monitoring these ecosystems with GuardDog, an open-source scanner for identifying malicious packages by analyzing code patterns and package metadata. We then propose recommendations for developers, as well as for the package registries themselves, to counter these strategies that could lead to a greater overall level of software supply-chain security in the open-source community.

 "Return Of Go Without Wires" ( 2025 )

Saturday at 17:30, 30 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Go Ron Evans , video

In the latest installment of the Go Without Wires saga, I will demonstrate several new capabilities in wireless communication using a variety of frequencies of the electromagnetic spectrum, all using our favorite programming language. There will be moving objects.

 "Post-Quantum Cryptography in OpenPGP" ( 2025 )

Saturday at 17:30, 30 minutes, K.4.601, K.4.601, Modern Email Daniel Huigens Aron Wussler , slides , video

Quantum computers that are able to break classical cryptography are generally expected to appear in the coming decades. To prevent encrypted emails from being decryptable by an attacker at that point, we need to start using post-quantum cryptography as soon as feasible.

To that end, we're standardizing the use of post-quantum cryptography in OpenPGP. In addition, for long-term storage and archival, we're standardizing the use of persistent symmetric keys, which allows for more efficient encryption, while still being post-quantum secure as well.

In this talk, we'll present the state of the standardization and implementation efforts, and discuss how the transition might affect applications using OpenPGP, as well as their end users.

 "Developing BLE Host Applications with Zephyr" ( 2025 )

Saturday at 17:30, 25 minutes, H.1302 (Depage), H.1302 (Depage), Embedded, Mobile and Automotive Florian Limberger , slides , video

Bluetooth Low Energy, commonly abbreviated as BLE, is a well-known wireless communication technology aimed at low-power applications. It divides devices into two categories: low-cost, potentially high volume, battery constrained peripheral devices such as head phones or heart rate monitors, and comparatively more powerful and less constrained central devices, such as smartphones and notebooks.

The Zephyr Project has supported developing BLE peripheral applications for a long time. But it may not be well known that it also supports BLE host applications, or central devices as the standard calls them. In his talk, Florian will take a look at how we can develop BLE host applications using Zephyr. After a (very) short introduction to the BLE protocol stack, he will delve into Zephyr's Bluetooth API and more importantly talk about the pitfalls he encountered while getting his feet wet with Zephyr. On the practical side, this talk will look into how BLE applications remain portabile between boards by different vendors, and how the many BLE-enabled emulators and simulators provided by Zephyr can be used for quicker development and testing.

In this talk you will learn about:

  • the basics of the BLE protocols
  • the Zephyr Bluetooth API and its pitfalls
  • how portable Zephyr applications using BLE are
  • how you can utilize the Zephyr emulators and simulators for BLE development

 "Infra for Drones: Lessons learned from 15 years of open source robotics." ( 2025 )

Saturday at 17:30, 25 minutes, UD6.215, UD6.215, Testing and Continuous Delivery Ramon Roche , slides , video

The Dronecode Foundation hosts an ecosystem of open-source projects, developers, and contributing organizations. Dronecode is an umbrella foundation (part of The Linux Foundation) hosting open-source projects that offer solutions to robotics developers looking to build Aerial solutions.

The PX4 Autopilot is an open-source flight controller project that offers developers a stable foundation for building drones. The project sustains a community of thousands of robotics developers and hundreds of companies building complex drone solutions on top of PX4, including everything from wedding photography to package delivery for Walmart.

Our humble open-source project has supported an ever-growing community of contributors at times with little to no resources. With the growing complexity of demanding robotics workflows, proving reliable and reproducible testing to guarantee the safety of our codebase has been a constant challenge.

I will share the cautionary tale of how not to run CI for a robotics project, the scary times when we wanted to delete our whole infra and start fresh, and how we found the strength to move on. I will also share the gory details behind running an open-source robotics project and the supporting tooling needed to support our complex workflows and demanding community.

Our Continuous Integration pipeline is far from sophisticated, but it is responsible for supporting thousands of developers and is the backbone of our infrastructure. Some of the topics I will be discussing: Maximizing containers for reproducible builds Running a hardware-in-the-loop service with embedded hardware connected to the cloud. Moving from Jenkins to GitHub Actions Hosting our own GitHub Actions runners Build patterns for better GitHub Actions development across distributed teams. Building an array of upwards of 60 builds per pull request in GitHub Actions

 "Chatting on IRC in 2025: grandpa, what's up?" ( 2025 )

Saturday at 17:30, 15 minutes, K.3.601, K.3.601, Real Time Communications (RTC) Simon Ser Thomas Flament , video

IRC is a venerable 37 year old chat protocol used by many open-source software projects, technical experts happily lending their help and other discussion groups. However, the historic IRC protocol is not always well-suited to modern usage, such as connecting from multiple devices with unreliable connectivity, or connecting from battery-constrained mobile devices.

In this talk, Simon and Thomas will explain how IRC has evolved in the last few years to address these challenges through efforts like the IRCv3 working group and new software (soju, senpai, gamja, goguma). We've been working on adding new features such as easily accessing message history, sharing files and pictures and searching through messages. Some of the architectural design decisions may be interesting to people working on other open protocols, for instance secure and interoperable push notifications or OAuth integration.

 "CRA Q&A on Open Source Stewards under the Cyber Resilience Act" ( 2025 )

Saturday at 17:30, 25 minutes, H.1301 (Cornil), H.1301 (Cornil), Legal and Policy Alexander Sander Bradley M. Kuhn Michael Schuster , video

Our community has been confused and concerned at the last-minute addition to the Cyber Resilience Act (CRA) that created the class of “Open Source Steward”. Many projects want to know ASAP if their own project will be such a Steward, or if their fiscal sponsor will be forced to be a Steward. Most projects operate with small budgets, even those with fiscal sponsors, and as such CRA compliance could financially ruin projects.

At this session, we'll have experts to answer these questions and others, and help you to not panic about what we face in the CRA.

 "MPTCP community meetup BoF" ( 2025 )

Saturday at 17:30, 60 minutes, H.3242, H.3242, BOF - Track B Matthieu Baerts

Let's meet and talk about Multipath TCP (MPTCP)!

Everybody is welcome! There is no fixed agenda or schedule. We will have open discussions about problems, improvements, use cases and ideas for MPTCP. Feel free to come with a topic, or simply join to meet people.

It is also possible to talk about kernel development, and continuous integration in the Linux kernel, e.g. the way MPTCP is continuously validated using Virtme-NG on public CI instances.

See https://www.mptcp.dev/#communication for how reach the community.

 "Your First AWS Lambda Function" ( 2025 )

Saturday at 17:35, 20 minutes, K.4.401, K.4.401, Swift Mikaela Caron , slides , video

LIVE! Writing and deploying your first AWS Lambda function using Swift. We'll write a simple lambda function and deploy it within 20 minutes using the VSCode extension for AWS Lambda.

 "Digital Public Goods - Incentivizing Collaboration" ( 2025 )

Saturday at 17:35, 25 minutes, UB5.230, UB5.230, Community Mike Gifford , video

Digital Public Goods are often celebrated as open-source software, open data, open AI models, open standards, and open content. However, true public goods require more than openness—they demand active community governance, collective stewardship, and responsible contributions to thrive as shared resources.

While proprietary software sustains itself through licensing, support, and vendor lock-in, open-source software relies on a delicate balance of professional firms, organizational backing, and dedicated enthusiasts. The open model has fueled flexibility, innovation, and the global adoption of open technologies.

Yet, the rapid growth of "open" has not been matched by an equivalent rise in contributions or investments in maintenance. Discussions often prioritize licensing over the essential question: How do we, as a community, ensure that digital public goods are sustainable? This talk explores the responsibility of contributors, organizations, and users in building a resilient ecosystem for open technologies.

 "Distributed SQL Technologies: Raft, LSM Trees, Time, and More" ( 2025 )

Saturday at 17:35, 30 minutes, UA2.114 (Baudoux), UA2.114 (Baudoux), Cloud Native Databases Franck Pachot Daniël van Eeden , video

This session will focus on the open-source distributed SQL databases TiDB and YugabyteDB. We will explore their building blocks to understand how they function, highlighting their similarities and architectural differences. Key topics will include how changes are versioned (using either Time Stamp Oracle or Hybrid Logical Clocks), how data is replicated (with Raft), how they store rows, index entries, and transaction intents (utilizing RocksDB LSM trees), and how they implement ACID properties (through either Percolator or IntentsDB).

 "Manyfold: Federating 3d models" ( 2025 )

Saturday at 17:40, 10 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Social Web James Smith , slides , video

Manyfold (https://manyfold.app) is a self-hosted tool for storing, organising and sharing 3d print models. This session will talk about how we've approached adding ActivityPub federation to the system using the "Federails" Rails Engine (https://gitlab.com/experimentslabs/federails), and our approach to using custom extensions to share information across instances and different AP software systems.

 "Incremental LTO in GCC" ( 2025 )

Saturday at 17:40, 20 minutes, K.3.201, K.3.201, GCC (GNU Toolchain) Michal Jireš , slides , video

Incremental LTO in GCC

Link Time Optimization (LTO) postpones many compiler steps into linking, when we have access to all files linked together. This allows us to optimize across compilation units leading to significantly faster and smaller binaries. However it comes at a cost of long compile times because after even a minor edit the entire application needs to be re-optimized. Incremental LTO will be a new feature of GCC 15 which aims to reduce those compile times for small changes by caching LTO partitions unaffected by the change.

This talk will cover quick overview of Incremental LTO and how to use it in upcoming GCC 15. I will also show estimate of how much compile time can be saved when recompiling GCC itself.

 "Building your eBPF Program with Rust and Aya" ( 2025 )

Saturday at 17:40, 20 minutes, K.4.201, K.4.201, eBPF Daniel Mellado , slides , video

eBPF (Extended Berkeley Packet Filter) is revolutionizing the way developers interact with the Linux kernel, enabling them to run user-defined programs in a highly efficient and safe manner.

This session will introduce you to Aya, a modern Rust-based eBPF library. Unlike traditional eBPF libraries such as libbpf and bcc, Aya is built entirely in Rust and leverages the libc crate for syscalls, offering a clean, lightweight, and efficient interface for eBPF development.

In this session, we’ll explore how Aya simplifies the eBPF programming workflow, including features like BTF (BPF Type Format) support, which enables programs to run across different kernel versions without needing recompilation.

You’ll learn how Aya’s architecture ensures fast deployment and builds, with no need for a kernel build, compiled headers, or even a C toolchain. The result is a streamlined, "compile once, run everywhere" solution that allows you to easily deploy a single self-contained binary across different Linux distributions and kernel versions.

We'll cover that by using a sample XDP program where we'll be covering aya we'll go across and explain how to use aya components such as aya_log_ebpf or aya_ebpf to bootstrap the code and how our dev and build environment looks like.

Whether you’re new to eBPF or an experienced kernel developer, this session will provide you with the tools and insights to leverage the full power of eBPF using Rust and Aya in your next project.

Links:

 "Dangerzone: Containers that contain containers that contain attackers" ( 2025 )

Saturday at 17:40, 30 minutes, UD2.218A, UD2.218A, Containers Alex Pyrgiotis , video

Dangerzone is a multi-platform project that performs a simple task; give it an untrusted document, and get back a sanitized one. Qubes did it first with disposable Xen VMs (see TrustedPDF), but Dangerzone is doing it with containers across all major platforms. How secure are containers though, and can you achieve VM-level parity with them?

In this talk we’ll discuss the attack surface of Linux containers, and how Dangezone uses gVisor to contain RCEs in document viewers. Even if you don’t use gVisor or are not interested in it, we’ll show some easy ways to harden your security-sensitive containers right now, for harm reduction purposes.

 "Beyond Compliance: Assessing Modern Slavery Statements using the Wikirate platform" ( 2025 )

Saturday at 17:45, 25 minutes, AW1.126, AW1.126, Open Research Vasiliki Gkatziaki , slides , video

Modern slavery impacts millions of people worldwide, posing urgent ethical and human rights challenges In response, the UK and Australian Modern Slavery Acts require companies meeting specific revenue thresholds to produce annual modern slavery statements, aiming to increase accountability in addressing modern slavery risks. Since 2016, Walk Free and Wikirate have partnered to assess companies’ response to these Acts, leveraging Wikirate’s open-data platform. This assessment considers whether companies are releasing statements that meet the legal requirements, but also if they detail policies and actions that go beyond compliance to enable businesses to better respond to modern slavery. Key to this initiative is its open, collaborative approach, and therefore, a set of accessible metrics on Wikirate that empowers non-expert researchers to contribute meaningfully. Through the project, volunteers and researchers have conducted an in-depth analysis of over 2000 MSA statements. Over the years, the project has mobilized thousands of volunteers and engaged over 20 universities worldwide, using Wikirate’s crowdsourcing platform to organize and perform research at scale. The insights generated through the research not only inform Walk Free’s advocacy efforts with governments and companies but also demonstrate the power of open research principles in tackling complex global issues.

 "End-to-end Entreprise Search with Datafari Community Edition" ( 2025 )

Saturday at 17:45, 25 minutes, H.1308 (Rolin), H.1308 (Rolin), Collaboration and Content Management ULMER Cédric , video

In this talk, we will introduce Datafari Enterprise Search, in its open source Community Edition. Datafari aims at providing an end-to-end solution, from multi-sources knowledge crawling up to the search interface, including a web administration. We will be presenting its architecture, its main functionalities, and its current roadmap for integrating generative AI to the mix (including RAG).

Repositories are hosted on our gitlab: https://gitlab.datafari.com/explore/groups

With a mirror on github for the main Datafari CE repository: https://github.com/francelabs/datafari

 "Case Insensitive Trees in CephFS" ( 2025 )

Saturday at 17:45, 30 minutes, K.3.401, K.3.401, Software Defined Storage Patrick Donnelly Günther Deschner , slides , video

Like most POSIX file systems, CephFS has always been a case-sensitive file system. However, it has become a priority to improve integration with gateways like Samba which present a case-insensitive view of some tree in the file system. In order to present that view, Samba requires expensive checks for file name lookups to locate a directory entry with the computed case-insensitive folding. It is also necessary to politely handle interoperating with other clients that are using normal case-sensitive names. To address this gap, CephFS now provides a mechanism for enforcing case-insensitive operations on a directory tree for all clients by simply setting a Ceph extended attribute. This talk will walk through the challenges for Samba's gateway on CephFS, the changes to the CephFS metadata server and clients, the interfaces used by other well-known file systems, and the expectations users may have going forward.

 "Cancelling POSIX syscalls in Managarm - an asynchronous microkernel-based OS" ( 2025 )

Saturday at 17:50, 20 minutes, UB4.136, UB4.136, Microkernel and Component-Based OS Geert Custers , slides

One of the most idiosyncratic parts of POSIX compliance is signal support. On microkernels the implementation can prove to be quite difficult. One especially tricky part is the cancellation of POSIX syscalls when they are interrupted by signals, and the intricacies of EINTR side effects. Monolithic kernels inheritely have the bookkeeping required to implement this without extra overhead. In contrast, due to the generally distributed nature of microkernels, properly cancelling syscalls requires extra work. This is especially the case for Managarm, where (1) POSIX is implemented in a userspace server, (2) syscalls are asynchronous and (3) can involve multiple servers.

In this talk, we will explore the process of implementing syscall cancellation on Managarm. A brief overview of signal delivery is given, followed by a deep dive into the new lifetime of a Managarm POSIX request. Finally, we give a summary of the lessons learned while implementing cancellation in a fully asynchronous microkernel.

 "Show and Tell: Federation at Forgejo" ( 2025 )

Saturday at 17:50, 10 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Social Web meissa , slides , video

What is a problem on Twitter et al will become the same mess on GitHub od Gitlab - just a matter of time.

For this reason Forgejo is working on federation for git platforms. Some months ago we released the first user visible feature the federated star and we will continue our path.

We will talk about our motivation, point out the general roadmap and show implementation details.

Other fedi devs and discussions are very welcome.

 "Call fraud prevention through traffic trends monitoring using CGRateS" ( 2025 )

Saturday at 17:50, 10 minutes, K.3.601, K.3.601, Real Time Communications (RTC) Dan Christian Bogos , slides , video

In this talk we will review together TrendS, a newly implemented subsystem within CGRateS to help you build your own traffic trends analysis as well as react to unexpected behaviour through automatic actions available. CGRateS is a battle-tested Open-Source Enterprise Billing Suite with support for various prepaid and postpaid billing modes.

 "libobscura: Cameras are STILL difficult" ( 2025 )

Saturday at 17:50, 20 minutes, H.2214, H.2214, FOSS on Mobile Devices dcz , video

The libobscura experiment exists to find out what a point-and-shoot API abstracting Video4Linux should look like. It has its roots on one hand in the
Librem 5 project, where I wrote some 70% of the camera stack, and on the other
hand in libcamera, which I found too difficult to use.

You think controlling a modern camera is easy? Think again. Between pixel formats, depths, media entities, pads and links, sensitivity, denoising, phase
detection, shutter lengths, DMAbuf, OpenGL, feedback loops, requests, and statistics, there's enough opportunities to get lost in the detail.

Thankfully, Prototype Fund thinks I'm up for the challenge, so they are funding
me through libobscura in order to get lost, and maybe find something in the process.

Apart from showing the general problems of camera support, I'll tell about new
problems since CCC.

Project repo: https://codeberg.org/libobscura/libobscura

 "How to make BIND 9 fast(er)" ( 2025 )

Saturday at 17:55, 25 minutes, H.2213, H.2213, DNS Ondřej Surý , slides , video

This talk will be focused on the software engineering techniques that we are using or plan to use to bring the BIND 9 into 21 century to scale better, use less memory and overall have improved design to utilize the modern CPU architecture.

 "Five silly things to do when benchmarking your BPF program" ( 2025 )

Saturday at 18:00, 20 minutes, K.4.201, K.4.201, eBPF Dmitrii Dolgov , slides , video

The Hitchhiker's Guide to the Galaxy has following to say about benchmarking: avoid, if at all possible. One of the reasons is that it's hard and often counterintuitive, another -- it attracts Ravenous Bugblatter Beasts.

Despite all those dangers it's still an important and underappreciated topic, and in this talk I would like to discuss cases when unexpected results arise from benchmarking of BPF programs and why they could be important. Kernel selftest benchmarks would serve as an example, but we will vary the load generation to produce different arrival distributions, introduce contention on tracepoints, or simulate swarm of network connections in user space. To make it easier, we will use home-grown tool Berserker, which was created with an intent to exercise real world BPF applications.

 "Mobilizon: Decentralizing Event Management for a Privacy-Respecting Social Web" ( 2025 )

Saturday at 18:00, 30 minutes, UD2.208 (Decroly), UD2.208 (Decroly), Social Web Stéphane Alexandra , slides , video

Mobilizon is a decentralized, privacy-focused platform for event management and group organization. In this talk, we will explore how Mobilizon empowers users to create and manage events without sacrificing their privacy or control over their data. We will discuss the importance of decentralization, provide a technical overview of the platform, and share insights into its growing community and future roadmap.

 "The Big FOSDEM Quiz of the Year" ( 2025 )

Saturday at 18:00, 50 minutes, Janson, Janson, Keynotes Steven Goodwin , video

How much do you know about Free Software, Open Source, Developers, and European meetings?

We interrupt your regularly scheduled programming to bring you a lively TV-style quiz show featuring several rounds of questions deemed too geeky for TV - about kernels, software projects, and digital culture. (Some will offer mass audience participation!)

As a fun game it will separate the Red Hat's from the Red Star's, the Linus Torvalds from "some random person in Nebraska", and is a fantastic way to enjoy our community even more.

 "The USB-MIDI 2.0 device class in Zephyr" ( 2025 )

Saturday at 18:00, 25 minutes, H.1302 (Depage), H.1302 (Depage), Embedded, Mobile and Automotive iTitou , slides , video

A few years ago, a musician friend of mine reached out, hoping to build a custom controller for a live act performance. Together, we decided on a USB-MIDI device, which soon became a hands-on learning journey into Zephyr, USB development, and the MIDI protocol.

MIDI (Musical Instrument Digital Interface) has been the leading standard for connecting digital instruments and controllers since the 1980s. Although USB includes MIDIStreaming (a subclass of the Audio device class), Zephyr had no support for it. So, I decided to build one.

In this talk, I’ll walk you through my adventures implementing (and eventually upstreaming) this new device class. We’ll start by revisiting the original MIDI 1 protocol from the eighties, the original USB-MIDI1.0 from the 2000s and the updated USB-MIDI2.0 specification from 2020. After a brief refresher on USB devices, I’ll introduce the USB MIDIStreaming interface and the various supported topologies. Finally, we’ll see how to bring it all together using Zephyr USB device_next, and how it is used from your application's code. In the end, we should be able to make any kind of MIDI speaking device using our favorite kite-stamped RTOS.

Alongside this technical content, I may relate my experience as an occasional hobbyist contributor since Zephyr 1.14, and how I navigated spec updates (Device tree changes, USB-MIDI 1.0 to 2.0, Zephyr USB device next).

 "Go Lightning Talks" ( 2025 )

Saturday at 18:00, 60 minutes, UD2.120 (Chavanne), UD2.120 (Chavanne), Go Maartje Eyskens , video

Come speak! As every edition the last hour of the Go Devroom will be open for 5 minute lightning talks. The CfP for this will open shortly before the event and close 90 minutes before the session starts.

 "Databases in the AI Trenches" ( 2025 )

Saturday at 18:00, 50 minutes, K.1.105 (La Fontaine), K.1.105 (La Fontaine), Main Track - K Building Bruce Momjian , video

Artificial intelligence use has exploded, with much anticipation about its future. This talk explores many of the advances that has fueled this explosion, including multi-dimensional vectors, text embeddings, semantic/vector search, transformers, generative AI, and Retrieval-Augmented Generation (RAG). The talk includes semantic/vector search and rag examples. It finally covers how the valuable data stored in databases can be used to enhance AI usage.

 "„Which is which, and who is who?” - Building a new Swift unqualified name lookup library during GSoC 2024" ( 2025 )

Saturday at 18:00, 10 minutes, K.4.401, K.4.401, Swift Jakub Florek , slides , video

This talk gives an overview of the new Swift unqualified name lookup swift-syntax library: SwiftLexicalLookup and the process required to integrate it within the compiler.

It dives into the intricacies of Swift’s name handling, highlights the complex lexical scope hierarchy with many, sometimes unexpected, interesting cases, and provides an overview of the challenging process of testing the new implementation and integrating it within the compiler.

Lastly, the talk provides some practical insights on how to start contributing to Swift from the perspective of a new contributor.

 "CRC detection and optimization" ( 2025 )

Saturday at 18:00, 20 minutes, K.3.201, K.3.201, GCC (GNU Toolchain) Mariam Arutunian Hayk Aslanyan , slides , video

Cyclic redundancy check (CRC) is a widely used error-detection mechanism that helps in the validation of data communication and storage in the digital world. While traditional bitwise implementations are slow and less efficient, alternative methods such as lookup tables, carry-less multiplication, and hardware CRC instructions offer significant performance improvements. In this talk, I will present a novel method for automatically identifying and replacing inefficient bitwise CRC implementations with optimized alternatives. The approach uses fast detection of candidate code fragments, symbolic execution for validation, and automatic replacement with more efficient implementations. The method is implemented in the GCC compiler as a separate pass and is open-source available. Experimental evaluation was performed for i386, AArch64, and RISC-V architectures, and the results demonstrated up to 91%, 98%, and 93% performance improvements respectively, highlighting the effectiveness of the proposed optimization.

 "Unpick performance mysteries benchmarking GraalVM native executables" ( 2025 )

Saturday at 18:00, 25 minutes, UA2.118 (Henriot), UA2.118 (Henriot), Free Java Galder Zamarreño , slides , video

Java code that is ahead-of-time (AOT) compiled using GraalVM Community Edition native-image may run more slowly than code that is just-in-time (JIT) compiled with the HotSpot compiler. This is something I quickly discovered when I joined the GraalVM team at Red Hat.

Diagnosing performance issues in Java code can be done using Java Microbenchmark Harness (JMH), which helps developers build, run and analyse microbenchmarks written in Java. However, it only works with Java virtual machines using JIT compilation. For the past four years I’ve been wondering how to make JMH achieve the same objectives when that Java code runs as GraalVM native executables.

Eventually I solved this problem creating an extension to JMH that allows Java developers to seamlessly run their existing JMH benchmarks as GraalVM native executables. In this talk I will demonstrate how to obtain benchmark results, gather performance statistics and inspect annotated assembly code. Finally I will compare how the GraalVM native-image AOT code differs from the JIT code of HotSpot.

 "Version control is changing! BOF" ( 2025 )

Saturday at 18:00, 60 minutes, AW1.121, AW1.121, BOF - Track A Raphaël Gomès

Let's chat about Git, Mercurial, Pijul, Jujistu... what makes them great or not so great and what they're currently doing to improve. Present in the room will be two Mercurial developers, the creator of Pijul and other people invested in this space, feel free to come, ask questions and bounce ideas!

 "Refining the Release Strategy of a Custom Linux Distro" ( 2025 )

Saturday at 18:00, 25 minutes, UD6.215, UD6.215, Testing and Continuous Delivery Andreea Daniela Andrisan , slides , video

As with many stages of the software development lifecycle, the release process needs to be constantly improved, iteration by iteration. This way, the software product gets delivered faster and more reliably to customers. This paper focuses on different techniques that have shortened the release cycle of the Kuiper Linux distribution. The new release process involves creating a stabilization branch from main which is dedicated to the new release. Previously, the software components were built and installed during the image creation. Now they are released independently as Debian packages which are uploaded on Analog Devices' Linux Package Repository. This is an easy, user-friendly method that facilitates the distribution and installation of ADI software packages. Each software component has its own release cycle so that one component's bugs won't affect the other components' release. The software components are tested both separately and integrated into the Kuiper image. The latter required creating a Kuiper Docker image. This ensures that each software component is compatible with the target system as early as possible in the development process.

 "Delta Chat, from e-mail messaging to Peer-to-Peer realtime networking" ( 2025 )

Saturday at 18:00, 30 minutes, K.4.601, K.4.601, Modern Email Xenia , video

Over the years, Delta Chat has matured to be an easy-to-use, secure, and even fast messenger for all platforms, based on the massive e-mail server network. We'll give an overview of the ways Delta Chat is used today and how it is developed by a dozen active contributors. This talk will highlight our recent introduction of realtime chat-shared apps that use e-mail OpenPGP-encrypted messaging to establish a private Peer-to-Peer network among chat group members. In this talk we will demonstrate how these apps work in real-time. We'll also report on several interesting situations where Delta Chat is used today in context of partial shutdowns or strict internet censorship.

Description:

In the beginning, Delta Chat was a fun little experiment, an experimental solution to the network effects problem: “nobody uses secure messengers! But everyone has E-Mail… 🤔" Since then it has come a long way. From a cross-platform set of messenger apps with freely chosen e-mail servers to using audited and well analyzed end-to-end encryption, our project is based on IETF and W3C approved protocols and specifications. We interoperate with the massively distributed SMTP e-mail routing network as well as other e-mail based apps or webmailers and socially are in collaborative relations with numerous other projects, including XMPP-based messengers and standardization specialists.

Delta Chat was among the first messengers to adopt Rust (2019) as its core implementation language and provide all-platform apps. Together with XMPP-projects like Cheogram and Monocles we are evolving a new paradigm and quasi-standard called "webxdc" that enables integration of web apps into chat groups, giving users full control over app distribution. Webxdcs provide a unique Peer-to-Peer model for deploying collaborative standards based software.

 "Upstream Embedded Linux on RISC-V: The Good, the Bad and the Ugly" ( 2025 )

Saturday at 18:00, 35 minutes, H.1309 (Van Rijn), H.1309 (Van Rijn), RISC-V Marcel Ziswiler , slides , video

This talk looks at the state of upstream U-Boot, Linux kernel, FreedesktopSDK, and Yocto Project for the powerful SpacemiT K1-based Banana Pi BPI-F3. Nothing has been merged yet, but I took the various pieces posted on mailing lists or available as merge requests and gave them a spin. As a reference for comparison, I also looked at the vendor downstream stuff available from Banana Pi Team/SpacemiT.

 "Hunting for GitHub Actions bugs with zizmor" ( 2025 )

Saturday at 18:00, 30 minutes, UB4.132, UB4.132, Security William Woodruff , slides , video

Much of the world's open source lives on GitHub, and uses GitHub Actions to provide tasks ranging from routine testing to critical build and release processes. As such, the security of GitHub Actions (and the workflows and actions that users develop and consume) is paramount to the security of the world's software.

But how secure is GitHub Actions, really? This talk will introduce GitHub Actions' internal building blocks and (mostly implicit) security model, and provide real world examples of security failures and surprising avenues of exploitation that recur in widely used actions and workflows. These examples will be motivated via zizmor, a Rust-based static analysis tool for GitHub Actions that can catch many of the most common (and severe) footguns that occur when writing workflows.

Attendees will leave knowing more about GitHub Actions security and best practices for writing secure workflows, as well as how to use zizmor both locally and in CI to detect potential security issues. No prior familiarity with GitHub Actions is necessary.

 "Organizer's Panel" ( 2025 )

Saturday at 18:00, 60 minutes, H.1301 (Cornil), H.1301 (Cornil), Legal and Policy Karen Sandler Tom Marble Alexander Sander Bradley M. Kuhn Matthias Kirschner Richard Fontana , slides , video

Legal and Policy Issues Devroom Organizers discuss topics in the DevRoom.

 "AI for Meetings" ( 2025 )

Saturday at 18:05, 15 minutes, K.3.601, K.3.601, Real Time Communications (RTC) Tudor Avram Răzvan Purdel , video

This is the story of how Jitsi's AI evolved and expanded its features while keeping it all open source: from half-botched PoCs in a weekend to features our customers use in production on a daily basis. Razvan will walk you through some of the implementation details and gotchas of the near-real-time transcription system, while Tudor will guide you through all the other goodies which rely and expand on it.

 "Writing about FreeBSD" ( 2025 )

Saturday at 18:05, 25 minutes, AW1.120, AW1.120, BSD Tom Jones , video

As a project we have notoriously great documentation. The handbook and man pages make it easy to find out how to do anything you might want to on a FreeBSD system, whether it is setting up a network or debugging kernel locking.

Explaining the changes we make to improve FreeBSD? We are less good at communicating what we are up to.

For the last 6 months I have been writing regular status reports about changes in the FreeBSD network stack using a tool guided approach to automate finding and managing what to write about.

In this talk I’ll explain how I am trying to improve communication around FreeBSD development and how you can get involved in writing about FreeBSD.

 "Become a Hiro" ( 2025 )

Saturday at 18:05, 25 minutes, UB5.230, UB5.230, Community Addie Girouard , video

Over 30 years ago, Neal Stephenson wrote about a pizza-delivering hacker who saved the digital world. Today, we're all facing our own L. Bob Rife – not through ancient Sumerian viruses, but through corporate consolidation and regulatory pressure threatening to end open source as we know it.

Our digital commons began as a frontier of freedom and innovation. Today giants are consolidating control over the infrastructure that shapes our digital world. The dark future seen in the franchise-owned streets of Snow Crash's America is coming. But Hiro showed us how to fight back: with skill, with allies, and with unwavering dedication to freedom.

We're facing our own daemon – not ancient Sumerian, but modern corporate and regulatory control. The question is: Will you remain a pizza delivery driver, or will you become a Hiro?

The future of open source depends on your answer.

 "Yet another new SDR runtime?" ( 2025 )

Saturday at 18:05, 55 minutes, UB2.147, UB2.147, Radio Daniel Estévez , slides , video

I will present some work-in-progress/experiments on a high-performance graph-based SDR runtime that differs from popular runtimes such as GNU Radio and FutureSDR in that instead of using circular buffers to connect adjacent blocks, the data travels in packets through closed circuits encompassing multiple blocks of the flowgraph. I show benchmarks comparing GNU Radio 3.10, GNU Radio 4.0, FutureSDR, this new runtime, and a hand-written ad-hoc implementation, for a class of certain simple flowgraphs. These show that popular runtimes often have a high overhead and that there is much room for improvements in performance. This project focuses on ARM Cortex-A53 CPUs, found in AMD RFSoC/MPSoC and other embedded platforms, but most ideas are applicable to other systems, including fast x86_64 machines.

 "Developing Custom UIs to Explore Graph Databases Using Sigma.js" ( 2025 )

Saturday at 18:05, 30 minutes, UB5.132, UB5.132, Data Analytics Alexis Jacomy , slides , video

Visual exploration of graph databases is a powerful method for spotting signals and patterns not immediately visible in raw data. However, most existing tools are either too complex or heavy for business users or locked behind proprietary platforms. In visual network analysis, this complexity overload is a significant issue; while graph abstraction is powerful, it can also harm user experience if not properly managed. In this context, developing custom visual graph exploration user interfaces can be key to providing business users with workable tools.

I will present how to use sigma.js, an open-source JavaScript library for web-based network visualization, to write a dedicated web interface to explore data from RICardo, an open-data research project mapping world trade in the 19th century.

 "Distributed Databases: Essential or Optional?" ( 2025 )

Saturday at 18:05, 15 minutes, UA2.114 (Baudoux), UA2.114 (Baudoux), Cloud Native Databases Peter Zaitsev , slides , video

In the era of distributed systems, many modern databases are designed to scale horizontally from the ground up. Yet, some of the most widely used databases, like MySQL and PostgreSQL, remain single-node by design, relying on third-party sharding solutions like Citus or Vitess for distribution. This raises a critical question: do we always need to go distributed, or can replicated single-node databases meet most use cases? In this talk, we’ll explore the trade-offs between distributed and non-distributed architectures, evaluate the limits of single-node databases, and discuss when it truly makes sense to embrace distribution. Join us as we navigate the complexities of modern database design and uncover what’s best for your applications.