Вопрос или проблема
как установить пакет xorg-x11-font-utils на opensuse? Мне он нужен для установки шрифтов Microsoft отсюда https://downloads.sourceforge.net/project/mscorefonts2/rpms/msttcore-fonts-installer-2.6-1.noarch.rpm, но система постоянно сообщает, что не хватает пакета xorg-x11-font-utils.
Вот сообщение об ошибке, которое я получаю
sudo rpm -i https://downloads.sourceforge.net/project/mscorefonts2/rpms/msttcore-fonts-installer-2.6-1.noarch.rpm
error: Failed dependencies:
xorg-x11-font-utils is needed by msttcore-fonts-installer-2.6-1.noarch
К сожалению, этот пакет не предназначен для opensuse, я искал в интернете, но нашел только информацию о его совместимости с Fedora, CentOS или RHEL.
Кто-нибудь знает, где его можно скачать для opensuse tumbleweed?
Станьте root
и выполните следующие команды:
zypper addrepo https://download.opensuse.org/repositories/X11:XOrg/openSUSE_Tumbleweed/X11:XOrg.repo
zypper refresh
zypper install font-util
Это добавит репозиторий для font-util
, обновит zypper
и установит его.
SuSE разделяет функции, которые в xorg-x11-font-utils (Red Hat) собраны в один пакет, на несколько пакетов:
mkfontdir, mkfontscale, bdftopcf, fonttosfnt, font-util
Возможно, вам придется установить все эти пакеты, чтобы удовлетворить требования установщика (в быстром обзоре скрипта я нашел mkfontdir и mkfontscale, и ни один из пакетов не зависит от других).
Однако… это зависимость пакета. Если вы установили все части, вы можете обмануть rpm, создав фиктивный пакет, который “предоставляет” имя xorg-x11-font-utils. Детальное рассмотрение этого вопроса требует отдельного обсуждения.
Для дальнейшего изучения: Создание фиктивного RPM
.
Ответ или решение
Для установки пакета xorg-x11-font-utils
на операционную систему openSUSE, позволяющего установить шрифты от Microsoft, необходимо учесть определенные особенности дистрибутивов и их пакетных систем, а также разграничение пакетов в openSUSE по сравнению с такими дистрибутивами, как Fedora, CentOS или RHEL. В данном руководстве мы рассмотрим, как именно это можно сделать.
Теоретическая часть
В первую очередь, следует понять, что xorg-x11-font-utils
— это пакет, который служит для работы с шрифтами X11. Он включает в себя несколько утилит, таких как mkfontdir
, mkfontscale
, которые обычно необходимы для установки и управления шрифтами.
В openSUSE данный пакет делится на несколько более мелких пакетов, и, следовательно, необходимо установить эти отдельные утилиты для удовлетворения зависимостей при установке шрифтов Microsoft.
Пример выполнения
Чтобы установить данные компоненты на openSUSE Tumbleweed, выполните следующие шаги:
-
Добавление репозитория и обновление метаданных: Необходимые пакеты находятся в репозитории X11:XOrg. Добавим его и обновим метаданные:
sudo zypper addrepo https://download.opensuse.org/repositories/X11:XOrg/openSUSE_Tumbleweed/X11:XOrg.repo sudo zypper refresh
-
Установка необходимых утилит: Убедитесь, что на вашей системе установлены все необходимые утилиты:
sudo zypper install mkfontdir mkfontscale bdftopcf fonttosfnt font-util
Эти пакеты содержат все нужные утилиты, которые упоминаются в вашем сценарии установки и в требованиях к зависимости.
Применение этих знаний
После установки этих утилит, вы можете снова попытаться установить msttcore-fonts-installer
. Используйте команду:
sudo rpm -i https://downloads.sourceforge.net/project/mscorefonts2/rpms/msttcore-fonts-installer-2.6-1.noarch.rpm
Если всё прошло успешно, никаких ошибок о несоответствии зависимостей быть не должно.
Если установка всё еще выдаёт сообщение о зависимости от xorg-x11-font-utils
, можете попробовать создать "пустой" RPM-пакет, который укажет, что данная зависимость установлена, несмотря на то, что мы установили её составляющие.
Создание пустого RPM-пакета
Создание dummy (пустого) пакета — это более сложная задача, требующая навыков работы с RPM. Однако в общих чертах это включает в себя следующие шаги:
- Создание файла SPEC, в котором будет всего одна зависимость
Provides:
, обозначающаяxorg-x11-font-utils
. - Сборка этого RPM с использованием
rpmbuild
.
Подробное руководство по созданию таких пакетов можно найти в данной статье. Это более сложный процесс, требующий настройки вашей системы для возможностей сборки пакетов и понимания структуры SPEC-файлов.
Заключение
Использование этой инструкции позволяет вам правильно установить msttcore-fonts
на openSUSE, обеспечив предварительное удовлетворение всех зависимостей, даже если они обозначены пакетами, которые открыто не доступны в openSUSE. OpenSUSE имеет свои особенности в управлении пакетами, и понимание этих особенностей позволяет эффективно решать возникающие проблемы.