{"guid":"74362ca8-ad35-5eb5-a96e-8d3720a47c22","title":"Building image-based operating system images with BuildStream and mkosi","subtitle":null,"slug":"all-systems-go-2026-423-building-image-based-operating-system-images-with-buildstream-and-mkosi","link":"https://cfp.all-systems-go.io/all-systems-go-2026/talk/DUNFF9/","description":"BuildStream is a tool for building / integrating software stacks. In a way, it has a similar goal to bitbake / yocto and Android's repo, but takes a completely different approach. It can be used to take software from various sources, build it with various buildsystems in a reproducible sandbox, and cache results for speedy rebuilds.\n\nmkosi is a tool for easily building customized OS images. It is generally used with distros that have a package manager such as dnf or apt. There is however recent development to add support for using it with BuildStream.\n\nIn this talk I give a brief overview of Buildstream, and freedesktop-sdk which is a BuildStream project that can be used as a base to build your own operating system. While BuildStream on its own can build the whole thing, there are some advantages to using mkosi which I'll go over in this talk.\n\nI'll also go over the challenges faced moving GNOME OS to use mkosi for generating the image.\n\nLicensed to the public under https://creativecommons.org/licenses/by/4.0/de/","original_language":"eng","persons":["Abderrahim Kitouni"],"view_count":22,"promoted":false,"date":"2026-10-01T14:05:00.000+02:00","release_date":"2026-10-01T00:00:00.000+02:00","updated_at":"2026-10-02T09:30:04.021+02:00","tags":["423","2026","asg2026","Galerie","asg2026-eng","asg2026","Day 2"],"length":2170,"duration":2170,"thumb_url":"https://static.media.ccc.de/media/events/all_systems_go/2026/423-74362ca8-ad35-5eb5-a96e-8d3720a47c22.jpg","poster_url":"https://static.media.ccc.de/media/events/all_systems_go/2026/423-74362ca8-ad35-5eb5-a96e-8d3720a47c22_preview.jpg","timeline_url":"https://static.media.ccc.de/media/events/all_systems_go/2026/423-74362ca8-ad35-5eb5-a96e-8d3720a47c22.timeline.jpg","thumbnails_url":"https://static.media.ccc.de/media/events/all_systems_go/2026/423-74362ca8-ad35-5eb5-a96e-8d3720a47c22.thumbnails.vtt","frontend_link":"https://media.ccc.de/v/all-systems-go-2026-423-building-image-based-operating-system-images-with-buildstream-and-mkosi","url":"https://api.media.ccc.de/public/events/74362ca8-ad35-5eb5-a96e-8d3720a47c22","conference_title":"All Systems Go! 2026","conference_url":"https://api.media.ccc.de/public/conferences/asg2026","related":[],"recordings":[{"length":2170,"mime_type":"video/mp4","language":"eng","filename":"asg2026-423-eng-Building_image-based_operating_system_images_with_BuildStream_and_mkosi_hd.mp4","state":"new","folder":"h264-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2026-10-01T15:13:26.676+02:00","label":"eng 1080p","size":144,"recording_url":"https://cdn.media.ccc.de/events/all_systems_go/2026/h264-hd/asg2026-423-eng-Building_image-based_operating_system_images_with_BuildStream_and_mkosi_hd.mp4","url":"https://api.media.ccc.de/public/recordings/105798","event_url":"https://api.media.ccc.de/public/events/74362ca8-ad35-5eb5-a96e-8d3720a47c22","conference_url":"https://api.media.ccc.de/public/conferences/asg2026"},{"length":2170,"mime_type":"video/mp4","language":"eng","filename":"asg2026-423-eng-Building_image-based_operating_system_images_with_BuildStream_and_mkosi_sd.mp4","state":"new","folder":"h264-sd","high_quality":false,"width":720,"height":576,"updated_at":"2026-10-01T15:13:52.015+02:00","label":"eng 576p","size":64,"recording_url":"https://cdn.media.ccc.de/events/all_systems_go/2026/h264-sd/asg2026-423-eng-Building_image-based_operating_system_images_with_BuildStream_and_mkosi_sd.mp4","url":"https://api.media.ccc.de/public/recordings/105799","event_url":"https://api.media.ccc.de/public/events/74362ca8-ad35-5eb5-a96e-8d3720a47c22","conference_url":"https://api.media.ccc.de/public/conferences/asg2026"},{"length":2170,"mime_type":"audio/mpeg","language":"eng","filename":"asg2026-423-eng-Building_image-based_operating_system_images_with_BuildStream_and_mkosi_mp3.mp3","state":"new","folder":"mp3","high_quality":false,"width":0,"height":0,"updated_at":"2026-10-01T15:14:21.873+02:00","label":"eng","size":33,"recording_url":"https://cdn.media.ccc.de/events/all_systems_go/2026/mp3/asg2026-423-eng-Building_image-based_operating_system_images_with_BuildStream_and_mkosi_mp3.mp3","url":"https://api.media.ccc.de/public/recordings/105800","event_url":"https://api.media.ccc.de/public/events/74362ca8-ad35-5eb5-a96e-8d3720a47c22","conference_url":"https://api.media.ccc.de/public/conferences/asg2026"},{"length":2170,"mime_type":"audio/opus","language":"eng","filename":"asg2026-423-eng-Building_image-based_operating_system_images_with_BuildStream_and_mkosi_opus.opus","state":"new","folder":"opus","high_quality":false,"width":0,"height":0,"updated_at":"2026-10-01T15:14:37.519+02:00","label":"eng","size":20,"recording_url":"https://cdn.media.ccc.de/events/all_systems_go/2026/opus/asg2026-423-eng-Building_image-based_operating_system_images_with_BuildStream_and_mkosi_opus.opus","url":"https://api.media.ccc.de/public/recordings/105801","event_url":"https://api.media.ccc.de/public/events/74362ca8-ad35-5eb5-a96e-8d3720a47c22","conference_url":"https://api.media.ccc.de/public/conferences/asg2026"},{"length":2170,"mime_type":"video/webm;codecs=av01","language":"eng","filename":"asg2026-423-eng-Building_image-based_operating_system_images_with_BuildStream_and_mkosi_av1-sd.webm","state":"new","folder":"av1-sd","high_quality":false,"width":720,"height":576,"updated_at":"2026-10-01T15:19:03.714+02:00","label":"eng 576p","size":64,"recording_url":"https://cdn.media.ccc.de/events/all_systems_go/2026/av1-sd/asg2026-423-eng-Building_image-based_operating_system_images_with_BuildStream_and_mkosi_av1-sd.webm","url":"https://api.media.ccc.de/public/recordings/105802","event_url":"https://api.media.ccc.de/public/events/74362ca8-ad35-5eb5-a96e-8d3720a47c22","conference_url":"https://api.media.ccc.de/public/conferences/asg2026"},{"length":2170,"mime_type":"video/webm;codecs=av01","language":"eng","filename":"asg2026-423-eng-Building_image-based_operating_system_images_with_BuildStream_and_mkosi_av1-hd.webm","state":"new","folder":"av1-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2026-10-01T15:24:31.568+02:00","label":"eng 1080p","size":133,"recording_url":"https://cdn.media.ccc.de/events/all_systems_go/2026/av1-hd/asg2026-423-eng-Building_image-based_operating_system_images_with_BuildStream_and_mkosi_av1-hd.webm","url":"https://api.media.ccc.de/public/recordings/105803","event_url":"https://api.media.ccc.de/public/events/74362ca8-ad35-5eb5-a96e-8d3720a47c22","conference_url":"https://api.media.ccc.de/public/conferences/asg2026"},{"length":2170,"mime_type":"video/webm","language":"eng","filename":"asg2026-423-eng-Building_image-based_operating_system_images_with_BuildStream_and_mkosi_webm-sd.webm","state":"new","folder":"webm-sd","high_quality":false,"width":720,"height":576,"updated_at":"2026-10-01T15:32:24.761+02:00","label":"eng 576p","size":79,"recording_url":"https://cdn.media.ccc.de/events/all_systems_go/2026/webm-sd/asg2026-423-eng-Building_image-based_operating_system_images_with_BuildStream_and_mkosi_webm-sd.webm","url":"https://api.media.ccc.de/public/recordings/105804","event_url":"https://api.media.ccc.de/public/events/74362ca8-ad35-5eb5-a96e-8d3720a47c22","conference_url":"https://api.media.ccc.de/public/conferences/asg2026"},{"length":2170,"mime_type":"video/webm","language":"eng","filename":"asg2026-423-eng-Building_image-based_operating_system_images_with_BuildStream_and_mkosi_webm-hd.webm","state":"new","folder":"webm-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2026-10-01T15:34:34.556+02:00","label":"eng 1080p","size":182,"recording_url":"https://cdn.media.ccc.de/events/all_systems_go/2026/webm-hd/asg2026-423-eng-Building_image-based_operating_system_images_with_BuildStream_and_mkosi_webm-hd.webm","url":"https://api.media.ccc.de/public/recordings/105805","event_url":"https://api.media.ccc.de/public/events/74362ca8-ad35-5eb5-a96e-8d3720a47c22","conference_url":"https://api.media.ccc.de/public/conferences/asg2026"}]}