1. ホーム
  2. msys

[解決済み] msys、msys2、msysgitはどのような関係にあるのですか?

2022-04-22 19:17:52

質問

いろいろと調べてみたのですが、この3つのバージョンのMSYSがどうなっているのか、詳しい説明が見当たりません。(MSYSがMinGWを使った開発を支援するためのLinuxツールの最小限の移植であることは理解していますが、これら3つの関係や開発・保守するチームについてはよくわかりません。

特に取り組むべき課題

  • 活発に開発されているのはどれですか?(特に、MSYSは死んでいて、MSYS2が活発なのか)。
  • それらをメンテナンスしているグループ間の関係は?(特に、MSYSのチームがMSYS2を作ったのでしょうか?)
  • msysgit は他のブランチのいずれかを使用しているだけですか、それとも MSYS の独自のブランチを持っているのですか?
  • この中に互換性のあるものはありますか?
  • Windowsの特定のバージョンとの互換性に問題はありませんか?
  • どちらか一方が他方より大きな機能を提供していますか?

解決方法は?

免責事項:私はMSYS2の開発者です。

MSYSは死んでいるわけではありませんが、あまり元気がないように見えますね。このプロジェクトは、何年も前にMinGWチームによって Cygwinのフォーク Cygwinについていけなかった。

msysgitは MSYS の少し古いバージョンのフォーク に、いくつかのカスタムパッチ、古いバージョンのBashとPerl、そしてGitのネイティブポートを追加しました。

MSYS2 は、mingw-builds チーム (MinGW-w64 ツールチェインの公式パッケージャ) の Alexey Pavlov によって、次のようなプロジェクトとして始められました。 Cygwin の最近のフォーク これは、最新のCygwinを綿密に追跡することで、時代遅れにならないようにするものです。Alexeyは古いMSYSのパッチを前方に移植し、彼自身のパッチをいくつか追加しました。

MSYS の目標であるネイティブ・ソフトウェアのコンパイルに必要な Unix ツールを提供するだけでなく、私たちは パックマン のパッケージマネージャです。 アーチリナックス . Pacman は単にバイナリパッケージを管理するだけのものではありません (それはとてもよくできていますが)。makepkg と呼ばれるソフトウェアビルドのインフラがあり、ソフトウェアをビルドするためのレシピ (PKGBUILD とパッチファイル) を作成することができます。

IMHOでは、パックマンの採用はWindowsでのオープンソース開発にとって大きな変化をもたらすものだと考えています。みんなが自分のカスタムシェルスクリプトをハックしてごちゃごちゃと互換性のない方法でソフトウェアをビルドする代わりに、パッケージは他のパッケージに依存できるようになり、PKGBUILD ファイルと関連するパッチは新しい PKGBUILD を構築するためのリファレンスとして使われるようになりました。(ネイティブの) Windows に限りなく近い Linux システム (特に Arch Linux) で、インストールされている全てのパッケージを簡単に更新することができます。

Windows XP SP3を最低目標とし、32ビット、64ビットWindowsの両方をサポートします。MSYS2とmsysやmsysgitを混在させないようにお願いします。Pacman はシステム全体を管理するために使われるので、他のシステムからのファイルはコンフリクトを引き起こします。

また、私たちは自分たちがビルドするプロジェクトにパッチをアップストリームするようにしていますし、他のオープンソースプロジェクトからのコントリビューションも積極的に募っています。私たちは、他の人が私たちと一緒に仕事をするのが簡単であることを望んでいます。

当社のメインサイトは ソースフォージ PKGBUILD のレポジトリへのリンクがあります。また、より使いやすいインストーラのサイトが ギットハブ .

より詳細な情報が必要な場合は、IRC (oftc #msys2) でお気軽にご参加ください。