Bug 389701

Summary: Review Request: osmo - Personal organizer
Product: [Fedora] Fedora Reporter: Jakub 'Livio' Rusinek <liviopl.pl>
Component: Package ReviewAssignee: manuel wolfshant <manuel.wolfshant>
Status: CLOSED NEXTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: fedora-package-review, notting
Target Milestone: ---Flags: manuel.wolfshant: fedora-review+
kevin: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-11-23 20:07:32 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
failed build log with first attempt to use $RPM_OPT_FLAGS none

Description Jakub 'Livio' Rusinek 2007-11-18 20:00:36 UTC
Spec URL: http://liviopl.fedorapeople.org/osmo.spec
SRPM URL: http://liviopl.fedorapeople.org/osmo-0.1.2-1.fc8.src.rpm
Description: Osmo is a handy personal organizer which includes 
calendar, tasks manager and address book modules. 
It was designed to be a small, easy to use 
and good looking PIM tool to help to manage 
personal information. In current state the organizer 
is quite convenient in use - for example, user 
can perform nearly all operations using keyboard. 
Also, a lot of parameters are configurable 
to meet user preferences.

Comment 1 Jason Tibbitts 2007-11-18 20:27:34 UTC
Fails to build for me.  In %install:

make[2]: Nothing to be done for `install-exec-am'.
/bin/sh: /usr/bin/msgfmt: No such file or directory
cs.mo updated.
/bin/sh: /usr/bin/msgfmt: No such file or directory
de.mo updated.
/bin/sh: /usr/bin/msgfmt: No such file or directory
fr.mo updated.
/bin/sh: /usr/bin/msgfmt: No such file or directory
pl.mo updated.
/bin/sh: /usr/bin/msgfmt: No such file or directory
pt.mo updated.
for i in cs.mo de.mo fr.mo pl.mo pt.mo; do \
                lang=`echo $i | sed 's/\.mo$//'`; \
                /bin/sh /builddir/build/BUILD/osmo-0.1.2/install-sh -d
/var/tmp/osmo-0.1.2-1.fc9-root-mockbuild/usr/share/locale/$lang/LC_MESSAGES; \
                /usr/bin/install -c -m 644 $i
/var/tmp/osmo-0.1.2-1.fc9-root-mockbuild/usr/share/locale/$lang/LC_MESSAGES/osmo.mo;
\
        done
/usr/bin/install: cannot stat `cs.mo': No such file or directory
/usr/bin/install: cannot stat `de.mo': No such file or directory
/usr/bin/install: cannot stat `fr.mo': No such file or directory
/usr/bin/install: cannot stat `pl.mo': No such file or directory
/usr/bin/install: cannot stat `pt.mo': No such file or directory
make[2]: *** [install-data-local] Error 1

Did you do a scratch build before submitting?

Comment 2 manuel wolfshant 2007-11-18 20:40:41 UTC
There seems to be a typo in the included osmo.desktop file (source1):
Icon=/usr/share/pixmaps//usr/share/pixmaps//usr/share/pixmaps//usr/share/pixmaps
/osmo.svg

Mock build fails with:
2007-11-18 22:24:36,281 - util.py:218:DEBUG:   /usr/bin/install -c 'osmo'
'/var/tmp/osmo-0.1.2-1.fc9-root-mockbuild/usr/b
in/osmo'
2007-11-18 22:24:36,281 - util.py:218:DEBUG: make[2]: Nothing to be done for
`install-data-am'.
2007-11-18 22:24:36,282 - util.py:218:DEBUG: make[2]: Leaving directory
`/builddir/build/BUILD/osmo-0.1.2/src'
2007-11-18 22:24:36,282 - util.py:218:DEBUG: make[1]: Leaving directory
`/builddir/build/BUILD/osmo-0.1.2/src'
2007-11-18 22:24:36,282 - util.py:218:DEBUG: Making install in po
2007-11-18 22:24:36,282 - util.py:218:DEBUG: make[1]: Entering directory
`/builddir/build/BUILD/osmo-0.1.2/po'
2007-11-18 22:24:36,282 - util.py:218:DEBUG: make[2]: Entering directory
`/builddir/build/BUILD/osmo-0.1.2/po'
2007-11-18 22:24:36,282 - util.py:218:DEBUG: make[2]: Nothing to be done for
`install-exec-am'.
2007-11-18 22:24:36,282 - util.py:218:DEBUG: /bin/sh: /usr/bin/msgfmt: No such
file or directory
2007-11-18 22:24:36,282 - util.py:218:DEBUG: cs.mo updated.
2007-11-18 22:24:36,283 - util.py:218:DEBUG: /bin/sh: /usr/bin/msgfmt: No such
file or directory
2007-11-18 22:24:36,283 - util.py:218:DEBUG: de.mo updated.
2007-11-18 22:24:36,283 - util.py:218:DEBUG: /bin/sh: /usr/bin/msgfmt: No such
file or directory
2007-11-18 22:24:36,283 - util.py:218:DEBUG: fr.mo updated.
2007-11-18 22:24:36,283 - util.py:218:DEBUG: /bin/sh: /usr/bin/msgfmt: No such
file or directory
2007-11-18 22:24:36,283 - util.py:218:DEBUG: pl.mo updated.
2007-11-18 22:24:36,283 - util.py:218:DEBUG: /bin/sh: /usr/bin/msgfmt: No such
file or directory
2007-11-18 22:24:36,283 - util.py:218:DEBUG: pt.mo updated.
2007-11-18 22:24:36,284 - util.py:218:DEBUG: for i in cs.mo de.mo fr.mo pl.mo
pt.mo; do \
2007-11-18 22:24:36,284 - util.py:218:DEBUG:            lang=`echo $i | sed
's/\.mo$//'`; \
2007-11-18 22:24:36,284 - util.py:218:DEBUG:            /bin/sh
/builddir/build/BUILD/osmo-0.1.2/install-sh -d /var/tmp/o
smo-0.1.2-1.fc9-root-mockbuild/usr/share/locale/$lang/LC_MESSAGES; \
2007-11-18 22:24:36,284 - util.py:218:DEBUG:            /usr/bin/install -c -m
644 $i /var/tmp/osmo-0.1.2-1.fc9-root-mock
build/usr/share/locale/$lang/LC_MESSAGES/osmo.mo; \
2007-11-18 22:24:36,284 - util.py:218:DEBUG:    done
2007-11-18 22:24:36,284 - util.py:218:DEBUG: /usr/bin/install: cannot stat
`cs.mo': No such file or directory
2007-11-18 22:24:36,284 - util.py:218:DEBUG: /usr/bin/install: cannot stat
`de.mo': No such file or directory
2007-11-18 22:24:36,285 - util.py:218:DEBUG: /usr/bin/install: cannot stat
`fr.mo': No such file or directory
2007-11-18 22:24:36,285 - util.py:218:DEBUG: /usr/bin/install: cannot stat
`pl.mo': No such file or directory
2007-11-18 22:24:36,285 - util.py:218:DEBUG: /usr/bin/install: cannot stat
`pt.mo': No such file or directory
2007-11-18 22:24:36,285 - util.py:218:DEBUG: make[2]: *** [install-data-local]
Error 1
2007-11-18 22:24:36,285 - util.py:218:DEBUG: make[2]: Leaving directory
`/builddir/build/BUILD/osmo-0.1.2/po'
2007-11-18 22:24:36,285 - util.py:218:DEBUG: make[1]: *** [install-am] Error 2
2007-11-18 22:24:36,285 - util.py:218:DEBUG: make[1]: Leaving directory
`/builddir/build/BUILD/osmo-0.1.2/po'
2007-11-18 22:24:36,285 - util.py:218:DEBUG: make: *** [install-recursive] Error 1
2007-11-18 22:24:36,286 - util.py:218:DEBUG: error: Bad exit status from
/var/tmp/rpm-tmp.79694 (%install)
2007-11-18 22:24:36,286 - util.py:218:DEBUG:
2007-11-18 22:24:36,286 - util.py:218:DEBUG:
2007-11-18 22:24:36,286 - util.py:218:DEBUG: RPM build errors:
2007-11-18 22:24:36,286 - util.py:218:DEBUG:     Bad exit status from
/var/tmp/rpm-tmp.79694 (%install)
2007-11-18 22:24:36,287 - trace_decorator.py:27:DEBUG: EXCEPTION:
Command(rpmbuild -bb --target x86_64 --nodeps //builddi
r/build/SPECS/osmo.spec) failed. See logs for output.


Comment 3 Jakub 'Livio' Rusinek 2007-11-18 20:51:26 UTC
i've forgot about translations.

Spec URL: http://liviopl.fedorapeople.org/osmo.spec
SRPM URL: http://liviopl.fedorapeople.org/osmo-0.1.2-2.fc8.src.rpm

Comment 4 Jakub 'Livio' Rusinek 2007-11-18 20:55:16 UTC
i've forgot about translations.

Spec URL: http://liviopl.fedorapeople.org/osmo.spec
SRPM URL: http://liviopl.fedorapeople.org/osmo-0.1.2-2.fc8.src.rpm

Comment 5 Jakub 'Livio' Rusinek 2007-11-18 20:55:57 UTC
God... Did I sent my comment twice? I don't remember...
Sorry, nevermind.

Comment 6 manuel wolfshant 2007-11-19 22:07:43 UTC
This time the package builds OK, but %{_datadir}/locale/ should not be included
under %files, because 
- locales are already included via -f %{name}.lang, so this triggers "files
listed twice" warnings  (for instance:  File listed twice:
usr/share/locale/cs/LC_MESSAGES/osmo.mo)
- it takes ownership of %{_datadir}/locale/ and its descendant directories

It would also be nice if you would preserve the timestamp of the files which are
not modified (mainly those listed under %doc). I did not test with osmo, but
usually passing INSTALL="install -p" to %make install is enough for that.

Comment 7 Jakub 'Livio' Rusinek 2007-11-20 19:26:47 UTC
i had bad day, fixing.

Spec URL: http://liviopl.fedorapeople.org/osmo.spec
SRPM URL: http://liviopl.fedorapeople.org/osmo-0.1.2-3.fc8.src.rpm

Comment 8 manuel wolfshant 2007-11-21 16:51:58 UTC
According to
http://fedoraproject.org/wiki/Packaging/Guidelines#head-254ddf07aae20a23ced8cecc219d8f73926e9755

you have to add desktop-file-utils as a BR and use it to install osmo.desktop.
Something along
           desktop-file-install --vendor="fedora" \
--dir=${RPM_BUILD_ROOT}%{_datadir}/applications %{SOURCE1}
should do. Mind the usage of "fedora" as vendor.

There are also a couple more things to tweak:
- The package owns /usr/share/pixmaps, which is a standard directory. Please
replace 
%{_datadir}/pixmaps/
with
%{_datadir}/pixmaps/*

Another thing whih is a MUSTFIX is obeying to compiler flags (see
http://fedoraproject.org/wiki/Packaging/Guidelines#head-8b14098227aebff1cf6188939e9d0877295ac448).



Comment 9 Jakub 'Livio' Rusinek 2007-11-21 17:25:59 UTC
I hope you have no more issues to tell me :] .

Spec URL: http://liviopl.fedorapeople.org/osmo.spec
SRPM URL: http://liviopl.fedorapeople.org/osmo-0.1.2-4.fc8.src.rpm

Comment 10 manuel wolfshant 2007-11-21 17:47:47 UTC
Created attachment 266191 [details]
failed build log with first attempt to use $RPM_OPT_FLAGS

Comment 11 manuel wolfshant 2007-11-21 17:49:37 UTC
Unfortunately 
- you have not used desktop-file-utils to actually install the desktop file
- your attempt to pass CFLAGS to make leads to failing builds

Please see the log in comment #10.

Comment 12 Jakub 'Livio' Rusinek 2007-11-21 17:58:55 UTC
Jesus, forgot to add few lines and few chars...
I hope now everything is ok.

Spec URL: http://liviopl.fedorapeople.org/osmo.spec
SRPM URL: http://liviopl.fedorapeople.org/osmo-0.1.2-5.fc8.src.rpm

Comment 13 manuel wolfshant 2007-11-21 18:33:57 UTC
Build in mock fails because you have to replace the last line in %files with 
%{_datadir}/applications/fedora-%{name}.desktop. Otherwise everything looks OK.

I'll post a full review later today.


Comment 14 Jakub 'Livio' Rusinek 2007-11-21 18:39:17 UTC
I have little sclerosis on today...

Spec URL: http://liviopl.fedorapeople.org/osmo.spec
SRPM URL: http://liviopl.fedorapeople.org/osmo-0.1.2-6.fc8.src.rpm

Comment 15 manuel wolfshant 2007-11-21 21:19:02 UTC
Package Review for osmo-0.1.2-6.fc8.src.rpm
==============

Key:
 - = N/A
 x = Check
 ! = Problem
 ? = Not evaluated

=== REQUIRED ITEMS ===
 [x] Package is named according to the Package Naming Guidelines.
 [x] Spec file name must match the base package %{name}, in the format %{name}.spec.
 [x] Package meets the Packaging Guidelines.
 [x] Package successfully compiles and builds into binary rpms on at least one
supported architecture.
     Tested on:rawhide/x86_64
 [x] Rpmlint output: none
 [x] Package is not relocatable.
 [x] Buildroot is correct
(%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n))
 [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.
     License type:GPLv2+
 [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] Spec file is legible and written in American English.
 [x] Sources used to build the package matches the upstream source, as provided
in the spec URL.
     SHA1SUM of package: 766c5020b08cee4f43c45fb23d5623fbea9b2b11
 [x] Package is not known to require ExcludeArch
 [x] All build dependencies are listed in BuildRequires, except for any that are
listed in the exceptions section of Packaging Guidelines.
 [x] The spec file handles locales properly.
 [-] ldconfig called in %post and %postun if required.
 [x] Package must own all directories that it creates.
 [x] Package requires other packages for directories it uses.
 [x] Package does not contain duplicates in %files.
 [x] Permissions on files are set properly.
 [x] Package has a %clean section, which contains rm -rf %{buildroot} (or
$RPM_BUILD_ROOT).
 [x] Package consistently uses macros.
 [x] Package contains code, or permissable content.
 [-] Large documentation files are in a -doc subpackage, if required.
 [x] Package uses nothing in %doc for runtime.
 [-] Header files in -devel subpackage, if present.
 [-] Static libraries in -devel subpackage, if present.
 [-] Package requires pkgconfig, if .pc files are present.
 [-] Development .so files in -devel subpackage, if present.
 [-] Fully versioned dependency in subpackages, if present.
 [x] Package does not contain any libtool archives (.la).
 [x] Package contains a properly installed %{name}.desktop file if it is a GUI
application.
 [x] Package does not own files or directories owned by other packages.

=== SUGGESTED ITEMS ===
 [x] Latest version is packaged.
 [x] Package does not include license text files separate from upstream.
 [x] Description and summary sections in the package spec file contains
translations for supported Non-English languages, if available.
 [x] Reviewer should test that the package builds in mock.
     Tested on:rawhide and F7
 [x] Package should compile and build into binary rpms on all supported
architectures.
     Tested on:rawhide and F7
 [x] Package functions as described.
 [x] Scriptlets must be sane, if used.
 [-] The placement of pkgconfig(.pc) files are correct.
 [x] File based requires are sane.


=== Issues ===
1. None

=== Final Notes ===
1. It would be awesome if you would preserve the timestamps of the pixmaps files
(png and svg).
2. For esthetics's sake and compliance with
http://fedoraproject.org/wiki/Packaging/Guidelines#head-f3d77b27a5d29dfc1f5600ef3fc836f2e317badf,
please use (in %make) $RPM_OPT_FLAGS instead of %{optflags} (everywhere else you
have used the uppercase version). You could do this change in the current
version, before commit, no need to bump release for that.

================
*** APPROVED ***
================



Comment 16 Jakub 'Livio' Rusinek 2007-11-22 14:26:16 UTC
@Notes:
1. I tried to preserve them, didn't helped out. BTW, is this REALLY needed?
2. Changed.

Spec URL: http://liviopl.fedorapeople.org/osmo.spec
SRPM URL: http://liviopl.fedorapeople.org/osmo-0.1.2-6.fc8.src.rpm

Comment 17 Jakub 'Livio' Rusinek 2007-11-22 14:27:44 UTC
New Package CVS Request
=======================
Package Name: osmo
Short Description: Personal organizer
Owners: liviopl
Branches: F-7 F-8
InitialCC: liviopl
Cvsextras Commits: yes

Comment 18 manuel wolfshant 2007-11-22 15:23:50 UTC
Well, for a start your call to sed will modify the timestamp of the file. You
could preserve it with a bit of magic, like in
   touch -r osmo.svg some_temp_file
   <your call to sed goes here>
   touch -r some_temp_file osmo.svg


Comment 19 Jakub 'Livio' Rusinek 2007-11-22 17:29:44 UTC
Sorry, I usually don't use sed, awk, whatever.
Could you help me out with this?

Comment 20 Kevin Fenzi 2007-11-22 19:48:01 UTC
cvs done.

Comment 21 manuel wolfshant 2007-11-22 22:22:56 UTC
It looks I was wrong, the call to sed from %prep affects the desktop file, not
the pixmaps.

The only needed change is to use
   make install DESTDIR=$RPM_BUILD_ROOT INSTALL='install -p'
instead of
   INSTALL='install -p' make install DESTDIR=$RPM_BUILD_ROOT

Please do that modification before uploading to cvs.
And do not forget to close the bug once you are done building in koji and the
packages are pushed via bodhi.


Comment 22 Jakub 'Livio' Rusinek 2007-11-23 06:06:58 UTC
Too bad for me, that I have built packages and submitted updates to testing.
I'm not uploading updated spec and srpm, insted I'm commiting these files to CVS.
Now make build in every branch and then sumbit to bodhi.