7.2. Adicionando um tipo MIME personalizado para todos os usuários

Você deve criar um novo arquivo de especificação do tipo MIME no diretório /usr/share/mime/packages/ e um arquivo .desktop no diretório /usr/share/applications/ para adicionar um tipo MIME personalizado para todos os usuários do sistema e registrar um aplicativo padrão para esse tipo MIME.

Procedimento

  1. Crie o arquivo /usr/share/mime/packages/application-x-newtype.xml com o seguinte conteúdo:

    <?xml version="1.0" encoding="UTF-8"?>
    
    <mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
      <mime-type type="application/x-newtype">
        <comment>new mime type</comment>
        <glob pattern="*.xyz"/>
      </mime-type>
    </mime-info>

    A amostra de arquivo application-x-newtype.xml aqui define uma nova aplicação do tipo MIME/x-newtype e atribui nomes de arquivo com a extensão .xyz a esse tipo MIME.

  2. Criar um novo arquivo .desktop chamado, por exemplo, myapplication1.desktop no site /usr/share/applications/ com o seguinte conteúdo:

    [Desktop Entry]
    Type=Application
    MimeType=application/x-newtype
    Name=My Application 1
    Exec=myapplication1

    O arquivo de amostra myapplication1.desktop associa aqui o tipo application/x-newtype MIME a um aplicativo chamado My Application 1. Ele é executado por um comando myapplication1.

  3. Como usuário root, atualize o banco de dados MIME para que suas alterações tenham efeito.

    # update-mime-database /usr/share/mime
  4. Como usuário root, atualizar o banco de dados da aplicação.

    # update-desktop-database /usr/share/applications

Etapas de verificação

  1. Para verificar se você associou com sucesso os arquivos *.xyz com o tipo application/x-newtype MIME, primeiro crie um arquivo vazio, por exemplo, test.xyz e execute os seguintes comandos:

    $ touch test.xyz
    
    $ gvfs-info test.xyz | grep "standard::content-type"
      standard::content-type: application/x-newtype
  2. Para verificar se myapplication1.desktop está configurado corretamente como aplicação registrada padrão para o tipo application/x-newtype MIME, execute o seguinte comando:

    $ gio mime --query application/x-newtype
    Default application for 'application/x-newtype': myapplication1.desktop
    Registered applications:
    	myapplication1.desktop
    Recommended applications:
    	myapplication1.desktop