Bug 7680

Summary: localization in man distribution never gets into rpm
Product: [Retired] Red Hat Linux Reporter: noa <noa-redhat-bugzilla>
Component: manAssignee: Bernhard Rosenkraenzer <bero>
Status: CLOSED RAWHIDE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 6.1   
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2000-10-03 12:35:50 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
rpm with support
none
an updated buildroot patch
none
updated src.rpm compared to the one included in redhat-7 none

Description noa 1999-12-08 14:39:18 UTC
the man package as maintained by Andries Brouwer (aeb)
is internationalized in a proper but somewhat old fasioned way,
but the catalog files are not included in the rpm distribution.
This can be so for two reasons, one is that redhat has some
problem with localized packages not using gettext (which is stupid)
and the other that the packager was bitten by a bug in the makemsg
distributed with glibc-2.1.x. A patch to work around the latter
problem along with explanation can be found at http://noa.tm/man.txt

Comment 1 Bernhard Rosenkraenzer 2000-08-08 16:10:49 UTC
Does the i18n support in man actually work for you? It doesn't work here (can't
find the message catalog files, even though they're just where they're supposed
to be).

Comment 2 noa 2000-08-09 10:28:28 UTC
yes, it works for me(tm). Please send over (or point me to) your src.rpm and I
will try to track down the problem

Comment 3 Bernhard Rosenkraenzer 2000-08-09 10:30:44 UTC
Created attachment 2254 [details]
rpm with support

Comment 4 noa 2000-08-10 13:07:28 UTC
Created attachment 2354 [details]
an updated buildroot patch

Comment 5 noa 2000-08-10 13:09:37 UTC
ok, i've found the problems.
1. the man-1.5h1-buildroot.patch breaks the Makefile not to install man
   (a fixed version called man-1.5h1-newbuildroot.patch is attached, the
changesare small but
    a difference in the patch arguments makes comparison difficult (what do you
use? i use 'diff -ur')
2. You also need to add /usr/share/locale to the %files list. 
   (note that the use of %{_mandir} breaks the .specfile on redhat-6.2 systems,
so i removed it)

--- man.spec	Wed Aug  9 12:34:26 2000
+++ man.spec.right	Thu Aug 10 15:01:31 2000
@@ -8,7 +8,7 @@
 Source1: makewhatis.cronweekly
 Source2: makewhatis.crondaily
 Patch1: man-1.5h1-confpath.patch
-Patch2: man-1.5h1-buildroot.patch
+Patch2: man-1.5h1-newbuildroot.patch
 Patch3: man-1.5-manconf.patch
 Patch4: man-1.5h1-make.patch
 Patch6: man-1.5g-security.patch
@@ -103,7 +103,8 @@
 /usr/bin/whatis
 /usr/sbin/makewhatis
 %config /etc/man.config
-%{_mandir}/*
+/usr/share/man/*
+/usr/share/locale/*
 /usr/bin/man2html
 
 %attr(0775,root,man)	%dir /var/cache/man


Comment 6 Bernhard Rosenkraenzer 2000-08-15 12:07:29 UTC
Still doesn't work for me.
First of all, man installs stuff to /usr/lib/locale; fixing that is simple of
course.
But after fixing it, the localization has no effect:

[root@bero SPECS]# LANG=de man asdasdad
No manual entry for sdasda

Even though "No manual entry for %s" is translated in the de locale.

Comment 7 noa 2000-10-03 12:33:16 UTC
i'm back from some time working with other things, and I have a working package
here now. I'm
attaching the whole src.rpm (tested on redhat-7) so hopefully you will get it to
work.
Comments on changes: man.spec
- including the new man-1.5h1-i18n.patch
- including '+lang all' in the arguments to ./configure
- removing -D_GNU_SOURCE (why is that anyway? it creates a conflicting
declaration of getline())
- adding /usr/share/locale/* to %files

man-1.5h1-i18n.patch:
things reverting earlier changes in the buildroot patch:
- uncommenting messages and gencat/gencat targets and 'cd msgs; make install' in
Makefile.in
new changes
- changing the default NLSPATH so that messagesfiles gets installed where they
will be found in /usr/share/locale
- adding $(PREFIX) to msgs/Makefile.in so that buildroot will work
- the patch to makemsg.c mentioned first in this bugreport

Comment 8 noa 2000-10-03 12:35:48 UTC
Created attachment 3658 [details]
updated src.rpm compared to the one included in redhat-7

Comment 9 Bernhard Rosenkraenzer 2000-10-04 10:45:44 UTC
Thanks, that did it.
I've added some more minor modifications to the spec (marking the i18n files as
such) and built it in rawhide (1.5h1-11).