maot.dev
menu +
Todos os artigos
2 min de leitura

Integrando o explorador de arquivos nativo do Linux com o Wine

Faça aplicativos executados pelo Wine abrirem pastas no gerenciador de arquivos nativo do Linux.

Isto se destina principalmente a osu! mappers e storyboarders que precisam de uma maneira fácil de acessar as pastas de um mapa de osu! através do Wine.

Introdução

Este é um tutorial rápido sobre como editar o registro do Wine para fazê-lo abrir o explorador de arquivos nativo do Linux ao clicar no menu Abrir pasta de um aplicativo, já que o explorer.exe não se integra tão bem com o ambiente Linux.

O principal caso de uso é para aqueles que precisam trabalhar com uma grande quantidade de arquivos sendo movimentados, compartilhados ou editados. Por exemplo, osu! mappers.

Fazendo o trabalho

1. Obtendo as informações úteis

Antes de tudo, você precisa localizar o caminho para o seu prefixo do osu!:

  • Para quem utiliza o script osu-wine, por padrão ele fica em ~/.local/share/osu-wine/WINE.win32;
  • Para quem utiliza o Lutris, o caminho é solicitado no início do processo de instalação;
  • Se você tiver um prefixo personalizado, provavelmente já conhece seu caminho.

Importante: builds customizadas do Wine

Muitos jogadores de osu! usam builds personalizadas do Wine para alcançar uma melhor latência de áudio. Se você fizer isso, obtenha o caminho da build customizada.

2. Criando o wrapper do winepath no Linux

Importante: tenha certeza de que ~/.local/bin/ está no seu PATH

Criaremos um script shell em ~/.local/bin/ chamado run_as_linux:

#!/bin/sh

# This will remove a single quote (') that comes with the argument for some reason
truepath=${2::-1}

# This will execute the first argument with the Unix path provided by the second argument
echo "$truepath" | sed -e 's/\\/\//g' -e 's/://' | sed -r 's/^.{1}//' | xargs -d \\
 $1

Importante:

  • Substitua /path/para/o/wine/customizado pelo caminho do seu Wine personalizado. Se estiver usando o Wine do sistema, substitua-o apenas por wine;
  • Após salvar o arquivo, defina corretamente suas permissões com chmod +x ~/.local/bin/run_as_linux.

3. Editando o registro do Wine

Agora precisamos configurar o prefixo do Wine para chamar o wrapper a partir da aplicação. Para isso, criaremos uma nova entrada de registro para o comando Open folder.

Após abrir o registro com WINEPREFIX=/path/para/o/prefixo/do/osu/ wine regedit, siga estes passos:

  1. Crie uma chave command dentro de HKEY_CLASSES_ROOT\folder\shell\open;
  2. Apague a chave ddeexec em HKEY_CLASSES_ROOT\folder\shell\open;
  3. Defina o valor (Padrão) como /bin/sh run_as_linux NATIVE_FILE_MANAGER "%1".

Substitua NATIVE_FILE_MANAGER pelo binário do seu gerenciador de arquivos nativo, como Nautilus, Dolphin, Thunar ou xdg-open.

Pronto

Agora você pode abrir sua pasta de beatmap—ou qualquer outra pasta—no explorador de arquivos nativo a partir do osu!

Referências