... | ... | @@ -91,6 +91,24 @@ project |
|
|
|
|
|
Let's start with common packaging operations such as:
|
|
|
|
|
|
### make archive from repo
|
|
|
|
|
|
```
|
|
|
$> apkg make-archive [v1.2.3]
|
|
|
```
|
|
|
creates source archive from current (or specified) repo commit in `archives/repo/project-*`.
|
|
|
|
|
|
|
|
|
### get upstream archive
|
|
|
|
|
|
```
|
|
|
$> apkg get-archive [1.2.3]
|
|
|
```
|
|
|
downloads upstream archive for current commit (or specified version) into `archives/upstream/project-*` - requires archive URL configuration, supports signatures too. Such config can be optionally stored in `distro/apkg.conf`
|
|
|
|
|
|
Both `make-archive` and `get-archive` (when configured) will be used by other commands when requested through parameters and might be useful to user on their own - better expose them properly.
|
|
|
|
|
|
|
|
|
### create package sources (files to build package(s) from)
|
|
|
|
|
|
* `package-*.src.rpm` for RPM-based systems such as Fedora, CentOS, SUSE, RHEL
|
... | ... | @@ -98,9 +116,9 @@ Let's start with common packaging operations such as: |
|
|
* `PKGBUILD` for Arch
|
|
|
* in general whatever is needed to build a package somewhere
|
|
|
|
|
|
Detect current distro and build natively by default. In future, cross-build using VMs will be supported.
|
|
|
Detect current distro and build native package sources by default. In future, cross-build using VMs will probably be supported.
|
|
|
|
|
|
By default, create and use archive(tarball) from current `git` commit but allow using remote and local archives instead including automatic download when configured.
|
|
|
By default, create and use archive(tarball) from current repo commit but allow using remote and local archives as supported by `{make,get}-archive`.
|
|
|
|
|
|
Examples:
|
|
|
|
... | ... | @@ -108,32 +126,29 @@ Examples: |
|
|
$> apkg make-package-source (make-pkgsrc, pkgsrc, ...?)
|
|
|
```
|
|
|
|
|
|
Results:
|
|
|
* on `.deb`-based distro: `package-sources/deb/package_*.{dsc,debian.tar.xz,orig.tar.xz}`
|
|
|
* on `.rpm`-based distro: `package-sources/rpm/package-*.src.rpm`
|
|
|
* etc.
|
|
|
|
|
|
```
|
|
|
$> apkg make-package-source --archive ./archives/package-1.0.0.tgz
|
|
|
$> apkg make-package-source --archive ./archives/upstream/package-1.0.0.tgz
|
|
|
```
|
|
|
Build package source from specified local archive.
|
|
|
|
|
|
builds package source from specified local archive.
|
|
|
|
|
|
```
|
|
|
$> apkg make-package-source --archive https://some.page/archives/package-1.0.0.tgz
|
|
|
```
|
|
|
Download specified archive and use it to package source.
|
|
|
downloads specified archive and uses it to create package source.
|
|
|
|
|
|
```
|
|
|
$> apkg make-package-source --get-archive
|
|
|
```
|
|
|
Download archive matching current git commit from upstream - requires configuration regarding archive URL that can optionally be stored in `distro/apkg.conf`.
|
|
|
downloads archive matching current repo commit from upstream and creates package source from it. Requires configuration regarding archive URL.
|
|
|
|
|
|
```
|
|
|
$> apkg make-package-source --get-archive --version 1.2.3
|
|
|
```
|
|
|
|
|
|
Download upstream archive version 1.2.3 (config required), [Switch `git` to version `1.2.3`?], and use it to build package source.
|
|
|
downloads upstream archive version `1.2.3` (config required), [switches `git` to version `1.2.3`?], and uses it to create package sources.
|
|
|
|
|
|
|
|
|
### build a package from current commit locally
|
... | ... | @@ -147,6 +162,7 @@ Results in `packages/ubuntu/package_*.deb` (depending on current distro) |
|
|
Similar to `make-source-package` with extra step of local build.
|
|
|
|
|
|
|
|
|
|
|
|
### check current packaging status
|
|
|
|
|
|
```
|
... | ... | |