PNG in → square PNG out. Any aspect is auto-squared — Fit pads to a transparent square (keeps the whole image), Fill center-crops. Downscaled to 256/128/64/48/32/16 (.ico) and up to 1024 (macOS). Hit ⬇ square PNG to grab a builder-ready file.
PNG only. Replaces assets/logo.png. Square works best (masked to a circle). ~256×256+.
PNG only (Windows). Baked into the binary as a byte array (img.cpp). Full-HD 1920×1080 is typical.
Default UI theme baked into the client. Preview + Settings update live.
Re-skins the client accent — tabs, buttons, toggles, selection, ID field, About banner. Blank = stock #0071FF. Exports as themeColor for the builder.
Baked into the binary. Not secret — RustDesk ships its key in every client. Blank keeps RustDesk's default public server.
Security▼
Both is safest: a leaked password alone can't connect without an on-screen accept.
Baked in for unattended access. The only truly sensitive value. Committing to a public repo exposes it.
Hides the incoming-connection window on the host.
Behaviour▼
Portable-only; hides the Install button.
Locks the Settings tab.
Permissions▼
Advanced & defaults▼
Build‑time defaults, written into default-settings / override-settings. They don't change the preview (except Default peer view). Windows startup delay fix is always enabled in the build.
Initial layout of recent peers / address book. Updates the preview live.
Forces the app's starting language.
Only these IPs may connect. Blank = allow all.
Force the theme; users can't switch it.
Push permissions into override-settings so users can't change them.
How this maps to your build: app name, company, URLs, server, key and slogan are compiled into the binary (every OS). Password, permissions and approve-mode go into custom_.txt as base64, read at runtime. Import config accepts the exact RustDesk.json your v2 builder uses. Icon pixel sizes and the square-icon rule are enforced here just like the real builder.