Para aqueles que procuram definir uma associação de aplicativo para extensões de arquivo , NÃO é um tipo MIME:
Aparentemente, o Ubuntu / Linux mantém isso indiretamente: * extensão de arquivo -> tipos MIME * tipo MIME -> aplicativos a serem abertos * aplicativos -> lista de tipos MIME compatíveis
Para o Ubuntu (18.x), estes são descritos em:
extensão de arquivo -> tipos MIME
Isso está em arquivos em /usr/share/mime/packages/
. Por exemplo:
sudo touch /usr/share/mime/packages/staruml.xml
sudo cat << EOF > /usr/share/mime/packages/staruml.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
<mime-type type="application/staruml-project">
<comment>StarUML project</comment>
<glob pattern="*.MDJ"/>
<glob pattern="*.mdj"/>
</mime-type>
</mime-info>
EOF
Tipo MIME -> aplicativos a serem abertos
Isso é conduzido ~/.local/share/applications/mimeapps.list
e detalhado pelas outras respostas.
[Default Applications]
echo 'application/staruml=staruml.desktop' >> ~/.local/share/applications/mimeapps.list
## Or, for global:
echo 'application/staruml=staruml.desktop' >> /usr/share/applications/mimeapps.list
Aplicativos -> lista de tipos MIME compatíveis
Isso é impulsionado pelos .desktop
arquivos em /usr/share/applications/
. Esse arquivo pode conter uma MimeType=
entrada com uma lista separada por ponto e vírgula de tipos MIME. Por exemplo, o aplicativo EOG possui: MimeType=image/bmp;image/gif;image/jpeg;image/jpg;...
etc.
sudo touch /usr/share/applications/staruml.desktop
sudo cat << EOF > /usr/share/applications/staruml.desktop
[Desktop Entry]
Name=StarUML
Comment=StarUML
GenericName=StarUML
Exec=/sw/prog/StarUML/StarUML-3.1.0-x86_64.AppImage %U
Icon=/sw/prog/StarUML/staruml.png
Type=Application
StartupNotify=false
Categories=Development;Programming;Modeling;UML
MimeType=application/staruml-project;
EOF
Isso o torna um círculo completo. As alterações entram em vigor após a execução
sudo update-mime-database /usr/share/mime
e, para ícones,
sudo gtk-update-icon-cache /usr/share/icons/gnome -f
Ou talvez seja necessário que você faça logout / login.
Então, você poderá ver isso:
$ mimetype .mdj
.mdj: application/staruml-project
Referência: https://coderwall.com/p/qjda2q/create-new-mime-type-and-assign-an-icon-to-it-in-ubuntu