Skip to content

Rustus

services.rustus.cors

list of origins allowed to upload

Type: list of string

Default

["*"]

Example

["*.staging.domain""*.prod.domain"]

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-servers/rustus.nix

services.rustus.disable_health_access_logs

disable access log for /health endpoint

Type: boolean

Default

false

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-servers/rustus.nix

services.rustus.enable

Whether to enable TUS protocol implementation in Rust. Type: boolean

Default

false

Example

true

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-servers/rustus.nix

services.rustus.host

The host that rustus will connect to.

Type: string

Default

"127.0.0.1"

Example

"127.0.0.1"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-servers/rustus.nix

services.rustus.info_storage

Info storages are used to store information about file uploads. These storages must be persistent, because every time chunk is uploaded rustus updates information about upload. And when someone wants to download file, information about it requested from storage to get actual path of an upload.

Type: submodule

Default

{ }

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-servers/rustus.nix

services.rustus.info_storage.dir

directory to store info about uploads Type: string

Default

"/var/lib/rustus"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-servers/rustus.nix

services.rustus.info_storage.type

Type of info storage to use Type: value "file-info-storage" (singular enum)

Default

"file-info-storage"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-servers/rustus.nix

services.rustus.log_level

Desired log level

Type: one of "DEBUG", "INFO", "ERROR"

Default

"INFO"

Example

"ERROR"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-servers/rustus.nix

services.rustus.max_body_size

Maximum body size in bytes

Type: string

Default

"10000000"

Example

"100000000"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-servers/rustus.nix

services.rustus.port

The port that rustus will connect to.

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default

1081

Example

1081

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-servers/rustus.nix

services.rustus.remove_parts

remove parts files after successful concatenation

Type: boolean

Default

true

Example

false

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-servers/rustus.nix

services.rustus.storage

Storages are used to actually store your files. You can configure where you want to store files.

Type: submodule

Default

{ }

Example

{type = "hybrid-s3"s3_access_key_file = konfig.age.secrets.R2_ACCESS_KEY.path;s3_secret_key_file = konfig.age.secrets.R2_SECRET_KEY.path;s3_bucket = "my_bucket";s3_url = "https://s3.example.com";}

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-servers/rustus.nix

services.rustus.storage.data_dir

path to the local directory where all files are stored Type: string

Default

"/var/lib/rustus"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-servers/rustus.nix

services.rustus.storage.dir_structure

pattern of a directory structure locally and on s3 Type: string

Default

"{year}/{month}/{day}"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-servers/rustus.nix

services.rustus.storage.force_sync

calls fsync system call after every write to disk in local storage Type: boolean

Default

true

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-servers/rustus.nix

services.rustus.storage.s3_access_key_file

File path that contains the S3 access key. Type: string

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-servers/rustus.nix

services.rustus.storage.s3_bucket

S3 bucket. Type: string

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-servers/rustus.nix

services.rustus.storage.s3_region

S3 region name. Type: string

Default

"us-east-1"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-servers/rustus.nix

services.rustus.storage.s3_secret_key_file

File path that contains the S3 secret key. Type: path

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-servers/rustus.nix

services.rustus.storage.s3_url

S3 url. Type: string

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-servers/rustus.nix

services.rustus.storage.type

Type of storage to use Type: one of "file-storage", "hybrid-s3"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-servers/rustus.nix

services.rustus.tus_extensions

Since TUS protocol offers extensibility you can turn off some protocol extensions.

Type: list of (one of "getting", "creation", "termination", "creation-with-upload", "creation-defer-length", "concatenation", "checksum")

Default

["getting""creation""termination""creation-with-upload""creation-defer-length""concatenation""checksum"]

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-servers/rustus.nix

services.rustus.url

url path for uploads

Type: string

Default

"/files"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-servers/rustus.nix