{package} = "package-name"
{version} = "0.0.01"
{deb_name} = {package}_{version}
{autor} = "Autor Name"
Файловая структура пакета:
mkdir ~/package
cd ~/package
mkdir -p ./build/{deb_name}/DEBIAN
mkdir -p ./build/{deb_name}/usr/bin
mkdir -p ./package/build/{deb_name}/usr/share/doc/{package}
mkdir -p ./build/{deb_name}/usr/share/man/man1
mkdir -p ./build/{deb_name}/usr/share/applications
Файл ./build/{deb_name}/DEBIAN/control:
Package: {package}
Version: {version}
Architecture: amd64
Maintainer: {autor} <{mail}>
Depends: {depends}
Section: x11
Priority: optional
Homepage: {url}
Description: {description}
Файл ./build/{deb_name}/usr/share/doc/{package}/changelog:
[PACKAGE_NAME] ([PACKAGE_VERSION]) stable; urgency=low
* New release. Closes: #99999.
-- [AUTOR] <[MAIL]> [WEEK], [DAY] [MONTH] [YEAR] 09:54:00 -0800
сжать файл:
gzip -9 -n ./build/{deb_name}/usr/share/doc/{package}/changelog"
Файл ./package/build/{deb_name}/usr/share/doc/{package}/copyright:
Format: https://dep.debian.net/deps/dep5
Upstream-Name: [PACKAGE_NAME]
Source: [PACKAGE_SOURCE]
Files: *
Copyright: [YEAR] [AUTOR] <[MAIL]>
License: GPL-3.0+
License: GPL-3.0+
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
.
This package is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
.
On Debian systems, the complete text of the GNU General
Public License version 3 can be found in "/usr/share/common-licenses/GPL-3".
Файл ./package/build/{deb_name}/usr/share/man/man1/{package}.1:
.TH [PACKAGE_TITLE] 1
.SH NAME
[PACKAGE_NAME] \- [PACKAGE_ABOUT]
.SH DESCRIPTION
[PACKAGE_FULL_DESCRIPTION]
сжать файл:
gzip -9 -n ./package/build/{deb_name}/usr/share/man/man1/{package}.1
Создать файл ./package/build/{deb_name}/DEBIAN/md5sums
Скрипт запуска ./package/build/{deb_name}/usr/bin/{package}:
#!/bin/bash
python3 /usr/share/{pathdir}/main.py
права на файл:
chmod +x ./package/build/{deb_name}/usr/bin/{package}
Файл ./package/build/{deb_name}/usr/share/applications/{name}.desktop:
[Desktop Entry]
Type=Application
Name={APPLICATION_NAME}
Icon={APPLICATION_ICON}
Exec=/usr/bin/{package}
Comment={APPLICATION_ABOUT}
Version={APPLICATION_VERSION}
Keywords={APPLICATION_KEYWORDS}
Terminal=false
Скопировать исходники в ./package/build/{deb_name}/usr/share/{pathdir}
Скопировать иконку в ./package/build/{deb_name}/usr/share/icons/
Собрать пакет:
fakeroot dpkg-deb --build ./package/build/{deb_name}
Проверить пакет на ошибки:
lintian -i -I --show-overrides {deb_file}
Пакет можно разместить на Github. Как это сделать, можно прочитать здесь.