Macports:過去の日付のバージョンのみを使用してポートをインストールするにはどうすればよいですか?

Aug 20 2020

2年前、私はMacportsを使用して、OS X 10.9 "Mavericks"を実行しているコンピューターにDockerMachineのコピーをインストールしました。私がしなければならなかったのはタイプすることだけでしたsudo port install Docker-machine、そしてMacportsは私が必要とするすべてを自動的にプルダウンしてコンパイルしました。

2020年8月の時点で、GoやMacportsのレガシーサポートフレームワークの最新バージョンにバグがあるため、これはMavericksでは機能しません。マーベリックスは非常に古いので、この破損は理​​解できます。ただし、Docker Machine2年前の時点で機能していたので、古いバージョンを使用してもかまいません。

クリーンなMacportsプレフィックスを使用して、過去の特定の日付の時点で存在していたソフトウェアのみを使用してポートをインストールするにどうすればよいですか?私はないではない、単にドッカーマシンの古いバージョンをインストールしたい。私はドッカーマシンの古いバージョンをインストールしたい、ドッカーマシンが依存するとすべてのポートをなどGoLegacy Support

Debianでは、これは非常に簡単です。スナップショットを指すようにsources.listを編集するだけです。Macportsで同様のことを行うにはどうすればよいですか?Macportsプロジェクトの完全な履歴はGitで追跡されているので、それが可能であると確信しています。


†MacportsがMavericksをサポートしていることをうれしく思います。Homebrewがあれば、私は完全にSOLになります。

‡試してみましたが、うまくいきません。ポートとその依存関係がどのように相互接続されているかを考えると、これは特に驚くべきことではありません。参考までに、単一パッケージの古いバージョンをインストールする手順は、ここに記載されています。

回答

4 Wowfunhappy Aug 21 2020 at 01:06

MacportsメーリングリストのLotharHaegerに、必要な重要なヒントを教えてくれてありがとう。私がしなければならなかったことは:

  1. GithubからMacportsPortTreeのローカルコピーをチェックアウトしますcd ~; git clone https://github.com/macports/macports-ports

  2. ローカルポートツリーを以前の時点にリセットします。cd macports-ports; git reset --hard commit-hash-from-2018

  3. ローカルポートツリーのポートインデックスを生成しますportindex

  4. Macportsに、公式のオンラインポートツリーの代わりにローカルポートツリーを使用するように指示します。これを行うため/opt/local/etc/macports/に、テキストエディタでmacportsのsources.conf(通常は)を開き、ファイルの下部にあるデフォルトのURLをコメントアウトし、その後にmy-user-nameを追加しました。file:///Users//macports-ports [default]