Como obter acesso ao armazenamento USB a partir do aplicativo instalado como Snap?

14

Eu tenho o Ubuntu 18.04 LTS instalado.

Eu inseri o flash USB no meu laptop. Foi montado automaticamente em / media / nome de usuário / DISKLABEL e aberto no Nautilus. Eu posso ler e escrever objetos nele.

Como posso acessá-lo a partir do aplicativo, instalado como Snap?

Tentei encaixar das seguintes aplicações tais como gedit, arduino-mhall119, organize-my-files. Todos eles me mostram erros se eu navegar para a pasta / media :

tentando acessar / mídia

tentando acessar / mídia

A saída das interfaces Snap ativas está abaixo:

$ snap interfaces  | grep -v ".*-$"
Slot                             Plug
:browser-support                 organize-my-files
:core-support                    core:core-support-plug
:cups-control                    gedit
:desktop                         gedit,organize-my-files
:desktop-legacy                  gedit,organize-my-files
:gsettings                       gedit,organize-my-files
:home                            arduino-mhall119,gedit,organize-my-files
:network                         arduino-mhall119,gedit,organize-my-files,pulsemixer
:opengl                          organize-my-files
:pulseaudio                      organize-my-files,pulsemixer
:unity7                          arduino-mhall119,gedit,organize-my-files
:wayland                         gedit
:x11                             arduino-mhall119,organize-my-files,pulsemixer
gnome-3-26-1604:gnome-3-26-1604  gedit
gtk-common-themes:gtk3-themes    gedit
gtk-common-themes:icon-themes    gedit
gtk-common-themes:sound-themes   gedit
-                                arduino-mhall119:serial-port
-                                gedit:avahi-observe
-                                gedit:mount-observe

Atualizações:

  • conectar mount-observe ao Gedit com snap connect gedit:mount-observenão ajuda.
  • parece que precisamos do Snap especial com suporte de removable-mediainterface.
N0rbert
fonte

Respostas:

12

Então, precisamos do Snap preparado especial com suporte à removable-mediainterface / plugin.

Abaixo está uma lista de Snap com plug de mídia removível descrita no manifesto YAML:

Pode-se encontrar outros Snaps lançados pelo SnapCrafters com o seguinte link de pesquisa do GitHub .


Portanto, se o aplicativo não tiver conexão automática removable-media, precisamos conectá-lo manualmente com:

snap connect some-snap-name:removable-media

Mas nem todos os aplicativos possuem esse plug / interface no manifesto YAML.


É difícil encontrar pacotes pelos plugues suportados - por isso criei o problema "Adicionar capacidade para a pesquisa Snap paramétrica com filtros (plugs, como removable-mediaetc.)" sobre o site snapcraft.io .

O bug sobre o snapcomando denominado " snapdeve fornecer funcionalidade para localizar pacotes com o plugue ou conector necessário" foi arquivado na barra de ativação como bug 1776938 .

N0rbert
fonte
O comando correto é:snap connect some-snap-name:removable-media
Zygmunt Krynicki 25/05
@ZygmuntKrynicki é claro. Obrigado, eu consertei esse erro bobo.
N0rbert
O bug que é citado nos dois últimos parágrafos é realmente irritante, mas uma simples solução para isso se o pacote pressão já está instalado ésnap interfaces some-snap-name
Karel
@karel, certo. Obrigado! Eu tenho esse comando já em questão. O principal problema é determinar os plugues do Snap não instalado.
N0rbert
1
O bug citado nos dois últimos parágrafos é realmente irritante, mas uma solução alternativa simples para ele se o pacote snap já estiver instalado é snap connections some-snap-nameEsta é uma atualização do meu comentário anterior.
30819 karel
4

O programa Ubuntu Software agora exibirá um botão Permissões na página de cada programa Snap que você instalou.

a página Krita do programa Ubuntu Software, mostrando os botões sob o título - Iniciar, Remover e Permissões

Clique em Permissões e uma janela pop-up oferece a opção 'Ler / gravar arquivos em dispositivos de armazenamento removíveis', com um botão à direita em que você clica para ativar.

insira a descrição da imagem aqui

Você precisa ativar cada programa um por um dessa maneira, mas não há nada de especial para lembrar, exceto que o botão existe.

titular kim
fonte
Por favor, adicione a captura de tela de "Clique em Permissões e uma janela pop-up" à resposta.
N0rbert
@ N0rbert Done ...
kim holder
3

A interface que precisa ser conectada é removable-media.

Pode acessar arquivos de mídia removível em / media e / run / media. Isso pode ser usado para dar ao aplicativo acesso a pen drives e discos rígidos externos montados em uma área de trabalho.

A mount-observeinterface permite apenas exibir o que está montado, não acessar montagens:

Pode consultar informações de montagem do sistema. Isso é restrito porque fornece acesso de leitura privilegiado para montar argumentos e deve ser usado apenas com aplicativos confiáveis.

Nenhuma dessas duas interfaces se conectará automaticamente. Em https://github.com/snapcore/snapd/wiki/Interfaces#removable-media

dobey
fonte
Eu não sei. Parece obs-studio sim, mas só o encontrei devido a mencionar a interface na descrição do aplicativo para saber como acessar o armazenamento externo. Não sei como consultar a loja para interfaces específicas em snaps. Se um snap específico não suportar a interface, presumivelmente precisará ser reconstruído para suportá-la.
Dobey