stowix deb push
Push Debian packages to a Stowix APT repository.
Synopsis
stowix deb push [flags] <file.deb> [<file.deb>...]
Description
stowix deb push uploads one or more .deb packages to a Stowix APT repository. The server
handles APT index generation automatically — you do not need to manage Packages, Release, or
InRelease files manually.
For each package, the CLI:
- Reads the control file metadata (package name, version, architecture) from the
.deb. - Sends a prepare request to the server, which validates the metadata and returns upload credentials.
- Uploads the package blob.
- Commits the upload, triggering server-side APT index regeneration.
Flags
| Flag | Env Var | Required | Default | Description |
|---|---|---|---|---|
--target <url> | STOWIX_TARGET | Yes | — | Full URL of the target repository, e.g.
|
--distribution <name> | STOWIX_DISTRIBUTION | Yes | — | Debian distribution codename, e.g. |
--component <name> | STOWIX_COMPONENT | No | main | APT component, e.g. |
--token <token> | STOWIX_TOKEN | No | — | API token for authentication |
| — | No | false | Enable verbose logging |
Examples
# Push a single .deb for bookworm
stowix deb push \
--target https://acme.stowix.io/apt-internal \
--distribution bookworm \
mypackage_1.0.0_amd64.deb
# Push multiple packages
stowix deb push \
--target https://acme.stowix.io/apt-internal \
--distribution bookworm \
--component contrib \
pkg1_1.0_amd64.deb pkg2_2.0_amd64.deb
Authentication
Pushing packages
Pass your API token via the --token flag or the STOWIX_TOKEN environment variable:
export STOWIX_TOKEN=stx_live_01JABCDEF1234567890ABCDEF_Kw3mZ9xRvN2pLqYfBsHtUeAc
stowix deb push --target https://acme.stowix.io/apt-internal --distribution bookworm mypackage_1.0.0_amd64.deb
Consuming a private repository with apt
apt authenticates using HTTP Basic auth. Stowix accepts the API token as the password
field (the username is ignored). Add your credentials to
/etc/apt/auth.conf.d/stowix.conf:
machine acme.stowix.io
login token
password stx_live_01JABCDEF1234567890ABCDEF_Kw3mZ9xRvN2pLqYfBsHtUeAc
Replace acme.stowix.io with your organization's Stowix hostname. Once this file is in place,
apt update and apt install will authenticate automatically.
APT Source Configuration
To consume a Stowix APT repository on a Debian or Ubuntu system:
# Add the repository to your sources list
echo "deb https://acme.stowix.io/apt-internal bookworm main" \
| sudo tee /etc/apt/sources.list.d/stowix.list
# Import the signing key (from Dashboard → Repositories → apt-internal → Signing Key)
curl -fsSL https://acme.stowix.io/apt-internal/key.gpg \
| sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/stowix.gpg
sudo apt update
sudo apt install mypackage
Replace bookworm with the distribution codename you used when pushing packages, and
apt-internal with the name of your repository.