Bug 1040459 - Review Request: NetworkManager-iodine - iodine VPN plugin for NetworkManager
Summary: Review Request: NetworkManager-iodine - iodine VPN plugin for NetworkManager
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Michael S.
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 895929
TreeView+ depends on / blocked
 
Reported: 2013-12-11 13:20 UTC by Dan Fruehauf
Modified: 2014-01-08 07:46 UTC (History)
4 users (show)

Fixed In Version: NetworkManager-iodine-0.0.4-2.fc20
Clone Of:
Environment:
Last Closed: 2014-01-08 07:46:25 UTC
Type: ---
Embargoed:
misc: fedora-review+
gwync: fedora-cvs+


Attachments (Terms of Use)

Description Dan Fruehauf 2013-12-11 13:20:34 UTC
Spec URL: http://danfruehauf.fedorapeople.org/NetworkManager-iodine.spec
SRPM URL: http://danfruehauf.fedorapeople.org/NetworkManager-iodine-0.0.4-0.1.20131210gita2a90c6.fc19.src.rpm
Description: This package contains software for integrating VPN capabilities with
the iodine server and NetworkManager.
Fedora Account System Username: danfruehauf

Comment 1 Simon Farnsworth 2013-12-12 15:44:00 UTC
I'm not a packager yet (see bug 1034341 if you're a sponsor willing to work with me), so this is not a proper review, but I hope it'll help the final reviewer.

Search for [!] to find the faults, and [?] for the things I didn't check properly.

Quick summary:

 * Your Requires don't seem to take account of autorequires.
 * Upstream has obsolete m4 macros - reported in their bugtracker?
 * I've not tested that the package works - just that it looks good.
   * As part of this, does a 32-bit NetworkManager-iodine-gnome work with a
     64-bit NetworkManager-iodine? If not, please tighten up the Requires to
     include %{?_isa} too.
 * You're checking out a tarball snapshot from git, when upstream provide
   release tarballs at
   http://honk.sigxcpu.org/projects/network-manager-iodine/tarballs/
   * If you used a release tarball directly, your Release: line would be
     simpler and you could get rid of the "checkout" macros at the top.

Package Review
==============

Legend:
[x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated

===== MUST items =====

C/C++:
[x]: Package does not contain kernel modules.
[x]: Package contains no static executables.
[-]: Development (unversioned) .so files in -devel subpackage, if present.
[x]: Package does not contain any libtool archives (.la)
[x]: Rpath absent or only used for internal libs.

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.
[x]: License file installed when any subpackage combination is installed.
[x]: Package must own all directories that it creates.
[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.
[-]: Development files must be in a -devel package
[x]: Package uses nothing in %doc for runtime.
[-]: 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.
[!]: Requires correct, justified where necessary.
     Several of your requires appear unnecessary, as autorequires will pull them in.
     gtk3 is definitely pulled in by autorequires; how much of gnome-keyring
     and dbus do you actually need? Do you need shared-mime-info at all?

     See https://fedoraproject.org/wiki/Packaging:Guidelines#Explicit_Requires

[x]: Spec file is legible and written in American English.
[-]: 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.
[-]: 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.
[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 requires other packages for directories it uses.
[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]: Each %files section contains %defattr if rpm < 4.4
[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).
[?]: Fully versioned dependency in subpackages if applicable.
     Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in
     NetworkManager-iodine-gnome

     However, there is a %{name} = %{version}-%{release}; if an i686
     NetworkManager-iodine-gnome works with an x86_64 NetworkManager-iodine,
     this requirement is met. I've not checked this.

[?]: Package functions as described.
     Untested.

[!]: Latest version is packaged.
     You package a git snapshot from the 0.0.4 tag and alter Release: to match
     this - why? Why not take a release tarball from
     http://honk.sigxcpu.org/projects/network-manager-iodine/tarballs/ directly?
[x]: Package does not include license text files separate from upstream.
[-]: 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]: SourceX tarball generation or download is documented.
[x]: SourceX is a working URL.
[x]: Spec use %global instead of %define unless justified.

===== EXTRA items =====

Generic:
[!]: Package should not use obsolete m4 macros
     Note: Some obsoleted macros found, see the attachment.
     See: https://fedorahosted.org/FedoraReview/wiki/AutoTools

     Perhaps a pointer to an upstream bug about this?

[x]: Rpmlint is run on all installed packages.
     The messages appear reasonable.

[x]: Large data in /usr/share should live in a noarch subpackage if package is
     arched.
[x]: Spec file according to URL is the same as in SRPM.


Rpmlint
-------
Checking: NetworkManager-iodine-0.0.4-0.1.20131210gita2a90c6.fc21.x86_64.rpm
          NetworkManager-iodine-gnome-0.0.4-0.1.20131210gita2a90c6.fc21.x86_64.rpm
          NetworkManager-iodine-0.0.4-0.1.20131210gita2a90c6.fc21.src.rpm
NetworkManager-iodine.x86_64: W: non-conffile-in-etc /etc/dbus-1/system.d/nm-iodine-service.conf
NetworkManager-iodine.x86_64: W: non-conffile-in-etc /etc/NetworkManager/VPN/nm-iodine-service.name
3 packages and 0 specfiles checked; 0 errors, 2 warnings.




Rpmlint (installed packages)
----------------------------
# rpmlint NetworkManager-iodine-gnome NetworkManager-iodine
NetworkManager-iodine.x86_64: W: non-conffile-in-etc /etc/dbus-1/system.d/nm-iodine-service.conf
NetworkManager-iodine.x86_64: W: non-conffile-in-etc /etc/NetworkManager/VPN/nm-iodine-service.name
2 packages and 0 specfiles checked; 0 errors, 2 warnings.
# echo 'rpmlint-done:'



AutoTools: Obsoleted m4s found
------------------------------
  AC_PROG_LIBTOOL found in: network-manager-iodine-0.0.4/configure.ac:17


Generated by fedora-review 0.5.0 (920221d) last change: 2013-08-30
Command line :/bin/fedora-review -b 1040459 -m fedora-rawhide-x86_64
Buildroot used: fedora-rawhide-x86_64
Active plugins: Generic, Shell-api, C/C++
Disabled plugins: Java, Python, SugarActivity, Perl, R, PHP, Ruby
Disabled flags: EPEL5, EXARCH, DISTTAG

Comment 2 Dan Fruehauf 2013-12-14 07:51:46 UTC
Simon, thanks for that. I should have ran fedora-review by myself.

Fixed the above problems and submitted the patch that's included with the RPM to the upstream maintainer. This should look a bit better:
SRPM URL: http://danfruehauf.fedorapeople.org/NetworkManager-iodine-0.0.4-1.fc19.src.rpm
Spec URL: http://danfruehauf.fedorapeople.org/NetworkManager-iodine.spec
Additional patch (submitted upstream): http://danfruehauf.fedorapeople.org/lt_init.patch

Comment 3 Simon Farnsworth 2013-12-14 10:22:59 UTC
Down to a couple of nitpick level comments, which are as likely to be proof of my ignorance as anything else:

 * Patch0's comment - could it include a link to your upstream submission as described in https://fedoraproject.org/wiki/Packaging:Guidelines#All_patches_should_have_an_upstream_bug_link_or_comment ?

 * You still Require: gtk3, when autorequires will pull it in; is there a reason to do this? Similarly, do you need the UI for gnome-keyring and CLI tools for dbus, or just the libraries that autorequires pull in? My understanding of https://fedoraproject.org/wiki/Packaging:Guidelines#Explicit_Requires is that you shouldn't put Require: lines in if autorequires pulls in enough.

If I've misunderstood something, please correct me - I'm new at this.

Oh, and if you've got any spare time, a review of bug 1034341 would be appreciated.

Comment 4 Dan Fruehauf 2013-12-14 10:39:58 UTC
(In reply to Simon Farnsworth from comment #3)
> Down to a couple of nitpick level comments, which are as likely to be proof
> of my ignorance as anything else:
> 
>  * Patch0's comment - could it include a link to your upstream submission as
> described in
> https://fedoraproject.org/wiki/Packaging:
> Guidelines#All_patches_should_have_an_upstream_bug_link_or_comment ?
I've sent an email to the maintainer, unfortunately there's no upstream bugzilla for that...
> 
>  * You still Require: gtk3, when autorequires will pull it in; is there a
> reason to do this? Similarly, do you need the UI for gnome-keyring and CLI
> tools for dbus, or just the libraries that autorequires pull in? My
> understanding of
> https://fedoraproject.org/wiki/Packaging:Guidelines#Explicit_Requires is
> that you shouldn't put Require: lines in if autorequires pulls in enough.
Yep, you're right, it's just unnecessary clutter. Removed.
> 
> If I've misunderstood something, please correct me - I'm new at this.
> 
> Oh, and if you've got any spare time, a review of bug 1034341 would be
> appreciated.
I'm going to review it now.

Comment 6 Michael S. 2013-12-15 18:48:26 UTC
Package Review
==============

Legend:
[x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated
[ ] = Manual review needed

- I am not sure that nm-iodine-auth-dialog belong to the main
package, since this pull several gnome libraries. Can you check if it work fine without it ?


===== MUST items =====

C/C++:
[x]: Package does not contain kernel modules.
[x]: Package contains no static executables.
[x]: Development (unversioned) .so files in -devel subpackage, if present.
     Note: Unversioned so-files in private %_libdir subdirectory (see
     attachment). Verify they are not in ld path.
[x]: Package does not contain any libtool archives (.la)
[x]: Rpath absent or only used for internal libs.

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 or later)", "GPL (v2 or later)". Detailed output of
     licensecheck in /tmp/1040459-NetworkManager-iodine/licensecheck.txt
[x]: License file installed when any subpackage combination is installed.
[x]: Package must own all directories that it creates.
     Note: Directories without known owners: /etc/NetworkManager,
     /etc/NetworkManager/VPN, /usr/lib64/NetworkManager
[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.
[-]: 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.
[-]: 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 requires other packages for directories it uses.
[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]: Each %files section contains %defattr if rpm < 4.4
[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:
[x]: If the source package does not include license text(s) as a separate file
     from upstream, the packager SHOULD query upstream to include it.
[!]: Final provides and requires are sane (see attachments).
[x]: Package functions as described.
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[x]: Patches link to upstream bugs/comments/lists or are otherwise justified.
[-]: 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]: Fully versioned dependency in subpackages if applicable.
[x]: Uses parallel make %{?_smp_mflags} macro.
[x]: SourceX tarball generation or download is documented.
[x]: SourceX is a working URL.
[x]: Spec use %global instead of %define unless justified.

===== EXTRA items =====

Generic:
[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.
[x]: Package should not use obsolete m4 macros
[x]: Spec file according to URL is the same as in SRPM.


Rpmlint
-------
Checking: NetworkManager-iodine-0.0.4-2.fc20.x86_64.rpm
          NetworkManager-iodine-gnome-0.0.4-2.fc20.x86_64.rpm
          NetworkManager-iodine-0.0.4-2.fc20.src.rpm
NetworkManager-iodine.x86_64: W: non-conffile-in-etc /etc/dbus-1/system.d/nm-iodine-service.conf
NetworkManager-iodine.x86_64: W: non-conffile-in-etc /etc/NetworkManager/VPN/nm-iodine-service.name
3 packages and 0 specfiles checked; 0 errors, 2 warnings.




Rpmlint (installed packages)
----------------------------
# rpmlint NetworkManager-iodine-gnome NetworkManager-iodine
NetworkManager-iodine.x86_64: W: non-conffile-in-etc /etc/dbus-1/system.d/nm-iodine-service.conf
NetworkManager-iodine.x86_64: W: non-conffile-in-etc /etc/NetworkManager/VPN/nm-iodine-service.name
2 packages and 0 specfiles checked; 0 errors, 2 warnings.
# echo 'rpmlint-done:'



Requires
--------
NetworkManager-iodine-gnome (rpmlib, GLIBC filtered):
    NetworkManager-iodine(x86-64)
    libatk-1.0.so.0()(64bit)
    libc.so.6()(64bit)
    libcairo-gobject.so.2()(64bit)
    libcairo.so.2()(64bit)
    libdbus-1.so.3()(64bit)
    libdbus-glib-1.so.2()(64bit)
    libgdk-3.so.0()(64bit)
    libgdk_pixbuf-2.0.so.0()(64bit)
    libgio-2.0.so.0()(64bit)
    libglib-2.0.so.0()(64bit)
    libgobject-2.0.so.0()(64bit)
    libgtk-3.so.0()(64bit)
    libnm-glib-vpn.so.1()(64bit)
    libnm-glib.so.4()(64bit)
    libnm-util.so.2()(64bit)
    libpango-1.0.so.0()(64bit)
    libpangocairo-1.0.so.0()(64bit)
    libpthread.so.0()(64bit)
    nm-connection-editor
    rtld(GNU_HASH)

NetworkManager-iodine (rpmlib, GLIBC filtered):
    iodine-client
    libatk-1.0.so.0()(64bit)
    libc.so.6()(64bit)
    libcairo-gobject.so.2()(64bit)
    libcairo.so.2()(64bit)
    libdbus-1.so.3()(64bit)
    libdbus-glib-1.so.2()(64bit)
    libgdk-3.so.0()(64bit)
    libgdk_pixbuf-2.0.so.0()(64bit)
    libgio-2.0.so.0()(64bit)
    libglib-2.0.so.0()(64bit)
    libgnome-keyring.so.0()(64bit)
    libgobject-2.0.so.0()(64bit)
    libgthread-2.0.so.0()(64bit)
    libgtk-3.so.0()(64bit)
    libnm-glib-vpn.so.1()(64bit)
    libnm-glib.so.4()(64bit)
    libnm-util.so.2()(64bit)
    libpango-1.0.so.0()(64bit)
    libpangocairo-1.0.so.0()(64bit)
    libpthread.so.0()(64bit)
    rtld(GNU_HASH)
    shared-mime-info



Provides
--------
NetworkManager-iodine-gnome:
    NetworkManager-iodine-gnome
    NetworkManager-iodine-gnome(x86-64)

NetworkManager-iodine:
    NetworkManager-iodine
    NetworkManager-iodine(x86-64)



Unversioned so-files
--------------------
NetworkManager-iodine-gnome: /usr/lib64/NetworkManager/libnm-iodine-properties.so

Source checksums
----------------
http://honk.sigxcpu.org/projects/network-manager-iodine/tarballs/NetworkManager-iodine-0.0.4.tar.xz :
  CHECKSUM(SHA256) this package     : 37e6707be81413d47b7902a892922497e150e9bf7b72e6880a39767dd20eecf3
  CHECKSUM(SHA256) upstream package : 37e6707be81413d47b7902a892922497e150e9bf7b72e6880a39767dd20eecf3


Generated by fedora-review 0.5.0 (920221d) last change: 2013-08-30
Command line :/usr/bin/fedora-review -b 1040459
Buildroot used: fedora-20-x86_64
Active plugins: Generic, Shell-api, C/C++
Disabled plugins: Java, Python, SugarActivity, Perl, R, PHP, Ruby
Disabled flags: EPEL5, EXARCH, DISTTAG

Comment 7 Dan Fruehauf 2013-12-15 21:36:48 UTC
(In reply to Michael Scherer from comment #6)
> Package Review
> ==============
> 
> Legend:
> [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated
> [ ] = Manual review needed
> 
> - I am not sure that nm-iodine-auth-dialog belong to the main
> package, since this pull several gnome libraries. Can you check if it work
> fine without it ?
That's an issue we have with NetworkManager VPN packages across the board. The guys upstream are working on a fix to properly separate the auth dialog to a not require GUI. At the moment it requires it though.

One might ask why split into 2 packages then? I submitted patches to all the NetworkManager VPN plugins spec files to separate into 2 packages (core and gnome) as this is the direction we're going to. By all means, the auth dialog should not require gnome, however at the moment it still does :/

I'll see if I can dig up the bug where we had the discussion about it.

> 
> 
> ===== MUST items =====
> 
> C/C++:
> [x]: Package does not contain kernel modules.
> [x]: Package contains no static executables.
> [x]: Development (unversioned) .so files in -devel subpackage, if present.
>      Note: Unversioned so-files in private %_libdir subdirectory (see
>      attachment). Verify they are not in ld path.
> [x]: Package does not contain any libtool archives (.la)
> [x]: Rpath absent or only used for internal libs.
> 
> 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 or later)", "GPL (v2 or later)". Detailed output of
>      licensecheck in /tmp/1040459-NetworkManager-iodine/licensecheck.txt
> [x]: License file installed when any subpackage combination is installed.
> [x]: Package must own all directories that it creates.
>      Note: Directories without known owners: /etc/NetworkManager,
>      /etc/NetworkManager/VPN, /usr/lib64/NetworkManager
> [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.
> [-]: 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.
> [-]: 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 requires other packages for directories it uses.
> [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]: Each %files section contains %defattr if rpm < 4.4
> [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:
> [x]: If the source package does not include license text(s) as a separate
> file
>      from upstream, the packager SHOULD query upstream to include it.
> [!]: Final provides and requires are sane (see attachments).
> [x]: Package functions as described.
> [x]: Latest version is packaged.
> [x]: Package does not include license text files separate from upstream.
> [x]: Patches link to upstream bugs/comments/lists or are otherwise justified.
> [-]: 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]: Fully versioned dependency in subpackages if applicable.
> [x]: Uses parallel make %{?_smp_mflags} macro.
> [x]: SourceX tarball generation or download is documented.
> [x]: SourceX is a working URL.
> [x]: Spec use %global instead of %define unless justified.
> 
> ===== EXTRA items =====
> 
> Generic:
> [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.
> [x]: Package should not use obsolete m4 macros
> [x]: Spec file according to URL is the same as in SRPM.
> 
> 
> Rpmlint
> -------
> Checking: NetworkManager-iodine-0.0.4-2.fc20.x86_64.rpm
>           NetworkManager-iodine-gnome-0.0.4-2.fc20.x86_64.rpm
>           NetworkManager-iodine-0.0.4-2.fc20.src.rpm
> NetworkManager-iodine.x86_64: W: non-conffile-in-etc
> /etc/dbus-1/system.d/nm-iodine-service.conf
> NetworkManager-iodine.x86_64: W: non-conffile-in-etc
> /etc/NetworkManager/VPN/nm-iodine-service.name
> 3 packages and 0 specfiles checked; 0 errors, 2 warnings.
> 
> 
> 
> 
> Rpmlint (installed packages)
> ----------------------------
> # rpmlint NetworkManager-iodine-gnome NetworkManager-iodine
> NetworkManager-iodine.x86_64: W: non-conffile-in-etc
> /etc/dbus-1/system.d/nm-iodine-service.conf
> NetworkManager-iodine.x86_64: W: non-conffile-in-etc
> /etc/NetworkManager/VPN/nm-iodine-service.name
> 2 packages and 0 specfiles checked; 0 errors, 2 warnings.
> # echo 'rpmlint-done:'
> 
> 
> 
> Requires
> --------
> NetworkManager-iodine-gnome (rpmlib, GLIBC filtered):
>     NetworkManager-iodine(x86-64)
>     libatk-1.0.so.0()(64bit)
>     libc.so.6()(64bit)
>     libcairo-gobject.so.2()(64bit)
>     libcairo.so.2()(64bit)
>     libdbus-1.so.3()(64bit)
>     libdbus-glib-1.so.2()(64bit)
>     libgdk-3.so.0()(64bit)
>     libgdk_pixbuf-2.0.so.0()(64bit)
>     libgio-2.0.so.0()(64bit)
>     libglib-2.0.so.0()(64bit)
>     libgobject-2.0.so.0()(64bit)
>     libgtk-3.so.0()(64bit)
>     libnm-glib-vpn.so.1()(64bit)
>     libnm-glib.so.4()(64bit)
>     libnm-util.so.2()(64bit)
>     libpango-1.0.so.0()(64bit)
>     libpangocairo-1.0.so.0()(64bit)
>     libpthread.so.0()(64bit)
>     nm-connection-editor
>     rtld(GNU_HASH)
> 
> NetworkManager-iodine (rpmlib, GLIBC filtered):
>     iodine-client
>     libatk-1.0.so.0()(64bit)
>     libc.so.6()(64bit)
>     libcairo-gobject.so.2()(64bit)
>     libcairo.so.2()(64bit)
>     libdbus-1.so.3()(64bit)
>     libdbus-glib-1.so.2()(64bit)
>     libgdk-3.so.0()(64bit)
>     libgdk_pixbuf-2.0.so.0()(64bit)
>     libgio-2.0.so.0()(64bit)
>     libglib-2.0.so.0()(64bit)
>     libgnome-keyring.so.0()(64bit)
>     libgobject-2.0.so.0()(64bit)
>     libgthread-2.0.so.0()(64bit)
>     libgtk-3.so.0()(64bit)
>     libnm-glib-vpn.so.1()(64bit)
>     libnm-glib.so.4()(64bit)
>     libnm-util.so.2()(64bit)
>     libpango-1.0.so.0()(64bit)
>     libpangocairo-1.0.so.0()(64bit)
>     libpthread.so.0()(64bit)
>     rtld(GNU_HASH)
>     shared-mime-info
> 
> 
> 
> Provides
> --------
> NetworkManager-iodine-gnome:
>     NetworkManager-iodine-gnome
>     NetworkManager-iodine-gnome(x86-64)
> 
> NetworkManager-iodine:
>     NetworkManager-iodine
>     NetworkManager-iodine(x86-64)
> 
> 
> 
> Unversioned so-files
> --------------------
> NetworkManager-iodine-gnome:
> /usr/lib64/NetworkManager/libnm-iodine-properties.so
> 
> Source checksums
> ----------------
> http://honk.sigxcpu.org/projects/network-manager-iodine/tarballs/
> NetworkManager-iodine-0.0.4.tar.xz :
>   CHECKSUM(SHA256) this package     :
> 37e6707be81413d47b7902a892922497e150e9bf7b72e6880a39767dd20eecf3
>   CHECKSUM(SHA256) upstream package :
> 37e6707be81413d47b7902a892922497e150e9bf7b72e6880a39767dd20eecf3
> 
> 
> Generated by fedora-review 0.5.0 (920221d) last change: 2013-08-30
> Command line :/usr/bin/fedora-review -b 1040459
> Buildroot used: fedora-20-x86_64
> Active plugins: Generic, Shell-api, C/C++
> Disabled plugins: Java, Python, SugarActivity, Perl, R, PHP, Ruby
> Disabled flags: EPEL5, EXARCH, DISTTAG

Comment 8 Michael S. 2013-12-16 10:10:55 UTC
I guess i would prefer to not have them split if this only bring complexity, but since this is done on every others on, and that can be fixed later. Let's say the package is approved.

Comment 9 Dan Fruehauf 2013-12-16 12:29:24 UTC
(In reply to Michael Scherer from comment #8)
> I guess i would prefer to not have them split if this only bring complexity,
> but since this is done on every others on, and that can be fixed later.
> Let's say the package is approved.

I understand. Trust me I'm usually the one that's trying to get things as clean as possible. I think the resolution for the plugins is around the corner. Here is some discussion about it: https://bugzilla.redhat.com/show_bug.cgi?id=950285

Thanks for approving, I'll go ahead with that.

Comment 10 Dan Fruehauf 2013-12-21 10:37:37 UTC
New Package SCM Request
=======================
Package Name: NetworkManager-iodine
Short Description: NetworkManager VPN plugin for iodine
Owners: danfruehauf
Branches: f20
InitialCC:

Comment 11 Dan Fruehauf 2013-12-22 00:21:20 UTC
(In reply to Michael Scherer from comment #8)
> I guess i would prefer to not have them split if this only bring complexity,
> but since this is done on every others on, and that can be fixed later.
> Let's say the package is approved.

Hi Michael, for the sake of order, if this is indeed approved, can you please set the flag of 'fedora-review' to '+'? Otherwise I cannot do the SCM request.

Comment 12 Gwyn Ciesla 2013-12-23 12:55:41 UTC
See prior comment unsetting flag.

Comment 13 Dan Fruehauf 2013-12-24 00:21:27 UTC
I'm a bit confused. Can I go with fedora-cvs? and proceed with the SCM request then?

Comment 14 Michael S. 2013-12-24 00:47:30 UTC
Yep, you can now.

Comment 15 Dan Fruehauf 2013-12-24 01:11:11 UTC
New Package SCM Request
=======================
Package Name: NetworkManager-iodine
Short Description: NetworkManager VPN plugin for iodine
Owners: danfruehauf
Branches: f20
InitialCC:

Comment 16 Dan Fruehauf 2013-12-24 06:21:40 UTC
Umn, did I forget something? I didn't get any notification about the new pakcage SCM request and it's been a while already...

Comment 17 Gwyn Ciesla 2013-12-24 12:47:21 UTC
Git done (by process-git-requests).

Comment 18 Fedora Update System 2013-12-30 13:26:18 UTC
NetworkManager-iodine-0.0.4-2.fc20 has been submitted as an update for Fedora 20.
https://admin.fedoraproject.org/updates/NetworkManager-iodine-0.0.4-2.fc20

Comment 19 Fedora Update System 2013-12-31 02:01:04 UTC
NetworkManager-iodine-0.0.4-2.fc20 has been pushed to the Fedora 20 testing repository.

Comment 20 Fedora Update System 2014-01-08 07:46:25 UTC
NetworkManager-iodine-0.0.4-2.fc20 has been pushed to the Fedora 20 stable repository.


Note You need to log in before you can comment on or make changes to this bug.