Skip to content

aria2_server.config.schemas

__all__ module-attribute

__all__ = ('Aria2', 'Config', 'Server', 'ServerExtra')

Aria2

Bases: _ConfigedBaseModel

model_config class-attribute instance-attribute

model_config = ConfigDict(
    title="The cli args of aria2c",
    alias_generator=lambda field_name: replace("_", "-"),
)

rpc_listen_all class-attribute instance-attribute

rpc_listen_all: BoolStr = 'false'

rpc_listen_port class-attribute instance-attribute

rpc_listen_port: int = Field(default_factory=lambda: find_open_port(_FIND_LOWEST_PORT, _FIND_HIGHEST_PORT), ge=_LOWEST_PORT, le=_HIGHEST_PORT, description=dedent(f'            aria2c will listen on this port. Default is a random port between {_FIND_LOWEST_PORT} and {_FIND_HIGHEST_PORT}.
            Usually, prefer to keep it as default, because aria2-server will create a reverse proxy for aria2c..'))

rpc_secret class-attribute instance-attribute

rpc_secret: SecretStr = Field(
    default_factory=token_urlsafe,
    description=dedent(
        "            The rpc-secret of aria2c. Default is a random string.\n            Usually, prefer to keep it as default, and get the secret from aria2-server's API."
    ),
)

rpc_secure class-attribute instance-attribute

rpc_secure: BoolStr = 'false'

enable_rpc class-attribute instance-attribute

enable_rpc: TrueStr = 'true'

conf_path class-attribute instance-attribute

conf_path: Optional[FilePath] = None

ServerExtra

Bases: _ConfigedBaseModel

model_config class-attribute instance-attribute

model_config = ConfigDict(
    title="The extra server config for aria2-server"
)

sqlite_db class-attribute instance-attribute

sqlite_db: SqliteDbPathType = _DEFAULT_DB_PATH

expiration_second class-attribute instance-attribute

expiration_second: int = _DEFAULT_EXPIRATION_SECOND

Server

Bases: _ConfigedBaseModel

model_config class-attribute instance-attribute

model_config = ConfigDict(title=dedent(f'            The server config for aria2-server.
            You can refer to <{_NICEGUI_RUN_DOCS_URL}> for most of the properties.'))

host class-attribute instance-attribute

host: IpvAnyHostType = _DEFAULT_HOST

port class-attribute instance-attribute

port: int = _DEFAULT_PORT

title class-attribute instance-attribute

title: str = _DEFAULT_TITLE

dark class-attribute instance-attribute

dark: Optional[bool] = None

show class-attribute instance-attribute

show: bool = True

language class-attribute instance-attribute

language: LanguageType = 'en-US'

uvicorn_logging_level class-attribute instance-attribute

uvicorn_logging_level: UvicornLoggingLevelType = 'warning'

endpoint_documentation class-attribute instance-attribute

endpoint_documentation: EndpointDocumentationType = 'page'

favicon class-attribute instance-attribute

favicon: Path = favicon

ssl_keyfile class-attribute instance-attribute

ssl_keyfile: Optional[FilePath] = None

ssl_certfile class-attribute instance-attribute

ssl_certfile: Optional[FilePath] = None

ssl_keyfile_password class-attribute instance-attribute

ssl_keyfile_password: Optional[SecretStr] = None

root_path class-attribute instance-attribute

root_path: str = ''

extra class-attribute instance-attribute

Config

Bases: _ConfigedBaseModel

model_config class-attribute instance-attribute

model_config = ConfigDict(
    title="The global config of aria2-server"
)

server class-attribute instance-attribute

server: Server = Server()

aria2 class-attribute instance-attribute

aria2: Aria2 = Aria2()