📺️

Asahi LinuxでUSB Type-Cから外部ディスプレイに画面出力を行う

Published: 2026-02-20

目次

  1. はじめに
  2. 背景
  3. ハック済みLinuxカーネルをインストールする
  4. 1. カスタムxbpsリポジトリを導入する
  5. 2. 自分でビルドする
  6. インストール後
  7. おわりに
  8. 脚注

はじめに

この当たり前の作業風景を、Asahi Linuxユーザは何年も追い求めてきた
この当たり前の作業風景を、Asahi Linuxユーザは何年も追い求めてきた

ARM64版のVoid Linuxを搭載したMacBook Air M2で、USB Type-Cから外部ディスプレイへの接続に成功した。 本記事では、それを可能にするハックが施されたAsahi LinuxカーネルをVoid Linuxでビルド、およびインストールする方法を記す。

背景

普段使い用のMacBook AirにAsahi Linux(ディストロはVoid Linux)を入れてから約半年が経過した。 軽くて(Linuxラップトップにしては)バッテリーが持ち、しかもMinecraftを快適にプレイ出来るこの素晴らしい道具は、しかし「ディスプレイをつなぐことが出来ない」という重大な欠点を抱えていた。故に、Asahi Linuxを使う者はコードを書きながらブラウザで動作確認することも、ゲームをやりながらゲーム実況を見ることも出来ない生活を受け入れる必要があった。

Progress Report: Linux 6.19 - Asahi Linuxasahilinux.org

この「DP Alt Mode1」問題はAsahi Linuxコミュニティでも特に注目されており、Asahi Linuxの開発チームには

“When will display out via USB-C be supported?”
“Is there an ETA for DisplayPort Alt Mode?”
“Can I use an HDMI adapter on my MacBook Air yet?”

という旨の質問がIRCやMatrixで週に一度は飛んできたという。 そうした質問攻めはいくら丁寧にお願いしてもやむ気配がなく、結局

DP Alt Mode will be done when it’s done.

と答えるしかなかったようだ。

GitHub - AsahiLinux/linux at fairydustLinux kernel source tree. Contribute to AsahiLinux/linux development by creating an account on GitHub.github.com

しかし、彼らは成し遂げた。なんと現在、Asahi LinuxカーネルのfairydustブランチにてDP Altモードでの映像出力を可能にするハックが実装されている。 (いくつかのバグはまだ残っているが)この偉大な達成を目にした筆者は、マイクラ実況を見ながらマイクラをする生活を求めてLinuxカーネルのインストールに臨むのだった。

ハック済みLinuxカーネルをインストールする

2026-07-09追記: カスタムパッケージを配布するxbpsリポジトリを作成したので、全面的に修正した。

Asahi Linux, DP Alt Mode를 지원하는 Kernel branch "Fairydust" 공개, kernel 빌드 방법 및 적용 결과본 포스트는 Fedora Asahi Remix를 기반으로 작성되었습니다. 2025년 12월 30일, 39C3에서 Asahi Team의 개발 멤버인 svan이 Asahi Linux - Porting Linux to Apple Silicon이라는 주제로 발표가 있었습니다. (이전 포스트 참고)그리고, DP alt-mode(DisplayPort alternative mode)가 적용된 kernel source 코드가 공개되었습니다. 아직은 개발자 버전 소스코드라고 할 수 있겠죠.. 코드명은 Fairydust 입니다. 작명 센스가 돋보입니다. Update : 2026.04.06- fairydust 가 6.19.11+ 로 업데이트 되었습니다. 아래 글 내용에서 버전이 불일치 하는 부분들은 참고 하시기 바랍니..elsainmac.tistory.com

実は、Fedora Asahi Remixでは既に成功例が存在している(詳細は上記を参照)。 これを参考に、Void LinuxでfairydustブランチのLinuxカーネルをインストールする方法を2つ紹介する。なお、Fedora Asahi Remixを使っている人は上記記事を直接見ることをおすすめする。

1. カスタムxbpsリポジトリを導入する

GitHub - omemoji/void-asahi-fairydustContribute to omemoji/void-asahi-fairydust development by creating an account on GitHub.github.com

linux-asahi-fairydustパッケージをインストール出来るカスタムxbpsリポジトリを作成したので、それを導入するのが最も早いだろう(公式リポジトリではないため、使用は自己責任)。

手順

  1. リポジトリを追加する。/etc/xbps.d/10-void-asahi-fairydust.confを追加し、以下のように書く。

    /etc/xbps.d/10-void-asahi-fairydust.conf
    repository=https://raw.githubusercontent.com/omemoji/void-asahi-fairydust/repository-aarch64
  2. リポジトリを更新し、以下のコマンドでインストールする。

    Terminal window
    sudo xbps-install -S
    sudo xbps-install linux-asahi-fairydust

    インストールが完了したら再起動する。

2. 自分でビルドする

自分でパッケージをビルドする場合、上記カスタムリポジトリに加えvoid-packagesリポジトリもクローンする必要がある。

クローン後、以下の手順でlinux-asahi-fairydustパッケージを自作する。

Terminal window
cp -r srcpkg/linux-asahi-fairydust <void-packages>/srcpkgs/
cd <void-packages>
ln -sfn linux-asahi-fairydust srcpkgs/linux-asahi-fairydust-headers
ln -sfn linux-asahi-fairydust srcpkgs/linux-asahi-fairydust-dbg
./xbps-src pkg linux-asahi-fairydust

インストール後

再起動してfairydustと記されたカーネルを選択すれば、(うまくいけば)外部モニターに画面が映るはずである。 ただし、USB Type-C ポートは本体左側にある2つのうち前方のものを使う必要がある。

カスタムされたLinuxカーネルを導入するのは一見ハードルが高く見えるが、void-packagesのおかげで意外と簡単に出来る。(世界に何人いるのか知らないが)Void LinuxをMacBookに入れている人、また本記事を読んで入れたくなった人は是非参考にしてほしい。

おわりに

プロプライエタリなAppleのハードウェアに正面から立ち向かい、リバースエンジニアリングを続けてきた世界中のOSS開発者の皆へ

ありがとう。

脚注

  1. USB Type-CからDisplayPort/HDMIで直接映像を出力する機能のこと

Back