Public bug reported:

apt-cache policy console-setup
console-setup:
  Installed: 1.178ubuntu1
  Candidate: 1.178ubuntu1
  Version table:
 *** 1.178ubuntu1 500
        500 http://gb.archive.ubuntu.com/ubuntu bionic/main amd64 Packages
        500 http://gb.archive.ubuntu.com/ubuntu bionic/main i386 Packages
        100 /var/lib/dpkg/status

On 18.04 I wanted to set the TTY font to use a Powerline font. Despite
being able to set the font manually it wasn't being set at boot-time.

/etc/default/console-setup contains:

FONT="/usr/local/share/fonts/ter-powerline-v22n.psf.gz"

"setupcon -v -f" reported an error:

putfont: KDFONTOP: Invalid argument

due to passing the font filename twice:

executing setfont -C /dev/tty1 /usr/local/share/fonts/ter-powerline-
v22n.psf.gz /usr/local/share/fonts/ter-powerline-v22n.psf.gz.

The problem is in /bin/setupcon where the collecting variable FONTFILES
has the font added twice, once at the top of the for loop

FONTFILES="$FONTFILES `findfile $fontdir $f`"

and again at the bottom

FONTFILES="$FONTFILES $RES"

Removing the first assignment fixes it.

FONTFILES=''
echo "DEBUG: FONT=$FONT"
if [ "$FONT" ]; then
    for f in $FONT; do
      echo "DEBUG: for loop"
        FONTFILES="$FONTFILES `findfile $fontdir $f`"
        RES=`findfile $fontdir $f`
        if [ -z "$RES" ]; then
            fdec="${f%.gz}"
            RES=`findfile $fontdir $fdec`
        fi
        FONTFILES="$FONTFILES $RES"
    done
fi
FONTFILES=`echo $FONTFILES` # remove extra spaces

** Affects: console-setup (Ubuntu)
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1763100

Title:
  FONT="x/y/z" is not applied due to setupcon script bug

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/console-setup/+bug/1763100/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to