バイナリ名がMidnightCommanderと競合しています。
この問題に関する以前のチケットを読み、あなたの意見を評価しました。 それでも、 mc
と同じ名前を使用することは避けるべきだと思います。 ここで短い名前を探したのはいいことですが、他の名前と衝突することは許されません。 _user_がより短い名前を必要とする場合、彼はシェルでエイリアスを自由に設定できます。 すでにMidnightCommanderを使用しているユーザーは数千人(https://qa.debian.org/popcon.php?package=mc)です。
実際、このケースでは、minio-mcとmidnightcommanderを自作で同時インストールできない状況が発生します。 https://github.com/Homebrew/homebrew-core/commit/badeeeb5aced1cf9ef0cc9332453ac56a0db9df8#diff-c021a0c2c90326616e8d0c422a20d4fdR11を参照して
このプロジェクトの名前を再考することをお勧めします。
パッケージャーは、必要に応じて別の名前を自由に選択できます。 Unixライクなオペレーティングシステムは成長しなければなりません。 ユーザーが自分の名前空間内にパッケージをインストールするためにrootである必要がある理由がわかりません。
単に「goget」するか、mcバイナリを〜/ binにコピーして実行します。 Goパッケージのインストールはrpmやdpkgに依存していません。
ダウンストリームのメンテナにバイナリの名前を変更し、ドキュメントにmc
名前を残すように勧める場合は、次のような質問の嵐に直面する準備をする必要があります。
https://askubuntu.com/questions/235655/node-js-conflicts-sbin-node-vs-usr-bin-node
https://stackoverflow.com/questions/21168141/cannot-install-packages-using-node-package-manager-in-ubuntu
私の質問はrpm、deb、 go get
についてではありません。 ユーザーは、バイナリを自分でビルドするよりも、リポジトリが提供するパッケージをインストールすることを好みます。 問題は、$ PATHの下に$ mc
という名前の
ここに関連性の高いリンクされたDebianバグの小さな抜粋を次に示します。
The Technical Committee notes that the namespace of executable
commands on $PATH is a resource shared among everyone writing software
for POSIX-compatible systems, and that the combinations of packages
that users may choose to install on a given system can easily surprise
the authors of those packages.
The Committee advises anyone writing widely-deployed software to
consider its command name carefully at an early stage. It is a good
idea to search the web for your proposed name and try to ensure that
it is unique. It is likely to be a bad idea to use excessively short
names or common words. The conflict between LinuxNode and Node.js
demonstrates that taking a little time early on can avoid a great deal
of tedium later.
POSIXは、今日のニーズとは無関係です。 最新のオペレーティングシステムは、独自の名前空間でユーザーがインストールしたバイナリをサポートする必要があります。 これが、nodejs、Go、Pythonがディストリビューション提供のパッケージモジュールから離れた理由です。
また、深夜の司令官ユーザーもmc
使用する可能性はほとんどありません。 インストール時にバイナリパッケージが競合しても問題ありません。
ここに簡単な解決策があることを本当に望んでいます。
POSIXは、今日のニーズとは無関係です。
あなたと私、そして他のみんなは毎日それを使っています。 どうして関係ないの?
最新のオペレーティングシステムは、独自の名前空間でユーザーがインストールしたバイナリをサポートする必要があります
それらはすでに存在しますが、同じ名前を使用する2つのバイナリが$ PATHにある場合はこれで解決しません。 残念ながら、あなたの希望的観測はこれを現在または将来解決するつもりはありません。
これが、nodejs、Go、Pythonがディストリビューション提供のパッケージモジュールから離れた理由です。
あなたは物事を混乱させています。 プログラミング言語は、そもそもディストリビューション固有のパッケージを使用したことはありません。 ダウンストリームはそれらを再パッケージ化して、既存のポリシーに準拠します。 これにより、エンドユーザーは、開発環境のセットアップやすべてを最初から構築する手間をかけずに、任意のパッケージを簡単にインストールできます。
また、真夜中の司令官ユーザーもmcを使用する可能性は低いです。
何? 私は12年間アクティブなmcユーザーです。 Mindnight Commanderのすべてのインスタンスは、バイナリ名にmc
を使用します。 あなたの発言は意味がありません。
インストール時にバイナリパッケージが競合しても問題ありません。
あなたは全体のポイントを逃しました。 $ PATHの下に同じ名前の2つの異なるバイナリを配置することはできません。 これはすでに競合を引き起こしています。自作のリンクを参照してください。
ここに簡単な解決策があることを本当に望んでいます。
がある。 このバイナリの名前を変更します。 他の人にあなたのためにこれをするように勧めないでください。 あなたの受動的攻撃行動は、この問題を解決する方法ではありません。 このあえて質問されるのはこれが最後ではありません。
また、真夜中の司令官ユーザーもmcを使用する可能性は低いです。
もう一度お読みください。
the combinations of packages that users may choose to install
on a given system can easily surprise the authors of those packages
最も参考になるコメント
あなたと私、そして他のみんなは毎日それを使っています。 どうして関係ないの?
それらはすでに存在しますが、同じ名前を使用する2つのバイナリが$ PATHにある場合はこれで解決しません。 残念ながら、あなたの希望的観測はこれを現在または将来解決するつもりはありません。
あなたは物事を混乱させています。 プログラミング言語は、そもそもディストリビューション固有のパッケージを使用したことはありません。 ダウンストリームはそれらを再パッケージ化して、既存のポリシーに準拠します。 これにより、エンドユーザーは、開発環境のセットアップやすべてを最初から構築する手間をかけずに、任意のパッケージを簡単にインストールできます。
何? 私は12年間アクティブなmcユーザーです。 Mindnight Commanderのすべてのインスタンスは、バイナリ名に
mc
を使用します。 あなたの発言は意味がありません。あなたは全体のポイントを逃しました。 $ PATHの下に同じ名前の2つの異なるバイナリを配置することはできません。 これはすでに競合を引き起こしています。自作のリンクを参照してください。
がある。 このバイナリの名前を変更します。 他の人にあなたのためにこれをするように勧めないでください。 あなたの受動的攻撃行動は、この問題を解決する方法ではありません。 このあえて質問されるのはこれが最後ではありません。