summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* FITS: Add missing `application/fits` and legacy globsAllison Reid2022-01-242-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make `image/fits` an alias, matching its designation of a subset of the FITS standard, as per https://datatracker.ietf.org/doc/html/rfc4047#section-5 - "The general nature of the full FITS standard requires the use of the media type "application/fits". Nevertheless, the principal intent for a great many FITS files is to convey a single data array in the PHDU, and such arrays are very often 2-dimensional images. Several common image viewing applications already display single-HDU FITS files, and the prototypes for virtual observatory projects specify that data provided by web services be conveyed by the data array in the PHDU. These uses justify the registration of a second media type, namely "image/fits", for files which use the subset of the standard described by the original FITS standard paper." The existing alias `image/x-fits` was common before the standardization of `application/fits` and `image/fits`, so it should stay. Current standards and historical contexts can be found here: - https://fits.gsfc.nasa.gov/fits_standard.html - https://listmgr.nrao.edu/pipermail/fitsmime/2002-December/thread.html - https://www.ucolick.org/~sla/fits/mime/comments.html Add missing eight-dot-three-style `*.fit` and `*.fts` globs for legacy files, matching the list supported by `libvips`, i.e., https://github.com/libvips/libvips/blob/757d03100566368e5d06c7355e73c1215dd34968/libvips/foreign/fits.c#L132 And as discussed in the FITS standard definition (`fits_standard40aa-le.pdf`) - "In the absence of other information it is reasonably safe to presume that a file name ending in ‘.fits’ is intended to be a FITS file. Nevertheless, there are other commonly used ex- tensions; e.g., ‘.fit’, ‘.fts’, and many others not suitable for listing in a media type registration."
* Add Godot engine filesMichael Alexsander2021-12-1310-1/+280
|
* Add FlashForge "xgcode" mime-typeBastien Nocera2021-12-123-0/+9
| | | | | | | FlashForge's FlashPrint software uses gcode with a binary header containing extra data to save sliced models. Seeing as they have a known magic and that we might want to use them outside of FlashPrint itself, add a mime-type.
* text/x-objc++src: new typeIgor Kushnir2021-12-129-3/+42
| | | | | | | | | | | | | | | | | | | | | | | | | This MIME type name is used in Qt Creator [1] and KDevelop [2]. A different name - text/x-objcpp-src - is used in KSyntaxHighlighting [3]. The name text/x-objc++src is consistent with the existing MIME type names text/x-c++src and text/x-objcsrc. So KSyntaxHighlighting's name will have to be replaced later. The Objective-C Wikipedia article and the KSyntaxHighlighting's data file [3] claim that *.M is one of the file extensions of Objective-C++ source files. But since macOS's file system is case-insensitive by default, *.mm is used almost universally. Thus there is no need to complicate the MIME type database with case-sensitive attributes. Make text/x-troff-mm a subclass of text/troff to reuse its magic element. As far as I can tell, these two file formats share the same comment syntax, which is encoded in text/troff's magic. Add Objective-C, Objective-C++, Troff, Troff MM and C tests to verify correct detection of the new MIME type and the absence of regressions. [1] https://code.qt.io/cgit/qt-creator/qt-creator.git/tree/src/plugins/cppeditor/CppEditor.json.in?id=2cc28dea65846153d16c213283ffac7af530590d#n100 [2] https://invent.kde.org/kdevelop/kdevelop/-/blob/ebd207cca2387b5734a591803381880505e39a30/plugins/astyle/astyle_plugin.cpp#L284 [3] https://invent.kde.org/frameworks/syntax-highlighting/-/blob/0b2c0dc5368de519c4e9517a4dec69017df4cd6c/data/syntax/objectivecpp.xml#L3
* image/heif: test .hif extension tooVille Skyttä2021-12-122-1/+1
| | | | https://gitlab.freedesktop.org/xdg/shared-mime-info/-/merge_requests/151#note_1098689
* image/hif: add *.hif globVille Skyttä2021-12-121-0/+1
| | | | Refs https://www.iana.org/assignments/media-types/image/heif
* image/heif: add another test caseVille Skyttä2021-12-122-0/+2
|
* image/heif: add magicsVille Skyttä2021-12-122-2/+10
| | | | https://nokiatech.github.io/heif/technical.html
* Add a build-tools option to allow installing only the mime dataAlex Richardson2021-12-122-6/+11
| | | | | | | When set to false this allows installing only the data files but not the update-mime-database program. This is useful for me since I am cross-compiling for an architecture that does not have a working glib-2.0 port yet.
* Add more acronymsVille Skyttä2021-12-111-0/+38
|
* Add compressed SVG glob pattern `*.svg.gz`Gaël Bonithon2021-12-111-0/+1
|
* Add Apple Wallet pass type application/vnd.apple.pkpassKai Uwe Broulik2021-12-023-0/+11
| | | | | | | De-facto standard mentioned by Apple in [1] and [2]. [1] https://developer.apple.com/library/archive/documentation/UserExperience/Conceptual/PassKit_PG/DistributingPasses.html [2] https://developer.apple.com/documentation/walletpasses/send_an_updated_pass
* migrate from custom itstool to builtin msgfmt for creating translated XMLEli Schwartz2021-11-215-27/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | gettext upstream has supported this for a very long time (since 0.19.7 via commit b3c2a5a242c36fbbaa0c5b17f975d6c638598a23, released in 2015), and itstool is (mostly) a legacy of the time before gettext had proper support for these sorts of use cases. This is similar to the state of intltool, which is described at https://wiki.gnome.org/MigratingFromIntltoolToGettext During the port from autotools to meson, the legacy use of itstool was faithfully translated to meson in the only way possible: by jumping through hoops to run ninja inside ninja in order to generate the .mo files for itstool, because meson's i18n module used a flawed design and there was no "real" target to create those files, only a .PHONY run_target which other rules cannot depend on. Although meson 0.60.0 added support for real targets for the built .mo files, this changed the rules for output filenames, breaking the script. But msgfmt does not care, and anyways comes with builtin meson functions for convenient use with XML files. So let's take this opportunity to drop legacy dependencies and use the modern, builtin tooling, which fixes this bug as a side effect. Fixes #170
* Make the remaining plain text types subclasses of text/plainAlex Henrie2021-10-101-0/+10
| | | | | These omissions were identified by searching the document for types without a superclass and then manually reviewing the resulting list.
* Generate and commit a missing test fileIgor Kushnir2021-10-101-0/+1
| | | | | | | | | | | | | b969e1c74e7c905a96c1590f5350a264dbaa83ae added a reference to this file and a command to generate it into tests/mime-detection/list, but didn't commit the generated file itself. Now when test-mime fails for some other reason (e.g. after adding a failing test case), the following error message is printed: Could not open /path/to/shared-mime-info/tests/mime-detection/test-not-dtshd.txt Presumably when the test file does not exist, the intended 'data' test does not run. The testing system should be improved to report such nonexistent file issues as test failures.
* audio/mobile-xmf: separate from audio/x-xmfVille Skyttä2021-10-101-2/+10
| | | | | https://www.iana.org/assignments/media-types/audio/mobile-xmf https://www.iana.org/assignments/media-types/audio/vnd.nokia.mobile-xmf
* Adding ZIM fileGiovanni Alfredo Garciliano Díaz2021-10-103-0/+11
|
* Make text/x-mrml a subclass of application/xmlAlex Henrie2021-10-091-0/+1
| | | | | | | | Section 3 of the MRML specification states "it is XML-based, meaning that standard parsers can be used to process the communication messages." https://www.researchgate.net/publication/2329915_MRML_An_Extensible_Communication_Protocol_for_Interoperability_and_Benchmarking_of_Multimedia_Information_Retrieval_Systems
* image/avif: move acronym and expansion to separate fields from commentVille Skyttä2021-10-091-1/+3
| | | | https://aomediacodec.github.io/av1-avif/#general
* freedesktop_generate.sh: Don't hardcode ninjaorbea2021-10-011-1/+1
| | | | | | Another ninja implementation that works is samurai https://github.com/michaelforney/samurai
* Add text/x-mpl2Ignacy Kuchciński2021-09-303-0/+918
|
* application/x-apple-systemprofiler+xml: require _SPCommandLineArguments in plistwork/scop/jpeg-vs-systemprofilerVille Skyttä2021-09-082-1/+6
| | | | | | | | | | | | | | Look for `<key>_SPCommandLineArguments</key>` in addition to plist root element to distinguish from other property list XML files. Our offset specifiers aren't that fancy, so this can trigger on files that have the above string ´_before_ `<plist version="1.0"`, but those should be quite pathological cases. Start offset 34 is length of `<plist version="1.0"><array><dict>`, 384 is arbitrary guesswork. Closes https://gitlab.freedesktop.org/xdg/shared-mime-info/-/issues/169
* image/jpeg: add test case with embedded property list XMLVille Skyttä2021-09-082-0/+4
| | | | https://gitlab.freedesktop.org/xdg/shared-mime-info/-/issues/169
* audio/vnd.dts.hd: include parent type magic in magic matchVille Skyttä2021-08-112-1/+5
| | | | | | | | | | | | | | | | | | | Matching just 0x64582025 within the first 18725 bytes of any file is prone to false positives. The priority of the magic match here being bumped to 60 seems to indicate intent to make it take precedence over the parent `audio/vnd.dts`. But we should take the parent magic into account here as it does not "inherit" with `sub-class-of`. As the comment for this match says "16bits HD be", accept only "16bits core be" as the parent at least for now, not all possible parent magics -- it would not seem consistent to have it in "14bits" variants, or the "16bits core le" one. The test case we have for this is one matching "16bits core be". Refs https://gitlab.freedesktop.org/xdg/shared-mime-info/-/issues/166 Refs https://gitlab.freedesktop.org/xdg/shared-mime-info/-/issues/167
* model/gltf+json: new typeVille Skyttä2021-07-293-0/+64
| | | | https://www.iana.org/assignments/media-types/model/gltf+json
* model/gltf-binary: new typeVille Skyttä2021-07-293-0/+11
| | | | https://www.iana.org/assignments/media-types/model/gltf-binary
* application/x-object: add *.mod and a test caseVille Skyttä2021-07-303-1/+3
| | | | | | For GRUB modules. Closes https://gitlab.freedesktop.org/xdg/shared-mime-info/-/issues/165
* application/x-mod: add some ProTracker magics and a test caseVille Skyttä2021-07-303-0/+4
| | | | https://wiki.multimedia.cx/index.php/Protracker_Module#File_Format
* *: delete trailing whitespaceVille Skyttä2021-07-305-42/+41
|
* image/jxl: include test files in test listVille Skyttä2021-06-301-0/+2
| | | | | | | | I failed to include the test files in the list in 238f20f82d485dafa16904c5bd1b07c8034ddacd, and unfortunately can no longer remember their origin. I likely took an existing one from the test suite and converted from it, but the details and tools used escape me.
* tests: add trailing linefeed to mime-detection listVille Skyttä2021-06-281-1/+1
| | | | | | My editor keeps adding it (which is nice), but I need to remove it manually all the time not to include it as unrelated whitespace in other commits (which is not). Just add it.
* Make application/x-mswinurl a subclass of text/plainAlex Henrie2021-06-281-0/+1
| | | | | | If the user has no program installed that handles .url files, the file should open in a text editor so that the user can copy and paste the URL manually.
* Change description for *.desktop files to "desktop entry"David Faure2021-06-281-1/+1
| | | | Closes https://gitlab.freedesktop.org/xdg/shared-mime-info/-/issues/67
* application/x-x509-ca-cert: add magics and test casesVille Skyttä2021-06-244-0/+68
| | | | | | "BEGIN/END CA CERTIFICATE" seems to be a thing, although not that common. "BEGIN/END TRUSTED CERTIFICATE" is an OpenSSL marker for trusted certificates, see x509(1).
* application/pkix-cert: add BEGIN/END X509 CERTIFICATE magicVille Skyttä2021-06-243-0/+33
|
* application/pkix-crl: add magic and test caseVille Skyttä2021-06-243-0/+22
|
* application/pkix-cert: add magic and test caseVille Skyttä2021-06-243-0/+35
|
* image/jxl: new typeVille Skyttä2021-06-063-0/+8
| | | | Closes https://gitlab.freedesktop.org/xdg/shared-mime-info/-/issues/159
* Added .sc filename extension for Scala source code, as it is occasionally usedBrennon Miller2021-05-281-0/+1
|
* application/schema+json: new typeAlex Henrie2021-05-283-0/+18
| | | | | | | JSON Schema files are distinguished from other JSON files by a "$schema" property which is typically at the beginning of the file. https://datatracker.ietf.org/doc/html/draft-bhutton-json-schema-00
* Add text/x-crystalGeopJr2021-05-283-0/+9
|
* application/x-krita: remove stray period from commentVille Skyttä2021-05-271-1/+1
| | | | | | | | Commit d033c511c9851e63ed44c0c7bdba2b689396aded added it but didn't state a reason, assuming accidental because that's not what we usually do. Refs https://gitlab.freedesktop.org/xdg/shared-mime-info/-/merge_requests/114
* adding org-modeGiovanni Alfredo Garciliano Díaz2021-05-273-0/+23
|
* Add Elixir source code mime typeNicolas Morais2021-05-271-0/+6
|
* Add two new offsets for .kra and .krzHalla Rempt2021-05-271-1/+5
|
* text/x-python3: add *.pyi glob (Python stub files)Illia Volochii2021-05-273-0/+3
| | | | | | | | | | Stub files are files containing type hints, they are written in normal Python 3 syntax, but generally leaving out runtime logic like variable initializers, function bodies, and default arguments. https://www.python.org/dev/peps/pep-0484/#stub-files https://mypy.readthedocs.io/en/stable/stubs.html#stub-file-syntax
* image/x-canon-cr3: newChris Mayo2021-05-151-1/+8
| | | | | | Supported since LibRaw 202101 snapshot. https://github.com/lclevy/canon_cr3
* image/x-xpixmap: make XPM3 magic more specificVille Skyttä2021-05-131-1/+1
|
* image/x-xpixmap: add XPM2 magicVille Skyttä2021-05-133-0/+14
| | | | https://en.wikipedia.org/wiki/X_PixMap#XPM2
* application/x-troff-man: add *.[1-9] globVille Skyttä2021-05-132-0/+2
|