GNU/Linux >> Linux の 問題 >  >> Linux

Linux で Mac OS X アプリケーションに署名する方法は?

install4j という製品を使用して、アプリの DMG ファイルを作成しています。 DMG ファイル内でアプリに正しくコード署名し、macOS 以外の OS からも署名できます。

ただし、警告:install4j はフリー ソフトウェアではなく、実際には非常に高価です。


アプリケーションの JavaApplicationStub と info.plist のみに署名し、「Resources」フォルダーを署名から除外することで、これを回避できます。次に、事前署名済みコンテナーを使用するようにビルド プロセスを変更する必要があります。もちろん、これはコード署名の意味ではありませんが、機能します;-)

これを実現するには、次の手順を実行します:

  • 通常どおり .app を作成します
  • Mac に移動
  • 次の内容で「ResourceRules.plist」ファイルを作成します:

ResourceRules.plist:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
        <key>rules</key>
        <dict>
                <key>^Resources/</key>
                <false/>
                <key>^version.plist$</key>
                <true/>
        </dict>
</dict>
</plist>
  • 次のコマンドで署名します:CODESIGN_ALLOCATE="/Applications/Xcode.app/Contents/Developer/usr/bin/codesign_allocate"codesign -s "Certificate Name" --resource-rules ResourceRules.plist -fv MyApp.app

  • 次に、Resource 内のすべてを削除し、署名を確認します (codesign -v -v MyApp.app)。まだ有効であることがわかります

  • ビルド プロセスで完全な署名付きスタブを使用します。 Resources のすべてを変更できますが、info.plist は変更できません。


Linux で Mac OS X アプリケーションにコード署名する文書化された方法はありません。

これを行う唯一の方法は、Mac に SSH 接続してそれを使用することです。

一方、@Steve McLeod (https://stackoverflow.com/a/55906962/28190) によると、インストーラー パッケージ install4j はこれを提供します:

<ブロック引用>

Windows と Mac OS X で統合されたコード署名 . 「一般設定」セクションで、install4j に「コード署名」タブが追加されました。このタブでは、Windows および Mac OS X 用のコード署名証明書を構成できます。コード設計は、対応するメディア ファイル内のすべてのランチャーおよびインストーラー アプリケーションに適用されます。コード署名の実装はクロスプラットフォームであるため、たとえば Linux ビルド サーバーから Windows および Mac OS X メディア ファイルに署名できます。

したがって、技術的に可能でなければなりません。


Linux
  1. KaliLinuxでmacchangerを使用してMACアドレスを変更する方法

  2. Linuxでアプリケーションの起動時間を改善する方法

  3. Linuxで証明書署名要求(CSR)を生成する方法

  1. LinuxにSpotifyアプリケーションをインストールする方法

  2. Linux のスクリーンショット、Mac のように撮る方法

  3. Mac のコマンドラインは Linux と比べてどうですか?

  1. LinuxでMimeタイプのアプリケーションを見つける方法は?

  2. アプリケーションが Linux で実行され続けることを確認する方法

  3. Mac OS X と Linux での dd パフォーマンス