Skip to content

Configuration reference

Allison Bayless edited this page Oct 18, 2026 · 1 revision

Configuration reference

TideFTP reads config.toml from $XDG_CONFIG_HOME/tideftp/config.toml. The default location is ~/.config/tideftp/config.toml on Linux.

You can change most settings from the app by pressing ,. TideFTP creates the directory when it first saves the configuration. It writes the file atomically and does not overwrite a file that contains invalid TOML.

Example

theme = "tide-night"
density = "compact"
shadow = true
show_icons = true
max_parallel = 2
scan_file_limit = 100000
scan_workers = 3
conflict_policy = ""
editor = ""
verify_checksums = false
auto_reconnect = true
recover_interrupted_transfers = true
check_connectivity = true

[layout]
file_split = 0.5
bottom_split = 0.28

[sort]
key = "name"
desc = false

[updates]
check_on_startup = true

[[profiles]]
name = "prod"
protocol = "sftp"
host = "files.example.com"
port = 22
user = "deploy"
start_path = "/var/www"
host_key_policy = "strict"
bookmarks = ["/var/www", "/var/log"]

App settings

Key Default Meaning
theme tide-night Active color theme
density compact Row spacing
shadow true Draw modal shadows
show_icons true Show file icons
max_parallel 2 Concurrent transfers
scan_file_limit 100000 Maximum files in one recursive scan. 0 removes the limit
scan_workers 3 Directories scanned concurrently
conflict_policy empty overwrite, overwrite-newer, overwrite-size, overwrite-size-newer, resume, rename, skip, or empty to ask
editor empty Editor command, including optional arguments. Empty selects one automatically
verify_checksums false Compare SHA-256 hashes after transfers
auto_reconnect true Reconnect after an unexpected drop
recover_interrupted_transfers true Review interrupted work after reconnecting
check_connectivity true Pause the queue when the network or server is unreachable
local_bookmarks empty Local directories shown in the bookmark picker

sort.key accepts name, size, date, or type. sort.desc reverses the order.

layout.file_split sets the split between the local and remote panes. layout.bottom_split sets the transfer pane height. The app clamps both values to usable bounds.

updates.check_on_startup controls the one GitHub update request made at startup. updates.last_checked_unix and updates.dismissed_version are maintained by the app.

Profiles

Each [[profiles]] table stores a name, protocol, host, port, username, starting path, host-key policy, and remote bookmarks. protocol accepts sftp, ftp, ftps, or ftps-implicit.

The configuration file does not contain passwords. TideFTP stores saved passwords in the operating system keyring.

This page describes source revision b1fb600.

Clone this wiki locally