О проекте
Приложение eepmApp предоставляет пользователю простой и быстрый графический интерфейс для установки и удаления приложений доступных в консольной программе EPM, разработанной компанией Etersoft. (http://etersoft.ru/)
eepmApp позволяет:
- Устанавливать и удалять приложения доступные в консольном приложении epm
- Устанавливать/удалять приложения как по отдельности так и группой
- Запускать установленные приложения
- Обновлять установленные приложения
- Группировать приложения по категориям
- Фильтровать приложения (доступные фильтры: “все”, “установленные”, “не установленные”)
- Искать приложения в списке доступных по имени и описанию
- Просматривать краткое описание приложений
- Переходить по ссылке на сайт программы
- Обновлять базу данных eepmApp с удаленного сервера
Работа приложения проверена на таких дистрибутивах как Rosa Linux, ALT Linux.
Распространяется под свободной лицензией GPL-3.0
Обновление базы данных
В своей работе приложение eepmApp использует собственную базу данных, содержащую иконки программ, описание программ, ссылки на сайты программ.
Способ обновить базу данных:
-
Обновление базы данных
- Обновить файлы /usr/share/eepmApp/base/progbase и /usr/share/eepmApp/base/repobase.ini. Начинаем с добавления новых программ в repobase.ini. Порядок программ должен быть аналогичен выводу команды eepm play –short(два тире). Затем с помощью программы numicon из репозитория нумеруем порядковые номера иконок в файле repobase.ini. Просто перетащите файл repobase.ini в окно numicon и нажмите пронумеровать. Автоматически создатся файл progbase.
- Добавить в дирректорию /usr/share/eepmApp/base/iconbase/ файл iconbase с назаниями программ. Порядок программ в файлах /usr/share/eepmApp/base/progbase, /usr/share/eepmApp/base/repobase.ini и /usr/share/eepmApp/base/iconbase/iconbase должен быть одинаковым.
- Добавить в директории /usr/share/eepmApp/base/iconbase/32x32 и /usr/share/eepmApp/base/iconbase/128x128 (на англ.) иконки новых программ в формате webp. Названия иконок должены совпадать с названиями программ в файле /usr/share/eepmApp/base/iconbase/iconbase.
- Обновить файл базы данных групп /usr/share/eepmApp/groups_db. Первый способ вручную добавлять значения в таблицу names (В колонке gr_index указывается индекс группы из таблицы gr; в колонке gr_name указывается имя программы). Второй способ воспользоваться утилитой makergroups_db. Для этого в файл progbase_db добавляем новые программы. (Каждая программа на отдельной строке. В начеле строки индекс группы и через пробел имя программы). Затем в программе makergroups_db указываем файл базы данный групп groups_db и только что подготовленный файл progbase_db и нажимаем “Внести изменения”. makergroups_db может к уже существующим записям добавить новые или полностью перезаписать все записи, основываясь на файле progbase_db.
-
Обновление базы данных с собственного сервера
- Подготовить все требуемые файлы и директории, руководствуясь пунктом 1).
- Требуемые для обновления файлы и папки поместить в директорию base (см. как это сделано в директории /usr/share/eepmApp/) и создать из нее архив zip. Имя архима должно быть таким же как версия. (например 3.64.45.1.zip)
- Создаем два файла с именами version и md5. В файл version записываем одну строчку с версией (например для нашего примера 3.64.45.1). В файл md5 записываем md5 хэшы файлов iconbase, progbase, repobase (например формат записи iconbase=99470e02e5a13fe22295716772e9c6ty).
- Архив и файлы размещаем на указанный вами в настройках программы сервер.
eepmApp, обнаружив при старте файлы базы данных в директориях /usr/share/eepmApp/ или $HOME/.config/eepmApp/, загрузит иконки из дирректорий 32x32 и 128x128. Если файлы базы данных не будут обнаружены, то программа будет работать с отключенным отображением иконок.
Требуемые зависимости для RosaLinux: eepm, alien (необязателен), qqc2-desktop-style, qt5pas, lib64Qt5Pas1, qt6pas, lib64Qt6Pas-devel, lib64sqlite3_0, lib64sqlite3-devel
Требуемые зависимости для AltLinux: eepm, alien (необязателен), kf5-qqc2-desktop-style, qt5pas, qt5pas-devel, qt6pas, qt6pas-devel, libsqlite3, libsqlite3-devel





