• Bug#266365: gcal: uses hardcoded 'more', not 'pager'; violates policy 1

    From Fabian Pietsch@1:229/2 to All on Tue Aug 17 20:40:13 2004
    From: [email protected]

    Package: gcal
    Version: 3.01.1-5.1
    Severity: minor
    Tags: patch

    When using gcal's -p option without $PAGER being set, it uses a set of hard-coded defaults: 'less', 'more', 'pg'. [1]

    According to Debian Policy 11.4, this should be '/usr/bin/pager',
    depending on interpretation also 'less' and 'more', but with lower
    priority. Because of [1], this policy violation leads to 'more' being
    used as pager with current gcal package and $PAGER unset. This might be undesirable for many users.

    The pagers tried at runtime are specified in a NULL-terminated array
    'pagers' being initialized from the macros PAGER1_PROG to PAGER3_PROG;
    although existing in src/tailor.h, they seem to be really set by
    config.h. A patch against configure.in is included which sets them to '"/usr/bin/pager"', '"more"' and 'NULL', avoiding the compile/configure
    time check for the pagers' existence.

    Rebuilding the package will break at least Thomas Esken's ASCII art logo
    in gcal.info, though; it seems that some behaviour of makeinfo has
    changed in this respect from makeinfo 4.0 to 4.7.

    Regards,
    Fabian

    [1] These are dependant on which of them have been available on the
    build system running the package's configure script. Current
    gcal package seems to be built on a system with only 'more'
    available of all the three pagers checked.

    -- System Information:
    Debian Release: 3.1
    APT prefers testing
    APT policy: (500, 'testing')
    Architecture: i386 (i686)
    Kernel: Linux 2.4.26-1-k7
    Locale: LANG=de_DE, LC_CTYPE=de_DE

    Versions of packages gcal depends on:
    ii libc6 2.3.2.ds1-13 GNU C Library: Shared libraries an ii libncurses5 5.4-4 Shared libraries for terminal hand

    -- no debconf information

    --- gcal-3.01.1.orig/configure.in 2000-06-14 02:03:00.000000000 +0200
    +++ gcal-3.01.1/configure.in 2004-08-17 19:36:35.000000000 +0200
    @@ -452,12 +452,9 @@
    if test "$gcal_cv_use_pager" = yes; then
    dnl
    - dnl Checks for ``external'' pager programs (less, more, pg).
    + dnl Set ``external'' pager programs in compliance with Debian Policy 11.4.
    dnl
    - AC_CHECK_PROG(PAGER1, less, less)
    - AC_DEFINE_UNQUOTED(PAGER1_PROG, "$PAGER1")
    - AC_CHECK_PROG(PAGER2, more, more)
    - AC_DEFINE_UNQUOTED(PAGER2_PROG, "$PAGER2")
    - AC_CHECK_PROG(PAGER3, pg, pg)
    - AC_DEFINE_UNQUOTED(PAGER3_PROG, "$PAGER3")
    + AC_DEFINE_UNQUOTED(PAGER1_PROG, "/usr/bin/pager")
    + AC_DEFINE_UNQUOTED(PAGER2_PROG, "less")
    + AC_DEFINE_UNQUOTED(PAGER3_PROG, "more")
    fi
    dnl

    --- SoupGate-Win32 v1.05
    * Origin: you cannot sedate... all the things you hate (1:229/2)