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

Appstream metadata #34

Merged
merged 2 commits into from
Jun 29, 2020
Merged

Appstream metadata #34

merged 2 commits into from
Jun 29, 2020

Conversation

ghisvail
Copy link
Contributor

I intend to submit a Flatpak for rpi-imager to Flathub (I have it working locally) and need to provide some AppStream metadata for proper registration in Linux software stores like GNOME Software or KDE Discover.

I prefer contributing these metadata upstream so that all downstream distributions can benefit (not only Flatpak). I am proposing org.raspberrypi.rpi-imager as the application ID but it can be something else, as long as the latter fulfills the requirements explained in section 2.1.3.

I used the wording in the blog post introducing the imager for the description. Feel free to review it and propose improvements. This description will become what's displayed in the software store alongside the name, summary and screenshots, so it is quite important.

<launchable type="desktop-id">rpi-imager.desktop</launchable>
<screenshots>
<screenshot type="default">
<image>https://www.raspberrypi.org/app/uploads/2020/03/RPI_intro-e1583228263677.png</image>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@XECDesign are these URLs guaranteed to continue to exist, or should they be changed to something else?

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure, it's not anything I'm familiar with.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's not that much of an issue if these snapshots were to move at a future time. You'd just have to update the metadata when it happens.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@XECDesign Would it make sense to copy these screenshots to http://downloads.raspberrypi.org/imager/ ?

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@lurch done

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@lurch updated

@ghisvail
Copy link
Contributor Author

I am proposing org.raspberrypi.rpi-imager as the application ID

A key element to agree on early is the app ID. It could also be org.raspberrypi.Imager, which is more conformant with the official guidelines (see the {product} part of the ID).

@lurch
Copy link
Contributor

lurch commented Mar 16, 2020

Naming decisions sound like a @ghollingworth thing 😉

@ghisvail
Copy link
Contributor Author

Considering the naming convention used for other binaries under this download page, I believe using org.raspberrypi.Imager may be more appropriate and consistent.

@lurch
Copy link
Contributor

lurch commented Mar 18, 2020

See also #26 😉

@ghisvail
Copy link
Contributor Author

ghisvail commented Mar 18, 2020 via email

@ghisvail
Copy link
Contributor Author

ghisvail commented Apr 1, 2020

So, are you all fine with org.raspberrypi.rpi-imager or should we go for something else?

@ghisvail
Copy link
Contributor Author

ghisvail commented Apr 8, 2020

Sorry to insist, but I won't get as much time to finalize the Flatpak in the future. All I need is a confirmation for the app-id (org.raspberrypi.rpi-imager for now).

@ghollingworth
Copy link
Contributor

That's fine

@ghisvail
Copy link
Contributor Author

ghisvail commented Apr 9, 2020

FYI, the flatpak submission is happening here.

Please wait before merging this as the Flatpak maintainers team might provide additional tips to improve it.

@ghisvail
Copy link
Contributor Author

One piece of comment I got was about the screenshots, which could be improved as far as resolution is considered. Could you generate and upload a new batch which conforms to the recommendations listed by the freedesktop, i.e. minimum width of 620px, 16:9 ratio and default theming.

As far as hosting is concerned, the screenshots could well be put in this repository inside a media or screenshots folder under linux for instance. GitHub URLs are fine for AppStream metadata.

@XECDesign
Copy link

Don't add shadows to your screenshots.

What should be done with existing shadows added by the compositing manager?

@ghisvail
Copy link
Contributor Author

What should be done with existing shadows added by the compositing manager?

There is a tolerance for that as long as it remains reasonable. I usually take screenshots with Alt+PrSc with the window active and the cropping is optimal (under GNOME).

@lurch
Copy link
Contributor

lurch commented Apr 14, 2020

I just happened to spot that Raspberry Pi Imager has been packaged as a snap.
I know nothing about either Flatpak or Snap, but pinging @popey in case there's any "metadata" that you're able to share... 🙂

@popey
Copy link

popey commented Apr 14, 2020

@lurch hello, do you mean screenshots or something else? I manually entered the metadata and took the screenshots myself. They're not in appstream (in that I didn't submit them). Not sure what specifically you're after, sorry.

@lurch
Copy link
Contributor

lurch commented Apr 14, 2020

Sorry for the ambiguous comment - I wasn't "after" anything 😆

I dunno how much or how little overlap there is between Snaps or Flatpaks, so I was merely wondering if @ghisvail and @popey would like to collaborate to prevent any duplication of effort? 🤷‍♂️

@ghisvail
Copy link
Contributor Author

Actually, the reason I want to submit these metadata is precisely so that any downstream distribution of the software, such as raw Debian or Fedora, as well as more generic packaging solutions like snap and flatpak, can all benefit 😄.

@ghisvail
Copy link
Contributor Author

Here are a handful of screenshots compliant with AppStream:

Main window:

rpi-imager_main-window

Choose OS:

rpi-imager_choose-os

Choose SD :

rpi-imager_choose-sd

Write in progress:

rpi-imager_write-in-progress

Write done:

rpi-imager_write-done

@lurch
Copy link
Contributor

lurch commented Apr 27, 2020

@ghisvail Do you want to add those screenshots to this PR? Or are you expecting some other course of action?

@ghisvail
Copy link
Contributor Author

Or are you expecting some other course of action?

I'd need a canonical URL for them. Could you upload them somewhere long term (such as in a screenshot section of the official webpage) or shall I add them somewhere in the source code?

I could use the GitHub generated URLs above, but something more "official" would be better.

@lurch
Copy link
Contributor

lurch commented Apr 27, 2020

ping @XECDesign in case he has time to upload these somewhere "canonical" ?

@XECDesign
Copy link

It's up to the repo maintainers whether hosting them on github is a better approach, but I have uploaded your screenshots here and removed the old ones:
http://downloads.raspberrypi.org/imager/

@ghisvail
Copy link
Contributor Author

The PR for the Flathub release has just been merged, so the app will be made available soon.

@lurch
Copy link
Contributor

lurch commented Apr 27, 2020

The PR for the Flathub release has just been merged

Does that imply that this PR is now ready for merging too?

<launchable type="desktop-id">rpi-imager.desktop</launchable>
<screenshots>
<screenshot type="default">
<image>https://downloads.raspberrypi.org/imager/RPI_intro-e1583228263677.png</image>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Did you forget to update this URL? 😉

@ghisvail
Copy link
Contributor Author

Does that imply that this PR is now ready for merging too?

No, no, I have to sync it with the version published on the Flathub repository.

@lurch
Copy link
Contributor

lurch commented Apr 27, 2020

Oh, so the file here is a "downstream version" of the one on Flathub? I still know nothing about flatpak, so I mistakenly assumed it was the other way around 😉

@ghisvail
Copy link
Contributor Author

Once this one is merged and a new version of rpi-imager is out, the metainfo file on the Flathub repo will be dropped in favour of the upstream version.

That's usually how we proceed. Instead of bothering upstream upfront with freedesktop integration files (.metainfo.xml and .desktop), we first do the work downstream and propose it upstream for everyone's benefit.

@lurch
Copy link
Contributor

lurch commented Apr 27, 2020

Perhaps this PR should be titled as WIP then, to stop it being merged prematurely?

@ghisvail ghisvail changed the title Appstream metadata WIP: Appstream metadata Apr 28, 2020
@ghisvail
Copy link
Contributor Author

FYI, it is now listed on Flathub and available in supported software stores:

Capture d’écran de 2020-04-28 08-22-25

@ghollingworth
Copy link
Contributor

Can we confirm what the next steps are here? Does this need to be merged?

@ghollingworth ghollingworth added the discussion There are decisions to be made label May 20, 2020
@ghisvail
Copy link
Contributor Author

@ghollingworth I have to synchronize the code with what has been reviewed for the Flathub submission. I'll try to get it done by the end of the week.

@ghollingworth
Copy link
Contributor

OK, that's great, I was hoping to get a new release out soon to close some of these PRs

@ghisvail
Copy link
Contributor Author

Merging #52 would help

@ghisvail ghisvail changed the title WIP: Appstream metadata Appstream metadata May 20, 2020
@ghisvail
Copy link
Contributor Author

@ghollingworth It's done. Sorry for the delay.

Please ping me when the new release is done so I can adjust the flatpak packaging appropriately.

@lurch
Copy link
Contributor

lurch commented Jun 14, 2020

@ghisvail V1.3 was released recently.

@ghisvail
Copy link
Contributor Author

@ghisvail V1.3 was released recently.

Great! Too bad this PR was not merged before hand.

@ghisvail
Copy link
Contributor Author

The flatpak has been updated to v1.3.

@lurch
Copy link
Contributor

lurch commented Jun 18, 2020

@ghisvail Given previous comments, I'm afraid it's still not 100% clear if this PR is "ready for merging" in this repo yet? 😕 🤷

<binary>rpi-imager</binary>
</provides>
<releases>
<release version="1.2" date="2020-03-10" />
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm guessing this would have to be updated on every release?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some upstream provide detailed release notes through the release metadata (so that changes are displayed and formatted nicely in software stores), others just keep one entry and only update the version and date (which is comparatively simpler to maintain).

Your call.

@maxnet
Copy link
Collaborator

maxnet commented Jun 18, 2020

Is listing release dates and prior versions mandatory?

If not, I would be tempted to have cmake put just the current version number in the file automatically (similar to what we do with @IMAGER_VERSION_STR@ in windows/rpi-imager.nsi.in )

@ghisvail
Copy link
Contributor Author

Is listing release dates and prior versions mandatory?

Recommended, but not mandatory.

@ghisvail
Copy link
Contributor Author

I'm afraid it's still not 100% clear if this PR is "ready for merging" in this repo yet?

I should have made myself clear then, my bad 🙏

@maxnet maxnet merged commit 12784a0 into raspberrypi:qml Jun 29, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discussion There are decisions to be made
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants