Seres humanos, sub-seres e escravos da tecnologia da informação, aqui começa mais uma Dica do Dino® trazendo para vocês informações de um bom senso jamais visto em um país em que juízes são aplaudidos por agirem à margem da lei. Hoje falaremos do
Discord, um cliente de mensagens instantâneas descentralizado muito usado por gamers devido à leveza e à qualidade de seu canal de áudio. Na data em que escrevo, recém convenci minha esposa a usar GNU/Linux, e eis que nos deparamos com uma coisa estranha: se ela deixasse o usuário dela logado no computador com o Discord aberto, eu não conseguia abrir o Discord no meu usuário. Pesquisando um bocado, encontrei uma solução simples de doer pro problema.
Sem mais delongas, vamos ao trabalho?
Mas por que, em nome de Satã, isso acontece?
Quando você loga na sua conta pelo cliente oficial do Discord, o filho de uma pessoa de bem cria o arquivo
/tmp/discord.sock, que serve como soquete de comunicações pro áudio e tal e como trava para evitar que múltiplas instâncias do programa sejam abertas simultaneamente. Pois bem, acontece que o nome do arquivo é
hardcoded no código JavaScript usado pelo cliente oficial do Discord, ou seja, nem com muita propina pode ser alterado.
Mas Dino®, você tem a solução para o problema?
Claro, pessoa de pouca luz, pois do contrário eu não estaria escrevendo esta Dica do Dino®. Ela envolve uma modificação no arquivo
discord.desktop, que é o lançador do programa. Essa modificação é necessária para levar o Discord a usar outro diretório que não o
/tmp como diretório para arquivos temporários.
Pois bem... esse arquivo estará em algum lugar do seu computador, dependendo de como você o tenha instalado. Usuários do openSUSE Tumbleweed, por exemplo, encontram o Discord nos repositórios oficiais da distribuição. Bem, uma vez encontrado o arquivo você verá nele um texto parecido com esse aqui:
[Desktop Entry]
Name=Discord
StartupWMClass=discord
Comment=All-in-one voice and text chat for gamers that's free, secure, and works on both your desktop and phone.
GenericName=Internet Messenger
Exec=/usr/bin/discord
Icon=discord
Type=Application
Categories=Network;InstantMessaging;
X-Desktop-File-Install-Version=0.23
Esse é o arquivo no openSUSE. Bem, faça esta mudancinha aqui:
[Desktop Entry]
Name=Discord
StartupWMClass=discord
Comment=All-in-one voice and text chat for gamers that's free, secure, and works on both your desktop and phone.
GenericName=Internet Messenger
Exec=/bin/bash -c "mkdir -p /tmp/${USER} ; TMPDIR=/tmp/${USER} /usr/bin/discord"
Icon=discord
Type=Application
Categories=Network;InstantMessaging;
X-Desktop-File-Install-Version=0.23
Como vocês podem ver, a linha começando por
Exec recebeu um mini shell script cujo propósito é assegurar que dentro de
/tmp haverá um diretório para cada usuário e que o Discord use esse diretório como seu diretório de arquivos temporários. Para garantir que atualizações não alterem isso, rode:
# chattr +i /caminho/para/discord.desktop
E para finalizar, rode:
$ update-desktop-database /diretório/onde/discord.desktop/está # o comando precisa ser executado como root caso o discord.desktop esteja em
/usr/share/applications
E com isso problema resolvido!
Conclusão
E é isso, gente, com isso eu encerro esta Dica do Dino® desejando para todos vocês
GET RED SLACK OR DIE, BEACHES!!!
Nenhum comentário foi encontrado.