If the patch is too long to be accepted for now, how about starting with replacing libncurses5 with libncursesw5? Just replacing, without touching other things, is also useful.
The only problem is that libncursesw5 is not in base... but after sarge all programs can be replaced. -- Changwoo Ryu
diff -ur dpkg-1.10.27/configure.in dpkg-1.10.27.ncursesw/configure.in --- dpkg-1.10.27/configure.in 2005-02-11 00:25:43.000000000 +0900 +++ dpkg-1.10.27.ncursesw/configure.in 2005-03-03 11:28:39.489618280 +0900 @@ -184,7 +184,7 @@ # check for the proper curses library. This can be either # -lcurses or -lncurses, we need to check for either one. -AC_CHECK_LIB(ncurses,initscr, CURSES_LIBS="-lncurses $CURSES_LIBS", AC_CHECK_LIB(curses,initscr, CURSES_LIBS="-lcurses $CURSES_LIBS")) +AC_CHECK_LIB(ncursesw,initscr, CURSES_LIBS="-lncursesw $CURSES_LIBS", AC_CHECK_LIB(curses,initscr, CURSES_LIBS="-lcursesw $CURSES_LIBS")) if test "x$CURSES_LIBS" = "x"; then AC_MSG_WARN(no curses library found) fi Only in dpkg-1.10.27.ncursesw: configure.in.orig Only in dpkg-1.10.27.ncursesw: configure.in.rej diff -ur dpkg-1.10.27/debian/changelog dpkg-1.10.27.ncursesw/debian/changelog --- dpkg-1.10.27/debian/changelog 2005-02-11 00:24:17.000000000 +0900 +++ dpkg-1.10.27.ncursesw/debian/changelog 2005-03-03 11:30:41.501069720 +0900 @@ -1,3 +1,9 @@ +dpkg (1.10.27.ncursesw) unstable; urgency=low + + * Use ncursesw instead of ncurses. + + -- Changwoo Ryu <[EMAIL PROTECTED]> Thu, 3 Mar 2005 11:30:19 +0900 + dpkg (1.10.27) unstable; urgency=low The "Grab your gun and bring in the cat" Release. Only in dpkg-1.10.27.ncursesw/debian: changelog.orig Only in dpkg-1.10.27.ncursesw/debian: changelog.rej Only in dpkg-1.10.27.ncursesw/debian: changelog~ diff -ur dpkg-1.10.27/dselect/Makefile.in dpkg-1.10.27.ncursesw/dselect/Makefile.in --- dpkg-1.10.27/dselect/Makefile.in 2005-02-11 00:24:17.000000000 +0900 +++ dpkg-1.10.27.ncursesw/dselect/Makefile.in 2005-03-03 11:28:39.597601864 +0900 @@ -53,7 +53,7 @@ curkeys.o: curkeys.h curkeys.h: keyoverride $(srcdir)/mkcurkeys.pl - cursesfile=`echo '#include <curses.h>' | \ + cursesfile=`echo '#include <ncursesw/curses.h>' | \ $(CC) -E - | grep 'curses.h' | head -n 1 | \ $(SED) -e 's/^[^"]*"//; s/".*$$//'`; \ if [ "$$cursesfile" = "" ]; then echo "can't find curses file"; exit 1; fi; \ diff -ur dpkg-1.10.27/dselect/dselect.h dpkg-1.10.27.ncursesw/dselect/dselect.h --- dpkg-1.10.27/dselect/dselect.h 2005-02-11 00:24:17.000000000 +0900 +++ dpkg-1.10.27.ncursesw/dselect/dselect.h 2005-03-03 11:28:39.605600648 +0900 @@ -28,7 +28,7 @@ #include <signal.h> #undef ERR -#include <curses.h> +#include <ncursesw/curses.h> struct helpmenuentry { char key; diff -ur dpkg-1.10.27/dselect/main.cc dpkg-1.10.27.ncursesw/dselect/main.cc --- dpkg-1.10.27/dselect/main.cc 2005-02-11 00:24:17.000000000 +0900 +++ dpkg-1.10.27.ncursesw/dselect/main.cc 2005-03-03 11:28:39.613599432 +0900 @@ -36,7 +36,8 @@ #include <ctype.h> #include <assert.h> -#include <term.h> +#include <wchar.h> +#include <ncursesw/term.h> extern "C" { #include <dpkg.h>