Skip to content

Repository Management ​

Soar manages repositories directly from the command line through soar repo (or soar repository). You can add, update, remove, and list repositories without manually editing config.toml.

List Repositories ​

View all configured repositories:

sh
soar repo list

This displays each repository's name, status (enabled or disabled), and URL.

Add a Repository ​

sh
soar repo add <name> <url> [options]

Options ​

OptionDescription
--pubkey <KEY>Base64-encoded public key for signature verification
--enabled <BOOL>Whether the repository is enabled (default: true)
--desktop-integration <BOOL>Enable desktop integration for packages
--signature-verification <BOOL>Enable signature verification
--sync-interval <DURATION>Sync interval (for example "1h", "12h", "1d")

Examples ​

Add a basic repository:

sh
soar repo add myrepo https://example.com/metadata.sdb.zstd

Add a repository with signature verification:

sh
soar repo add myrepo https://example.com/metadata.sdb.zstd \
  --pubkey "RWQ109gKujRqohsA7RERlXFfeJi23EcHN3Dz8TxyPAywa5mLw/fbcbU4" \
  --signature-verification true

Add a disabled repository:

sh
soar repo add staging https://example.com/staging.sdb.zstd --enabled false

Update a Repository ​

Modify settings on an existing repository. Only the fields you specify are changed:

sh
soar repo update <name> [options]

Options ​

OptionDescription
--url <URL>New metadata URL
--pubkey <KEY>New public key
--enabled <BOOL>Enable or disable the repository
--desktop-integration <BOOL>Enable or disable desktop integration
--signature-verification <BOOL>Enable or disable signature verification
--sync-interval <DURATION>New sync interval

Examples ​

Disable a repository:

sh
soar repo update myrepo --enabled false

Change the URL and sync interval:

sh
soar repo update myrepo --url https://new.example.com/metadata.sdb.zstd --sync-interval 6h

Remove a Repository ​

sh
soar repo remove <name>

This removes the repository from the configuration and cleans up its local data directory.

Example ​

sh
soar repo remove myrepo

WARNING

Removing a repository deletes its cached metadata. Packages already installed from the repository remain installed but will not receive updates until the repository is re-added.

Released under the MIT License.