**Cocoa‑Way – ネイティブ macOS 用 Wayland コンポーザーで Linux アプリをシームレスに動作させる**

2026/03/28 19:06

**Cocoa‑Way – ネイティブ macOS 用 Wayland コンポーザーで Linux アプリをシームレスに動作させる**

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

Cocoa‑Way は、MetalまたはOpenGLを通じてグラフィックスをレンダリングし、waypipe‑darwin を介してSSH/Unixソケット上で Wayland プロトコルを転送することで、Linux Wayland アプリケーションをネイティブに macOS 上で実行できる軽量コンポジターです。仮想マシンのオーバーヘッドがなく、HiDPI をサポートし、サーバー側装飾付きの洗練された UI とハードウェアアクセラレーションレンダリングを提供します。

ユーザーは Homebrew(

brew tap J-x-Z/tap; brew install cocoa-way waypipe-darwin
)で簡単にインストールするか、DMG/ZIP リリースをダウンロードして使用できます。クイックスタートでは waypipe‑darwin をインストールし、コンポジターを起動して Linux ホストに接続します(例:
./run_waypipe.sh ssh user@linux-host firefox
)。

アーキテクチャは4層で構成されます:Cocoa‑Way コンポジター ↔ waypipe クライアント ↔ waypipe サーバー ↔ Linux アプリ。データは SSH または Unix ソケット上の Wayland プロトコルを介して流れます。比較表では、Cocoa‑Way が低レイテンシ、フル HiDPI 対応、ネイティブウィンドウ統合、および XQuartz、VNC、VM GUI などより簡易なセットアップを提供することが示されています。

ロードマップ:macOS バックエンド(Metal/OpenGL)、Waypipe 統合、更なる HiDPI スケーリング、Windows バックエンド(

win-way
)、Android NDK バックエンド、多画面サポート、クリップボード同期。プロジェクトは「Turbo‑Charged Protocol Virtualization」イニシアチブの一部であり、Rust のトレイトモノモルフィゼーションと SIMD ピクセル変換を使用して効率的なレンダリングを実現しています。

トラブルシューティング:SSH リモートポート転送が失敗した場合は、

waypipe ssh -o StreamLocalBindUnlink=yes user@host
を使用してください。

貢献:貢献は歓迎されます。主要な変更はプルリクエストを提出する前に issue で議論すべきです。プロジェクトは GPL‑3.0 の下で公開され、© 2024‑2025 J‑x‑Z によって管理されています。

本文

デモビデオ

真のプロトコル互換性

Cocoa‑Way は Unix ソケットを介して OrbStack から Linux アプリをレンダリングします。


✨ 主な特徴

特徴説明
🍎 ネイティブ macOSMetal/OpenGL による描画、デスクトップとのシームレス統合
🚀 ゼロ VM オーバーヘッドソケット経由で直接 Wayland プロトコルを使用し、仮想化不要
📺 HiDPI 対応Retina ディスプレイに最適化された正しい拡大率
🎨 洗練された UIサーバー側の装飾(影・フォーカスインジケータ)付き
ハードウェアアクセラレーション効率的な OpenGL パイプライン

📦 インストール

Homebrew(推奨)

brew tap J-x-Z/tap
brew install cocoa-way waypipe-darwin

バイナリをダウンロード

最新の

.dmg
または
.zip
Releases から取得してください。

ソースからビルド

# 必要な依存関係をインストール
brew install libxkbcommon pixman pkg-config

# クローンしてビルド
git clone https://github.com/J-x-Z/cocoa-way.git
cd cocoa-way
cargo build --release

🚀 すぐに始める

⚠️ 必須:Linux アプリを接続するために

waypipe-darwin
をインストールしてください。

brew tap J-x-Z/tap && brew install waypipe-darwin

コンポジタを起動:

# SSH 経由で Linux アプリを接続
./run_waypipe.sh ssh user@linux-host firefox

🏗️ アーキテクチャ

graph LR
  subgraph macOS
    CW[Cocoa‑Way<br/>Compositor]
    WP1[waypipe<br/>client]
  end
  
  subgraph "Linux VM/Container"
    WP2[waypipe<br/>server]
    APP["Linux App<br/>(Firefox, etc)"]
  end
  
  APP -->|Wayland Protocol| WP2
  WP2 <-->|SSH/Socket| WP1
  WP1 -->|Wayland Protocol| CW
  CW -->|Metal/OpenGL| Display[macOS Display]

🆚 比較

ソリューションレイテンシHiDPIネイティブ統合設定の複雑さ
Cocoa‑Way⚡ 低✅ ネイティブウィンドウ🟢 簡単
XQuartz🐢 高⚠️ 部分的⚠️ X11 の奇妙さ🟡 中程度
VNC🐢 高❌ フルスクリーン🟡 中程度
VM GUI🐢 高⚠️ 部分的❌ 別ウィンドウ🔴 複雑

🗺️ ロードマップ

  • macOS バックエンド(Metal/OpenGL)
  • Waypipe 統合
  • HiDPI スケーリング
  • 🚧 Windows バックエンド (
    win-way
    )
  • 📱 Android NDK バックエンド(予定)
  • マルチモニターサポート
  • クリップボード同期

📚 研究背景

本プロジェクトは Turbo‑Charged Protocol Virtualization の一環で、Rust のトレイト単型化 + SIMD 加速ピクセル変換を用いたゼロコストクロスプラットフォーム Wayland を探求しています。


❓ トラブルシューティング

SSH: “remote port forwarding failed”
リモートホストに古いソケットファイルが残っています。

run_waypipe.sh
スクリプトは
-o StreamLocalBindUnlink=yes
で自動的に対処します。手動実行の場合:

waypipe ssh -o StreamLocalBindUnlink=yes user@host ...

🤝 コントリビューション

貢献歓迎です! 大きな変更を加える前にまず issue を立てて議論してください。


📄 ライセンス

GPL‑3.0 – Copyright © 2024‑2025 J‑x‑Z

同じ日のほかのニュース

一覧に戻る →

2026/03/29 2:39

GitLab の創業者は、会社を立ち上げることでがんと闘う

## Japanese Translation: **概要** 著者は、上部脊柱のT5椎骨に位置する腫瘍性骨肉腫との個人的な闘いを語ります。標準治療オプションを試みたものの適切な臨床試験が見つからない中で、著者は自身の状態に合わせた新しい診断手法と並行治療プロトコルを開発しました。また、「癌ジャーニーデッキ」と埋め込み型OpenAIフォーラムプレゼンテーションを作成し、この経験を記録しています。著者のアプローチはevenone.venturesに掲載されている企業によって支援され、さらにエリオット・ハーシュバーグによる著者の旅路についての包括的な記事や、ルクサンドラ氏が執筆した「The bureaucracy blocking the chance(機会を阻む官僚主義)」という患者優先医療実践を批判する作品も広い文脈に含まれます。治療データと詳細なタイムラインは、https://osteosarc.com/ で公開されており、データ概要ドキュメントや25 TBの読み取り可能なGoogle Cloudバケットが含まれています。著者は読者にメールリストへの登録を促し、更新情報を受け取れるよう案内しています。また、`cancer@sytse.com` で連絡を取ることもできます。

2026/03/29 5:39

CSSは終焉を迎える運命にあります。

## Japanese Translation: この記事は、CSSのみでレンダリングを行い、ロジックには最小限のJavaScriptしか使用しない完全にプレイ可能なDOOM風ゲームをウェブブラウザ上で動かす方法を紹介しています。壁・床・天井・スプライト・弾道などを表現するために数千もの `<div>` 要素が生成され、各要素はカスタムプロパティとして生のDoom座標を保持し、CSS が `hypot()`(距離)や `atan2()`(角度)といった関数で幾何学を計算します。ワールドはプレイヤーの動きに逆行するように `translate3d` と `rotateY` で移動されますが、CSS にはカメラオブジェクトがないためです。 床は `rotateX(90deg)` で回転し、`clip-path`(または新しい `shape()` 関数)を使って任意の多角形や穴に切り取られます。テクスチャタイルはセクター全体にわたって背景位置をワールド座標に合わせて (`background-position: calc(var(--min-x)*-1px) …`) 配置されます。ドア、リフト、その他の動的要素はカスタムプロパティ上で CSS トランジションによってアニメーションし、JavaScript が状態属性を更新します。スプライトは `rotateY` でカメラに向き、`scaleX` で鏡像化したビルボードです。スプライトのアニメーションは CSS の `steps()` キーフレームで行い、攻撃・死亡フレーム用のデータ状態は JavaScript が供給します。弾道は CSS アニメーションで移動し、衝突検出はまだ JavaScript で処理されます。 照明はセクターごとに `filter: brightness(var(--light))` を使って全体的に適用され、ちらつくライトは `@property --light` を通じてアニメーションします。プロジェクトではアンカー位置決め、`@property`、および「ハッキー」な CSS‑のみのカリング手法(オフスクリーン要素を隠すために負の遅延でアニメーションを一時停止)といった実験的機能が採用されています。 数千もの 3D 転送された要素によるパフォーマンスは課題となり、著者は JavaScript で手動フラスタムカリングを実装し、条件付き `if()` のサポートが登場すれば将来的に純粋 CSS ソリューションへ移行する計画です。記事では Safari のビュー遷移による 3D フラット化、background‑image 再ラスター化の問題、コンポジタ不安定性などブラウザバグも文書化し、インラインスタイルやバグ報告といった回避策を紹介しています。 著者はより多くのロジックを純粋 CSS に移すことで JavaScript を完全に排除できる可能性があり、パフォーマンスをさらに向上させることを想定しています。成功すれば、このアプローチは軽量なブラウザベースゲームを刺激し、高度な CSS グラフィックス機能のサポートを促進し、重いエンジンを必要としない効率的なレンダリングが求められる開発者に利益をもたらすでしょう。

2026/03/27 23:39

オープンブースト・オン・モトローラ 88000プロセッサー

## Japanese Translation: (欠落している詳細を補完しつつ明瞭さを保つ)** ``` モトローラ 68000 ファミリーは、1990年代中頃のワークステーション(Apple、Amiga、Atari ST、Sun、HP、NeXT)や多くの産業用ボードで普及していました。 その RISC 後継機種である 88000(m88k)は、68k と PowerPC の間に導入されましたが、約 1994 年頃に期待された性能を提供できず廃止されました。m88k は二世代存在しました: • 88100 – 第1世代 CPU で、オプションの外部 88200 CMMU チップを搭載し、MVME180(20 MHz、2 本の CMMU)と MVME181 に使用されました。 • 88110 – 第2世代 CPU で、統合キャッシュ/MMU を備え、50 MHz を想定していましたが実際には約 40 MHz で販売されました。MVME187(25 MHz、デュアル CMMU、最大 64 MB)、MVME188(SMP、最大 4 CPU と 8 CMMU)、および MVME197 系列(セカンダリキャッシュ)に搭載されました。 VME バスは 32‑bit アドレス/データラインを備えたパッシブバックプレーンであり、複数ボードサポート、割り込みベクタ、オプションのスレーブマッピング、および終端要件があります。 OpenBSD のポートは 1995 年に MVME187 上で開始されました。Nivas Madhur、Steve Murphree、Marc Espie らの貢献は CVS マージ競合、アカウント停止(Theo de Raadt の関与)、GCC‑2.95 互換性問題、カーネルパニック(「align & align‑1」アサーション)および MVME188 上の不完全な SMP サポートに直面しました。ポートは 3.1‑beta スナップショットまで達成しましたが、ハードウェアエラー(VME バスロックアップ、DCAM2 コンフリクト、I²C フェイル)が未解決のまま残っています。 m88k アーキテクチャに関するドキュメントは、モトローラ AT&T System III/V、Data General DG/UX、Omron UniOS などのプロプライエタリ Unix バリアントと無料 CMU Mach コードから取得されました。メンテナー間の個人メール交換は協力、衝突解決、およびニッチなポートの保守課題を示しています。 MVME VME ボードおよび他の m88k システムのユーザーは、この OpenBSD ポートに安全性と安定性を依存しています。継続的なサポートがない場合、利用可能な OS を失うリスクがあり、新しいアーキテクチャへの移行が必要になるかもしれません。 ``` *改善された要約はすべての主要ポイントを反映し、不適切な推測を回避し、主旨を明確に提示し、曖昧または混乱を招く表現を排除しています。

**Cocoa‑Way – ネイティブ macOS 用 Wayland コンポーザーで Linux アプリをシームレスに動作させる** | そっか~ニュース