AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / unix / Perguntas / 412869
Accepted
rugk
rugk
Asked: 2017-12-25 17:06:43 +0800 CST2017-12-25 17:06:43 +0800 CST 2017-12-25 17:06:43 +0800 CST

Como permitir que o aplicativo GUI no flatpak execute a ferramenta CLI?

  • 772

Posso de alguma forma permitir que um aplicativo GUI em execução dentro de um flatpak permita acessar e executar um binário em /binrespectivamente /var/bin?

Mesmo se eu permitir acesso total ao sistema ( --filesystem=host), ele não poderá ver/encontrar o arquivo lá.

Meu caso de uso seria executar shellcheck.

flatpak
  • 2 2 respostas
  • 3934 Views

2 respostas

  • Voted
  1. Best Answer
    rugk
    2019-04-08T11:15:11+08:002019-04-08T11:15:11+08:00

    Existem diferentes maneiras:

    • Se o seu flatpak tiver hostacesso, você pode, por exemplo, rodar /usr/local/bin/exampleem /var/run/host/usr/local/bin/example. Ou seja /usr/local, está montado em /var/run/host/usr/local.
    • No entanto, isso ainda pode falhar devido às bibliotecas não estarem no local correto, etc. Portanto, você precisa ajustar as variáveis ​​env para que funcionem lá ou seguir o caminho descrito abaixo.

    Gerar comandos fora do flatpak

    Você pode usar flatpak-spawnpara executar comandos em um ambiente diferente.
    No entanto, geralmente você deseja iniciar os comandos no sistema host, saindo da caixa de proteção. Para fazer isso, você obviamente precisa enfraquecer a caixa de areia do flatpak. Basta adicionar esta permissão:

    flatpak override com.packagename.App --talk-name=org.freedesktop.Flatpak
    

    Depois, você pode flatpak-spawn --hostexecutar comandos fora do flatpak do host.

    Agora, para realmente usar isso em uma GUI, esperamos que você tenha algumas maneiras de alterar o caminho para os binários que deseja executar lá. Isso pode ficar complicado, pois você precisa passar parâmetros adicionais e, no final, pode acabar tendo que escrever pequenos scripts wrapper.
    No meu caso, eu realmente fiz, e você pode encontrá-los aqui . Eles permitem (no meu caso) que o Atom (mas provavelmente possível com qualquer IDE) seja executado shellcheckou gpg…

    • 9
  2. 804b18f832fb419fb142
    2018-02-07T18:49:33+08:002018-02-07T18:49:33+08:00

    Você pode usar o método HostCommand da interface org.freedesktop.Flatpak.Development Dbus: https://github.com/flatpak/flatpak/blob/master/data/org.freedesktop.Flatpak.xml#L43

    Um exemplo usando Python: https://stackoverflow.com/questions/39494813/pass-file-descriptor-via-a-dbus-function-call-from-python-aka-call-flatpaks-ho

    • 3

relate perguntas

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Matriz JSON para bash variáveis ​​usando jq

    • 4 respostas
  • Marko Smith

    A data pode formatar a hora atual para o fuso horário GMT? [duplicado]

    • 2 respostas
  • Marko Smith

    bash + lê variáveis ​​e valores do arquivo pelo script bash

    • 4 respostas
  • Marko Smith

    Como posso copiar um diretório e renomeá-lo no mesmo comando?

    • 4 respostas
  • Marko Smith

    conexão ssh. Conexão X11 rejeitada devido a autenticação incorreta

    • 3 respostas
  • Marko Smith

    Como baixar o pacote não instalá-lo com o comando apt-get?

    • 7 respostas
  • Marko Smith

    comando systemctl não funciona no RHEL 6

    • 3 respostas
  • Marko Smith

    rsync porta 22 e 873 uso

    • 2 respostas
  • Marko Smith

    snap /dev/loop em 100% de utilização -- sem espaço livre

    • 1 respostas
  • Marko Smith

    chave de impressão jq e valor para todos no subobjeto

    • 2 respostas
  • Martin Hope
    EHerman Matriz JSON para bash variáveis ​​usando jq 2017-12-31 14:50:58 +0800 CST
  • Martin Hope
    Christos Baziotis Substitua a string em um arquivo de texto enorme (70 GB), uma linha 2017-12-30 06:58:33 +0800 CST
  • Martin Hope
    Drux A data pode formatar a hora atual para o fuso horário GMT? [duplicado] 2017-12-26 11:35:07 +0800 CST
  • Martin Hope
    AllisonC Como posso copiar um diretório e renomeá-lo no mesmo comando? 2017-12-22 05:28:06 +0800 CST
  • Martin Hope
    Steve Como as permissões de arquivo funcionam para o usuário "root"? 2017-12-22 02:46:01 +0800 CST
  • Martin Hope
    Bagas Sanjaya Por que o Linux usa LF como caractere de nova linha? 2017-12-20 05:48:21 +0800 CST
  • Martin Hope
    Cbhihe Altere o editor padrão para vim para _ sudo systemctl edit [unit-file] _ 2017-12-03 10:11:38 +0800 CST
  • Martin Hope
    showkey Como baixar o pacote não instalá-lo com o comando apt-get? 2017-12-03 02:15:02 +0800 CST
  • Martin Hope
    youxiao Por que os diretórios /home, /usr, /var, etc. têm o mesmo número de inode (2)? 2017-12-02 05:33:41 +0800 CST
  • Martin Hope
    user223600 gpg — o comando list-keys gera uid [ desconhecido ] depois de importar a chave privada para uma instalação limpa 2017-11-26 18:26:02 +0800 CST

Hot tag

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve