Petr Kovar pknbe@volny.cz 2014 Create a user's MIME type specification and register a default application. Add a custom MIME type for individual users

To add a custom MIME type for individual users and register a default application for that MIME type, you need to create a new MIME type specification file in the ~/.local/share/mime/packages/ directory and a .desktop file in the ~/.local/share/applications/ directory.

Add a custom <code>application/x-newtype</code> MIME type for individual users

Create the ~/.local/share/mime/packages/application-x-newtype.xml file:

new mime type ]]>

The sample application-x-newtype.xml file above defines a new MIME type application/x-newtype and assigns file names with the .xyz extension to that MIME type.

Create a new .desktop file named, for example, myapplication1.desktop, and place it in the ~/.local/share/applications/ directory:

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

The sample myapplication1.desktop file above associates the application/x-newtype MIME type with an application named My Application 1, which is run by a command myapplication1.

Update the MIME database for your changes to take effect:

$ update-mime-database ~/.local/share/mime

Update the application database:

$ update-desktop-database ~/.local/share/applications

To verify that you have successfully associated *.xyz files with the application/x-newtype MIME type, first create an empty file, for example test.xyz:

$ touch test.xyz

Then run the gio info command:

$ gio info test.xyz | grep "standard::content-type" standard::content-type: application/x-newtype

To verify that myapplication1.desktop has been correctly set as the default registered application for the application/x-newtype MIME type, run the gio mime command:

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