Добавьте в проект myapp.xml
, который содержит желаемые данные MIME. Это будет выглядеть примерно так:
<?xml version="1.0" encoding="UTF-8"?>
<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
<mime-type type="image/png">
<comment xml:lang="en">PNG image</comment>
<comment xml:lang="af">png beeld</comment>
...
<magic priority="50">
<match type="string" value="\x89PNG" offset="0"/>
</magic>
<glob pattern="*.png"/>
</mime-type>
</mime-info>
Дополнительные сведения о формате файлов XML см. В руководстве.
Теперь вам нужно выяснить, куда установить XML-файл. В своих проектах я предоставляю --with-xdgdatadir
вариант configure
, который оставляю читателю в качестве упражнения. По умолчанию XDGDATADIR
должно быть ${prefix}/share
(т.е. ${datarootdir}
). Добавьте в свой Makefile.am
следующее:
xdgdatadir=@XDGDATADIR@
mimedir=$(xdgdatadir)/mime
xmldir=$(mimedir)/packages
xml_DATA = myapp.xml
Это обеспечит правильную установку данных MIME.
Наконец, необходимо убедиться, что база данных MIME обновлена make install
и make uninstall
. Добавьте чек на инструмент update-mime-database
в свой configure.ac
. Затем добавьте в свой Makefile.am
следующее:
install-data-hook:
$(UPDATE_MIME_DATABASE) "$(DESTDIR)$(mimedir)"
uninstall-hook:
$(UPDATE_MIME_DATABASE) "$(DESTDIR)$(mimedir)"
Надеюсь, это ответ на ваш вопрос.
person
Peter T.B. Brett
schedule
27.06.2011