Консольный фонт для иксов
Начертание шрифтов в консольном окне эмулятора терминала по умолчанию, мне так каатца не очень... Это конечно же только мое субъективное мнение.
Но со времен KDE 2 существует такой шрифт, который почти не отличается по нарисованию от настоящего терминального шрифта и полностью удовлетворяет мое зрительное восприятие.
Выглядит он примерно так:
Сам файл фонта существует под названием console8x16.pcf.gz, под которым его и можно обнаружить на просторах интернета...
Найти его не столь сложно, но хорошо бы еще его опакетить, чтобы установить одним махом и голова не боли... 
Условия для его обнаружения системой просты - он должен находиться в одном из каталогов с фонтами, путь к которому прописан в файле /etc/fonts/fonts.conf
Сам конфигурационный файл, показывает такие каталоги с "пропиской":
--> <!-- Font directory list --> <dir>/usr/share/fonts/OTF</dir> <dir>/usr/share/fonts/TTF</dir> <dir>/usr/share/fonts/Type1</dir> <dir>/usr/share/fonts/Speedo</dir> <dir>/usr/share/fonts/cyrillic</dir> <dir>/usr/share/fonts/misc</dir> <dir prefix="xdg">fonts</dir> <!--
Исходя из увиденного, шрифт лучше всего поместить в каталог /usr/share/fonts/misc, хотя бы потому, что там находятся его сородичи по расширению *.pcf.gz
Вобщем, лучше запустить данный скрипт и получим установочный пакет...
#!/bin/bash
# Скрипт Slackbuild пакета fonts-misc-console
#
# Шрифт для консоли
#
# Maintained by cdrw <cdrw@list.ru>
#╔══════════════════════════════════════════════════════════════════════════════╗
#║ Объявление переменных, определяющих название пакета и исходников ║
#╚══════════════════════════════════════════════════════════════════════════════╝
PRGNAM=fonts-misc-console
VERSION=${VERSION:-0.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_dlx}
SOURCE00="http://xiangelinux.googlecode.com/files/console8x16.pcf.gz"
#╔══════════════════════════════════════════════════════════════════════════════╗
#║ Определение архитектуры процессора компьютера ║
#╚══════════════════════════════════════════════════════════════════════════════╝
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i486 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
#╔══════════════════════════════════════════════════════════════════════════════╗
#║ Определение переменных, определяющих рабочие каталоги ║
#╚══════════════════════════════════════════════════════════════════════════════╝
CWD=$(pwd)
TMP=${TMP:-/tmp/DLx}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
NOCLEANUP=0
FORCEBUILD=0
CATEGORIJA=${CATEGORIJA:-xorg}
#╔══════════════════════════════════════════════════════════════════════════════╗
#║ Объявление флагов компиляции для архитектуры определённого процессора ║
#╚══════════════════════════════════════════════════════════════════════════════╝
if [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
fi
#╔══════════════════════════════════════════════════════════════════════════════╗
#║ Пакеты-зависимости, которые должны быть установлены в системе ║
#╚══════════════════════════════════════════════════════════════════════════════╝
REQUIRED_PACKAGES=" "
#╔══════════════════════════════════════════════════════════════════════════════╗
#║ Функция вывода справки ║
#╚══════════════════════════════════════════════════════════════════════════════╝
function usage() {
cat << EOF
Применение: ${0##*/} [опции]
Options: --force Пакет не будет создан, если отсутствует пакет или
пакеты-зависимости, необходимые для сборки пакета.
Эта опция позволит игнорировать эту проверку и
позволит попытаться собрать пакет в любом случае.
--no-cleanup По умолчанию, после сборки пакета временные каталоги
и распакованные исходные тексты будут удалены. Эта
опция позволит не удалять после сборки пакета
перечисленные каталоги.
--help Вывод этого справочного текста.
EOF
}
#╔══════════════════════════════════════════════════════════════════════════════╗
#║ Разбор аргументов командной строки ║
#╚══════════════════════════════════════════════════════════════════════════════╝
while [ $# -gt 0 ]; do
if [ "$1" = "-force" ] || [ "$1" = "--force" ]; then
FORCEBUILD=1
shift
elif [ "$1" = "-no-cleanup" ] || [ "$1" = "--no-cleanup" ]; then
NOCLEANUP=1
shift
elif [ "$1" = "-help" ] || [ "$1" = "--help" ]; then
usage
exit 0
else
echo "${0##*/}: Неизвестная опция: $1"
exit 1
fi
done
#╔══════════════════════════════════════════════════════════════════════════════╗
#║ Проверка на наличие установленных пакетов-зависимостей ║
#╚══════════════════════════════════════════════════════════════════════════════╝
[ "$FORCEBUILD" = "0" ] && {
function check_installed() {
ls -1 /var/log/packages | grep "^${1}-[^-]*-[^-]*-[^-]*$" >/dev/null 2>&1
return $?
}
check_installed "$PKGNAME" && {
echo "${0##*/}: ВНИМАНИЕ! Пакет '$PKGNAME' в системе уже установлен."
exit 0
}
for REQ in $REQUIRED_PACKAGES; do
check_installed "$REQ" || {
echo "${0##*/}: Необходимый пакет '$REQ' не установлен."
exit 1
}
done
}
#╔══════════════════════════════════════════════════════════════════════════════╗
#║ Закрузка исходников и патчей, если их нет в каталоге ║
#╚══════════════════════════════════════════════════════════════════════════════╝
if [ ! -e "$CWD/console8x16.pcf.gz" ];then
wget "$SOURCE00" -O "$CWD/console8x16.pcf.gz"
fi
#╔══════════════════════════════════════════════════════════════════════════════╗
#║ Очистка временных каталогов и распаковка исходников ║
#╚══════════════════════════════════════════════════════════════════════════════╝
set -e # Принудительный выход если какая либо из следующих команд вернула
# значение, отличное от 0.
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
mkdir -p $PKG/etc/fonts/conf.avail
mkdir -p $PKG/etc/fonts/conf.d
mkdir -p $PKG/install
mkdir -p $PKG/usr/share/fonts/misc
cp -a $CWD/console8x16.pcf.gz $PKG/usr/share/fonts/misc
cat << EOF >> $PKG/install/doinst.sh
#!/bin/sh
( cd etc/fonts/conf.d ; rm -rf 66-fonts-misc-console.conf )
( cd etc/fonts/conf.d ; ln -sf /etc/fonts/conf.avail/66-fonts-misc-console.conf 66-fonts-misc-console.conf )
# Update the X font indexes:
if [ -x /usr/bin/mkfontdir -o -x /usr/X11R6/bin/mkfontdir ]; then
( cd /usr/share/fonts/misc
mkfontscale .
mkfontdir .
)
fi
if [ -x /usr/bin/fc-cache ]; then
/usr/bin/fc-cache -f
fi
EOF
#╔══════════════════════════════════════════════════════════════════════════════╗
#║ Копирование документации и SlackBuild ║
#╚══════════════════════════════════════════════════════════════════════════════╝
mkdir -p $PKG/usr/src/DesktopLX/$CATEGORIJA/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/src/DesktopLX/$CATEGORIJA/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat << EOF >> $PKG/install/slack-desc
fonts-misc-console: fonts-misc-console - bitmap-fonts
fonts-misc-console:
fonts-misc-console: The bitmap-fonts package provides a number of bitmap fonts selected
fonts-misc-console: from the xorg package designed for use locations such as terminals.
fonts-misc-console:
fonts-misc-console:
fonts-misc-console:
fonts-misc-console:
fonts-misc-console:
fonts-misc-console: Home: http://www.xorg.net
fonts-misc-console:
EOF
cat << EOF >> $PKG/etc/fonts/conf.avail/66-fonts-misc-console.conf
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE fontconfig SYSTEM "../fonts.dtd">
<fontconfig>
<alias>
<family>monospace</family>
<prefer>
<family>Console</family>
</prefer>
</alias>
<alias>
<family>Console</family>
<default>
<family>monospace</family>
</default>
</alias>
</fontconfig>
EOF
#╔══════════════════════════════════════════════════════════════════════════════╗
#║ Создание установочного пакета ║
#╚══════════════════════════════════════════════════════════════════════════════╝
cd $PKG
/sbin/makepkg -l y -c n $CWD/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-txz}
cd $CWD
md5sum $PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-txz} > \
$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-txz}.md5
cat $PKG/install/slack-desc > $PRGNAM-$VERSION-$ARCH-$BUILD$TAG.txt
cat << EOF >> $CWD/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.desc
The bitmap-fonts package provides a number of bitmap fonts selected
from the xorg package designed for use locations such as terminals.
Home: http://www.xorg.net
EOF
cat << EOF >> $CWD/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.install
#!/bin/bash
#╔══════════════════════════════════════════════════════════════════════════════╗
#║ Установка вновь созданного пакета ║
#╚══════════════════════════════════════════════════════════════════════════════╝
removepkg $PRGNAM
upgradepkg --install-new --reinstall $PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-txz}
EOF
chmod +x $CWD/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.install
#╔══════════════════════════════════════════════════════════════════════════════╗
#║ Удаление временных каталогов ║
#╚══════════════════════════════════════════════════════════════════════════════╝
if [ "$NOCLEANUP" = "0" ]; then
rm -rf $PKG $TMP/$PRGNAM-$VERSION
fi;
#╔══════════════════════════════════════════════════════════════════════════════╗
#║ Конец скрипта ║
#╚══════════════════════════════════════════════════════════════════════════════╝Отредактировано admin (2014-01-20 23:37:07)
