From ce67e527722cadd4ed7341a3e5d433beb62887f6 Mon Sep 17 00:00:00 2001 From: YummyOreo Date: Sun, 12 May 2024 21:35:34 -0500 Subject: feat(daemon): add support for daemon on windows (#2014) * fix: gracefully exit on windows * feat(daemon): tcp support for windows * feat(daemon): add tcp port configuration * fix: logging and fix compiler error * docs: add build dependency to the readme fix(docs): move a line up * fix: missing field error * docs: adds the daemon section to the default config * fix: clippy and fmt * feat: Update README.md Co-authored-by: Ellie Huxtable * refactor: changes tcp port and other stuff as per request * fix(config): update default tcp port in example config * fix: complier error on unix * refactor: make the cfg stuff look better --------- Co-authored-by: Ellie Huxtable --- crates/atuin-client/config.toml | 15 +++++++++++++++ crates/atuin-client/src/settings.rs | 5 +++++ 2 files changed, 20 insertions(+) (limited to 'crates/atuin-client') diff --git a/crates/atuin-client/config.toml b/crates/atuin-client/config.toml index 50db6952..1de7308c 100644 --- a/crates/atuin-client/config.toml +++ b/crates/atuin-client/config.toml @@ -210,3 +210,18 @@ records = true ## auto: length of the selected command. ## static: length of the longest command stored in the history. # strategy = "auto" + +[daemon] +## Enables using the daemon to sync. Requires the daemon to be running in the background. Start it with `atuin daemon` +# enabled = false + +## How often the daemon should sync in seconds +# sync_frequency = 300 + +## The path to the unix socket used by the daemon (on unix systems) +## linux/mac: ~/.local/share/atuin/atuin.sock +## windows: Not Supported +# socket_path = "~/atuin.sock" + +## The port that should be used for TCP on non unix systems +# tcp_port = 8889 diff --git a/crates/atuin-client/src/settings.rs b/crates/atuin-client/src/settings.rs index ad7f95fc..ed1c0a29 100644 --- a/crates/atuin-client/src/settings.rs +++ b/crates/atuin-client/src/settings.rs @@ -353,6 +353,9 @@ pub struct Daemon { /// The path to the unix socket used by the daemon pub socket_path: String, + + /// The port that should be used for TCP on non unix systems + pub tcp_port: u64, } impl Default for Preview { @@ -369,6 +372,7 @@ impl Default for Daemon { enabled: false, sync_frequency: 300, socket_path: "".to_string(), + tcp_port: 8889, } } } @@ -706,6 +710,7 @@ impl Settings { .set_default("daemon.sync_frequency", 300)? .set_default("daemon.enabled", false)? .set_default("daemon.socket_path", socket_path.to_str())? + .set_default("daemon.tcp_port", 8889)? .set_default( "prefers_reduced_motion", std::env::var("NO_MOTION") -- cgit v1.3.1