options
appimage_updater.cli.options
¶
Centralized CLI option and argument definitions.
This module consolidates all typer.Option and typer.Argument definitions to eliminate duplication and provide a single source of truth for CLI options.
CLIOptions
¶
Registry of all CLI options and arguments used across commands.
ADD_AUTO_SUBDIR_OPTION = typer.Option(None, '--auto-subdir/--no-auto-subdir', help='Enable or disable automatic subdirectory creation (overrides global default)')
class-attribute
instance-attribute
¶
ADD_BASENAME_OPTION = typer.Option(None, '--basename', help='Base name for file matching (defaults to app name if not specified)')
class-attribute
instance-attribute
¶
ADD_CHECKSUM_ALGORITHM_OPTION = typer.Option('sha256', '--checksum-algorithm', help='Checksum algorithm: sha256, sha1, md5 (default: sha256)')
class-attribute
instance-attribute
¶
ADD_CHECKSUM_OPTION = typer.Option(None, '--checksum/--no-checksum', help='Enable or disable checksum verification (default: enabled)')
class-attribute
instance-attribute
¶
ADD_CHECKSUM_PATTERN_OPTION = typer.Option('{filename}-SHA256.txt', '--checksum-pattern', help='Checksum file pattern with {filename} placeholder (default: {filename}-SHA256.txt)')
class-attribute
instance-attribute
¶
ADD_CHECKSUM_REQUIRED_OPTION = typer.Option(None, '--checksum-required/--checksum-optional', help='Make checksum verification required or optional (default: optional)')
class-attribute
instance-attribute
¶
ADD_DIRECT_OPTION = typer.Option(None, '--direct/--no-direct', help='Treat URL as direct download link (bypasses repository detection)')
class-attribute
instance-attribute
¶
ADD_DOWNLOAD_DIR_ARGUMENT = typer.Argument(default=None, help='Directory where AppImage files will be downloaded (e.g., ~/Applications/AppName). If not provided, uses global default with auto-subdir if enabled.')
class-attribute
instance-attribute
¶
ADD_EXAMPLES_OPTION = typer.Option(False, '--examples', help='Show usage examples and exit')
class-attribute
instance-attribute
¶
ADD_INTERACTIVE_OPTION = typer.Option(False, '--interactive', '-i', help='Use interactive mode with step-by-step prompts')
class-attribute
instance-attribute
¶
ADD_NAME_ARGUMENT = typer.Argument(default=None, help='Name for the application (used for identification and pattern matching)')
class-attribute
instance-attribute
¶
ADD_PATTERN_OPTION = typer.Option(None, '--pattern', help='Custom regex pattern to match AppImage files (overrides auto-detection)')
class-attribute
instance-attribute
¶
ADD_PRERELEASE_OPTION = typer.Option(None, '--prerelease/--no-prerelease', help='Enable or disable prerelease versions (default: disabled)')
class-attribute
instance-attribute
¶
ADD_RETAIN_OPTION = typer.Option(3, '--retain-count', help='Number of old files to retain when rotation is enabled (default: 3)', min=1, max=10)
class-attribute
instance-attribute
¶
ADD_ROTATION_OPTION = typer.Option(None, '--rotation/--no-rotation', help='Enable or disable file rotation (default: disabled)')
class-attribute
instance-attribute
¶
ADD_SYMLINK_OPTION = typer.Option(None, '--symlink-path', help='Path for managed symlink to latest version (enables rotation automatically)')
class-attribute
instance-attribute
¶
ADD_URL_ARGUMENT = typer.Argument(default=None, help='URL to the application repository or release page (e.g., GitHub repository URL)')
class-attribute
instance-attribute
¶
ADD_VERSION_PATTERN_OPTION = typer.Option(None, '--version-pattern', help="Version pattern to filter releases (e.g., 'N.N_' for stable versions only, excludes 'N.NrcN')")
class-attribute
instance-attribute
¶
CHECK_APP_NAME_ARGUMENT = typer.Argument(default=None, help="Names of applications to check (case-insensitive, supports glob patterns like 'Orca*'). If not provided, checks all applications. Multiple names can be specified.")
class-attribute
instance-attribute
¶
CHECK_INFO_OPTION = typer.Option(False, '--info', help='Update or create .info files with current version scheme for selected applications')
class-attribute
instance-attribute
¶
CONFIG_ACTION_ARGUMENT = typer.Argument(default='', help='Action: show, set, reset, show-effective, list')
class-attribute
instance-attribute
¶
CONFIG_APP_NAME_OPTION = typer.Option('', '--app', help="Application name (for 'show-effective' action)")
class-attribute
instance-attribute
¶
CONFIG_DIR_OPTION = typer.Option(None, '--config-dir', '-d', help='Configuration directory path')
class-attribute
instance-attribute
¶
CONFIG_SETTING_ARGUMENT = typer.Argument(default='', help="Setting name (for 'set' action)")
class-attribute
instance-attribute
¶
CONFIG_VALUE_ARGUMENT = typer.Argument(default='', help="Setting value (for 'set' action)")
class-attribute
instance-attribute
¶
CREATE_DIR_OPTION = typer.Option(False, '--create-dir', help="Automatically create download directory if it doesn't exist (no prompt)")
class-attribute
instance-attribute
¶
DRY_RUN_OPTION = typer.Option(False, '--dry-run', help='Check for updates without downloading')
class-attribute
instance-attribute
¶
EDIT_APP_NAME_ARGUMENT_OPTIONAL = typer.Argument(default=None, help="Names of applications to edit (case-insensitive, supports glob patterns like 'Orca*'). Multiple names can be specified.")
class-attribute
instance-attribute
¶
EDIT_AUTO_SUBDIR_OPTION = typer.Option(None, '--auto-subdir/--no-auto-subdir', help='Enable or disable automatic subdirectory creation')
class-attribute
instance-attribute
¶
EDIT_BASENAME_OPTION = typer.Option(None, '--basename', help='Update the base name for file matching')
class-attribute
instance-attribute
¶
EDIT_CHECKSUM_ALGORITHM_OPTION = typer.Option(None, '--checksum-algorithm', help='Update the checksum algorithm')
class-attribute
instance-attribute
¶
EDIT_CHECKSUM_OPTION = typer.Option(None, '--checksum/--no-checksum', help='Enable or disable checksum verification')
class-attribute
instance-attribute
¶
EDIT_CHECKSUM_PATTERN_OPTION = typer.Option(None, '--checksum-pattern', help='Update the checksum file pattern')
class-attribute
instance-attribute
¶
EDIT_CHECKSUM_REQUIRED_OPTION = typer.Option(None, '--checksum-required/--checksum-optional', help='Make checksum verification required or optional')
class-attribute
instance-attribute
¶
EDIT_DIRECT_OPTION = typer.Option(None, '--direct/--no-direct', help='Treat URL as direct download link (bypasses repository detection)')
class-attribute
instance-attribute
¶
EDIT_DOWNLOAD_DIR_OPTION = typer.Option(None, '--download-dir', help='Update the download directory')
class-attribute
instance-attribute
¶
EDIT_DRY_RUN_OPTION = typer.Option(False, '--dry-run', help='Preview configuration changes without saving')
class-attribute
instance-attribute
¶
EDIT_ENABLE_OPTION = typer.Option(None, '--enable/--disable', help='Enable or disable the application')
class-attribute
instance-attribute
¶
EDIT_FORCE_OPTION = typer.Option(False, '--force', help='Skip URL validation and normalization')
class-attribute
instance-attribute
¶
EDIT_PATTERN_OPTION = typer.Option(None, '--pattern', help='Update the file pattern (regex)')
class-attribute
instance-attribute
¶
EDIT_PRERELEASE_OPTION = typer.Option(None, '--prerelease/--no-prerelease', help='Enable or disable prereleases')
class-attribute
instance-attribute
¶
EDIT_RETAIN_COUNT_OPTION = typer.Option(None, '--retain-count', help='Update the number of old files to retain', min=1, max=10)
class-attribute
instance-attribute
¶
EDIT_ROTATION_OPTION = typer.Option(None, '--rotation/--no-rotation', help='Enable or disable file rotation')
class-attribute
instance-attribute
¶
EDIT_SYMLINK_PATH_OPTION = typer.Option(None, '--symlink-path', help='Update the symlink path for rotation')
class-attribute
instance-attribute
¶
EDIT_URL_OPTION = typer.Option(None, '--url', help='Update the repository URL')
class-attribute
instance-attribute
¶
EDIT_VERSION_PATTERN_OPTION = typer.Option(None, '--version-pattern', help='Update the version pattern to filter releases')
class-attribute
instance-attribute
¶
FORMAT_OPTION = typer.Option(OutputFormat.RICH, '--format', '-f', help='Output format: rich, plain, json, html, or markdown', case_sensitive=False)
class-attribute
instance-attribute
¶
HTTP_STACK_DEPTH_OPTION = typer.Option(4, '--http-stack-depth', help='Number of call stack frames to capture for each HTTP request (1-10)', min=1, max=10)
class-attribute
instance-attribute
¶
HTTP_TRACK_HEADERS_OPTION = typer.Option(False, '--http-track-headers', help='Include request headers in HTTP tracking (may contain sensitive data)')
class-attribute
instance-attribute
¶
INSTRUMENT_HTTP_OPTION = typer.Option(False, '--instrument-http', help='Enable HTTP request tracking to analyze duplicate requests and performance')
class-attribute
instance-attribute
¶
NO_INTERACTIVE_OPTION = typer.Option(False, '--no-interactive', help='Disable interactive distribution selection (use best match automatically)')
class-attribute
instance-attribute
¶
NO_OPTION = typer.Option(False, '--no', '-n', help='Automatically answer no to prompts (non-interactive mode)')
class-attribute
instance-attribute
¶
REMOVE_APP_NAME_ARGUMENT_OPTIONAL = typer.Argument(default=None, help="Names of applications to remove from configuration (case-insensitive, supports glob patterns like 'Orca*'). Multiple names can be specified.")
class-attribute
instance-attribute
¶
REMOVE_NO_OPTION = typer.Option(False, '--no', '-n', help='Automatically answer no to confirmation prompts')
class-attribute
instance-attribute
¶
REMOVE_YES_OPTION = typer.Option(False, '--yes', '-y', help='Automatically answer yes to confirmation prompts')
class-attribute
instance-attribute
¶
REPOSITORY_APP_NAME_ARGUMENT = typer.Argument(help="Names of applications to examine repository information for (case-insensitive, supports glob patterns like 'Orca*'). Multiple names can be specified.")
class-attribute
instance-attribute
¶
REPOSITORY_ASSETS_OPTION = typer.Option(False, '--assets', '-a', help='Show detailed asset information for each release')
class-attribute
instance-attribute
¶
REPOSITORY_DRY_RUN_OPTION = typer.Option(False, '--dry-run', help='Show repository URLs that would be examined without fetching data')
class-attribute
instance-attribute
¶
REPOSITORY_LIMIT_OPTION = typer.Option(10, '--limit', '-l', help='Maximum number of releases to display (default: 10)', min=1, max=50)
class-attribute
instance-attribute
¶
SHOW_APP_NAME_ARGUMENT_OPTIONAL = typer.Argument(default=None, help="Names of applications to display information for (case-insensitive, supports glob patterns like 'Orca*'). Multiple names can be specified.")
class-attribute
instance-attribute
¶
TRACE_OPTION = typer.Option(False, '--trace', help='Enable real-time HTTP request tracing with timing information')
class-attribute
instance-attribute
¶
VERBOSE_OPTION = typer.Option(False, '--verbose', '-v', help='Show resolved parameter values including defaults')
class-attribute
instance-attribute
¶
YES_OPTION = typer.Option(False, '--yes', '-y', help='Automatically answer yes to prompts (non-interactive mode)')
class-attribute
instance-attribute
¶
debug_option()
staticmethod
¶
version_option(callback)
staticmethod
¶
Version display option.