https://bugzilla.redhat.com/show_bug.cgi?id=1670656 --- Comment #27 from Mark Goodwin <mgoodwin@xxxxxxxxxx> --- (In reply to Elliott Sales de Andrade from comment #25) > (In reply to Mark Goodwin from comment #24) > > In addition to Xavier's notes and questions in Comment #23, rpmlint issues > > warnings that Provides: bundled(foo) should be versioned. > > > > # rpmlint RPMS/x86_64/grafana-5.4.3-10.fc28.x86_64.rpm > > grafana.x86_64: W: unstripped-binary-or-object /usr/sbin/grafana-cli > > grafana.x86_64: W: unstripped-binary-or-object /usr/sbin/grafana-server > > This should be done somehow (automatically, I'd have thought), since debug > information is in the -debuginfo subpackage. It seems like it might be > because you've disabled debug packages; why is that? The build failed as follows : Empty %files file /home/mgoodwin/rpmbuild/BUILD/grafana-5.4.3/debugsourcefiles.list I've investigated some more and managed to get the debuginfo package building again (but omitting the debugsource package since it's empty) - it seems there are some issues with debuginfo for golang binaries. WHat I have now allows gdb backtraces, which is better than we had before. And the unstripped-binary-or-object complaints have gone away now (since we now have the *.debug versions too) > > grafana.x86_64: W: non-standard-gid /etc/grafana/grafana.ini grafana > > grafana.x86_64: E: non-readable /etc/grafana/grafana.ini 640 > > grafana.x86_64: W: non-standard-gid /etc/grafana/ldap.toml grafana > > grafana.x86_64: E: non-readable /etc/grafana/ldap.toml 640 > > grafana.x86_64: E: non-readable /etc/sysconfig/grafana-server 640 > > grafana.x86_64: W: non-standard-gid /usr/share/grafana/conf/defaults.ini grafana > > grafana.x86_64: E: non-readable /usr/share/grafana/conf/defaults.ini 640 > > grafana.x86_64: W: non-standard-gid /usr/share/grafana/conf/distro-defaults.ini grafana > > grafana.x86_64: W: non-standard-gid /usr/share/grafana/conf/ldap.toml grafana > > grafana.x86_64: W: non-standard-gid /usr/share/grafana/conf/provisioning grafana > > grafana.x86_64: W: non-standard-gid /usr/share/grafana/conf/provisioning/dashboards grafana > > grafana.x86_64: W: non-standard-gid /usr/share/grafana/conf/provisioning/dashboards/sample.yaml grafana > > grafana.x86_64: W: non-standard-gid /usr/share/grafana/conf/provisioning/datasources grafana > > grafana.x86_64: W: non-standard-gid /usr/share/grafana/conf/provisioning/datasources/sample.yaml grafana > > grafana.x86_64: W: non-standard-gid /usr/share/grafana/conf/sample.ini grafana > > grafana.x86_64: W: non-standard-uid /var/lib/grafana/data grafana > > grafana.x86_64: W: non-standard-gid /var/lib/grafana/data grafana > > grafana.x86_64: E: non-standard-dir-perm /var/lib/grafana/data 750 > > grafana.x86_64: W: non-standard-uid /var/lib/grafana/data/plugins grafana > > grafana.x86_64: W: non-standard-gid /var/lib/grafana/data/plugins grafana > > grafana.x86_64: E: non-standard-dir-perm /var/lib/grafana/data/plugins 750 > > grafana.x86_64: W: non-standard-uid /var/log/grafana grafana > > grafana.x86_64: W: non-standard-gid /var/log/grafana grafana > > I assume you've followed the instructions on > https://docs.fedoraproject.org/en-US/packaging-guidelines/UsersAndGroups/ ? yes I have followed that doc - using the 'dynamic allocation' method, as described in that document. It would seem rpmlint is complaining when it shouldn't. To resolve that, I would have to manually chmod/chgrp in the %post scriptlets. Install/testing the %pre stuff that's there now in the spec on systems with/without grafana user/group all seems to work correctly. > > grafana.x86_64: E: script-without-shebang /usr/share/grafana/public/app/plugins/datasource/elasticsearch/img/elasticsearch.svg > > grafana.x86_64: E: script-without-shebang /usr/share/grafana/public/fonts/grafana-icons.svg > > These should not be executable. Will add to Patch0 (000-grafana-fedora.patch). This is broken upstream but no big deal, svg files are not even scripts obviously. > > grafana.x86_64: W: hidden-file-or-dir /usr/share/grafana/public/sass/.sass-lint.yml > > grafana.x86_64: W: hidden-file-or-dir /usr/share/grafana/public/test/.jshintrc > > Delete these development files. now deleted via spec %build but might put that in the patch too since it's broken upstream. > > grafana.x86_64: W: log-files-without-logrotate ['/var/log/grafana'] > > See https://docs.fedoraproject.org/en-US/packaging-guidelines/#_log_files Grafana has it's own log rotation and management, so we do not ship or rely on the logrotate config mechanism documented in the guidelines. > > # rpmlint SRPMS/grafana-5.4.3-10.fc28.src.rpm > > grafana.src:98: W: unversioned-explicit-provides ... > > It seems like you have bundled provides for things you've removed from the > source. You don't need to add those (though yes, technically, it's > statically bundled, the macros should do that sort of thing for you.) I need to audit some of the Provides - obviously all the stuff removed from the vendor source needs BuildRequires to replace it, and should not have Provides because it's no longer bundled ... if the macros can do that then even better, I only hve to get he BuildRequires stuff in shape and the rest is automatic. Is anyone actually working on those macros? They'd be similar to the nodejs stuff I guess. > > > grafana.src:503: W: macro-in-%changelog %doc > > Remove macro from changelog. done > > Some other things: > * No, I don't think you need to do `Provides: > bundled(golang(github.com/repo/package))` instead of `Provides: > bundled(golang-github-repo-package-devel)`. > * From what I've read, nodejs macros will automatically add bundled provides > for you; we should do this in the Go macros. yep, as above > * Fedora 27 is EOL; there's no need to support it. OK. when I started this, it wasn't ;) > * golang(github.com/hashicorp/go-version) is available; you can unbundle it. ok (and yes I saw your earlier update about that) > * The %if 0%{?fedora} || 0%{?rhel} check seems redundant. yes redundant for RH platforms, but not SuSE etc., if they were to use this spec too. > make_webpack.sh can be a simplified a little bit as you don't really need to use go to build it: > https://qulogic.fedorapeople.org/make_webpack.sh thanks - the go building in that script is left over from some earlier attempts at this > Also, are you interested in maintaining golang-github-go-stack-stack (bug 1377227) > and golang-github-Unknwon-com (bug 1376387), since you need them for grafana? I'm interested in maintaining Grafana since we need it for PCP (as do many other groups); if that also involves maintaiing some golang in order to get there, then so be it! Regarding go packaging, this site seems up-to-date, whereas apparently gofed is falling behind. https://fedoraproject.org/wiki/More_Go_packaging I'll post new spec URLs when ready Cheers and thanks for the feedback -- Mark -- You are receiving this mail because: You are on the CC list for the bug. You are always notified about changes to this product and component _______________________________________________ package-review mailing list -- package-review@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to package-review-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/package-review@xxxxxxxxxxxxxxxxxxxxxxx