Сразу прошу знатоков шляпы тапочками не бросать, это первые шаги в Fedora.
В Ubuntu, все знают, шрифты замечательные, для Debian и FreeBSD не трудно найти хаутушки как пропатчить cairo, xft, freetype.
Для Fedora типа есть репозиторий где готовые пакеты и инструкции по применению. Приличных результатов добиться мне не удалось от infinality, хотя бы то что пакеты имеют другое название уже делает для меня все не понятным.
Вопрос таков, можно-ли как в Debian скачать исходники пакетов, пропатчить, собрать пакеты, установить? Очень не хотелось бы размазывать исходники по пакетному дистрибутиву.

Если у вас не получается разговаривать снисходительным тоном, найдите пользователя Unix, он покажет, как это делается. Скотт Адамс

2

В Fedora 14 Ш прекрасны по умолчанию, имхо. Ну уж точно не хуже чем в Ubuntu. Что касается сборки пакетов то есть rpmbuild

Ничто из того, что поддаётся объяснению, не существует.

3

sun пишет:

В Fedora 14 Ш прекрасны по умолчанию, имхо. Ну уж точно не хуже чем в Ubuntu.

Скриншотиком не порадуете?

Если у вас не получается разговаривать снисходительным тоном, найдите пользователя Unix, он покажет, как это делается. Скотт Адамс

4 (26.03.2011 15:29:56 отредактировано sun)

Несомненно  настройки шрифтов не трогал, совсем. Шрифт правда поставил Ubuntu(ибо он прекрасен)

Ничто из того, что поддаётся объяснению, не существует.

5 (26.03.2011 15:42:20 отредактировано papin-aziat)

sun пишет:

Несомненно  настройки шрифтов не трогал, совсем. Шрифт правда поставил Ubuntu(ибо он прекрасен)

Неплохой скрин, но на нем показаны только достоинства. Я пока как временное решение юзаю хинтинг medium, бо slight и full ужасны совершенно.

http://savepic.net/792818m.png

Хочу сделать как здесь: http://linuxforum.ru/viewtopic.php?pid=12653#p12653

Если у вас не получается разговаривать снисходительным тоном, найдите пользователя Unix, он покажет, как это делается. Скотт Адамс

6

Нужна помощь знатока, или разработчика :-). Пытаюсь пропатчить cairo. Не удается наложить патч походу.
Как положено я его положил в SOURCES.
Прописал в cairo.spec
$ grep Patch cairo.spec
Patch0:        cairo-1.10.0-buggy_gradients.patch
Patch1:        cairo-9999-cleartype.patch
Стартанул script, собрал пакеты командой rpmbuild -bb, сборка прошла успешно, но
$ grep patch typescript
+ echo 'Patch #0 (cairo-1.10.0-buggy_gradients.patch):'
Patch #0 (cairo-1.10.0-buggy_gradients.patch):
+ /bin/cat /home/roman/rpmbuild/SOURCES/cairo-1.10.0-buggy_gradients.patch
+ /usr/bin/patch -s -p0 --fuzz=0
В выхлопе сборки ничего про патч 9999 не сказано. Видимо просто прописать его не достаточно, а что надо еще я пока не знаю.

Если у вас не получается разговаривать снисходительным тоном, найдите пользователя Unix, он покажет, как это делается. Скотт Адамс

7

Так, давайте начнем сначала: чем не устраивают шрифты, вид которых получается после установки патченных пакетов от Infinality?

вот мой скрин: http://savepic.net/789437.htm

8

Hrafn, извини, это дело вкуса но не очень, я хочу hinting slight и чтоб вид был как в Ubuntu, или патченные в Debian\фриибсд.
Дело мое продвинулось.
Мне удалось пропатчить cairo, libXft, freetype, на сколько делал все правильно я не знаю, не программист.
В связи с тем что мне не удалось, как писал выше, прописать патчи в *.spec, то я разархивировал исходники, пропатчил, за архивировал назад, и далее собрал штатным способом.
Патчил с ключами:
patch -Np1 -i ....
Вот релультат.

http://savepic.net/793555m.png

Но этот результат не распространяется на Firefox и Гномовский хелп, может на что-то еще, пока не встретил.

http://savepic.net/807890m.png

В иходниках пакетов Firefox есть скрипт firefox-mozconfig, и там куча опцый для сборки(я так понимаю), среди них есть такая:
ac_add_options --disable-system-cairo
Закоментировал ее и собрал, сборка без ошибок, при установке выдает такое:

rpm --force -ivh firefox-3.6.16-1.fc14.x86_64.rpm 
Preparing...                ########################################### [100%]
   1:firefox                ########################################### [100%]
error: unpacking of archive failed on file /usr/lib64/firefox-3.6/firefox;4d8f131a: cpio: Digest mismatch

Я не понял установился он или нет, результата нет, и с дайджестом сильно гуглить пока не стал, подумал что надо проделать ту же операцию с xulrunner. В его исходниках пакета тоже есть скрипт xulrunner-mozconfig и там есть такая же опция. Комментирую, собираю, пока сборка вылетает с ошибкой. Причем долго так собирается и... ошибка, вот хвостик.

+ открыть спойлер

Processing files: xulrunner-devel-1.9.2.16-1.fc14.x86_64
warning: File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk
warning: File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/idl
warning: File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/include
warning: File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib
warning: File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libembed_base_s.a
warning: File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libembed_base_standalone.a
warning: File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libmozjs.so
warning: File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libmozreg_s.a
warning: File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libmozsqlite3.so
warning: File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libunicharutil_external_s.a
warning: File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libxpcom.so
warning: File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libxpcomglue.a
warning: File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libxpcomglue_s.a
warning: File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libxul.so
warning: File listed twice: /usr/share/idl/xulrunner-sdk-1.9.2
Provides: gecko-devel = 1.9.2.16 gecko-devel-unstable = 1.9.2.16 pkgconfig(libxul) = 1.9.2 pkgconfig(libxul-embedding) = 1.9.2 pkgconfig(libxul-embedding-unstable) = 1.9.2 pkgconfig(libxul-unstable) = 1.9.2 pkgconfig(mozilla-gtkmozembed) = 1.9.2 pkgconfig(mozilla-gtkmozembed-embedding) = 1.9.2 pkgconfig(mozilla-js) = 1.9.2 pkgconfig(mozilla-plugin) = 1.9.2
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rpmlib(VersionedDependencies) <= 3.0.3-1
Requires: /usr/bin/pkg-config libIDL-2.so.0()(64bit) libasound.so.2()(64bit) libc.so.6()(64bit) libc.so.6(GLIBC_2.2.5)(64bit) libc.so.6(GLIBC_2.3)(64bit) libc.so.6(GLIBC_2.7)(64bit) libdl.so.2()(64bit) libgcc_s.so.1()(64bit) libglib-2.0.so.0()(64bit) libgobject-2.0.so.0()(64bit) libgthread-2.0.so.0()(64bit) libm.so.6()(64bit) libmozjs.so()(64bit) libmozsqlite3.so()(64bit) libnspr4.so()(64bit) libplc4.so()(64bit) libplds4.so()(64bit) libpthread.so.0()(64bit) libpthread.so.0(GLIBC_2.2.5)(64bit) librt.so.1()(64bit) libstdc++.so.6()(64bit) libstdc++.so.6(CXXABI_1.3)(64bit) libstdc++.so.6(GLIBCXX_3.4)(64bit) libxpcom.so()(64bit) libxul.so()(64bit) pkgconfig(libxul) = 1.9.2 pkgconfig(libxul-embedding) = 1.9.2 pkgconfig(nspr) >= 4.8.7 rtld(GNU_HASH)
Obsoletes: mozilla-devel < 1.9 firefox-devel < 2.1 xulrunner-devel-unstable
Checking for unpackaged file(s): /usr/lib/rpm/check-files /home/roman/rpmbuild/BUILDROOT/xulrunner-1.9.2.16-1.fc14.x86_64
error: Installed (but unpackaged) file(s) found:
   /usr/lib/debug/usr/lib64/xulrunner-1.9.2/xulrunner-1.9.2.16.en-US.linux-x86_64.crashreporter-symbols.zip


RPM build errors:
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/idl
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/include
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libembed_base_s.a
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libembed_base_standalone.a
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libmozjs.so
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libmozreg_s.a
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libmozsqlite3.so
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libunicharutil_external_s.a
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libxpcom.so
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libxpcomglue.a
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libxpcomglue_s.a
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libxul.so
    File listed twice: /usr/share/idl/xulrunner-sdk-1.9.2
    Installed (but unpackaged) file(s) found:
   /usr/lib/debug/usr/lib64/xulrunner-1.9.2/xulrunner-1.9.2.16.en-US.linux-x86_64.crashreporter-symbols.zip

Пока застопорился просто на сборке xulrunner, безобразие конечно :-).

P.S. Вообще очень злобный дистр, Debian куда покладистей, на каждый шаг надо делать кучку дополнительных, для новичков не пригоден категорический :-).

Если у вас не получается разговаривать снисходительным тоном, найдите пользователя Unix, он покажет, как это делается. Скотт Адамс

9

Вот Epiphany нормально себя ведет, а FF, Opera, Google-chrome, Chromium, Seamonkey, нет. Кстати симанку тоже пересобрал, не помогает, видимо, просто закомментировать вышеописанную опцию.

http://savepic.net/789273m.png

Если у вас не получается разговаривать снисходительным тоном, найдите пользователя Unix, он покажет, как это делается. Скотт Адамс

10

Результат практически идентичен infinality, за исключением того, что с его патчами браузеры тоже работают, потому не вижу смысла заниматься подобными вещами. Но если получится, что ж, буду рад за Вас.

11

Кстати, как вариант, если не нравятся патчи Infinality, то посмотрите, как сделано в Russian fedora... насколько я понимаю, Tigro тоже freetype пересобирал

12

Hrafn пишет:

Результат практически идентичен infinality

Серьезно? Ради спортивного интереса можете в двух словах сказать как добиться такого сглаживания? Как мне показалось я попробовал разные варианты после установки этих пакетов, и с их local.conf, и без, у меня получалась только лажа.
Но сейчас мне более всего достает, что не могу пересобрать xulrunner. Ничего не трогаю, просто хочу собрать - не собирается. Устал уже гуглить и читать, везде говорят что надо править спек-файл, но как это делать правильно я пока не допер. Дело даже не в шрифтах, а я просто не понимаю почему это не работает, или как пакеты собирают разрабы? А говорят убнтуйцы наркоманы  :lol: .

Если у вас не получается разговаривать снисходительным тоном, найдите пользователя Unix, он покажет, как это делается. Скотт Адамс

13

Hrafn пишет:

Кстати, как вариант, если не нравятся патчи Infinality, то посмотрите, как сделано в Russian fedora... насколько я понимаю, Tigro тоже freetype пересобирал

freetype ... да фиг с ним, я не пойму как заставить браузеры работать с cairo, или чего там не так. На самом деле я просто не понимаю как это работает, такое можно было наблюдать и в Debian и в фряхе, например браузер опера, или гугл-хром мог категорически не сглаживать шрифты. Я каждый раз забивал на проблему, а вот здесь она встала в полный рост.

+ открыть спойлер

P.S. Вообще поковыряться интересно. За одно и быстрее разберусь с rpm & yum.  smile А то вообще ничего не знал про Fedora.

Если у вас не получается разговаривать снисходительным тоном, найдите пользователя Unix, он покажет, как это делается. Скотт Адамс

14

я вечерком попробую на виртуалке различные комбинации патченных пакетов и напишу результат

15

Hrafn, спасибо! А со сборкой xulrunner как надо поправить *.spec если вот такие ошибки?

Checking for unpackaged file(s): /usr/lib/rpm/check-files /home/roman/rpmbuild/BUILDROOT/xulrunner-1.9.2.16-1.fc14.x86_64
error: Installed (but unpackaged) file(s) found:
   /usr/lib/debug/usr/lib64/xulrunner-1.9.2/xulrunner-1.9.2.16.en-US.linux-x86_64.crashreporter-symbols.zip

RPM build errors:
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/idl
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/include
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libembed_base_s.a
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libembed_base_standalone.a
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libmozjs.so
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libmozreg_s.a
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libmozsqlite3.so
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libunicharutil_external_s.a
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libxpcom.so
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libxpcomglue.a
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libxpcomglue_s.a
    File listed twice: /usr/lib64/xulrunner-sdk-1.9.2/sdk/lib/libxul.so
    File listed twice: /usr/share/idl/xulrunner-sdk-1.9.2
    Installed (but unpackaged) file(s) found:
   /usr/lib/debug/usr/lib64/xulrunner-1.9.2/xulrunner-1.9.2.16.en-US.linux-x86_64.crashreporter-symbols.zip

Я уже попробовал 4 или 5 вариантов, но получается фигня, а ошибка вылетает после достаточно длительного процесса сборки, по этому быстро методом тыка не разобрать.

Если у вас не получается разговаривать снисходительным тоном, найдите пользователя Unix, он покажет, как это делается. Скотт Адамс

16 (28.03.2011 17:23:04 отредактировано papin-aziat)

Установил дефолтные cairo, freetype, libXft.
Сделал все аккуратно как описано на сайте Infinity, вот результат:

http://savepic.net/808493m.png

Как видно ФФ не подхватывает настроек. Там наложен атрибут неизменяемости на ~/.fonts.conf, но если я его поправлю, это всего лишь изменит стиль отображения шрифтов, но патчи работать не будут.

P.S. Да еще, категорически портится тема ClearlookClassic, кнопки меняют цвет и выпуклость пока до них "не дотронешься" мышкой. :-)

Если у вас не получается разговаривать снисходительным тоном, найдите пользователя Unix, он покажет, как это делается. Скотт Адамс

17

У меня что на Федоре, что на Красношапке или SL, Огнелис настройки подхватывает.
А Вы кроме указанных пакетов ставили fonts-config?

18

Hrafn пишет:

У меня что на Федоре ... Огнелис настройки подхватывает.

Не верю! Может Вы обновлялись со старых версий и системные конфиги другие? Я поставил чистенькую федору и косяк на лицо.
В дебиане этого точно нет, непатченные шрифты выглядят плохо везде, а пропатченные везде прекрасно.
В фрибсд другая песня, патченные везде хорошо кроме ФФ, но это проблема сборки ФФ по умолчанию, достаточно включить в Makefile поддержку cairo и все ок.
Я по этому и ломанулся пересобирать ФФ и xulrunner так как там есть опция ac_add_options --disable-system-cairo в сборочных скриптах.
Увы, теперь очевидно, что в федоре сначала надо решать вопрос с ФФ и xulrunner(я так думаю т.к. gnome-help тоже живет своей жизнью), как в прочем и с Seamonkey, Opera, Google-chome, Chromium на уровне системы, где-то надо поправить конфиги, но я пока не знаю где и что.
Можно конечно кучу скринов наделать, но выше я давал скрин где Epiphany и другие браузеры дают разный результат.
Надеюсь установка\удаление infinalty не сильно переворошило там все.

А Вы кроме указанных пакетов ставили fonts-config?

Я проделал то что рекомендует разработчик:

I strongly recommend to do these things:

For system wide results:

    * Use this /etc/fonts/local.conf (…or use it as a template… or know what you are doing otherwise) (Updated 2010-11-14)
    * Alternatively, you could install my fonts-config package located in the infinality repository. (Updated 2010-11-14)
    * Disable your ~/.fonts.conf by removing everything inside the <fontconfig>[REMOVE ME]</fontconfig> tags.  Then as root do:  chattr +i /home/YOUR-USERNAME/.fonts.conf

    * Have these in your ~/.Xresources:

Xft.autohint: 0
Xft.lcdfilter:  lcddefault
Xft.hintstyle:  hintfull
Xft.hinting: 1
Xft.antialias: 1
Xft.dpi: 96
Xft.rgba: rgb
Если у вас не получается разговаривать снисходительным тоном, найдите пользователя Unix, он покажет, как это делается. Скотт Адамс

19

Я обычно просто ставлю пакеты: freetype-infinality, cairo-freeworld, libXft-freeworld и fonts-config... больше не делаю ничего, перелогиниваюсь разве что ab
косяк был только на F15, там пришлось cairo снести, иначе Иксы не стартовали, но F15

20

Hrafn пишет:

Я обычно просто ставлю пакеты...

Ясно, да шрифты дело такое, что называется на вкус и цвет. А со сборкой xulrunner нет мыслей? Почему вообще надо что-то делать, чтобы просто собрать пакет штатным способом?

Если у вас не получается разговаривать снисходительным тоном, найдите пользователя Unix, он покажет, как это делается. Скотт Адамс

21

http://linuxshare.ru/docs/distro/rpm/rp … linux.html
пункт 9.5.7 посмотрите

22

Hrafn, вот спасибо, настроил, собрал, но теперь ФФ-сборка с ошибкой вылетает, жуть  :lol: .
А это повеселило:

Это явление официально известно под именем "фашистская политика сборки".

Если у вас не получается разговаривать снисходительным тоном, найдите пользователя Unix, он покажет, как это делается. Скотт Адамс

23 (03.04.2011 23:06:49 отредактировано papin-aziat)

Ну вот, для себя я добился приемлемого результата, на всякий случай поделюсь как, вдруг кому нибудь тоже не понравиться infinality с его глюками в темах и прибитостью настроек.
Проблема со сглаживанием в Firefox как в системе была решена радикально установкой Firefox 4, у него с этим делом порядок, правда отвалился gnome-help.

$ gnome-help
Could not initialize gecko!

Думаю это из за пакета xulrunner2 от которого зависит firefox4, ну кому надо тот разберется как это починить.  smile
Руководство по установке firefox4 здесь.
Мне показалось достаточным пропатчить только cairo, так что кому интересно пропатчат freetype и libXft по аналогичной схеме.
Патч для cairo взял здесь

wget http://www.sergeysl.ru/wp-content/uploads/freebsd/cairo-9999-cleartype.patch

Качаем исходничек для rpm

yumdownloader --source cairo

Устанавливаем от непривилегированного пользователя

rpm -i cairo-1.10.2-1.fc14.src.rpm 

На ошибки внимания не надо обращать. В домашнем каталоге появиться каталог rpmbuild, все остальное будет происходить в нем.
Суть в чем, надо распаковать тарбол с исходниками, пропатчить, запаковать назад, и собрать пакет штатным способом.
Тарбол cairo-1.10.2.tar.gz находиться в ~/rpmbuild/SOURCES.
Распакуйте его любым способом, можно удалить оригинал, бросьте туда cairo-9999-cleartype.patch, и дайте в этом каталоге команду

patch -Np1 -i cairo-9999-cleartype.patch

Я делал с такими ключами просто увидев их в интернете, знатоки программы patch могут уточнить детали.
Запакуйте назад в архив .tar.gz, каталог из которого делали архив можно удалить.
Чтобы собрать пакет нужна программа rpmbuild, пакет-же почему-то называется rpm-build, надо его установить, и скомандовать:

rpmbuild -bb ~/rpmbuild/SPECS/cairo.spec

Программа ругнется на отсутствие зависимостей необходимых для сборки, и покажет какие, установите их. Я новичок в Fedora, и на скорую руку не нашел команды для автоматической установки сборочных зависимостей, надеюсь знатоки подскажут.
Свеженький пакетик будет лежать по адресу ~/rpmbuild/RPMS/<ваша архитектура>/.
Установите его любым удобным способом. Я перед этим удалял оригинальный.

su -c 'rpm -e --nodeps cairo'

Ну примерно так вот.
Результат:
http://savepic.net/941182m.png

Да, еще, чтоб не обновлялся надо в /etc/yum.conf добавить exclude=cairo.

Если у вас не получается разговаривать снисходительным тоном, найдите пользователя Unix, он покажет, как это делается. Скотт Адамс

24

Жирно как-то :rolleyes:

АХАХХАХААХАХАХХАХАХ!!!11
То есть "Мяу"

25

Да не то чтобы жирно. Шрифты практически аналогичные убунтовским получились ab Но тут, на вкус и цвет, как говорится... У меня и от Infinality патчи нормально работают. При чем везде, глюков не замечено, если не считать Fedora Rawhide...

26

Dimaty пишет:

Жирно как-то :rolleyes:

Дык моник крупный, можно себе позволить, и я специально показал настройки, как раз фишка что тут уже настраивай как хочешь в отличие от. Можно сделать и так:

http://savepic.net/972755m.png

Если у вас не получается разговаривать снисходительным тоном, найдите пользователя Unix, он покажет, как это делается. Скотт Адамс

27

Все отличие от... в том, что у Infinality многие параметры жестко прописаны в local.conf... где их и можно поменять при желании

28

Hrafn пишет:

Все отличие от... в том, что у Infinality многие параметры жестко прописаны в local.conf... где их и можно поменять при желании

Я вовсе не хочу сказать про этот проект плохо, наоборот это замечательно, да и /etc/fonts/local.conf можно поместить в ~/.fonts.conf как предлагает разработчик. Однако надо заметить, что понять как это работает сложнее, и править вышеуказанный файл сущее наказание. Мне же кажется, хоть и не просто сходу собрать свой пакетик, но за то он просто улучшает шрифт не влезая более ни в какие настройки.

Если у вас не получается разговаривать снисходительным тоном, найдите пользователя Unix, он покажет, как это делается. Скотт Адамс