Synchronization between devices

The long-awaited feature, see the GitHub issue for more details:

Hello Erik,

I’ve skimmed through the issue on github. I will outline my use-case summary here:
Suppose I run a remote server with activitywatch at home, and I expect this server to be the single source of truth regarding all activitywatch data.
I may go away from home for some periods of time carrying only one/two laptop(s) both running activitywatch, however when I do return home, I am interested to have all my data sync-ed with the remote server at home (because that’s where I do most of my work).
I am thinking that this requires the two devices to be labelled with some unique identifier, so we have a way of knowing where the events came from.

I’ve read through [2] but saw many people there suggesting generic file synchronization tools, then about generic sqlite sync tools (rqlite).
I liked the discussion here [1] much more because it talks about the core of the problem, in the actual context of Activitywatch, where you have multiple databases with events, and the events have to be merged. I think it has to be sqlite-specific. Also [1] talks about overlapping events, but honestly if the machines involved have a label, I don’t think there will be any such overlapping events.

I believe if this feature will be implemented, it will allow users to easily merge their activitywatch databases, I think it would be a very useful feature.

Regarding the discussions I’ve read so far I think sometimes there is a tendency that we want something very general that solves a very wide problem domain, but really if we have something small that works well, that can bring a lot of value and later on extensions/generalizations/customizations/tweaks will be possible.

Best regards,
Stefan

[1] https://github.com/ActivityWatch/aw-core/issues/78
[2] https://github.com/ActivityWatch/activitywatch/issues/35

3 Likes

Bumpity bump

Thanks for the great foss app! :grinning_face_with_smiling_eyes:

Sorry I am still learning and can’t add anything here.
Found this because I have recently installed AW on three systems (windows 11 & Ubuntu dual boot) and phone (LineageOS) and was looking up syncing options. So thought I’d give this a bump :+1:

And again, big thanks to everyone who volunteered time and expertise to get AW to where it is :bowing_man: :ok_man: :ok_hand:

1 Like