From 1040fb804475127394c09c25d11e26ab51b79947 Mon Sep 17 00:00:00 2001 From: Petter Reinholdtsen Date: Wed, 15 Jan 2025 18:54:10 +0100 Subject: [PATCH] Added AppStream metadata XML listing supported hardware. The AppStream metadata is package metadata shared across Linux distributions, see https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html . It include support for mapping to relevant hardware IDs, like USB IDs in this case. This allow programs like isenkram to map relevant hardware to this package, and propose to install the package when supported hardware is available or inserted in a computer. This patch was originally submitted to Debian as https://bugs.debian.org/1077343 . The patch include installation rules to install the XML file and referred XDG desktop file. --- CMakeLists.txt | 4 ++++ gui/CMakeLists.txt | 5 +++++ gui/org.gpsbabel.gui.metainfo.xml | 20 +++++++++++++++++++ org.gpsbabel.tool.metainfo.xml | 32 +++++++++++++++++++++++++++++++ 4 files changed, 61 insertions(+) create mode 100644 gui/org.gpsbabel.gui.metainfo.xml create mode 100644 org.gpsbabel.tool.metainfo.xml diff --git a/CMakeLists.txt b/CMakeLists.txt index 858552b75..99d5623b0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -511,3 +511,7 @@ if((CMAKE_SOURCE_DIR STREQUAL CMAKE_BINARY_DIR) AND NOT _isMultiConfig) else() message(WARNING "Document generation is only supported for in-source builds with single configuration generators.") endif() + +if(UNIX AND NOT APPLE) + install(FILES "org.gpsbabel.tool.metainfo.xml" DESTINATION share/metainfo) +endif() diff --git a/gui/CMakeLists.txt b/gui/CMakeLists.txt index dc4e0939c..b9b09590f 100644 --- a/gui/CMakeLists.txt +++ b/gui/CMakeLists.txt @@ -247,3 +247,8 @@ else() endif() endif() endif() + +if(UNIX AND NOT APPLE) + install(FILES "gpsbabel.desktop" DESTINATION share/applications) + install(FILES "org.gpsbabel.gui.metainfo.xml" DESTINATION share/metainfo) +endif() diff --git a/gui/org.gpsbabel.gui.metainfo.xml b/gui/org.gpsbabel.gui.metainfo.xml new file mode 100644 index 000000000..8e9d234fe --- /dev/null +++ b/gui/org.gpsbabel.gui.metainfo.xml @@ -0,0 +1,20 @@ + + + org.gpsbabel.gui + MIT + gpsbabel-gui + GPS file conversion plus transfer to/from GPS units + +

GPSBabel converts waypoints, tracks, and routes from one format + to another, whether that format is a common mapping format like + Delorme, Streets and Trips, or even a serial upload or download to + a GPS unit such as those from Garmin and Magellan.

+

This package contains gpsbabelfe, a QT based frontend for + gpsbabel.

+
+ https://www.gpsbabel.org/ + gpsbabel.desktop + + usb:v091Ep0003d* + +
diff --git a/org.gpsbabel.tool.metainfo.xml b/org.gpsbabel.tool.metainfo.xml new file mode 100644 index 000000000..737039b4c --- /dev/null +++ b/org.gpsbabel.tool.metainfo.xml @@ -0,0 +1,32 @@ + + + org.gpsbabel.tool + MIT + gpsbabel + GPS file conversion plus transfer to/from GPS units + +

GPSBabel converts waypoints, tracks, and routes from one format + to another, whether that format is a common mapping format like + Delorme, Streets and Trips, or even a serial upload or download to + a GPS unit such as those from Garmin and Magellan.

+ +

GPSBabel supports dozens of data formats and will be useful for + tasks such as geocaching, mapping, and converting from one GPS + unit to another. Among the interesting formats it supports are + several GPS devices via a serial link, various PDA-based mapping + programs, and various Geocaching data formats.

+ +

Among others GPSBabel supports the following formats:

+ +

CSV, Custom CSV DNA, EasyGPS Binary, Fugawi, Garmin serial, + Geocaching.com loc, GPSDrive, GPX, Holux, IGC, Magellan serial, + Magellan SD, Mapopolis.Com Mapconverter, Mapsource, Maptech, + Microsoft Streets and Trips, NIMA/GNIS Geographic Names, NMEA + sentences, OziExplorer, Tab-separated data, Topo by National + Geographic, xcsv

+
+ https://www.gpsbabel.org/ + + usb:v091Ep0003d* + +