2017-08-31 8 views
0

コンパイルする必要のないアプリケーション用の自作式を作成しようとしています。私は数式料理ブックを見てみましたが、正しく動作させるためのものがありません。以下はより一般的なファイル名を使用した私の使用例です。スタンドアロンアプリケーション用の自作式の作成

内部には2つのファイルがあります.1つはアプリケーション用のスクリプトで、もう1つはマニュアルページ用のファイルです。我々は一般的なものを維持するために以下のファイル名を使用します:

  • myapp.py(スクリプトが必要とするリソースファイル)(実行スクリプト)
  • resource.txt
  • myapp.1(manページ)

これを正しい場所に入れるにはどうすればよいでしょうか?私は、スクリプト内のコードを変更して、リソースをロードする場所を選択することができると仮定します。

ありがとうございました。

答えて

1

インストール時にスクリプトを修正して、リソースの正しい場所を使用するか、同じディレクトリにあると想定して、自作するようにしてください。私はanother answerに後者の場合の例式を書いた。ここで

は、それはあなたのニーズにどのように見えるかです:

class Foo < Formula 
    desc "Blah blah" 
    url "https://github.com/foo/foo/archive/master.zip" 
    version "1.2.3" 

    def install 
    man1.install "myapp.1" 
    libexec.install Dir["*"] 
    bin.write_exec_script (libexec/"myapp.py") 
    end 
end 

それが正しいディレクトリにmyapp.1をインストールします。他のmanディレクトリにはman2man3などを使用することもできます。

残りのファイルはすべてlibexecにインストールされ、次にexecスクリプトがbin/myapp.pyに作成されます。これは、簡単なシェルスクリプトでexecあなたのスクリプトになります。そうすれば、スクリプトはlibexecから実行され、同じディレクトリにあるresource.txtを見つけることができます。

あなたがmyappないmyapp.pyそれを呼び出すしたい場合には、そのようになりたい:

def install 
    man1.install "myapp.1" 
    libexec.install "resource.txt" 
    libexec.install "myapp.py" => "myapp" 
    bin.write_exec_script (libexec/"myapp") 
    end 
関連する問題