Soubor DEBIAN/control
Režim jednoho balíčku
V režimu jednoho balíčku je veškerý obsah integrován do jediného balíčku deb:
Package: <appid>
Version: <version>
Architecture: amd64
Section: utils
Priority: optional
Maintainer: Developer Name <your.email@example.com>
Depends: libc6 (>= 2.34), systemd
Description: Brief description
Detailed description of the application's functionality.
Referenční příručka polí:
| Pole | Povinné | Popis |
|---|---|---|
Package | ✅ Ano | Název balíčku. Musí odpovídat poli package v config.ini. |
Version | ✅ Ano | Verze balíčku. Musí odpovídat poli version v config.ini. |
Architecture | ✅ Ano | x86_64: amd64, aarch64: arm64. |
Section | Ano | Klasifikace balíčku (např. utils, web, net). |
Priority | Ano | Obvykle optional. |
Maintainer | ✅ Ano | Název vývojáře a e-mail. |
Depends | Doporučeno | Závislosti běhového prostředí. Deklarujte všechny požadované systémové knihovny a balíčky. |
Description | ✅ Ano | První řádek je stručný popis; další řádky jsou podrobným popisem. Viz pravidla formátu níže. |
Referenční příručka pole Architecture:
| Platforma TOS | Architecture v DEBIAN/control | Cíl sestavení |
|---|---|---|
| x86_64 / amd64 | amd64 | x86_64-pc-linux-gnu |
| aarch64 / arm64 | arm64 | aarch64-linux-gnu |
Časté chyby:
- Použití
x86_64v DEBIAN/control → je nutné použítamd64 - Poznámka: TOS 7 podporuje pouze 64bitové architektury (x86_64 a aarch64); 32bitové ARM (armhf/armel) není podporováno.
Formát pole Description:
- Řádek 1: Stručný popis (max. 80 znaků, bez úvodních mezer)
- Další řádky: Podrobný popis (každý řádek musí začínat jednou mezerou, max. 80 znaků na řádek)
- Prázdné řádky v popisu musí obsahovat mezeru následovanou tečkou:
.
Příklad:
Description: Short summary of the software package
This is the detailed description.
It can span multiple lines,
each beginning with a single space.
.
This is a new paragraph.
Režim dvojitého balíčku
Režim dvojitého balíčku je vhodný pro aplikace s existujícími obecnými standardními balíčky deb. Zdrojový balíček zůstává beze změny, přičemž je dodáván další datový balíček aplikace.
DEBIAN/control datového balíčku aplikace:
Package: <appid>
Version: <version>
Architecture: all
Section: utils
Priority: optional
Maintainer: Developer Name <your.email@example.com>
Depends: <package> (>= <version>)
Description: Application data package - <App Name>
TerraMaster App Center metadata package for <App Name>.
Poznámka k pojmenování: Název datového balíčku používá
<appid>(doporučeno odpovídat config.ini.id), zatímco název zdrojového balíčku používá<package>(výchozí název balíčku původní aplikace). Datový balíček deklaruje svou závislost na zdrojovém balíčku prostřednictvím poleDepends.
Pravidla asociací polí v režimu dvojitého balíčku:
| Pole | Datový balíček | Zdrojový balíček | Požadavek asociace |
|---|---|---|---|
Package | <appid> | <package> | Název datového balíčku se doporučuje shodovat s config.ini.id |
Version | <version> | <version> | Musí být přesně stejná |
Architecture | all | amd64/arm64 | Datový balíček je obvykle all; zdrojový balíček má skutečnou architekturu |
Asociace polí v config.ini:
| Pole | Popis asociace |
|---|---|
config.ini.package | Musí odpovídat metadatům package datového balíčku |
config.ini.version | Musí odpovídat metadatům version datového balíčku |
config.ini.system_id | Musí odpovídat ID služby systemd zdrojového balíčku |
config.ini.path (při externím otevření) | Musí odpovídat trase konfiguračního souboru nginx, vedoucí na <listen_port> poskytovaný zdrojovým balíčkem |
Vnitřní struktura souborů datového balíčku:
<appid>.deb
├── DEBIAN/
│ └── control
└── usr/
└── local/
└── <appid>/
├── config.ini
├── <appid>.lang
├── images/
│ └── icons/
│ └── <appid>.svg
└── nginx/ # Only needed for external open
└── <appid>.conf
Vnitřní struktura souborů zdrojového balíčku:
<package>.deb
├── DEBIAN/
│ ├── control
│ ├── preinst
│ ├── postinst
│ ├── prerm
│ └── postrm
└── usr/
└── local/
└── <appid>/
├── bin/
│ └── <binary_name>
└── init.d/
└── <system_id>.service