まもなくリリースされるソフトウェア(大学院プロジェクト)があり、UNIXコンピュータにソフトウェアをインストールするためのベストプラクティスが何であるかを知りたいです。
もともと私は/usr/local/bin
プロジェクトを介して接続しましたが、最近はユーザー固有のファイルに追加してインストールしようとしました.bashrc
。特殊な場合、ユーザーがルートの場合は、ユーザー固有のパスではなくグローバルパスに追加されます。
.bashrc
インストールユーザーフォルダに単一の変数を追加することで他のリソースにすばやくリンクできるため、簡単に追加できる機能がいくつかあります。
しかし、私はこの決定に疑問を抱き始めました。
パスに追加するか、追加しないか、それが問題です。パスのシンボリックリンクがより高貴なもの、/usr/local/bin
または武器を持って成長するパス変数に追加することです。
追加情報:
TCL フロントエンドを含む C++ バックエンド。 TCLフロントエンドはまた、Javaアーカイブ(私のキャリアの初期に作成された)を開始しました。また、独自のTCLインタプリタを使用して他のプログラムを実行できるTCLフロントエンドの拡張もあります。インタプリタを使用してプログラムに bwidget tcl パッケージを提供する必要があります。したがって、bwidgetパッケージを提供してjarファイルを実行するには、リンクする場所が必要です。さらに、ユーザーは主に化学ユーザーであり、UNIXに慣れておらず、おそらくMacを使用しているので、ユーザーが簡単に使用できるようにする必要があります。
プラットフォームはMacまたはUnixで実行する必要があります。
理想的には、ユーザーに場所を覚えさせるのではなく、単一のコマンドでTCLスクリプトを起動できることを願っています。
これは以前に閉じたソースプロジェクトでしたが、現在はオープンソースであり、ユーザーがプログラムを簡単にコンパイルしてインストールできることを願っています。
インストールオプションを生成するためにmakeを使用しています。
答え1
/usr/local/binにシンボリックリンクしないでくださいまたはパスを混乱させます。特に後者ではありません。指定した場所にインストールするインストーラを作成します。よく知られているプログラムを確認して、どのように機能するかを確認してください。あなたの計画の詳細については、あなたのニーズに応じて具体的なアドバイスを提供することができます。
そして誰も最初からインストーラを書きません。人々は主にMake、Cmake、sconsなどのプログラムを使用します。一部の言語には、Pythonのdistutilsなどの特別なインストールソフトウェアがあります。
答え2
一部のパッケージ(通常はディストリビューションのパッケージリポジトリに見つからないもの)が/optにインストールされ、.desktopファイルを~/Desktopおよび~/.local/share/applicationsに追加して有効にすることがわかりました。
答え3
2つの代替案:
/etc/profile.d/myprogram.sh
Red Hatなどのシステムでは、ファイルをインクルードにドラッグアンドドロップできます。PATH=$PATH:/opt/myprogram
- 多くのシステムでは、
PATH=...
次の行を追加できます。/etc/environment
しかし、私の考えでは、プログラムをインストールし/opt/myprogram
てそれを実行するためのスクリプトを書くのは/usr/local/bin
おそらくあまり有害ではないでしょう。
答え4
シングルユーザー用のプログラムをインストールするには、バイナリ実行可能ファイルを〜/ binに配置します。ほとんどのUNIXシステムでは、.bashrcは存在する場合はユーザーパスに〜/ binを含めるように設定されています。