Кому не нравится, что PALUDIS выводит кучу мусора при разрешении циклических зависимостей, могут прописать в своем .bashrc:
export PALUDIS_OPTIONS="--show-use-descriptions none --show-package-descriptions none --show-reasons none --log-level silent"
С ключом --compact вывод становится еще лаконичнее, но paludis -q не выдает в таком случае всей информации о пакете
В догонку к посту: http://lamskoy.livejournal.com/3009.html
При конфиге шрифтов в посте, указанном выше, возникает проблема с битмап-шрифтами.
Если включен 70-no-bitmaps.conf, то такие чудные шрифты, как Terminus, становятся недоступными.
А если отключить его, то в Firefox многие растровые шрифты будут выглядеть чудовищно.
Лечится копированием настроек в /etc/fonts/local.conf (взято из Arch-евских конфигов шрифтов):
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<!-- /etc/fonts/local.conf file to configure system font access -->
<fontconfig>
<match target="font">
<edit name="hinting" mode="assign"><bool>true</bool></edit>
<edit name="hintstyle" mode="assign"><const>hintslight</const></edit>
</match>
<!-- Replace generic bitmap font names by generic font families.
These font-families will get replaced by other rules and
default to scaled ones. -->
<match target="pattern" name="family">
<test name="family" qual="any">
<string>Helvetica</string>
</test>
<edit mode="assign" name="family">
<string>Arial</string>
<string>Liberation Sans</string>
<string>sans-serif</string>
</edit>
</match>
<match target="pattern" name="family">
<test name="family" qual="any">
<string>Courier</string>
</test>
<edit mode="assign" name="family">
<string>Courier New</string>
<string>Liberation Mono</string>
<string>monospace</string>
</edit>
</match>
<match target="pattern" name="family">
<test name="family" qual="any">
<string>Times</string>
</test>
<edit mode="assign" name="family">
<string>Times New Roman</string>
<string>Liberation Serif</string>
<string>serif</string>
</edit>
</match>
</fontconfig>
Сегодня расскажу как я настраивал сглаживание шрифтов в Gentoo Linux
Суть сводится к трем шагам:
1. Собрать пакеты cairo, libXft, fontconfig, freetype с примененными патчами для сглаживания (cleartype). В полной мере эти пакеты с патчами доступны в оверлее devnull, официальный репозиторий более консервативен.
2. Настроить fontconfig и поправить /etc/fonts/local.conf. В gentoo есть прекрасная утилита eselect, ей и будем производить манипуляции с настройками fontconfig
3. Перезапустить иксы
Теперь по порядку и детальнее:
1. Подключаем оверлей devnull
Если layman не установлен, устанавливаем:
emerge -av layman
Подключаем сам оверлей:
layman -a devnull
В /etc/make.conf добавляем:
PORTDIR_OVERLAY=""
source /usr/local/portage/layman/make.conf
2. Теперь необходимо размаскировать пакеты cairo, freetype, libXft, fontconfig.
Правим/создаем если не создан /etc/portage/package.keywords:
media-libs/fontconfig ~x86
x11-libs/cairo ~x86
media-libs/freetype ~x86
x11-libs/libXft ~x86
Естественно, вместо x86 нужно указать свою архитектуру - amd64 например.
3. Устанавливаем USE-флаги для наших пакетов
Добавляем глобальный флаг cleartype:
euse -a cleartype
И локальные в /etc/portage/package.use:
media-libs/freetype bindist
4. Собираем пакеты:
emerge -avN cairo freetype libXft fontconfig
Запускаем etc-update после инсталляции пакетов и заменяем старые конфиги fontconfig на новые.
5. Настраиваем fontconfig.
Делаем eselect fontconfig list, смотрим какие конфиги подключены.
Чтобы включить субпиксельное сглаживание, необходимо выключить
(eselect fontconfig disable N, где N- номер конфига)
следующие конфиги:
10-no-sub-pixel.conf
10-unhinted.conf
и включить один из:
10-sub-pixel-bgr.conf
10-sub-pixel-rgb.conf
10-sub-pixel-vbgr.conf
10-sub-pixel-vrgb.conf
В большинстве случаев это 10-sub-pixel-rgb.conf
Ниже привожу свою конфигурацию fontconfig
Available fontconfig .conf files ( * is enabled ):
[1] 10-autohint.conf *
[2] 10-no-sub-pixel.conf
[3] 10-sub-pixel-bgr.conf
[4] 10-sub-pixel-rgb.conf *
[5] 10-sub-pixel-vbgr.conf
[6] 10-sub-pixel-vrgb.conf
[7] 10-unhinted.conf
[8] 20-fix-globaladvance.conf *
[9] 20-unhint-small-dejavu-sans.conf
[10] 20-unhint-small-dejavu-sans-mono.conf
[11] 20-unhint-small-dejavu-serif.conf
[12] 20-unhint-small-vera.conf *
[13] 25-unhint-nonlatin.conf
[14] 30-metric-aliases.conf *
[15] 30-urw-aliases.conf *
[16] 40-nonlatin.conf *
[17] 45-latin.conf *
[18] 49-sansserif.conf *
[19] 50-user.conf *
[20] 51-local.conf *
[21] 57-dejavu-sans.conf *
[22] 57-dejavu-sans-mono.conf *
[23] 57-dejavu-serif.conf *
[24] 60-latin.conf *
[25] 65-fonts-persian.conf *
[26] 65-khmer.conf
[27] 65-nonlatin.conf *
[28] 69-unifont.conf *
[29] 70-no-bitmaps.conf *
[30] 70-yes-bitmaps.conf
[31] 80-delicious.conf *
[32] 90-synthetic.conf *
6. Настраиваем hinting.
Создаем/правим /etc/fonts/local.conf:
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<!-- /etc/fonts/local.conf file to configure system font access -->
<fontconfig>
<match target="font">
<edit name="hinting" mode="assign"><bool>true</bool></edit>
<edit name="hintstyle" mode="assign"><const>hintslight</const></edit>
</match>
</fontconfig>
Параметр hintstyle можно выставить в hintslight, hintmedium, hintfull и поэкспериментировать - какой стиль хинтинга вам ближе по душе.
Мои предпочтения указаны выше :)
7. Перегружаем иксы и наслаждаемся красивым сглаживанием шрифтов :)
Несколько дней назад я обновил дерево портов Gentoo, и при очередном emerge -avuDN world, увидел, что Skype пытается установиться с форсированным ключом сборки (qt-static), при чем ни правка /etc/make.conf, ни /etc/portage/package.use, не влияет на поведение этого флага.
Скачал более старый ебилд, та же история и с ним произошла - qt-static установился форсированно.
Статически прилинкованная либа qt мне и даром не нужна, я использую VLC и еще несколько программ, юзающих динамическую qt, в том числе и Skype.
Мне стало облом искать решение в текущем дереве портов, и я сделал руками свой ебилд, избавившись от флага qt-static, и поместил его в дерево оверлея.
Вот сам ебилд:
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/net-im/skype/skype-2.1.0.47-r1.ebuild,v 1.1 2010/01/06 16:39:51 ssuominen Exp $
EAPI=2
inherit eutils qt4 pax-utils
DESCRIPTION="A P2P-VoiceIP client."
HOMEPAGE="http://www.skype.com/"
DFILENAME=${P}.tar.bz2
SRC_URI="http://download.skype.com/linux/${DFILENAME}"
LICENSE="skype-eula"
SLOT="0"
KEYWORDS="amd64 x86"
IUSE=""
# http://bugs.gentoo.org/show_bug.cgi?id=299368
RESTRICT="mirror strip"
EMUL_VER=20091231
RDEPEND="amd64? ( >=app-emulation/emul-linux-x86-xlibs-${EMUL_VER}
>=app-emulation/emul-linux-x86-baselibs-${EMUL_VER}
>=app-emulation/emul-linux-x86-soundlibs-${EMUL_VER}
>=app-emulation/emul-linux-x86-qtlibs-${EMUL_VER} )
x86? ( >=media-libs/alsa-lib-1.0.11
x11-libs/libXScrnSaver
x11-libs/libXv
x11-libs/qt-gui:4[accessibility,dbus]
x11-libs/qt-dbus:4
x11-libs/libX11
x11-libs/libXau
x11-libs/libXdmcp ) "
# Required for lrelease command at buildtime
DEPEND="x11-libs/qt-core:4"
QA_EXECSTACK="opt/skype/skype"
QA_WX_LOAD="opt/skype/skype"
QA_DT_HASH="opt/skype/skype"
QA_PRESTRIPPED="opt/skype/skype"
src_install() {
# remove mprotect() restrictions for PaX usage - see Bug 100507
# NOTE. Commented out because it's breaking Skype 2.1.0.47.
# pax-mark m "${S}"/skype
exeinto /opt/${PN}
doexe skype || die
fowners root:audio /opt/skype/skype
make_wrapper skype /opt/${PN}/skype /opt/${PN} /opt/${PN} /usr/bin
insinto /opt/${PN}/sounds
doins sounds/*.wav || die
insinto /etc/dbus-1/system.d
doins ${PN}.conf || die
insinto /opt/${PN}/lang
#
#There have been some issues were lang is not updated from the .ts files
#but if we have qt we can rebuild it
#
lrelease lang/*.ts
doins lang/*.qm || die
insinto /opt/${PN}/avatars
doins avatars/*.png || die
insinto /opt/${PN}
for X in 16 32 48
do
insinto /usr/share/icons/hicolor/${X}x${X}/apps
newins "${S}"/icons/SkypeBlue_${X}x${X}.png ${PN}.png
done
dodoc README
# insinto /usr/share/applications/
# doins skype.desktop
make_desktop_entry ${PN} "Skype VoIP" ${PN} "Network;InstantMessaging;Telephony"
#Fix for no sound notifications
dosym /opt/${PN} /usr/share/${PN}
# TODO: Optional configuration of callto:// in KDE, Mozilla and friends
# doexe skype-callto-handler
}
UPD: я зря старался, все лечится с помощью строки в /etc/portage/profile/use.force:
net-im/skype -qt-static
Спасибо за подсказку
dimonbb