Petr Kovar
pknbe@volny.cz 2014
Eine MIME-Typspezifikation erzeugen und eine Standardanwendung registrieren.
Mario Blättermann
mario.blaettermann@gmail.com 2017, 2019
Christian Kirbach
christian.kirbach@gmail.com 2017
Tim Sabsch
tim@sabsch.com 2019

# Einen benutzerdefinierten MIME-Typ für alle Benutzer hinzufügen

Um einen benutzerdefinierten MIME-Typ für alle Benutzer des Systems hinzuzufügen und eine Vorgabeanwendung für diesen MIME-Typ zu registrieren, müssen Sie eine neue MIME-Typ-Spezifikationsdatei im Ordner /usr/share/mime/packages/ und eine .desktop-Datei im Ordner /usr/share/applications/ erstellen.

# Einen benutzerdefinierten MIME-Typ application/x-newtype für alle Benutzer hinzufügen

Legen Sie die Datei /usr/share/mime/packages/application-x-newtype.xml an:

<?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>

Das Beispiel application-x-newtype.xml oben definiert einen neuen MIME-Typ application/x-newtype und verknüpft Dateinamen mit der Erweiterung .xyz mit diesem MIME-Typ.

Legen Sie eine neue .desktop-Datei mit dem beispielhaften Namen myapplication1.desktop an und legen Sie diese im Ordner /usr/share/applications/ ab:

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

Die beispielhafte Datei myapplication1.desktop oben ordnet den MIME-Typ application/x-newtype einer Anwendung namens My Application 1 zu, die mit dem Befehl myapplication1 aufgerufen wird.

Aktualisieren Sie (mit Systemverwalterrechten) die MIME-Datenbank, damit Ihre Änderungen wirksam werden:

    # update-mime-database /usr/share/mime

Aktualisieren Sie (mit Systemverwalterrechten) die Anwendungsdatenbank:

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

Um zu überprüfen, ob Sie *.xyz-Dateien den MIME-Typ application/x-newtype erfolgreich zugeordnet haben, legen Sie zunächst eine leere Datei an, zum Beispiel test.xyz:

    $ touch test.xyz

Führen Sie dann den Befehl gio info aus:

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

Um sicherzustellen, dass myapplication1.desktop korrekt als voreingestellte registrierte Anwendung für den MIME-Typ application/x-newtype eingerichtet wurde, führen Sie den Befehl gio mime aus:

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