Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Provide AppData XML file #5

Open
musicinmybrain opened this issue Apr 21, 2021 · 3 comments
Open

Provide AppData XML file #5

musicinmybrain opened this issue Apr 21, 2021 · 3 comments

Comments

@musicinmybrain
Copy link
Contributor

I’m the new volunteer maintainer of the harmonyseq package in Fedora Linux.

Along with a harmonyseq.desktop file, harmonySEQ should provide a harmonyseq.metainfo.xml file containing AppStream metadata so that it can show up in places like the GNOME Software Center. See https://www.freedesktop.org/software/appstream/docs/chap-Quickstart.html#sect-Quickstart-DesktopApps and also https://docs.fedoraproject.org/en-US/packaging-guidelines/AppData/.

As I finish bringing the package in Fedora Linux up to date, I plan to write a harmonyseq.metainfo.xml file and offer it upstream by attaching it to this issue.

@musicinmybrain
Copy link
Contributor Author

Here’s a trivial AppData XML file, which I plan to use in the Fedora package:

com.wordpress.harmonyseq.metainfo.xml:

<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright 2021 Benjamin A. Beasley <[email protected]> -->
<component type="desktop-application">
  <id>com.wordpress.harmonyseq</id>
  
  <name>harmonySEQ</name>
  <summary>MIDI sequencer designed for live performances</summary>
  
  <metadata_license>CC0-1.0</metadata_license>
  <project_license>GPL-3.0-or-later</project_license>
  
  <description>
    <p>
      A MIDI software sequencer designed for live performances and jams.
    </p>
  </description>
  
  <launchable type="desktop-id">harmonyseq.desktop</launchable>
  <url type="homepage">https://harmonyseq.wordpress.com/</url>
</component>

You could improve it, if you choose, by:

  • Extending the description to match the README. I can’t put the full text in there, because I can’t relicense it from GPL-3.0-or-later to an appropriate metadata license such as CC0-1.0. But you can! (Since I provided the above XML under CC0-1.0, which is public-domain or as near as legally recognized, you are free to re-release the XML file under another appropriate metadata license you like better.)
  • Adding links to screenshots. The screenshots must be available under the metadata license, so this is hard for me to do downstream too.
  • Localizing the text.

You also might like to rename the desktop file to match the reverse-DNS scheme unique identifier (https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html#tag-id-generic) used in the XML file. This seems to be common practice.

@rafalcieslak
Copy link
Owner

Hi @musicinmybrain, thanks a lot for your advice. While I can't maintain packages for various distros myself, I can at least do my best to help other maintainers. I don't mind adding this kind of metadata directly to repository and release distributions, especially if it makes desktop integration easier. I hope to soon prepare the relevant changes according to your template; thanks for these useful links 👍

One thing to note: I'd prefer that wordpress not be considered the vendor of harmonyseq. They are a non-affiliated third party, merely hosting the website, but relying on their domains to guarantee package name uniqueness doesn't seem right. I own cielak.org which is under my control, I've registered harmonyseq.cielak.org (and configured it to redirect to harmonyseq.wordpress.com), so that domain should be a better fit for a package ID.

I'll address your other remarks (and also #6) in a PR which I hope to prepare soon. Would you be so kind to review these changes before I merge them? Once they are done, would it be convenient for you if I released a 0.17.1 consisting merely of these changes so that relevant metadata is available in an official release, or is that unnecessary?

@musicinmybrain
Copy link
Contributor Author

Thanks for looking at this.

I agree that org.cielak.harmonyseq is a better application ID.

I will be happy to review the changes when you are ready. There is no hurry; I am still working on getting the package in Fedora updated to 0.17.

Whether you make a new release is up to you. If you do, I will package it; if you don’t, I will patch in the changes from git until the next release happens. Either is easy enough for me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants