Usage Modes

ProxSave supports multiple modes depending on the CLI flags provided.

During the installation of ProxSave, a symlink is created and you can launch it directly by typing: proxsave, you can use /opt/proxsave/build/proxsave.

Backup (default)

Run a real backup using the current configuration:

proxsave

This runs collection → archive creation (compression, optional encryption) → storage distribution (local/secondary/cloud) → retention → notifications.

Dry-run

Dry-run validates configuration and simulates the workflow, but it does not create archives, does not copy/upload files, and does not send notifications.

proxsave --dry-run

Dry-run can also be enabled via configuration: DRY_RUN=true.

Logging and verbosity

You can override the configured verbosity with --log-level:

proxsave --log-level debug

Supported log levels:

  • debug
  • info
  • warning
  • error
  • critical

Combine with dry-run for troubleshooting:

proxsave --dry-run --log-level debug

Configuration file selection

Default config path is configs/backup.env. Relative config paths are resolved relative to the detected installation base directory (derived from the proxsave binary location), not the current working directory.

Use a custom config file:

proxsave --config /etc/proxsave/production.env

Interactive workflows (TUI/CLI)

These workflows are interactive by design:

  • --install (create/configure backup.env)
  • --new-install (reset installation directory and re-run installer)
  • --newkey / --age-newkey (reset AGE recipients and re-run encryption setup)
  • --decrypt (decrypt encrypted bundles to plaintext bundles)
  • --restore (restore workflow with selection/modes)

If your terminal cannot render the TUI reliably, force CLI prompts:

proxsave --install --cli
proxsave --new-install --cli
proxsave --newkey --cli
proxsave --decrypt --cli
proxsave --restore --cli

Notes:

  • --new-install asks for confirmation and preserves env/, identity/, and build/, but resets the rest of the base directory.
  • --cli is supported only for interactive workflows (it does not affect the normal backup run).

Upgrade operations

Upgrade the binary from GitHub Releases (interactive confirmation):

proxsave --upgrade

Upgrade configuration by merging it with the embedded template (preserves values and custom keys):

proxsave --upgrade-config-dry-run
proxsave --upgrade-config

Migration from legacy Bash

Preview migration:

proxsave --env-migration-dry-run

Run migration:

proxsave --env-migration --old-env /path/to/legacy/backup.env

Support mode

Support mode runs a standard backup with forced debug logging and a support-email flow. It cannot be combined with other modes (install/restore/decrypt/etc.).

proxsave --support

Help and version

proxsave --help
proxsave --version

Common shorthands

  • --config-c
  • --dry-run-n
  • --log-level-l
  • --help-h
  • --version-v