<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/building-an-arch-linux-aarch64-port-for-holo-core-l2en8uoxa" -->

---
title: Building an Arch Linux aarch64 port for Holo Core
description: Collabora and Valve are building Holo Core, a pure aarch64 port of Arch Linux intended as the OS foundation for the Steam Frame device. The post announces a...
canonical: https://daily.dev/posts/building-an-arch-linux-aarch64-port-for-holo-core-l2en8uoxa
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Building an Arch Linux aarch64 port for Holo Core | daily.dev
og:description: Collabora and Valve are building Holo Core, a pure aarch64 port of Arch Linux intended as the OS foundation for the Steam Frame device. The post announces a...
og:url: https://daily.dev/posts/building-an-arch-linux-aarch64-port-for-holo-core-l2en8uoxa
og:image: https://api.daily.dev/og/posts/L2en8uOXA.png
og:image:alt: Building an Arch Linux aarch64 port for Holo Core
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Building an Arch Linux aarch64 port for Holo Core

**[Collabora Blog](https://daily.dev/sources/collabora)** · 10 min read · 0 upvotes · 0 comments

## Summary

Collabora and Valve are building Holo Core, a pure aarch64 port of Arch Linux intended as the OS foundation for the Steam Frame device. The post announces a preview release of binaries, sources, and development containers, and details the significant engineering challenges involved: reproducible CI builds, correct dependency ordering, tracking Arch Linux's rolling-release model across historical snapshots, SONAME transitions, upstream source availability issues, and architecture-specific patches. A step-by-step guide shows how to run the aarch64 container on an x86_64 host using QEMU user-space emulation, binfmt configuration, and distrobox. The tooling is not yet public but is being prepared for release, with plans to collaborate with upstream Arch Linux on an official aarch64 port.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://www.collabora.com/news-and-blog/news-and-events/building-an-arch-linux-aarch64-port-for-holo-core.html>

## Questions this post answers

### How do I run an aarch64 container on an x86_64 Linux host using QEMU and distrobox?

Install qemu-user-static and qemu-user-static-binfmt, then configure binfmt by copying the default config to /etc/binfmt.d/ and adding the C (credentials) flag so SUID binaries like sudo work inside the container. Restart systemd-binfmt.service, then use distrobox create with --platform linux/arm64 to pull and enter the aarch64 image. Every aarch64 binary runs through QEMU emulation on the x86_64 host.

_Engineers experimenting with cross-architecture containers find the latest tooling updates on daily.dev._

### Why is rebuilding packages for a historical Arch Linux snapshot so difficult in CI?

Arch Linux's rolling-release model means upstream sources move, project hosting changes, and Git short commit hashes expand to longer forms, breaking checksums. Dependency ordering in the state repository is not always valid for rebuilding, so the build order must be recalculated. SONAME transitions require both old and new library versions simultaneously, and bootstrapping languages like Rust requires every intermediate version back to the bootstrap point.

_Developers maintaining Linux distribution ports track challenges like these on daily.dev._

## Similar posts on daily.dev

- [Canonical Promotes Steam Snap to Stable on ARM64, With Plans to Rebuild It from Scratch Later](https://daily.dev/posts/canonical-promotes-steam-snap-to-stable-on-arm64-with-plans-to-rebuild-it-from-scratch-later-h4rqoflv8) · It's Foss · 0 upvotes · 0 comments
- [Igalia's Work Improving The Linux Kernel For Helping Steam Play Gaming On ARM64](https://daily.dev/posts/igalia-s-work-improving-the-linux-kernel-for-helping-steam-play-gaming-on-arm64-kuu897m66) · Phoronix · 0 upvotes · 0 comments
- [Valve isn't ditching Windows or x86, but it's quietly making both optional](https://daily.dev/posts/valve-isn-t-ditching-windows-or-x86-but-it-s-quietly-making-both-optional-5vqnsqz8i) · XDA Developers · 1 upvotes · 0 comments

---

Tags: [#linux](https://daily.dev/tags/linux), [#cicd](https://daily.dev/tags/cicd)

[View this post on daily.dev](https://daily.dev/posts/building-an-arch-linux-aarch64-port-for-holo-core-l2en8uoxa)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Building an Arch Linux aarch64 port for Holo Core","url":"https://daily.dev/posts/building-an-arch-linux-aarch64-port-for-holo-core-l2en8uoxa","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/building-an-arch-linux-aarch64-port-for-holo-core-l2en8uoxa"},"datePublished":"2026-08-11T08:57:21.492Z","dateModified":"2026-08-11T09:42:34.549Z","description":"Collabora and Valve are building Holo Core, a pure aarch64 port of Arch Linux intended as the OS foundation for the Steam Frame device. The post announces a...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/5011844cbc08c7346e840b95350341d6?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/5011844cbc08c7346e840b95350341d6?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Collabora Blog","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Collabora Blog","logo":"https://media.daily.dev/image/upload/s--ZGZ0FjqS--/f_auto,q_auto/v1786438306/logos/collabora?_a=BAMAMicg0","url":"https://daily.dev/sources/collabora"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/building-an-arch-linux-aarch64-port-for-holo-core-l2en8uoxa","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"linux,cicd","timeRequired":"PT10M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Collabora Blog","item":"https://daily.dev/sources/collabora"},{"@type":"ListItem","position":3,"name":"Building an Arch Linux aarch64 port for Holo Core"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/building-an-arch-linux-aarch64-port-for-holo-core-l2en8uoxa#faq","mainEntity":[{"@type":"Question","name":"How do I run an aarch64 container on an x86_64 Linux host using QEMU and distrobox?","acceptedAnswer":{"@type":"Answer","text":"Install qemu-user-static and qemu-user-static-binfmt, then configure binfmt by copying the default config to /etc/binfmt.d/ and adding the C (credentials) flag so SUID binaries like sudo work inside the container. Restart systemd-binfmt.service, then use distrobox create with --platform linux/arm64 to pull and enter the aarch64 image. Every aarch64 binary runs through QEMU emulation on the x86_64 host. Engineers experimenting with cross-architecture containers find the latest tooling updates on daily.dev."}},{"@type":"Question","name":"Why is rebuilding packages for a historical Arch Linux snapshot so difficult in CI?","acceptedAnswer":{"@type":"Answer","text":"Arch Linux's rolling-release model means upstream sources move, project hosting changes, and Git short commit hashes expand to longer forms, breaking checksums. Dependency ordering in the state repository is not always valid for rebuilding, so the build order must be recalculated. SONAME transitions require both old and new library versions simultaneously, and bootstrapping languages like Rust requires every intermediate version back to the bootstrap point. Developers maintaining Linux distribution ports track challenges like these on daily.dev."}}]}
```

