From 4eae4503bffd24cd1679ad10cf7ef6e7bfa08dfa Mon Sep 17 00:00:00 2001 From: Sophie Herold Date: Mon, 17 Apr 2023 23:50:18 +0200 Subject: [PATCH] data: Generate list of mime types in meson First, this format is more easy to maintain. Second, future image decoder dependencies will be opt-out via build options. This way we can also not add the mime types in that case. Closes #125 Part-of: --- data/meson.build | 45 ++++++++++++++++++++++++++++++ data/org.gnome.Loupe.desktop.in.in | 2 +- 2 files changed, 46 insertions(+), 1 deletion(-) diff --git a/data/meson.build b/data/meson.build index 76605c0..3bbe842 100644 --- a/data/meson.build +++ b/data/meson.build @@ -1,3 +1,48 @@ +mime_types = [] + +# image-rs +mime_types += [ + 'image/jpeg', + 'image/png', + 'image/gif', + 'image/webp', + 'image/tiff', + # TGA + 'image/x-tga', + # DDS + 'image/vnd-ms.dds', + 'image/x-dds', + 'image/bmp', + # .ico + 'image/vnd.microsoft.icon', + # HDR + 'image/vnd.radiance', + # OpenEXR + 'image/x-exr', + # PNM + 'image/x-portable-bitmap', + 'image/x-portable-graymap', + 'image/x-portable-pixmap', + 'image/x-portable-anymap', + # Qoi's MIME type is being worked on. + # See: https://github.com/phoboslab/qoi/issues/167 + 'image/x-qoi', +] + +# SVG +mime_types += [ + 'image/svg+xml', + 'image/svg+xml-compressed', +] + +# HEIF +mime_types += [ + 'image/avif', + 'image/heic', +] + +conf.set('MIME_TYPES', ';'.join(mime_types) + ';') + desktop_file = i18n.merge_file( input: configure_file( input: 'org.gnome.Loupe.desktop.in.in', diff --git a/data/org.gnome.Loupe.desktop.in.in b/data/org.gnome.Loupe.desktop.in.in index 5299fe8..594c376 100644 --- a/data/org.gnome.Loupe.desktop.in.in +++ b/data/org.gnome.Loupe.desktop.in.in @@ -6,6 +6,6 @@ DBusActivatable=true Terminal=false Type=Application Categories=GNOME;GTK;Graphics;2DGraphics;RasterGraphics;Viewer; -MimeType=image/avif;image/x-dds;image/x-ff;image/heic;image/heif;image/x-exr;image/x-targa;image/x-tga;image/webp;image/bmp;image/gif;image/jpeg;image/jpg;image/pjpeg;image/png;image/tiff;image/x-bmp;image/x-gray;image/x-icb;image/x-ico;image/x-png;image/x-portable-anymap;image/x-portable-bitmap;image/x-portable-graymap;image/x-portable-pixmap;image/x-xbitmap;image/x-xpixmap;image/x-pcx;image/svg+xml;image/svg+xml-compressed;image/vnd.wap.wbmp;image/x-icns; +MimeType=@MIME_TYPES@ Keywords=Picture;Slideshow;Graphics;Image Viewer; StartupNotify=true