[Bug 1060419] Review Request: gwakeonlan - A GTK+ utility to awake machines using the Wake on LAN

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



https://bugzilla.redhat.com/show_bug.cgi?id=1060419



--- Comment #11 from nicolas.vieville@xxxxxxxxxxxxxxxxxxxx ---
Hello,

First, thank you to Muflone for his intervention and explanation about the
proposition I made about making this application Python 3 compatible. When you
want to make it compatible with Python 3, as I said in my first message, you
know that all the dependencies will be already present in Fedora, and that it
will be easy to build a package.

I'll make an unofficial review of your package.

In order to make it easy, some modifications are needed in the spec file you
provided, before I make the complete unofficial review.

Please could you replace all the combined space/tabulation indentation by
choosing one of this possibility: only tabulation indentation or only space
indentation (I usually prefer the last one but it's only a matter of personal
choice).

The description section can use line of 79 characters long
(https://fedoraproject.org/wiki/Common_Rpmlint_issues#description-line-too-long).
Yours is less than that, but as the previous state, it's your own personal
choice.

Please upgrade the version to the last one available on the upstream web site
(actually 0.6.2) and update the Version and Release field and the changelog
section accordingly.

The Requires and BuildRequires should be set as follow:

BuildRequires:  python2-devel python-setuptools pyxdg
BuildRequires:  desktop-file-utils gettext
Requires:       pygobject3
Requires:       hicolor-icon-theme

The python-setuptools package is generally needed in order to help your package
to be build.
The pyxdg package is a dependency of the build process of your package.
The desktop-file-utils gettext packages are needed in the process of building
and installing the software provided by your package. You already set gettext,
but desktop-file-utils will help you in installing or removing the .desktop
file (see below comment about install section).

The pygobject3 package contains the equivalent of pygtk2 for GTK3 and will ask
for all its dependencies.

The hicolor-icon-theme is needed in order to fix correctly the owner of the
icons/hicolor directory in the post* sections (see below).

As the macro %oname will be used only in the description section (see below
about Python eggs), this one can be removed, and replaced by "gWakeOnLan" in
the description.

In the prep section, as the expression "%setup -q -n %{name}-%{version}" is
already the default, you can just make it: "%setup -q"

In the install section, please use the macro %{buildroot} instead of
$RPM_BUILD_ROOT variable (one of them should be used in all your spec file in
order to avoid using both of them).

In this section, in order to correctly setup the unmodified .desktop file you
should use this line:

desktop-file-validate %{buildroot}/%{_datadir}/applications/%{name}.desktop

If you want to modify this file, you should use the desktop-file-install tool.
See https://fedoraproject.org/wiki/Packaging:Guidelines#Desktop_files for
complete explanations about this.

As your package provides a complete set of icons you should add, always in the
install section, the line described here:
https://fedoraproject.org/wiki/Packaging:ScriptletSnippets#Icon_Cache
in order to keep the icon cache up to date while installing/removing your
package. I usually add the -f commutator to these commands in order to force
operations. The lines needed look like that:

%post
# Update icon cache :
/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :

%postun
# Update icon cache :
if [ $1 -eq 0 ] ; then
    /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null
    /usr/bin/gtk-update-icon-cache -f %{_datadir}/icons/hicolor &>/dev/null ||
:
fi

%posttrans
# Update icon cache :
/usr/bin/gtk-update-icon-cache -f %{_datadir}/icons/hicolor &>/dev/null || :


In the files section, %{python_sitelib} is deprecated in favor of 
%{python2_sitelib}.
As the python-setuptools does is job correctly, there seems that your package
doesn't need to take special precaution of the "egg" part of it (to be checked
after installation before validation). You can remove the two lines beginning
with  %{python_sitelib} and replace them with this one: %{python2_sitelib}/*

So you can remove the definition and the use of the oname2 global variable from
the entire spec file.

In this same section, as the package only embed one .desktop file, you can
simplify the line:

%{_datadir}/applications/%{name}.desktop

by:

%{_datadir}/applications/*

In the changelog section, please use no special characters unreadable by some
editors (in the case of this package the dot and the at characters). 
As it is stated in the changelogs section of the documentation
(https://fedoraproject.org/wiki/Packaging:Guidelines#Changelogs), " If you wish
to "scramble" or "obfuscate" your email address in the changelog, you may do
so, provided that it is still understandable by humans. ". I would add,
provided that it is still printable by an editor in order to be readable by
humans :) .

To finish with this section, I usually prefer to add a minus ("-") between the
version/release number of the package and the beginning of the line. Looks like
that for example:

* Mon Jan 27 2014 bebo_sudo <your_printable_readable_email_address> - 0.6.2-1
- initial release from an existing package


As I'm candidate packager for Fedora, and as my skill in such things is not as
high as proven packagers, any comments about this unofficial review are
welcome.

I noticed that actually your time is dedicated to your exams (wish you to
succeed), and knows that you will respond when you've got the time.

Feel free to make any comment you want and don't hesitate to ask for
clarifications or explanations if needed.

Cordially,


-- 
NVieville

-- 
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
https://admin.fedoraproject.org/mailman/listinfo/package-review





[Index of Archives]     [Fedora Legacy]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]     [Fedora Tools]