Opened 15 years ago

Closed 15 years ago

#2298 closed task (fixed)

Man-DB prefers GDBM

Reported by: Matthew Burgess Owned by: Matthew Burgess
Priority: normal Milestone: 6.5
Component: Book Version: SVN
Severity: normal Keywords:
Cc:

Description

As mentioned at http://www.linuxfromscratch.org/pipermail/lfs-dev/2008-September/061646.html, there are several adjustments to Man-DB's configuration that upstream suggest will improve our UTF-8 support.

Change History (6)

comment:1 by alexander@…, 15 years ago

IMHO it would be better to list the adjustments in the ticket.

  1. Move to GDBM.
  1. Use the encoding fallback logic in Man-DB (untested by me, I have not even looked at the code).
  1. Don't configure out /usr/man if Man-DB ignores the duplicates resulting from this symlink automatically.

(1) and (3) are straightforward to test. (2) will be accepted if the following testsuite passes.

In the LFS-6.3 + BLFS 6.3 system, run "LANG=ru_RU.UTF-8 xterm -lc", and there, "man vim" and "man 5 shadow". Note the output (must be Russian letters), take screenshots. Then, on a different partition, install LFS SVN + BLFS SVN with shadow and vim, but don't reencode manual pages. Move the Russian "vim" manpages from ru.KOI8-R to ru, just to test autodetection. In "LANG=ru_RU.UTF-8 xterm -lc", run "man vim" and then "man shadow". The result, if I understand the words about autodetection correctly, must be pixel-for-pixel identical to the prevoius screenshots. Then, retest in "LANG=ru_RU.KOI8-R xterm -lc", and, if you care, "localedef -i ru_RU -f CP1251 ru_RU.CP1251 && LANG=ru_RU.CP1251 xterm -lc". xterm should display the same letters, but man-db may use different characters for bullets.

comment:2 by ken@…, 15 years ago

For all the pages and languages I've looked at, man-db-2.5.5 "just works" in UTF-8 environments (that is, using gdbm and letting packages install into ll/ directories (the vim pages in ll.UTF-8 ll.koi8r ll.ISO8859-? are also rendered if I point 'man' to them specifically, but it's easier to just let it do the right thing).

For the avoidance of doubt, I've let shadow install all its pages (UTF-8) into ll/ directories.

HOWEVER I haven't tested cp1251 for russian (a bulgarian cp1251 page renders nicely in bg_BG.UTF-8) and I suspect it may require further configuration or the use of manconv.

This is on a system based on cross-lfs, using gdbm (--sysconfdir=/etc). A quick test of whatis ('whatis man') appears to show there are no duplicates, my unaltered man_db.conf has

MANDATORY_MANPATH                       /usr/man
MANDATORY_MANPATH                       /usr/share/man
MANDATORY_MANPATH                       /usr/local/share/man

comment:3 by Matthew Burgess, 15 years ago

Summary: Man-DB UTF-8 configurationMan-DB prefers GDBM

The only outstanding issue now is the fact that upstream prefer Man-DB to use GDBM rather than Berkeley DB. This should be as trivial as migrating BLFS' GDBM page across to LFS.

comment:4 by bdubbs@…, 15 years ago

Milestone: 7.06.5

comment:5 by Matthew Burgess, 15 years ago

Owner: changed from lfs-book@… to Matthew Burgess
Status: newassigned

comment:6 by Matthew Burgess, 15 years ago

Resolution: fixed
Status: assignedclosed

Fixed in r8894.

Note: See TracTickets for help on using tickets.