CQtDeployer/md/en/Packing.md

140 lines
2.9 KiB
Markdown
Raw Permalink Normal View History

2021-06-11 11:45:43 +03:00
# Packaging distributions
General information on packaging your distributions in packages.
2020-11-19 10:14:43 +03:00
## Packaging Types
2021-06-11 11:45:43 +03:00
2020-11-19 10:14:43 +03:00
* Automatic
* Manual
## Automatic Packages
2021-06-11 11:45:43 +03:00
2020-11-19 10:14:43 +03:00
Packages with this type creates automaticly.
2021-04-12 14:57:17 +03:00
By default the distribution have a one main package. You can configure it using [Controll of packages options](Options.md).
2020-11-19 10:14:43 +03:00
#### Example (Set new name for pacakge)
2021-06-11 11:45:43 +03:00
2020-11-19 10:14:43 +03:00
```
ctdeployer ... -name "MyPackage"
```
If your distribution have a multiple executable files then you can be create a distribution with multiple package.
One package can contain from 1 to infinity of executable files.
For configure a package you must be use the targetPackage option.
Example of using:
```
cqtdeployer ... -targetPackage myPacage;target1,myPacage2;target2
```
Where myPacage is a name of package and target1 is a name of executable file.
so This example create 2 packages from 2 targets.
The Next example create a 2 packages from 3 targets.
```
cqtdeployer ... -targetPackage myPacage;target1,myPacage;target2,myPacage2;target3
```
You can also do the same in the config file
```
{
"targetPackage": [
[
"myPacage",
"target1"
],
[
"myPacage2",
"target2"
]
]
}
```
```
{
"targetPackage": [
[
"myPacage",
"target1"
],
[
"myPacage",
"target2"
],
[
"myPacage2",
"target3"
]
]
}
```
## Manual Packages
2021-06-11 11:45:43 +03:00
2020-11-19 10:14:43 +03:00
Manual packages is packages created by user template.
For example you have a aplication that must be execute a complex script on the debian package or the installer.
So you need to create your template and add tehe path to you template for a package option.
Example
```
cqtdeployer ... -qif /path/to/my/template/installer
```
The /path/to/my/template/installer folder must be contains a folder with the package name.
for example i am deploy application with the "MyExample" name, so my custom template must be locate in the
/path/to/my/template/installer/MyExample path.
For multi-package distributions, the same rules apply.
Your folder with the templates must be contains folders with same names as packages.
Example:
```
{
"targetPackage": [
[
"myPacage",
"target1"
],
[
"myPacage",
"target2"
],
[
"myPacage2",
"target3"
]
]
}
```
```
~/path/to/my/template/installer$ tree
.
├── myPacage
│ └── ...
└── myPacage2
└── ...
```
### Note
2021-06-11 11:45:43 +03:00
You can also extract the standard package template in order to override it if for some reason you are not satisfied with the standard implementation. See this [page](ExtractDefaultsTemplates.md) for details on how to do this
2020-11-19 10:14:43 +03:00
## Available packages
2021-06-11 11:45:43 +03:00
2021-04-12 14:57:17 +03:00
* [Qt Install Framework](QIF.md)
* [ZIP Arhive](ZIP.md)
* [DEB Package](DEB.md)