HN 日本語サマリー

← 一覧へ戻る
インフラ・DevOps

一体 /pkg とは何なのか?

What the heck is /pkg? (anderegg.ca)

73 pointsby GavinAnderegg16 コメント

要約

macOS 27.0 にて、システムパスに `/pkg/env/global/bin` という見慣れないエントリが追加されました。これは macOS 26.4 でデータボリュームに追加された `/pkg` ディレクトリが、macOS 27.0 で署名付きシステムボリュームのルートに追加されたことに起因しますが、その目的は不明です。記事では、この `/pkg` ディレクトリの存在と、それが将来的なパッケージ管理システムに関連する可能性について推測しています。

全文翻訳

一体 /pkg とは何なのか?

2026年10月18日

最近、PATH の問題のトラブルシューティング中に、/pkg/env/global/bin というエントリに気づきました。最初は何かひどいことが起こったのではないかと心配しましたが、これは macOS 27.0 の一部であることが判明しました…ただし、その目的についてはまだ誰も確信が持てていません。

まず、背景を説明します。2007年の Mac OS X 10.5 以降、OS には path_helper というユーティリティが含まれています。これは /etc/paths からのエントリや、/etc/paths.d ディレクトリ内の任意のファイルを読み取ります。このシステムを利用することも可能ですが、私(そしておそらく他の多くの人も)は、新しい PATH エントリを追加するために、.zshrc ファイル やそれに類するものを使用しています。path_helper ユーティリティは、主に Apple によって使用されているようです。

macOS 10.15 では、rvictl ユーティリティの新しい場所をサポートするために /etc/paths.d にエントリが追加されました。macOS 13.3 では、Apple が新しいエントリを追加しました。これは Cryptexes をサポートするためです。そして macOS 27.0 では、/pkg/env/global/bin を PATH リストに追加する新しい 10-pmk-global ファイル [1] があります。

私がこのエントリに気づいて調査を始めたのは、このエントリを見たのがきっかけでした。何かがおかしくなったのだと推測しました。その後、ファイルシステムのルートに確かに /pkg ディレクトリが存在することを確認しました。少しパニックになった後、この深淵に迷い込んでしまいました。

Howard Oakley は、macOS のブートボリューム構造が更新された という投稿で、pkg ディレクトリが macOS 26.4 の Data ボリュームに追加されたが、27.0 まで Signed System Volume のルートには追加されていなかったと説明しています。彼はまた、これが一種の大きな出来事である とも述べています。

奇妙なのは、私の知る限り、誰もこの新しいディレクトリが何のためにあるのかを知らないようです! Apple がファイルシステム構造を更新し、それを全員の PATH に追加したのに、説明できる理由がないというのは奇妙です。

/pkg ディレクトリには、env、etc、inv、var の4つのサブディレクトリが含まれています。その名前とこれらのサブディレクトリから推測すると、これは今後の第一者(ファーストパーティ)のパッケージ管理システムに使用される可能性があるかもしれませんが、これはあくまで推測です。Apple は最近 Swift Package Index を買収しました が、これとは無関係のようです。プロジェクトレベルの依存関係を支援するために、なぜルートレベルのディレクトリが必要なのかは分かりません。また、/etc/paths.d/10-pmk-global の「pmk」が何を参照しているのかも不明です [2]。

いつかこれに関する詳細が明らかになることを願っています。それまでの間、PATH にこのエントリを見つけてパニックになる他の人が、これらの詳細によって少しでも安心できれば幸いです。


  1. ファイル名の「10」の部分は優先順位を助けるためのものです。数字が小さいファイルほど先に PATH に追加され、優先度が高くなります。↩
  2. Hacker News のユーザー oefrha は、これが「Package Management Kit」である可能性を推測しましたが、これもまた…誰にも分かりません。↩