Where Does gurk Store Config and Messages?
gurk searches a fixed config order ending at ~/.gurk.toml and separates message storage into a data dir.
Last updated
gurk looks for gurk.toml through a fixed ladder: XDG config subpaths, platform config dir, then ~/.gurk.toml, with --config and GURK_CONFIG jumping the queue. Keybindings, data dir and behavior all live there.
Message storage stays separate by design. The data dir (messages, Signal database, attachments) resolves from flags, env, config or platform defaults in that order, so backups target one folder while configs travel in dotfiles.
Where gurk stores this, by platform
~/Library/Application Support/gurk/gurk.toml
Keybindings, data_dir, behavior. First run writes defaults here after QR linking. RUST_LOG=gurk=trace plus --verbose debugs config resolution.
~/.config/gurk.toml
Same ladder ($XDG_CONFIG_HOME/gurk/gurk.toml first). Data defaults to $XDG_DATA_HOME/gurk; override per run without touching stored settings.
Frequently asked questions
How do I set up gurk the first time?
Run gurk once and scan the QR with Signal to link as a device. That first run also writes the default config, so subsequent launches skip straight to chats.
Where does gurk keep messages, and can I move them?
Set it in gurk.toml (data_dir), or pass --data-dir, or export GURK_DATA_DIR. CLI beats file beats XDG defaults, and the data dir holds messages, database and attachments.
Notice an outdated path? Let us know.