Estou usando o Ubuntu 12.04 com interface padrão do Unity. Instalei mais tarde a área de trabalho do KDE, XFCE, LXDE, gnome-shell e Cinnamon.
O KDE vem com aplicativos padrão diferentes do Unity, como
kwrite
para edição de texto,konsole
como terminal virtual,kfontview
para visualização e instalação de fontes,dolphin
como navegador de arquivos etc.
Outros DE vêm com alguns outros aplicativos padrão.
O problema surge quando você deseja abrir um arquivo, como um arquivo de texto, com o qual ambos podem ser abertos por gedit
e kwrite
, eu quero usar kwrite
no KDE e gedit
no Unity ou Gnome. Mas, não há como definir assim. Eu posso definir o aplicativo padrão para o arquivo de texto alterando as configurações respectivas no KDE e no Unity, mas ele se torna o padrão para o DE.
Por exemplo, se eu definir kfontviewer
como aplicativo padrão de visualização de fontes no KDE, ele também abre as fontes quando estou no Unity ou no Gnome e vice-versa. Isso é um problema porque, carregar o programa de outros DE leva muito tempo que o programa padrão para o DE usado.
Minha pergunta é: Posso usar aplicativos padrão diferentes para DE diferentes? Quão?
Respostas:
Reunimos esta solução para resolver seu problema e a testei no KDE e no XFCE com a abertura de arquivos de texto e arquivos de fonte. É uma solução genérica que deve ser aplicável a qualquer número de ambientes de desktop e tipos MIME. A maneira como funciona é que existe um script python simples chamado de abertura personalizada que abrirá um arquivo usando aplicativos diferentes para diferentes ambientes de desktop. Estas são as etapas para configurar a solução:
abertura personalizada
.custom-open.ini
portanto, o melhor dessa solução é que você pode adicionar quantos novos ambientes de desktop quiser e quantos tipos de mímica desejar. Para verificar qual nome você deve fornecer para o ambiente de área de trabalho, execute o comando abaixo em um terminal.
para verificar o tipo mime exato de um arquivo, execute:
EDITADO: A necessidade de links simbólicos foi removida, facilitando o uso. Também adicionei um manipulador de erro gráfico que exibirá um alerta se ocorrer um erro.
fonte
co.desktop
) comExec=/home/user/.scripts/Customization/Defaultapps/custom-open-text
~ / .local / share / applications. 2.) Editar./local/share/applications/mimeapps.list
e adicionar a seguinte associação padrão:text/plain=co.desktop
. Encontrou algum erro neste procedimento?Se você não encontrar a maneira "certa" de fazê-lo, poderá usar um método de força bruta como:
cd $HOME;ls -Rlrt | less
para descobrir quais arquivos foram atualizados - ou seja, onde essas opções foram salvasFelizmente, existe uma maneira de alternar ambientes da área de trabalho a partir de um shell script, com a opção de informar ao ambiente da área de trabalho de onde obter seus arquivos de configuração. Pode ser mais limpo do que mover arquivos o tempo todo, mas não pesquisei se ou como isso funciona.
Outra solução muito mais simples, mas não exatamente o que você pediu, seria apenas:
Faça todos os arquivos de dados comuns que você precisa acessar de todos esses usuários
-rwxrwxr-x
(chmod 775 list-of-files-and-directories
). Dessa forma, você não receberá erros de permissão ao gravar em um arquivo que outro dos seus "usuários" escreveu primeiro.fonte
~/.local/share/mime/