Spec URL: http://elmarco.fedorapeople.org/phodav.spec SRPM URL: http://elmarco.fedorapeople.org/phodav-0.1-1.fc20.src.rpm Description: a WebDAV server using libsoup Fedora Account System Username: elmarco
elmarco@anakao:~/pkg/phodav (master #%)$ rpmlint phodav.spec /home/elmarco/rpmbuild/RPMS/x86_64/phodav-* phodav.x86_64: W: spelling-error Summary(en_US) libsoup -> lib soup, lib-soup, libelous phodav.x86_64: W: spelling-error %description -l en_US phởdav phodav.x86_64: W: spelling-error %description -l en_US libsoup -> lib soup, lib-soup, libelous phodav.x86_64: W: no-manual-page-for-binary chezdav phodav-chezdav.x86_64: W: spelling-error %description -l en_US virtio -> virtuoso phodav-chezdav.x86_64: W: no-manual-page-for-binary chezdav phodav-spice.x86_64: W: spelling-error %description -l en_US virtio -> virtuoso phodav-spice.x86_64: W: no-documentation phodav-spice.x86_64: W: no-manual-page-for-binary spice-webdavd 4 packages and 1 specfiles checked; 0 errors, 9 warnings.
Mhh, it doesn't build on F20 : checking whether NLS is requested... yes ./configure: line 12254: intltool-update: command not found checking for intltool >= 0.40.0... found configure: error: Your intltool is too old. You need intltool 0.40.0 or later. erreur : Mauvais statut de sortie pour /var/tmp/rpm-tmp.MgeUdM (%build) Mauvais statut de sortie pour /var/tmp/rpm-tmp.MgeUdM (%build) Erreur de construction de RPM : Seems to be missing a BR, like intltool
Also : - BuildRoot is no longer needed - %clean rm -rf %{buildroot} , the rm at start of install and %defattr are also uneeded for newer fedora - chezdav and the spice subpackage do have the same summary - there is no service file, while this is a daemon - the spice subpackage should have the lciense in %doc as well, since it can be install without pulling chezdav
(In reply to Michael Scherer from comment #3) > Also : > - BuildRoot is no longer needed > - %clean > rm -rf %{buildroot} , the rm at start of install and %defattr are also > uneeded for newer fedora > > - chezdav and the spice subpackage do have the same summary ok > - there is no service file, while this is a daemon added, but for some reasons, the daemon is not enabled automatically (although it seems to work for vdagent), I am trying to figure out... > - the spice subpackage should have the lciense in %doc as well, since it can > be install without pulling chezdav ok See last update Spec URL: http://elmarco.fedorapeople.org/phodav.spec elmarco@anakao:~/pkg/phodav (master #%)$ rpmlint phodav.spec ~/rpmbuild/RPMS/x86_64/phodav-* phodav-chezdav.x86_64: W: spelling-error %description -l en_US mDNS -> mans, mdse phodav-spice.x86_64: W: spelling-error %description -l en_US virtio -> virtuoso phodav-spice.x86_64: W: only-non-binary-in-usr-lib phodav-spice.x86_64: W: no-manual-page-for-binary spice-webdavd 3 packages and 1 specfiles checked; 0 errors, 4 warnings.
Why does the %post speak ofspice-vdagentd.service while the %files speak of %{_unitdir}/spice-webdavd.service ? Also, why do you need a target for systemd ?
Hi Michael, I updated the spec, a copr build is also available here: https://copr.fedoraproject.org/coprs/elmarco/phodav/ thanks!
hey hi hey ho
1. Where did your source come from? 2. Have you read this carefully? https://fedoraproject.org/wiki/Packaging:ScriptletSnippets#Systemd
(In reply to Christopher Meng from comment #8) > 1. Where did your source come from? From https://download.gnome.org/sources/phodav/ (I am upstream dev/maintainer) > 2. Have you read this carefully? > > https://fedoraproject.org/wiki/Packaging:ScriptletSnippets#Systemd No, what should I know?
Package updated with 0.3 release, now upstream provides a public library. http://elmarco.fedorapeople.org/phodav-0.3-1.fc20.src.rpm copr fails temporarily with rawhide, but f20 packages are ok: http://copr-be.cloud.fedoraproject.org/results/elmarco/phodav/fedora-20-x86_64/phodav-0.3-1.fc20/
Package Review ============== Legend: [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated [ ] = Manual review needed - License should be installed if I do "yum install chezdav", which is not the case - There is unowned directory, see the report ( /usr/include/libphodav-1.0 ) - Spec file in the srpm and on the web differn which confuse Fedora review, please upgrade the file ( and the url of the tarball still speak of 0.1 despites being 0.3 ). - why is spice-webdavd is restarted by default ? - chezdav is not working : $ type chezdav chezdav is /usr/bin/chezdav $ chezdav /usr/bin/chezdav: error: `/usr/bin/.libs/chezdav' does not exist This script is just a wrapper for chezdav. See the libtool documentation for more information. ===== MUST items ===== C/C++: [x]: Package does not contain kernel modules. [x]: Package contains no static executables. [x]: Header files in -devel subpackage, if present. [x]: Package does not contain any libtool archives (.la) [x]: Rpath absent or only used for internal libs. [x]: Development (unversioned) .so files in -devel subpackage, if present. Generic: [x]: Package is licensed with an open-source compatible license and meets other legal requirements as defined in the legal section of Packaging Guidelines. [x]: License field in the package spec file matches the actual license. Note: Checking patched sources after %prep for licenses. Licenses found: "LGPL (v2.1 or later)", "LGPL", "GPL (v2 or later)", "Unknown or generated". 1 files have unknown license. Detailed output of licensecheck in /home/misc/checkout/git/FedoraReview/1059708-phodav/licensecheck.txt [!]: License file installed when any subpackage combination is installed. [!]: Package requires other packages for directories it uses. Note: No known owner of /usr/include/libphodav-1.0, /usr/share/gtk- doc/html/phodav [!]: Package must own all directories that it creates. Note: Directories without known owners: /usr/include/libphodav-1.0, /usr/share/gtk-doc, /usr/share/gtk-doc/html, /usr/share/gtk- doc/html/phodav [x]: %build honors applicable compiler flags or justifies otherwise. [x]: Package contains no bundled libraries without FPC exception. [x]: Changelog in prescribed format. [x]: Sources contain only permissible code or content. [-]: Package contains desktop file if it is a GUI application. [x]: Development files must be in a -devel package [x]: Package uses nothing in %doc for runtime. [x]: The spec file handles locales properly. [x]: Package consistently uses macros (instead of hard-coded directory names). [x]: Package is named according to the Package Naming Guidelines. [x]: Package does not generate any conflict. [x]: Package obeys FHS, except libexecdir and /usr/target. [-]: If the package is a rename of another package, proper Obsoletes and Provides are present. [x]: Requires correct, justified where necessary. [x]: Spec file is legible and written in American English. [x]: Package contains systemd file(s) if in need. [x]: Useful -debuginfo package or justification otherwise. [x]: Package is not known to require an ExcludeArch tag. [x]: Large documentation must go in a -doc subpackage. Large could be size (~1MB) or number of files. Note: Documentation size is 61440 bytes in 4 files. [x]: Package complies to the Packaging Guidelines [x]: Package successfully compiles and builds into binary rpms on at least one supported primary architecture. [x]: Package installs properly. [x]: Rpmlint is run on all rpms the build produces. Note: There are rpmlint messages (see attachment). [x]: If (and only if) the source package includes the text of the license(s) in its own file, then that file, containing the text of the license(s) for the package is included in %doc. [x]: Package does not own files or directories owned by other packages. [x]: All build dependencies are listed in BuildRequires, except for any that are listed in the exceptions section of Packaging Guidelines. [x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT [x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the beginning of %install. [x]: Macros in Summary, %description expandable at SRPM build time. [x]: Package does not contain duplicates in %files. [x]: Permissions on files are set properly. [x]: Package use %makeinstall only when make install' ' DESTDIR=... doesn't work. [x]: Package is named using only allowed ASCII characters. [x]: Package do not use a name that already exist [x]: Package is not relocatable. [x]: Sources used to build the package match the upstream source, as provided in the spec URL. [x]: Spec file name must match the spec package %{name}, in the format %{name}.spec. [x]: File names are valid UTF-8. [x]: Packages must not store files under /srv, /opt or /usr/local ===== SHOULD items ===== Generic: [-]: If the source package does not include license text(s) as a separate file from upstream, the packager SHOULD query upstream to include it. [x]: Final provides and requires are sane (see attachments). [x]: Fully versioned dependency in subpackages if applicable. Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in libphodav-1.0 , libphodav-1.0-devel , chezdav , spice-webdavd [!]: Package functions as described. [x]: Latest version is packaged. [x]: Package does not include license text files separate from upstream. [x]: Scriptlets must be sane, if used. [-]: Description and summary sections in the package spec file contains translations for supported Non-English languages, if available. [x]: Package should compile and build into binary rpms on all supported architectures. [-]: %check is present and all tests pass. [x]: Packages should try to preserve timestamps of original installed files. [x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file [x]: Sources can be downloaded from URI in Source: tag [x]: Reviewer should test that the package builds in mock. [x]: Buildroot is not present [x]: Package has no %clean section with rm -rf %{buildroot} (or $RPM_BUILD_ROOT) [x]: Dist tag is present (not strictly required in GL). [x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin. [x]: Uses parallel make %{?_smp_mflags} macro. [x]: The placement of pkgconfig(.pc) files are correct. [x]: SourceX is a working URL. [x]: Spec use %global instead of %define unless justified. ===== EXTRA items ===== Generic: [!]: Spec file according to URL is the same as in SRPM. Note: Spec file as given by url is not the same as in SRPM (see attached diff). See: (this test has no URL) [x]: Rpmlint is run on all installed packages. Note: There are rpmlint messages (see attachment). [x]: Large data in /usr/share should live in a noarch subpackage if package is arched. Rpmlint ------- Checking: libphodav-1.0-0.3-1.fc20.x86_64.rpm libphodav-1.0-devel-0.3-1.fc20.x86_64.rpm chezdav-0.3-1.fc20.x86_64.rpm spice-webdavd-0.3-1.fc20.x86_64.rpm phodav-0.3-1.fc20.src.rpm libphodav-1.0.x86_64: W: spelling-error %description -l en_US phởdav libphodav-1.0.x86_64: W: spelling-error %description -l en_US libsoup -> lib soup, lib-soup, libelous chezdav.x86_64: W: spelling-error %description -l en_US mDNS -> mans, mdse spice-webdavd.x86_64: W: spelling-error %description -l en_US virtio -> virtuoso spice-webdavd.x86_64: W: only-non-binary-in-usr-lib spice-webdavd.x86_64: W: no-manual-page-for-binary spice-webdavd phodav.src: W: spelling-error Summary(en_US) libsoup -> lib soup, lib-soup, libelous phodav.src: W: spelling-error %description -l en_US phởdav phodav.src: W: spelling-error %description -l en_US libsoup -> lib soup, lib-soup, libelous phodav.src: W: invalid-url Source0: http://download.gnome.org/sources/phodav/0.1/phodav-0.3.tar.xz HTTP Error 404: Not Found 5 packages and 0 specfiles checked; 0 errors, 10 warnings. Rpmlint (installed packages) ---------------------------- # rpmlint libphodav-1.0 spice-webdavd chezdav libphodav-1.0-devel libphodav-1.0.x86_64: W: spelling-error %description -l en_US phởdav libphodav-1.0.x86_64: W: spelling-error %description -l en_US libsoup -> lib soup, lib-soup, libelous libphodav-1.0.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libphodav-1.0.so.0.0.0 /lib64/libpthread.so.0 spice-webdavd.x86_64: W: spelling-error %description -l en_US virtio -> virtuoso spice-webdavd.x86_64: W: only-non-binary-in-usr-lib spice-webdavd.x86_64: W: no-manual-page-for-binary spice-webdavd chezdav.x86_64: W: spelling-error %description -l en_US mDNS -> mans, mdse 4 packages and 0 specfiles checked; 0 errors, 7 warnings. # echo 'rpmlint-done:' Requires -------- libphodav-1.0 (rpmlib, GLIBC filtered): /sbin/ldconfig libc.so.6()(64bit) libgio-2.0.so.0()(64bit) libglib-2.0.so.0()(64bit) libgobject-2.0.so.0()(64bit) libpthread.so.0()(64bit) libsoup-2.4.so.1()(64bit) libxml2.so.2()(64bit) libxml2.so.2(LIBXML2_2.4.30)(64bit) libxml2.so.2(LIBXML2_2.6.0)(64bit) rtld(GNU_HASH) spice-webdavd (rpmlib, GLIBC filtered): /bin/sh libavahi-client.so.3()(64bit) libavahi-common.so.3()(64bit) libavahi-gobject.so.0()(64bit) libc.so.6()(64bit) libgio-2.0.so.0()(64bit) libglib-2.0.so.0()(64bit) libgobject-2.0.so.0()(64bit) libpthread.so.0()(64bit) rtld(GNU_HASH) systemd-units chezdav (rpmlib, GLIBC filtered): /bin/sh libphodav-1.0-devel (rpmlib, GLIBC filtered): /usr/bin/pkg-config libphodav-1.0(x86-64) libphodav-1.0.so.0()(64bit) pkgconfig(libsoup-2.4) Provides -------- libphodav-1.0: libphodav-1.0 libphodav-1.0(x86-64) libphodav-1.0.so.0()(64bit) libphodav-1.0.so.0(LIBPHODAV1_0.0)(64bit) spice-webdavd: spice-webdavd spice-webdavd(x86-64) chezdav: chezdav chezdav(x86-64) libphodav-1.0-devel: libphodav-1.0-devel libphodav-1.0-devel(x86-64) pkgconfig(libphodav-1.0) Source checksums ---------------- http://download.gnome.org/sources/phodav/0.3/phodav-0.3.tar.xz : CHECKSUM(SHA256) this package : e3df952653dd4cee4eeb3021992e983d63a55bdcd2900040f8fdbeddedc90924 CHECKSUM(SHA256) upstream package : e3df952653dd4cee4eeb3021992e983d63a55bdcd2900040f8fdbeddedc90924 Generated by fedora-review 0.4.0 (cf29f98) last change: 2013-02-08 Command line :./try-fedora-review -b 1059708 Buildroot used: fedora-20-x86_64 Active plugins: Generic, Shell-api, C/C++ Disabled plugins: Java, Python, fonts, SugarActivity, Ocaml, Perl, Haskell, R, PHP, Ruby Disabled flags: EXARCH, EPEL5, BATCH, DISTTAG
(In reply to Michael Scherer from comment #11) > Package Review > ============== > > Legend: > [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated > [ ] = Manual review needed > > > - License should be installed if I do "yum install chezdav", which is not > the case > - There is unowned directory, see the report ( /usr/include/libphodav-1.0 ) I added %dir %{_includedir}/libphodav-1.0/ > - Spec file in the srpm and on the web differn which confuse Fedora review, > please > upgrade the file ( and the url of the tarball still speak of 0.1 despites > being > 0.3 ). Yeah, I updated only the spec when I saw the URL was outdated. > - why is spice-webdavd is restarted by default ? The daemon exits whenever a client is disconnected. It must be restarted after. > - chezdav is not working : > $ type chezdav > chezdav is /usr/bin/chezdav > $ chezdav > /usr/bin/chezdav: error: `/usr/bin/.libs/chezdav' does not exist > This script is just a wrapper for chezdav. > See the libtool documentation for more information. > Most of those errors come from the disable-fast-install flag, which screwed up relinking and dependency generation. Now fixed in 0.3.1 http://elmarco.fedorapeople.org/phodav-0.3.1-1.fc20.src.rpm
> The daemon exits whenever a client is disconnected. It must be restarted after. then i guess it would be a perfect candidate for socket-activation. I will take a look and maybe submit a patch.
(In reply to Michael Scherer from comment #13) > > The daemon exits whenever a client is disconnected. It must be restarted after. > > then i guess it would be a perfect candidate for socket-activation. I will > take a look and maybe submit a patch. I guess that could work. But don't forget it also has a virtio port dependency. I wonder if systemd supports this complex condition. Could we leave that for a future update?
and it should also be announced over avahi
Yup, it can be done later, we can discuss that IRL next time. I will try to check the package before next week, but it should be quite quick and just a formality.
The issue with chezdav not distributing license still stand. ( i, please add the license in %doc ). I am doing a scratch build to test it.
And chezdav is working ( or at least, not crashing ).
(In reply to Michael Scherer from comment #17) > The issue with chezdav not distributing license still stand. ( i, please add > the license in %doc ). I am doing a scratch build to test it. but the license is distributed in libphodav dependency, that's not enough? anyway, spec updated: http://elmarco.fedorapeople.org/phodav.spec
Indeed, didn't see it. So that close the latest issue, so approved.
New Package SCM Request ======================= Package Name: phodav Short Description: A WebDAV server using libsoup Owners: elmarco Branches: f20 el6 epel7
Git done (by process-git-requests).
phodav-0.4-1.fc20 has been submitted as an update for Fedora 20. https://admin.fedoraproject.org/updates/phodav-0.4-1.fc20
phodav-0.4-1.fc20 has been pushed to the Fedora 20 testing repository.
phodav-0.4-1.fc20 has been pushed to the Fedora 20 stable repository.