Здрасти. Давай сегодня соберем свой «мета-пакет».
Что такое «мета-пакет»? Нууу…
Например, я хочу разом поставить htop, git, rclone, mc и прочее. И чтобы не вводить команду на установку:
apt install htop git rclone mc
Я могу поставить один «мета-пакет», который будет содержать в себе все эти утилиты. Что-то из оперы Zver DVD, где нужный софт ставился сразу пачкой.
Поехали тыкать палкой!
Ставим зависимости и готовим окружение:
sudo apt-get install -y build-essential devscripts dh-make
Создаем структуру для «мета-пакета»:
cd /tmp
mkdir bashdays-soft
cd bashdays-soft
Создайте контрольные файлы пакета:
dh_make --native --single --yes -p bashdays-soft_1.0
Ключи:
native — создаёт пакет без указания версии дистрибутива
single — создаёт минимальную структуру
-p my-metapackage_1.0 — имя пакета и версия (1.0)
В ответ получаем выхлоп:
Maintainer Name : root
Email-Address : root@unknown
Date : Sun, 29 Sep 2024 03:58:22 +0000
Package Name : bashdays-soft
Version : 1.0
License : gpl3
Package Type : single
Открываем файл на редактирование:
vim debian/control
И хуячим описание для «мета-пакета»:
Source: bashdays-soft
Section: misc
Priority: optional
Maintainer: Roman Shubin <hello@devopsina.ru>
Standards-Version: 4.5.0
Build-Depends: debhelper-compat (= 11)
Package: bashdays-soft
Architecture: all
Depends: mc, htop, curl, git
Description: My own Installer
В секции Depends перечислены все пакеты, которые должны быть установлены вместе с мета-пакетом. У меня это mc, htop, curl, git.
Параметр Architecture: all указывает, что пакет не зависит от архитектуры. Собираем «мета-пакет»:
debuild -us -uc
Ключи -us и -uc отключают подпись пакета.
Смотрим что получилось:
ls -la ..
И видим:
bashdays-soft_1.0.tar.xz
bashdays-soft_1.0_all.deb
Наш «мета-пакет» готов. Давай теперь его установим и посмотрим что получилось:
sudo apt install -yf ../bashdays-soft_1.0_all.deb
Проверяем и видим что произошла установка всех пакетов, которые я описал в секции Depends в файле debian/control. ЗБС!
Проверить можно так:
dpkg -l mc htop curl git
В ответ получишь красивую табличку и информацию о пакетах.
Темка достаточно интересная, поэтому рекомендую потыкать.
Пользуйтесь!








Комментарии