Bug 226395

Summary: Merge Review: scim
Product: [Fedora] Fedora Reporter: Nobody's working on this, feel free to take it <nobody>
Component: Package ReviewAssignee: Parag AN(पराग) <panemade>
Status: CLOSED RAWHIDE QA Contact: Fedora Package Reviews List <fedora-package-review>
Severity: urgent Docs Contact:
Priority: medium    
Version: rawhideCC: eng-i18n-bugs, mtasaka, petersen, sayamindu
Target Milestone: ---Flags: panemade: fedora-review+
petersen: 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-04-11 08:32:34 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:

Description Nobody's working on this, feel free to take it 2007-01-31 20:55:28 UTC
Fedora Merge Review: scim

http://cvs.fedora.redhat.com/viewcvs/devel/scim/
Initial Owner: petersen

Comment 1 Parag AN(पराग) 2007-03-02 06:27:06 UTC
rpmlint reports follwoing messages on SRPM and RPMS

W: scim prereq-use %{_sbindir}/alternatives
The use of PreReq is deprecated. In the majority of cases, a plain Requires
is enough and the right thing to do. Sometimes Requires(pre), Requires(post),
Requires(preun) and/or Requires(postun) can also be used instead of PreReq.

W: scim mixed-use-of-spaces-and-tabs (spaces: line 4, tab: line 10)
The specfile mixes use of spaces and tabs for indentation, which is a
cosmetic annoyance.  Use either spaces or tabs for indentation, not both.

W: scim patch-not-applied Patch2: gtkimm-clear-preedit-on-reset-174143.patch
A patch is included in your package but was not applied. Refer to the patches
documentation to see what's wrong.

E: scim obsolete-not-provided iiimf-gtk
The obsoleted package must also be provided to allow clean upgrade paths
and not to break dependencies.

E: scim obsolete-not-provided iiimf-gnome-im-switcher
The obsoleted package must also be provided to allow clean upgrade paths
and not to break dependencies.

E: scim obsolete-not-provided iiimf-server
The obsoleted package must also be provided to allow clean upgrade paths
and not to break dependencies.

E: scim obsolete-not-provided iiimf-x
The obsoleted package must also be provided to allow clean upgrade paths
and not to break dependencies.

E: scim binary-or-shlib-defines-rpath /usr/lib/scim-1.0/scim-panel-gtk ['/usr//lib']
The binary or shared library defines `RPATH'. Usually this is a
bad thing because it hardcodes the path to search libraries and so
makes it difficult to move libraries around.  Most likely you will find a
Makefile with a line like: gcc test.o -o test -Wl,--rpath.  Also, sometimes
configure scripts provide a --disable-rpath flag to avoid this.

E: scim binary-or-shlib-defines-rpath /usr/lib/scim-1.0/1.4.0/Helper/setup.so
['/usr//lib']
The binary or shared library defines `RPATH'. Usually this is a
bad thing because it hardcodes the path to search libraries and so
makes it difficult to move libraries around.  Most likely you will find a
Makefile with a line like: gcc test.o -o test -Wl,--rpath.  Also, sometimes
configure scripts provide a --disable-rpath flag to avoid this.

E: scim binary-or-shlib-defines-rpath
/usr/lib/scim-1.0/1.4.0/SetupUI/aaa-imengine-setup.so ['/usr//lib']
The binary or shared library defines `RPATH'. Usually this is a
bad thing because it hardcodes the path to search libraries and so
makes it difficult to move libraries around.  Most likely you will find a
Makefile with a line like: gcc test.o -o test -Wl,--rpath.  Also, sometimes
configure scripts provide a --disable-rpath flag to avoid this.

E: scim binary-or-shlib-defines-rpath
/usr/lib/scim-1.0/1.4.0/SetupUI/aaa-frontend-setup.so ['/usr//lib']
The binary or shared library defines `RPATH'. Usually this is a
bad thing because it hardcodes the path to search libraries and so
makes it difficult to move libraries around.  Most likely you will find a
Makefile with a line like: gcc test.o -o test -Wl,--rpath.  Also, sometimes
configure scripts provide a --disable-rpath flag to avoid this.

E: scim binary-or-shlib-defines-rpath
/usr/lib/scim-1.0/1.4.0/SetupUI/panel-gtk-setup.so ['/usr//lib']
The binary or shared library defines `RPATH'. Usually this is a
bad thing because it hardcodes the path to search libraries and so
makes it difficult to move libraries around.  Most likely you will find a
Makefile with a line like: gcc test.o -o test -Wl,--rpath.  Also, sometimes
configure scripts provide a --disable-rpath flag to avoid this.

W: scim non-conffile-in-etc /etc/X11/xinit/xinput.d/scim.conf
A non-executable file in your package is being installed in /etc, but is not
a configuration file. All non-executable files in /etc should be configuration
files. Mark the file as %config in the spec file.

E: scim zero-length /usr/share/doc/scim-1.4.5/NEWS

E: scim-gtk binary-or-shlib-defines-rpath /usr/lib/gtk-2.0/immodules/im-scim.so
['/usr//lib']
The binary or shared library defines `RPATH'. Usually this is a
bad thing because it hardcodes the path to search libraries and so
makes it difficult to move libraries around.  Most likely you will find a
Makefile with a line like: gcc test.o -o test -Wl,--rpath.  Also, sometimes
configure scripts provide a --disable-rpath flag to avoid this.

E: scim-libs obsolete-not-provided iiimf-libs
The obsoleted package must also be provided to allow clean upgrade paths
and not to break dependencies.

E: scim-libs obsolete-not-provided iiimf-csconv
The obsoleted package must also be provided to allow clean upgrade paths
and not to break dependencies.

E: scim-libs binary-or-shlib-defines-rpath
/usr/lib/libscim-gtkutils-1.0.so.8.1.1 ['/usr//lib']
The binary or shared library defines `RPATH'. Usually this is a
bad thing because it hardcodes the path to search libraries and so
makes it difficult to move libraries around.  Most likely you will find a
Makefile with a line like: gcc test.o -o test -Wl,--rpath.  Also, sometimes
configure scripts provide a --disable-rpath flag to avoid this.

W: scim-libs no-documentation
The package contains no documentation (README, doc, etc).
You have to include documentation files.

W: scim-libs one-line-command-in-%post /sbin/ldconfig
You should use %post -p <command> instead of using:

%post
<command>

It will avoid the fork of a shell interpreter to execute your command as
well as allows rpm to automatically mark the dependency on your command
for the excecution of the scriptlet.

W: scim-libs one-line-command-in-%postun /sbin/ldconfig
You should use %postun -p <command> instead of using:

%postun
<command>

It will avoid the fork of a shell interpreter to execute your command as
well as allows rpm to automatically mark the dependency on your command
for the excecution of the scriptlet.


E: scim-devel obsolete-not-provided iiimf-libs-devel
The obsoleted package must also be provided to allow clean upgrade paths
and not to break dependencies.


Comment 2 Mamoru TASAKA 2007-03-02 06:48:27 UTC
... however does scim _really_ provide iiimf?

Comment 3 Jens Petersen 2007-03-02 07:05:52 UTC
(In reply to comment #2)
> ... however does scim _really_ provide iiimf?

Right I don't think it should.  I think an exception can be made following
"Renaming/replacing existing packages".  Maybe rpmlint should treat the case
"Obsoletes: package <= version" as a warning not an error?

Comment 4 Parag AN(पराग) 2007-03-02 07:18:42 UTC
(In reply to comment #3)
> (In reply to comment #2)
> > ... however does scim _really_ provide iiimf?
> 
> Right I don't think it should.  I think an exception can be made following
> "Renaming/replacing existing packages".  Maybe rpmlint should treat the case
> "Obsoletes: package <= version" as a warning not an error?

Agree. ok


Comment 5 Jens Petersen 2007-03-09 02:43:21 UTC
(In reply to comment #1)
> W: scim prereq-use %{_sbindir}/alternatives
> W: scim mixed-use-of-spaces-and-tabs (spaces: line 4, tab: line 10)
> W: scim patch-not-applied Patch2: gtkimm-clear-preedit-on-reset-174143.patch

Fixing these.

> E: scim obsolete-not-provided iiimf-gtk
> E: scim obsolete-not-provided iiimf-gnome-im-switcher
> E: scim obsolete-not-provided iiimf-server
> E: scim obsolete-not-provided iiimf-x

As mentioned in comments 2-4 I don't think anything can
or should be done about these really.

> E: scim binary-or-shlib-defines-rpath /usr/lib/scim-1.0/scim-panel-gtk
['/usr//lib']
> E: scim binary-or-shlib-defines-rpath /usr/lib/scim-1.0/1.4.0/Helper/setup.so
> ['/usr//lib']
> E: scim binary-or-shlib-defines-rpath
> /usr/lib/scim-1.0/1.4.0/SetupUI/aaa-imengine-setup.so ['/usr//lib']
> E: scim binary-or-shlib-defines-rpath
> /usr/lib/scim-1.0/1.4.0/SetupUI/aaa-frontend-setup.so ['/usr//lib']
> E: scim binary-or-shlib-defines-rpath
> /usr/lib/scim-1.0/1.4.0/SetupUI/panel-gtk-setup.so ['/usr//lib']

Looking into these.

> W: scim non-conffile-in-etc /etc/X11/xinit/xinput.d/scim.conf
> E: scim zero-length /usr/share/doc/scim-1.4.5/NEWS

Fixing.

> E: scim-gtk binary-or-shlib-defines-rpath /usr/lib/gtk-2.0/immodules/im-scim.so
> ['/usr//lib']
> E: scim-libs obsolete-not-provided iiimf-libs
> E: scim-libs obsolete-not-provided iiimf-csconv
> E: scim-libs binary-or-shlib-defines-rpath
> /usr/lib/libscim-gtkutils-1.0.so.8.1.1 ['/usr//lib']

> W: scim-libs no-documentation

There is a separate scim-doc subpackage.

> W: scim-libs one-line-command-in-%post /sbin/ldconfig
> W: scim-libs one-line-command-in-%postun /sbin/ldconfig

Fixing.

> E: scim-devel obsolete-not-provided iiimf-libs-devel

Again as above.

Above fixes should be in devel/ cvs head now.

Comment 6 Jens Petersen 2007-03-09 03:21:48 UTC
Fixed the rpaths too in scim-1.4.5-9.fc7.

Comment 7 Mamoru TASAKA 2007-03-09 09:06:22 UTC
For 1.4.5-9:

* Directory ownership
  - Currently the structure of the directories owned is wrong.
    * scim requires scim-libs, not opposite
      This means that the directories which scim and scim-libs
      use and are created by either scim or scim-libs must
      be owned by scim-libs, not scim.

      Example:
----------------------------------------------------
[root@localhost ~]# rpm -qf /usr/lib/scim-1.0
scim-1.4.5-9.fc7
[root@localhost ~]# rpm -qf /usr/lib/scim-1.0/1.4.0/
scim-libs-1.4.5-9.fc7
scim-1.4.5-9.fc7
----------------------------------------------------
      This is not right.
      And:
----------------------------------------------------
[root@localhost mock]# rpm -qlp scim-*i386*rpm | sort | uniq -d
/usr/lib/scim-1.0/1.4.0
/usr/lib/scim-1.0/1.4.0/IMEngine
----------------------------------------------------
      Please check which directories should be owned by what
      package.

* Desktop file
----------------------------------------------------
Categories=Applications;Settings;X-Fedora;
----------------------------------------------------
  - categories 
    * "X-Fedora" is deprecated
    * "Applications" is deprecated
    and both should be removed.

* Timestamps
  - This package contains manu
    * image files (such as png files)
    * text files (such as header files)
    and keeping timestamps on those files are recommended.

* Source
  - Specify the URL of Source2 if possible.

Comment 8 Jens Petersen 2007-03-12 03:55:16 UTC
Thanks for the comments.

(In reply to comment #7)
> * Directory ownership
:
>       Please check which directories should be owned by what
>       package.

fixing
 
> * Desktop file
>     * "X-Fedora" is deprecated
>     * "Applications" is deprecated

fixing

> * Timestamps
>   - This package contains manu
>     * image files (such as png files)
>     * text files (such as header files)
>     and keeping timestamps on those files are recommended.

Sorry is this a build issue or a packaging issue?

> * Source
>   - Specify the URL of Source2 if possible.

The new scim-icons are currently just maintained in the Fedora scim
package but they have been submitted upstream and are waiting to be committed.


Above fixes are in scim-1.4.5-10.fc7.

Comment 9 Mamoru TASAKA 2007-03-12 04:26:24 UTC
I have not checked -10 yet.

(In reply to comment #8)
> fixing
> 
> > * Timestamps
> >   - This package contains manu
> >     * image files (such as png files)
> >     * text files (such as header files)
> >     and keeping timestamps on those files are recommended.
> 
> Sorry is this a build issue or a packaging issue?

Rather a packaging issue. Usually
---------------------------------------------
make install INSTALL="%{__install} -p" DESTDIR=.......
---------------------------------------------
fixes this issue.

Comment 10 Mamoru TASAKA 2007-03-12 11:28:58 UTC
-10 seems okay to me expect my comment 9 and Source0
(Please check: http://fedoraproject.org/wiki/Packaging/SourceURL )

Comment 11 Jens Petersen 2007-03-12 23:40:25 UTC
Thanks, should be fixed in scim-1.4.5-11.fc7.

Comment 12 Jens Petersen 2007-03-26 07:54:59 UTC
Any more work required on this? :)

Comment 13 Parag AN(पराग) 2007-03-26 09:16:45 UTC
Package is ready for review :)

Comment 14 Mamoru TASAKA 2007-03-26 15:10:10 UTC
For me -11 seems okay.

Comment 15 Parag AN(पराग) 2007-03-27 03:33:50 UTC
Review:
+ package builds in mock (development i386).
+ rpmlint is silent for SRPM.
+ rpmlint is NOT silent for RPMs scim, scim-devel, scim-libs
The Warning is of obsolete-not-provided which can be ignored.
+ source files match upstream.
e2c71f9f54eda65cc1a515863a1839d2  /root/scim/devel/scim-1.4.5.tar.gz
+ package meets naming and packaging guidelines.
+ specfile is properly named, is cleanly written
+ Spec file is written in American English.
+ Spec file is legible.
+ dist tag is present.
+ build root is correct.
+ license is open source-compatible.
+ License text COPYING is included in package.
+ %doc is NOT small so scim-doc subpackage required.
+ BuildRequires are proper.
+ %clean is present.
+ package installed properly.
+ Macro use appears rather consistent.
+ Package contains code, not content.
+ no static libraries.
+ scim.pc, scim-gtkutils.pc and scim-x11utils.pc files are present.
+ scim-devel subpackage exists.
+ no .la files.
+ translations are available.
+ Does owns the directories it creates.
+ no duplicates in %files.
+ file permissions are appropriate.
+ Desktop file installed correctly.
+ GUI app.
+ scim RPM Provides: aaa-frontend-setup.so aaa-imengine-setup.so config(scim) =
1.4.5-11.fc7 panel-gtk-setup.so rawcode.so rawcode.so(SCIM_IMENGINE_1.0) sctc.so
setup.so socket.so x11.so
+ scim-libs Provides: libscim-1.0.so.8 libscim-1.0.so.8(LIBSCIM_1.0)
libscim-gtkutils-1.0.so.8 libscim-x11utils-1.0.so.8 simple.so
simple.so(SCIM_CONFIG_1.0) socket.so socket.so(SCIM_CONFIG_1.0)
socket.so(SCIM_IMENGINE_1.0)
+ scim-gtk Provides: im-scim.so im-scim.so(IM_SCIM_1.0)

APPROVED.


Thanks to mtasaka for his review comments. And Thanks for Jens.

Comment 16 Jens Petersen 2007-03-27 04:00:15 UTC
I would like to build scim for EL4.  (scim is already in extras cvs)

Package Change Request
======================
Package Name: scim
New Branches: EL-4

Comment 17 Parag AN(पराग) 2007-04-11 04:14:13 UTC
Can this review be closed now?

Comment 18 Sayamindu Dasgupta 2008-12-18 21:12:37 UTC
I would like to build scim for OLPC-4 (without the requires imchooser, im-settings part

Package Change Request
======================
Package Name: scim
New Branches: OLPC-4
Owners: sayamind

This is as per the discussion at http://dev.laptop.org/ticket/8934#comment:6

Comment 19 Jens Petersen 2008-12-18 23:42:40 UTC
Okay sounds reasonable: cvs admin done.

But please try to keep the olpc branch in sync with fedora afap. :)

Comment 20 Jens Petersen 2008-12-18 23:46:15 UTC
Curious though - how do you start scim in olpc?

You might want to do some changes too related to the langbar and notification icon perhaps, dunno, if it is only for Indic.