Greetings,
I am a new contributor to Fedora packaging. My actual target is to add some applications I use but are not packaged yet. But since adding a new package is quite complex and Fedora also places some requirements before a contributor is allowed to do that, I have started learning by doing some simpler tasks first.
I have been looking at various packages I use personally, trying to find some things to improve. I noticed that the gpodder https://src.fedoraproject.org/rpms/gpodder package would benefit from some work on its AppStream metadata. My first though was to simply make it comply with the Packaging Guidelines: AppData https://docs.fedoraproject.org/en-US/packaging-guidelines/AppData/ section in Fedora Docs. But, the instructions there lead to a setup that is deprecated according to AppStream current specification https://www.freedesktop.org/software/appstream/docs/chap-Quickstart.html#sect-Quickstart-DesktopApps. This is my first encounter with AppStream, but from the guidelines page naming it seems that even the name has changed from AppData to AppStream after the guidelines were written.
So the question is this: Should Fedora packages really follow the guidance from /Packaging Guidelines: AppData/, or should that page be updated?
Perhaps I should also explain what is wrong with the gpodder package: Its spec file contains an inline /appdata.xml/ that is installed to //usr/share/appdata/. However, since /appdata.xml/ was added, upstream has started shipping its own AppStream file. That is also installed, but to //usr/share/metainfo/, with a different file name, different application id and diffrent content. Dropping the inline version and installing only the upstream version seems clear enough, but to me it seems like the Packaging Guidelines give bad advice on how to go about that.
Regards, Otto Urpelainen
Hi Otto,
I am not sure I completely understand your question. However looking at gpodder, I think that this:
~~~
cat > $RPM_BUILD_ROOT%{_datadir}/appdata/%{name}.appdata.xml <<EOF
~~~
should be changed to:
~~~
cat > $RPM_BUILD_ROOT%{_metainfodir}/%{name}.appdata.xml <<EOF
~~~
If you have any specific concerns about correctness of guidelines, I'd suggest to open PR proposing fix here:
https://pagure.io/packaging-committee/pull-requests
That way, it would be probably more obvious what is the real problem and what is the suggested change. If nothing else, I think that the first `AppData specification page` link could be updated, because the target http://people.freedesktop.org/~hughsient/appdata/ redirects elsewhere. But of course this needs somebody to fix it or propose such change.
Vít
Dne 16. 01. 21 v 17:34 Otto Urpelainen napsal(a):
Greetings,
I am a new contributor to Fedora packaging. My actual target is to add some applications I use but are not packaged yet. But since adding a new package is quite complex and Fedora also places some requirements before a contributor is allowed to do that, I have started learning by doing some simpler tasks first.
I have been looking at various packages I use personally, trying to find some things to improve. I noticed that the gpodder https://src.fedoraproject.org/rpms/gpodder package would benefit from some work on its AppStream metadata. My first though was to simply make it comply with the Packaging Guidelines: AppData https://docs.fedoraproject.org/en-US/packaging-guidelines/AppData/ section in Fedora Docs. But, the instructions there lead to a setup that is deprecated according to AppStream current specification https://www.freedesktop.org/software/appstream/docs/chap-Quickstart.html#sect-Quickstart-DesktopApps. This is my first encounter with AppStream, but from the guidelines page naming it seems that even the name has changed from AppData to AppStream after the guidelines were written.
So the question is this: Should Fedora packages really follow the guidance from /Packaging Guidelines: AppData/, or should that page be updated?
Perhaps I should also explain what is wrong with the gpodder package: Its spec file contains an inline /appdata.xml/ that is installed to //usr/share/appdata/. However, since /appdata.xml/ was added, upstream has started shipping its own AppStream file. That is also installed, but to //usr/share/metainfo/, with a different file name, different application id and diffrent content. Dropping the inline version and installing only the upstream version seems clear enough, but to me it seems like the Packaging Guidelines give bad advice on how to go about that.
Regards, Otto Urpelainen _______________________________________________ packaging mailing list -- packaging@lists.fedoraproject.org To unsubscribe send an email to packaging-leave@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/packaging@lists.fedoraproject....
Dne 18. 01. 21 v 9:22 Vít Ondruch napsal(a):
Hi Otto,
I am not sure I completely understand your question. However looking at gpodder, I think that this:
cat > $RPM_BUILD_ROOT%{_datadir}/appdata/%{name}.appdata.xml <<EOF
should be changed to:
cat > $RPM_BUILD_ROOT%{_metainfodir}/%{name}.appdata.xml <<EOF
If you have any specific concerns about correctness of guidelines, I'd suggest to open PR proposing fix here:
There is different thread about this topic on fedora-devel, so this is probably relevant ticket:
https://pagure.io/packaging-committee/issue/944
But PR with specific proposal would probably help to move this forward.
Vít
That way, it would be probably more obvious what is the real problem and what is the suggested change. If nothing else, I think that the first `AppData specification page` link could be updated, because the target http://people.freedesktop.org/~hughsient/appdata/ redirects elsewhere. But of course this needs somebody to fix it or propose such change.
Vít
Dne 16. 01. 21 v 17:34 Otto Urpelainen napsal(a):
Greetings,
I am a new contributor to Fedora packaging. My actual target is to add some applications I use but are not packaged yet. But since adding a new package is quite complex and Fedora also places some requirements before a contributor is allowed to do that, I have started learning by doing some simpler tasks first.
I have been looking at various packages I use personally, trying to find some things to improve. I noticed that the gpodder https://src.fedoraproject.org/rpms/gpodder package would benefit from some work on its AppStream metadata. My first though was to simply make it comply with the Packaging Guidelines: AppData https://docs.fedoraproject.org/en-US/packaging-guidelines/AppData/ section in Fedora Docs. But, the instructions there lead to a setup that is deprecated according to AppStream current specification https://www.freedesktop.org/software/appstream/docs/chap-Quickstart.html#sect-Quickstart-DesktopApps. This is my first encounter with AppStream, but from the guidelines page naming it seems that even the name has changed from AppData to AppStream after the guidelines were written.
So the question is this: Should Fedora packages really follow the guidance from /Packaging Guidelines: AppData/, or should that page be updated?
Perhaps I should also explain what is wrong with the gpodder package: Its spec file contains an inline /appdata.xml/ that is installed to //usr/share/appdata/. However, since /appdata.xml/ was added, upstream has started shipping its own AppStream file. That is also installed, but to //usr/share/metainfo/, with a different file name, different application id and diffrent content. Dropping the inline version and installing only the upstream version seems clear enough, but to me it seems like the Packaging Guidelines give bad advice on how to go about that.
Regards, Otto Urpelainen _______________________________________________ packaging mailing list -- packaging@lists.fedoraproject.org To unsubscribe send an email to packaging-leave@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/packaging@lists.fedoraproject....
packaging mailing list -- packaging@lists.fedoraproject.org To unsubscribe send an email to packaging-leave@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/packaging@lists.fedoraproject....
(Sending again, went only to Vit first)
Vít Ondruch kirjoitti 18.1.2021 klo 10.26:
Dne 18. 01. 21 v 9:22 Vít Ondruch napsal(a):
Hi Otto,
I am not sure I completely understand your question. However looking at gpodder, I think that this:
cat > $RPM_BUILD_ROOT%{_datadir}/appdata/%{name}.appdata.xml <<EOF
should be changed to:
cat > $RPM_BUILD_ROOT%{_metainfodir}/%{name}.appdata.xml <<EOF
Turns out there were multiple problems here. Combined with me being quite lost led to unclear question, I suppose. Good news is that I already reached a solution for gpodder in this pull request https://src.fedoraproject.org/rpms/gpodder/pull-request/2. The pull request makes gpodder follow the guidelines.
Which leaves only the question about validity of the guidelines open. To illustrate, while your proposed fix seems logical if you consult AppStream documentation, using _metainfodir is against Fedora Packaging Guidelines.
If you have any specific concerns about correctness of guidelines, I'd suggest to open PR proposing fix here:
There is different thread about this topic on fedora-devel, so this is probably relevant ticket:
https://pagure.io/packaging-committee/issue/944
But PR with specific proposal would probably help to move this forward.
Yes, the devel list thread and linked issue are the same as my question about the guidelines.
I suppose I could open a pull request. It feels a bit strange to start contributing with a change proposal that has such a wide effect. But since clearly I am not the only one having the same question, I suppose I can send a proposal in.
Otto
Otto Urpelainen kirjoitti 18.1.2021 klo 17.55:
(Sending again, went only to Vit first)
Vít Ondruch kirjoitti 18.1.2021 klo 10.26:
Dne 18. 01. 21 v 9:22 Vít Ondruch napsal(a):
Hi Otto,
I am not sure I completely understand your question. However looking at gpodder, I think that this:
cat > $RPM_BUILD_ROOT%{_datadir}/appdata/%{name}.appdata.xml <<EOF
should be changed to:
cat > $RPM_BUILD_ROOT%{_metainfodir}/%{name}.appdata.xml <<EOF
Turns out there were multiple problems here. Combined with me being quite lost led to unclear question, I suppose. Good news is that I already reached a solution for gpodder in this pull request https://src.fedoraproject.org/rpms/gpodder/pull-request/2. The pull request makes gpodder follow the guidelines.
Which leaves only the question about validity of the guidelines open. To illustrate, while your proposed fix seems logical if you consult AppStream documentation, using _metainfodir is against Fedora Packaging Guidelines.
If you have any specific concerns about correctness of guidelines, I'd suggest to open PR proposing fix here:
There is different thread about this topic on fedora-devel, so this is probably relevant ticket:
https://pagure.io/packaging-committee/issue/944
But PR with specific proposal would probably help to move this forward.
Yes, the devel list thread and linked issue are the same as my question about the guidelines.
I suppose I could open a pull request. It feels a bit strange to start contributing with a change proposal that has such a wide effect. But since clearly I am not the only one having the same question, I suppose I can send a proposal in.
Otto
Here we go: https://pagure.io/packaging-committee/pull-request/1041#
Otto
packaging@lists.fedoraproject.org