flatpak内で実行されているGUIアプリケーションが/bin
別々にバイナリにアクセスして実行することを許可できますか/var/bin
?
フルシステムアクセス()を許可しても、--filesystem=host
そこにあるファイルを表示または検索することはできません。
私のユースケースは実行ですshellcheck
。
答え1
さまざまな方法があります:
- Flatpakにアクセスできる場合は.ie。にインストールを
host
実行できます。/usr/local/bin/example
/var/run/host/usr/local/bin/example
/usr/local
/var/run/host/usr/local
- ただし、ライブラリが正しい場所にないなどの理由でまだ失敗する可能性があります。したがって、環境変数が機能するように調整するか、以下の説明に従って実行する必要があります。
flatpak 外部からコマンドを生成する
あなたはそれを使用することができますflatpak-spawn
さまざまな環境でコマンドを実行してください。
しかし、ホストシステムにコマンドを伝播してサンドボックスから外したい場合がよくあります。これを行うには、flatpakのサンドボックスを弱める必要があります。次の権限を追加してください。
flatpak override com.packagename.App --talk-name=org.freedesktop.Flatpak
flatpak-spawn --host
その後、ホストシステムでflatpakの外部でコマンドを実行できます。
実際にこれをGUIで使用するには、実行したいバイナリのパスを変更する方法が必要です。追加のパラメータを渡し、最終的に小さなラッパースクリプトを作成する必要があるため、これは複雑になる可能性があります。
私の場合はそうだった、ここで見つけることができます。。私の場合は、Atom(しかしすべてのIDEで利用可能)を実行するshellcheck
かgpg
...
答え2
org.freedesktop.Flatpak.Development Dbus インターフェイスの HostCommand メソッドを使用できます。https://github.com/platpak/platpak/blob/master/data/org.freedesktop.Flatpak.xml#L43