From bce0faa1c2dc221b0ff77d2cd647bfb2a48ffa7e Mon Sep 17 00:00:00 2001 From: Ellie Huxtable Date: Wed, 8 May 2024 12:09:04 +0100 Subject: feat: add background daemon (#2006) * init daemon crate * wip * minimal functioning daemon, needs cleanup for sure * better errors * add signal cleanup * logging * things * add sync worker * move daemon crate * 30s -> 5mins * make clippy happy * fix stuff maybe? * fmt * trim packages * rate limit fix * more protoc huh * this makes no sense, why linux why * can it install literally just curl * windows in ci is slow, and all the newer things will not work there. disable the daemon feature and it will build * add daemon feature * maybe this * ok wut where is protoc * try setting protoc * hm * try copying protoc * remove optional * add cross config * idk nix * does nix want this? * some random pkg I found does this * uh oh * hack, be gone! * update contributing --- crates/atuin-daemon/proto/history.proto | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 crates/atuin-daemon/proto/history.proto (limited to 'crates/atuin-daemon/proto') diff --git a/crates/atuin-daemon/proto/history.proto b/crates/atuin-daemon/proto/history.proto new file mode 100644 index 00000000..95a12282 --- /dev/null +++ b/crates/atuin-daemon/proto/history.proto @@ -0,0 +1,33 @@ +syntax = "proto3"; +package history; + +import "google/protobuf/timestamp.proto"; + +message StartHistoryRequest { + // If people are still using my software in ~530 years, they can figure out a u128 migration + uint64 timestamp = 1; // nanosecond unix epoch + string command = 2; + string cwd = 3; + string session = 4; + string hostname = 5; +} + +message EndHistoryRequest { + string id = 1; + int64 exit = 2; + uint64 duration = 3; +} + +message StartHistoryReply { + string id = 1; +} + +message EndHistoryReply { + string id = 1; + uint64 idx = 2; +} + +service History { + rpc StartHistory(StartHistoryRequest) returns (StartHistoryReply); + rpc EndHistory(EndHistoryRequest) returns (EndHistoryReply); +} -- cgit v1.3.1