[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#677987: lsb-base: how do I enable fancy logging



Package: lsb-base
Version: 4.1+Debian7
Severity: minor

On my Debian box, which must have had an old enough installation, there
is not much intelligence I can find on how to enable fancy logging that
I keep seeing in my test VM  running newer debian.

Could this be a feature that could be enabled easily?
I tried FANCYTTY=1 in /etc/default/rcS and /etc/lsb-base-logging.sh. But
neither worked. 

-- System Information:
Debian Release: wheezy/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable'), (100, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 3.4-trunk-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

-- Configuration Files:
/etc/lsb-base-logging.sh changed:
LOG_DAEMON_MSG=""
FANCYTTY=1
log_use_plymouth () {
    if [ "${loop:-n}" = y ]; then
        return 1
    fi
    plymouth --ping >/dev/null 2>&1
}
log_success_msg () {
    echo " * $@"
}
log_failure_msg () {
    if log_use_fancy_output; then
        RED=`$TPUT setaf 1`
        NORMAL=`$TPUT op`
        echo " $RED*$NORMAL $@"
    else
        echo " * $@"
    fi
}
log_warning_msg () {
    if log_use_fancy_output; then
        YELLOW=`$TPUT setaf 3`
        NORMAL=`$TPUT op`
        echo " $YELLOW*$NORMAL $@"
    else
        echo " * $@"
    fi
}
log_begin_msg () {
    log_daemon_msg "$1"
}
log_daemon_msg () {
    if [ -z "$1" ]; then
        return 1
    fi
    if log_use_fancy_output && $TPUT xenl >/dev/null 2>&1; then
        COLS=`$TPUT cols`
        if [ "$COLS" ] && [ "$COLS" -gt 6 ]; then
            COL=`$EXPR $COLS - 7`
        else
            COLS=80
            COL=73
        fi
        if log_use_plymouth; then
            # If plymouth is running, don't output anything at this time
            # to avoid buffering problems (LP: #752393)
            if [ -z "$LOG_DAEMON_MSG" ]; then
                LOG_DAEMON_MSG=$*
                return
            fi
        fi
        # We leave the cursor `hanging' about-to-wrap (see terminfo(5)
        # xenl, which is approximately right). That way if the script
        # prints anything then we will be on the next line and not
        # overwrite part of the message.
        # Previous versions of this code attempted to colour-code the
        # asterisk but this can't be done reliably because in practice
        # init scripts sometimes print messages even when they succeed
        # and we won't be able to reliably know where the colourful
        # asterisk ought to go.
        printf " * $*       "
        # Enough trailing spaces for ` [fail]' to fit in; if the message
        # is too long it wraps here rather than later, which is what we
        # want.
        $TPUT hpa `$EXPR $COLS - 1`
        printf ' '
    else
        echo " * $@"
        COL=
    fi
}
log_progress_msg () {
    :
}
log_end_msg () {
    if [ -z "$1" ]; then
        return 1
    fi
    if [ "$COL" ] && [ -x "$TPUT" ]; then
        # If plymouth is running, print previously stored output
        # to avoid buffering problems (LP: #752393)
        if log_use_plymouth; then
            if [ -n "$LOG_DAEMON_MSG" ]; then
                log_daemon_msg $LOG_DAEMON_MSG
                LOG_DAEMON_MSG=""
            fi
        fi
        printf "\r"
        $TPUT hpa $COL
        if [ "$1" -eq 0 ]; then
            echo "[ OK ]"
        else
            printf '['
            $TPUT setaf 1 # red
            printf fail
            $TPUT op # normal
            echo ']'
        fi
    else
        if [ "$1" -eq 0 ]; then
            echo "   ...done."
        else
            echo "   ...fail!"
        fi
    fi
    return $1
}
log_action_msg () {
    echo " * $@"
}
log_action_begin_msg () {
    log_daemon_msg "$@..."
}
log_action_cont_msg () {
    log_daemon_msg "$@..."
}
log_action_end_msg () {
    # In the future this may do something with $2 as well.
    log_end_msg "$1" || true
}


-- no debconf information



Reply to: