Петр Ковар (Petr Kovar)
pknbe@volny.cz 2014
Создание спецификации типа MIME и регистрация приложения по умолчанию.
Ser82-png
asvmail.as@gmail.com 2022-2023

# Добавление пользовательского типа MIME для всех пользователей

Чтобы добавить пользовательский тип MIME для всех пользователей в системе и зарегистрировать приложение для этого типа MIME, необходимо создать новый файл спецификации MIME-типа в каталоге /usr/share/mime/packages/ и файл .desktop в каталоге /usr/share/applications/.

# Добавление пользовательского типа MIME application/x-newtype для всех пользователей

Создайте файл /usr/share/mime/packages/application-x-newtype.xml:

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

Приведённый выше пример файла application-x-newtype.xml определяет новый MIME-тип application/x-newtype и связывает названия файлов с расширением .xyz с этим типом MIME.

Создайте новый .desktop файл с названием, например, myapplication1.desktop, и поместите его в каталог /usr/share/applications/:

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

Приведённый выше пример файла myapplication1.desktop связывает MIME-тип application/x-newtype с приложением My Application 1, которое запускается командой myapplication1.

От имени root обновите базу данных MIME, чтобы ваши изменения вступили в силу:

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

От имени root обновите базу данных приложений:

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

Чтобы убедиться, что вы успешно связали файлы *.xyz с типом MIME application/x-newtype, для начала создайте пустой файл, например test.xyz:

    $ touch test.xyz

Затем запустите команду gio info:

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

Чтобы убедиться, что myapplication1.desktop был правильно установлен в качестве зарегистрированного приложения по умолчанию для типа MIME application/x-newtype, запустите команду gio mime:

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