Программное обеспечение дистрибутива Fedora находится в хранилище – репозитории. ПО в репозитории хранится в виде отдельных зависимых пакетов имеющих собственную версию и версию дистрибутива в котором они могут быть установлены с разрешением зависимости. Различные дистрибутивы Linux обладают собственным хранилищем пакетов программного обеспечения.
Помимо основного репозитория, на различных серверах по всему миру хранятся “зеркала”, т. е. копии содержания основного репозитория и пакеты обновления. Каждый пакет используется для определенной версии дистрибутива, а хранилище гарантирует совместимость всех зависимых пакетов. Что такое пакет?
Пакет – это архив, в котором содержаться необходимые для работы программы компоненты: бинарные файлы программ, библиотеки и прочий контент необходимый для работы программы. Зачастую пакет программы связан с компонентами пакетов других программ. Такое состояние называется зависимостью пакетов друг от друга. Причины зависимости заключаются в том, что разработчики ПО используют/заимствуют программный код или уже имеющиеся библиотечные файлы в других разработках. Это облегчает создание приложений, избавляет разработчиков от написания повторяющихся алгоритмов и позволяет писать программы взаимодействующие в единой среде. При попытке установить пакет (используя консоль), в большинстве случаев, будет выдана информация о наличии неудовлетворенных зависимостей. (Однако, некоторые пакеты могут быть всё же установлены, если в системе все необходимые зависимости будут разрешены.)
Увеличиваем работу батареи в Linux | auto-cpufreq | powertop | гайд от Миши
Для работы с пакетами дистрибутив Fedora использует консольный менеджер пакетов (back-end) – RPM (рекурсивный акроним RPM Package Manager). RPM имеет недостаток – он не может разрешать зависимость в автоматическом режиме. Его цель обрабатывать пакет/пакеты (удалять, обновлять, устанавливать, проверять зависимости, предоставлять сведения о пакете и его содержимом) и обслуживать базу данных установленных в системе пакетов. Для установки программы необходимо собрать все зависимые пакеты (предварительно узнать какие из них уже установлены, а какие – нет) и только тогда программа может быть установлена вместе с зависимыми пакетами. Узнать какие зависимости имеет данный пакет можно с помощью команды:
rpm -qpR name_package
где name_package – имя пакета.
Разумеется, такая работа с пакетами совершенно неудобна и утомительна. Чтобы автоматизировать процесс установки пакетов в дистрибутиве имеется надстройки пакетных менеджеров (front-end), которые способны производить установку пакетов и призваны решать следующие основные задачи:
- поиск пакетов в репозиториях;
- установка пакетов из репозиториев с удовлетворением зависимостей;
- обновление системы;
- удаление ненужных пакетов.
Такой надстройкой в Fedora является DNF (Dandified YUM). Разберем более подробно как и с помощью каких программных средств работать с RPM и DNF.
Работа с RPM и DNF в консоли
RPM и DNF являются консольными программами. Для работы с менеджерами пакетов запустите программу Konsole (эмулятор терминала среды KDE).
Linux — худшая операционная система
RPM
Для получения полной справки введите команду:
$ rpm —help
Установка пакетов производится в режиме суперпользователя (root). Если ваш аккаунт имеет администраторские полномочия, то воспользуйтесь утилитой sudo :
$ sudo -i [sudo] пароль для username: (ввод пароля пользователя)
Если таких полномочий нет, то стандартной командой su :
$ su Пароль: (ввод пароля суперпользователя)
Формат команд RPM:
rpm [ПАРАМЕТРЫ] [ПУТЬ К ФАЙЛУ].rpm
Некоторые наиболее часто используемые параметры команды rpm :
-h, —hash выводить «#» по мере установки пакета -i, —install установить пакет(ы) -U, —upgrade обновить пакет(ы) -v, —verbose выводить более детальные сообщения -e, —erase удалить (деинсталлировать) пакет(ы) —force игнорировать конфликты пакетов
Параметры (иначе, ключи) можно использовать сгруппировав, например, так:
# rpm -ihv name_package
Следующей командой будут установлены все RPM-пакеты в текущей директории:
# rpm -ihv *.rpm
Приведем пример работы с rpm по установке программ, которые не входят в дистрибутив. Большинство таких программ поставляются в виде исходников, которые необходимо скомпилировать. Это сложная задача для рядового пользователя. Но множество разработчиков собирают бинарные файлы своих программ в виде rpm-пакетов.
Одна из таких программ – это Edraw Max.
Edraw Max – это универсальное ПО для создания диаграмм более чем 280 типов, таких как бизнес-презентации, планы зданий, интеллектуальные карты, научные иллюстрации, диаграммы UML, каркасы, электрические диаграммы и мн. др.
Перейдите на сайт программы: https://www.edrawsoft.com/download-edrawmax.html . Загрузите rpm-пакет программы и перейдите в директорию загрузки (это условно-бесплатная программа с ограниченным периодом бесплатного использования без лицензии):
# cd /home/user_name/Загрузки/
Выполните команду установки пакета:
# rpm -ihv edrawmax_10.0_x86_64.rpm
Результат и степень выполнения будет отображаться ниже:
Verifying. ################################# [100%] Подготовка. ################################# [100%] Обновление / установка. 1:edrawmax-10-0 ################################# [100%]
Программа установлена! Войдите в меню и найдите программу в разделе Office > EdrawMax .
Скачивание программы можно поручить самому rpm. Ниже показан пример скачивания и установки по сети среды разработки IDE CodeLite (убедитесь, что эти URL действительны на странице https://downloads.codelite.org/):
# rpm —import https://repos.codelite.org/CodeLite.asc # rpm -Uvh https://repos.codelite.org/rpms-14.0/fedora/codelite-14.0-2.fc32.x86_64.rpm Загружается https://repos.codelite.org/rpms-14.0/fedora/codelite-14.0-2.fc32.x86_64.rpm Verifying. ################################# [100%] Подготовка. ################################# [100%] Обновление / установка. 1:codelite-14.0-2.fc32 ################################# [100%]
В данных примерах разрешения зависимостей не потребовалось.
Список всех пакетов установленных в системе и их размеры можно получить с помощью следующей команды:
rpm -qa —queryformat ‘%010t%-%-%n’
DNF
Для получения полной справки введите команду:
# dnf —help
Использование команды:
dnf [ПАРАМЕТРЫ] [КОМАНДА]
Некоторые наиболее часто используемые команды:
autoremove удалить все ненужные пакеты, первоначально установленные по зависимостям check поиск проблем в packagedb check-update проверить доступные обновления для пакетов clean удалить кэшированные данные deplist Показывать список зависимостей пакета и какие пакеты их предоставляют distro-sync обновить установленные пакеты до последних имеющихся версий downgrade Откат к предыдущей версии пакета group показать или использовать информацию о группах history отобразить (или использовать) историю транзакций info отобразить информацию о пакете или группе пакетов install установка пакета(ов) в систему list вывести список пакетов или групп пакетов reinstall переустановка пакета remove удалить пакет или пакеты из системы repolist отобразить настроенные репозитории ПО repoquery поиск пакетов по ключевому слову search поиск информации о пакете по заданной строке updateinfo показать рекомендации к пакетам upgrade обновить пакет или пакеты в системе upgrade-minimal обновление, но только «новейших» пакетов, которые исправляют проблему в вашей системе
# dnf install krusader
Обратите внимание на то, что после команды указывается имя пакета, а не файла!
Замечательной особенностью DNF является установка не отдельных пакетов, а целой группы пакетов специального назначения всего одной командой! Такая необходимость возникает, например, после установки дистрибутива. Для того, чтобы увидеть список доступных для установки групп, необходимо ввести следующую команду:
# dnf group list
Вывод в Fedora 32
Последняя проверка окончания срока действия метаданных: 2:08:18 назад, Вс 16 авг 2020 19:34:25. Доступные группы рабочих сред: Настраиваемая операционная система Fedora Минимальная установка Серверная редакция Fedora Fedora Workstation Fedora Cloud Server KDE Plasma Workspaces Рабочая среда Xfce Рабочая среда LXDE Рабочий стол LXQt Рабочая среда Cinnamon Рабочая среда MATE Графическое окружение Sugar Deepin Desktop Рабочая станция для разработки и творчества Веб-сервер Сервер инфраструктуры Базовая среда рабочего стола Установленные группы: Средства разработки на C и библиотеки Средства разработки Научные и инженерные KDE Шрифты Поддержка оборудования Доступные группы: 3D Печать Средства администрирования Звукопроизводство Подготовка публикаций Книги и руководства Инфраструктура для облаков Средства управления облачными средами Compiz Управление контейнерами Инструментарий разработки и библиотеки для D Комплект программ дизайнера Членство в домене Fedora Eclipse Редакторы Развивающие программы Электронная лаборатория Сервер FreeIPA Управление без монитора LibreOffice Приложения MATE Медицинские приложения Milkymist Сетевые серверы Neuron Modelling Simulators Офисные приложения Python Classroom Python Science Разработка робототехники Инструменты для разработки RPM Лаборатория безопасности Текстовые средства Интернет Оконные менеджеры Deepin Desktop Environment GNOME Графические программы для работы с Интернет Игры и развлечения Звук и видео Системные средства
Примеры использования:
# dnf group [Параметры] [КОММАНДА] [АРГУМЕНТЫ]
DNF поддерживает следующие команды для работы с группами:
Некоторые параметры dnf (полный список смотрите в справке к программе):
-v, —verbose подробно описывать действия —version show DNF version and exit —nodocs не устанавливать документацию —skip-broken разрешить проблемы зависимостей, пропустив пакеты -h, —help показать справку по команде —allowerasing разрешить удаление установленных пакетов для разрешения зависимостей -b, —best попытаться использовать наиболее подходящие версии пакетов в транзакциях. -y, —assumeyes автоматически отвечать утвердительно на все вопросы —noautoremove запретить удаление зависимостей, которые больше не используются —nogpgcheck отключить проверку подписи gpg (если позволяет политика RPM) —color COLOR использовать ли цветовые схемы
Фронтэнд dnfdragora
dnfdragora – фронтэнд DNF, который работает с использованием GTK, ncurses и QT и является основным менеджером пакетов в дистрибутиве Fedora (устанавливается по умолчанию). Запуск приложения осуществляется через меню: Администрирование > dnfdragora.
Внешний вид окна программы
dnfdragora – это идеальное решение для тех, кто не хочет использовать консоль для работы с пакетами. Это простое в использовании приложение, которое может вести журнал установок пакетов, включать и отключать репозитории, обновлять метаданные и осуществлять гибкий поиск пакета в базе. Нужно сказать, что разработка данного приложения продолжается и некоторые функции пока не реализованы в полной мере.
Совет. Если по каким-либо причинам приложение стало закрываться аварийно, то попробуйте удалить файл конфигурации ~/.config/dnfdragora.yaml и перезапустить приложение.
Помимо установки отдельных пакетов, приложение может обновлять пакетную базу и работать с группами пакетов. Чтобы установить программу необходимо определить критерии поиска и выбрать с помощью чекбокса пакеты в предложенном списке.
Не взирая на то, что в KDE существует свой “родной” установщик программ Discover , обращаться к dnfdragora, возможно, вы будете довольно часто. Дело в том, что в Discover невозможно (во всяком случае, пока) полноценно работать с пакетной базой репозитория, так как от непосвященного пользователя скрыты некоторые пакеты, (например, пакеты со слабыми зависимостями: дополнения, локализации, плагины), а без точного знания наименования пакета найти его в пакетной базе будет весьма проблематично. Для сравнения, покажем окна dnfdragora и Discover с результатами поиска по ключевому слову “libreoffice”:
dnfdragora
Не трудно заметить, что Discover, помимо пакетов libreoffice, показывает пакеты, которые к LibreOffice совершенно не относятся! Надеемся, что разработчики программы доработают этот недостаток в ближайшее время, а пока – dnfdragora вам в помощь :-).
Центр программ KDE Discover
Штатным установщиком программ в KDE является – Discover. Помимо недостатка упомянутого выше, программа имеет и “плюсы”. Так Discover может устанавливать и обновлять не только пакеты, но и расширения как к программам, так и к Plasma (правда, не всегда эти обновления бывают успешними). Да и внешний вид программы более дружелюбен. По каждой программе, например, даны подробные сведения, а к программам из мира KDE прилагаются и скриншоты окон этих программ. Пример установки программы digiKam :
Установка программы
Сведения о программе
Утилита alien
Что делать, если необходимо установить в Fedora пакет .deb (конкурирующего менеджера из мира Debian), которого нет в дистрибутиве? Или наоборот: как в Debian установить rpm-пакет? На помощь приходит утилита alien. alien способна преобразовывать пакет одного формата в другой, например rpm deb . Утилита работает не только с пакетами rpm и ded, но мы ограничимся только этими форматами. Рассмотрим практический пример. На сайте программы XMind разработчики выложили для скачивания только deb-пакет.
Новая версия этой замечательной программы (используемой, кстати, в нашем курсе) распространяется теперь, в том числе, и в виде rpm-пакета, скачать который можно по этой ссылке: https://www.xmind.net/download/xmind
Нам не остается ничего другого, как установить в Fedora пакет, сконвертированный из deb-пакета. Скачиваем файл пакета (~84Мб). Далее, переходим в директорию загрузки и в консоли выполняем последовательно следующие команды:
# dnf install alien # alien -r ./xmind-linux-3.4.1.201401221918_i386.deb # rpm -i xmind-3.4.1-2.i386.rpm
Первая команда установит пакет alien в Fedora Linux.
Вторая команда, собственно, запустит процесс преобразования deb -> rpm . В результате пакет xmind-linux-3.4.1.201401221918_i386.deb будет преобразован в пакет xmind-3.4.1-2.i386.rpm.
Третья команда инсталлирует новый пакет в системе Fedora.
Некоторые параметры команд:
-d, —to-deb Generate a Debian deb package (default). -r, —to-rpm Generate a Red Hat rpm package. -i, —install Install generated package. -k, —keep-version Do not change version of generated package. —bump=number Increment package version by this number. -h, —help Display this help message.
DeltaRPM
Наше повествование будет неполным, если мы не упомянем технологию Delta, поскольку пакеты delta-rpm идут в обновлениях. По существу, Delta – это патч, внесение изменений в существующий пакет.
Поскольку сумма изменений меньше (а в некоторых случаях даже значительно меньше) объема оригинального пакета – происходит существенная экономия трафика и увеличивается скорость обновления системы. При обновлении пакетов вначале определяется база Delta, затем не имеющих Delta и их зависимости, создается общий сценарий установки, руководимый пакетным менеджером. Delta-пакеты используются исключительно для обновления системы и не распространяются с дистрибутивом. Дистрибуция содержит только оригинальные пакеты. В репозитории дистрибутива они содержатся папке обновления.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Источник: inf-w.ru
Linux App Store
Linux App Store — это универсальное веб-приложение, которое делает доступными пакеты Snap, Flatpak и Appimage .
- Открытый исходный код Бесплатно
- Software as a Service (SaaS)
- Web
Проблема, которую нужно решить: Flatpak, Snap и AppImage имеют собственный магазин приложений, который может просматривать только свой формат.
Linux App Store будет действовать как посредник и предоставит вам доступ ко всем из них через единый интерфейс!
Linux App Store — универсальный магазин приложений для Linux. Цель App Store для Linux — сделать Linux более простым в использовании, упрощая поиск и установку приложений. Магазин приложений Linux не поддерживает один дистрибутив над другим. Linux App Store также не поддерживает один формат пакета над другим. Наша цель — просто сделать программное обеспечение, которое вы используете, более доступным для вас.
Источник: progsoft.net
Сравнение магазинов приложений для Linux: какой из них вам подходит?
Пользователи macOS привыкли получать программное обеспечение из магазина приложений, как и на своих телефонах. Microsoft пытается сделать то же самое на Windows. Linux не нужно вносить изменения. Там, получение приложений из одного места уже давно стало нормой!
Нет ни одной операционной системы под названием Linux, которую вы можете установить на свой компьютер. Вместо этого вы загружаете дистрибутивы Linux, каждый из которых работает по-своему. Это означает, что в мире Linux нет ни одного магазина приложений.
App Store 101
Многие дистрибутивы Linux уклоняются от термина «магазин приложений», поскольку подавляющее большинство программ для Linux квалифицируется как бесплатное программное обеспечение с открытым исходным кодом « Загружаемые вами приложения — это не продукты для продажи, а бесплатные программы, которые вы можете использовать по своему усмотрению.
Разработчики думают о программном обеспечении как о пакетах . Они хранятся на серверах, называемых репозиториями Linux (для краткости «repos»). Программы, которые получают доступ к этим репозиториям для загрузки пакетов и обновлений, называются менеджерами пакетов .
Магазины приложений не были рождены на мобильных устройствах, и некоторые дистрибутивы играли с концепцией в течение многих лет. Но смартфоны сделали этот опыт распространенным, и теперь многие другие дистрибутивы прилагают усилия, чтобы менеджеры пакетов напоминали магазины приложений. Программное обеспечение стало более доступным и простым в установке как для новых, так и для старых пользователей. Варианты ниже — четыре самых популярных.
1. Программное обеспечение GNOME
GNOME — одна из самых распространенных сред Это делает GNOME Software одним из менеджеров пакетов, с которым вы, скорее всего, столкнетесь. Эта программа используется по умолчанию в популярных дистрибутивах, таких как Fedora и Ubuntu .
Чтобы указать вам на популярные приложения Linux, GNOME Software выделяет одно изображение в виде гигантского баннера и перечисляет другие под ним. Вы можете погрузиться в такие категории, как аудио и видео или графика и фотография, когда есть определенный тип инструмента, который вы хотите найти. Ваш наиболее вероятный пункт назначения — кнопка поиска, особенно если вы уже знаете, какое программное обеспечение вам нужно.
GNOME Software также является вашим инструментом для удаления приложений, которые вам больше не нужны. Кроме того, он управляет обновлениями, которые, скорее всего, будут препятствовать вам возвращаться после того, как ваш компьютер будет полностью настроен.
Программное обеспечение GNOME недавно заменило медленный и стареющий Центр программного обеспечения Ubuntu, которая была более ранней попыткой предоставить Linux процветающий менеджер пакетов в стиле магазина приложений. Быть доступным инструментом в некоторых из самых популярных дистрибутивов Linux — признак возможностей этой программы.
2. KDE Discover
Откройте для себя среду KDE для плазменной среды ответ на проблему магазина приложений. Основная концепция та же самая. Discover — это место для поиска и управления программным обеспечением. Проверьте боковую панель для поиска приложений, которые вы знаете, и просмотрите категории для тех, кого вы не знаете.
По моему мнению, опыт еще не готов к прайм-тайм. Например, на домашней странице перечислены популярные приложения таким образом, что они устарели, и я нахожу их несколько запутанными.
Одним из отличий является добавление дополнений. Вы можете найти дополнения к приложениям и рабочему столу, не обращаясь к разным источникам. В GNOME вы должны перейти на выделенный сайт . Тем не менее, пользователи KDE также имеют возможность запустить браузер и перейти на store.kde.org .
Discover поставляется с несколькими более продвинутыми настройками, такими как отображение списка различных репозиториев, к которым ваш компьютер может получить доступ. Тем не менее, приложение не предназначено в качестве замены для ввода команд в терминал.
3. AppCenter
AppCenter является относительным новичком в мире Linux. Этот магазин приложений предназначен специально для Elementary OS. , но сейчас он предоставляет доступ только к тому, что находится в репозиториях Ubuntu. Элементарно-специфическое программное обеспечение отсутствует.
Это должно измениться. Разработчики провели кампанию Indiegogo, чтобы собрать деньги для расширения возможностей AppCenter. Цель состоит в том, чтобы предоставить производителям приложений простой способ создания и развертывания программного обеспечения для Elementary OS. AppCenter предоставит доступ к этим приложениям по модели «плати сколько хочешь». Вы можете установить программное обеспечение бесплатно, но если вы хотите показать поддержку разработчика, рассмотрите возможность отправки нескольких долларов в их пользу.
Как и другие магазины приложений, AppCenter позволяет искать приложения или просматривать по категориям, а также предоставляет единое место для установки и удаления программного обеспечения. Этот инструмент также управляет вашими обновлениями. Если AppCenter кажется базовым, это дизайн. Даже после того, как появятся дополнительные функции, это, вероятно, останется одним из наиболее простых менеджеров пакетов в Linux.
4. MintInstall
Как и AppCenter, MintInstall предназначен для конкретного дистрибутива. В данном случае это Linux Mint. Если вы хотите установить приложения после установки Mint на свой ноутбук , это то, что вы увидите.
Мята ставит категории спереди и в центре. Вместо того, чтобы предлагать ослепительную домашнюю страницу с популярными приложениями, они спрятаны в отдельной категории «Избранные».
MintInstall, кажется, делает больший акцент на рейтингах и обзорах. Как не пользователь Mint, у меня первое впечатление, что вокруг этого дистрибутива есть реальное ощущение сообщества.
Еще одним выдающимся моментом является количество скриншотов. Это функциональность, которая есть во всех других магазинах приложений, но в некоторых из них отсутствуют изображения для большинства приложений. На монетном дворе кажется надежным, что у более популярных приложений будет довольно много скриншотов.
MintInstall выглядит как нечто среднее между старыми менеджерами пакетов и новыми магазинами приложений. Здесь вы все еще можете редактировать программные источники. Плюс MintInstall включает в себя общее количество пакетов, доступных в нижней части главного экрана. Это число в настоящее время составляет около 83 000.
Хотите что-то более мощное?
Не парься. В Linux есть несколько зрелых менеджеров пакетов, которые гораздо более способны конкурировать с терминалом. Synaptic является одним из таких инструментов. Еще один пакет GNOME. Поклонники KDE могут попробовать Apper . Ваш дистрибутив может иметь свой собственный инструмент. openSUSE имеет YaST , а Yum Extender доступен для Fedora.
Магазины приложений Linux позволяют загружать пакеты программного обеспечения, которые могут включать в себя множество отдельных пакетов и компонентов (известных как зависимости). Традиционные менеджеры пакетов позволяют увидеть эти отдельные части. Они отлично подходят для отслеживания конкретной программы, которая может потребоваться другой, но не удалось ее получить. Вы, возможно, обнаружите, что тяготеете к менеджерам пакетов, когда вы достаточно долго используете Linux, чтобы точно знать, что вам нужно, но вам не нужно запускать терминал.
Какой магазин приложений для вас?
Вам нравится макет программного обеспечения GNOME? Предпочитаете гладкость AppCenter? Может быть, вам нравится простота MintInstall?
Этот вопрос часто решается дистрибутивом и окружением рабочего стола, которое вы решили использовать. Но у вас всегда есть выбор, чтобы установить альтернативу.
Вы придерживаетесь стандартного магазина приложений или устанавливаете другой? Какой из них твой любимый? Какие функции вы хотели бы видеть в этих магазинах приложений когда-нибудь? Давайте поговорим в комментариях!
Источник: gadgetshelp.com