プロジェクト

全般

プロフィール

MSYS2のバージョンを固定する » 履歴 » リビジョン 3

リビジョン 2 (開発 次郎, 2025/05/10 11:59) → リビジョン 3/4 (開発 次郎, 2025/05/10 12:16)

%{color:red}だめだ、うまくいかない。 
 パッケージをインストールする前にダウンロードして(保管して)、再利用しようとしても同じ名前でインストールすることができない。 
 例えば、msys2-develというパッケージ名でインストールはできるが、これでローカルインストール(-U)はできない。 
 % 

 h1. MSYS2のバージョンを固定する 

 MSYS2にインストールするパッケージは、Linuxと異なり過去のパッケージをインストールすることができない。 
 所望のバージョン、例えば安定版に固定する方法は自分で見つける必要がありそう。 
 ここでは、自分なりの方法を示す。 

 h2. MSYS2インストールして最初のフルセットを残しておく 

 MSYS2インストーラは、過去のものを残しておいてもあまり意味がない。 
 なぜなら、古いインストーラがあっても、それに対応したパッケージがMSYS2パッケージ・リポジトリからなくなっていることが多いからである。 

 MSYS2をインストールして安定版を作る前に、インストール直後の状態を保管しておく。 

 p((. ※ MSYS2インストーラは20250221msys64.7zというようなファイルを解凍しているようなので、公式リポジトリからこれがダウンロードできるならインストール直後の状態を保管しておく必要はないが、これがどこにあるのか、現時点(2025/5/10)で分かっていない。 

 h3. パッケージ・データベースの更新 

 <pre><code class="bash"> 
 $ pacman -Sy 
 </code></pre> 

 h3. コア・ファイル(仮称)の更新 

 <pre><code class="bash"> 
 $ pacman -Suw --cachedir [バックアップ先パス] 
 # おそらく次の3種がダウンロードされる。 
 # Packages (3) filesystem-2025.02.23-1    mintty-1~3.7.8-1    msys2-runtime-3.6.1-4 
 $ cd [バックアップ先パス] 
 $ pacman -U filesystem-2025.02.23-1-x86_64.pkg.tar.zst mintty-1~3.7.8-1-x86_64.pkg.tar.zst msys2-runtime-3.6.1-4-x86_64.pkg.tar.zst 
 </code></pre> 

 h2. パッケージをインストールする時はダウンロードしたパッケージを保管する 

 %{color:red}この方法ではMSYS2ターミナル(mintty)が終了させられなくなる。msys2-runtimeの更新までやった後、ディレクトリをバックアップするのが良いかもしれない。% 

 通常パッケージをインストールするときはインターネットからインストールするが、それでは手元にパッケージファイルが残らない。 
 MSYS2にインストールしたパッケージは、MSYS2を作り直すときに再度使いたいので、自分で補完しておく。 
 ゆえに、通常のインストール方法ではなく、次のようにインストールする。 

 <pre><code class="bash"> 
 $ pacman -Sw --cachedir [バックアップ先パス] [パッケージ名] 
 $ pacman -U [パッケージのパス][パッケージ名] 
 </code></pre>