- Notifications
You must be signed in to change notification settings - Fork5
PineTime smart watch companion app for Linux phone and desktop
License
azymohliad/watchmate
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Companion app forInfiniTime-poweredPineTime smart watch.
Visually optimized for GNOME, adaptive for phone and desktop, Linux only.
- Current time service.
- Data reading: battery level, heart rate, steps count, firmware version.
- OTA firmware and external resources updates. Both, from manually specified DFU/resources files, or automatically downloaded fromInfiniTime releases for selected version.
- Media-player control.
- Notifications forwarding.
Watchmate is available onFlathub:
flatpak install io.gitlab.azymohliad.WatchMate
Or via the following community-maintained distro packages:
Settings schema can be installed locally as follows:
mkdir -p $HOME/.local/share/glib-2.0/schemas/cp assets/io.gitlab.azymohliad.WatchMate.gschema.xml $HOME/.local/share/glib-2.0/schemas/glib-compile-schemas $HOME/.local/share/glib-2.0/schemas/
To compile and run the project, execute the following command from repo directory:
cargo run --release
flatpak install org.gnome.Platform//45 org.gnome.Sdk//45 org.freedesktop.Sdk.Extension.rust-stable//23.08
flatpak-builder --user target/flatpak flatpak/io.gitlab.azymohliad.WatchMate.yml
flatpak-builder --run target/flatpak flatpak/io.gitlab.azymohliad.WatchMate.yml watchmate
flatpak-builder --install target/flatpak flatpak/io.gitlab.azymohliad.WatchMate.yml
Here and above,target/flatpak
is the build directory. It's a convenient default for Rust project (target
is already in.gitignore
), but can be anything else.
Watchmate stands on the shoulders of the following giants:
- Rust programming language.
- Relm4,GTK4 (rs) andLibadwaita (rs) for GUI.
- BlueR (an officialBlueZ Bindings for Rust) for the bluetooth stack.
- Awesome parts of Rust ecosystem, liketokio,serde,reqwest,zbus,anyhow and others (seeCargo.toml for the full list).
I'm deeply grateful to all people behind these technologies. Watchmate wouldn't be possible without them: first, it would be technically unliftable; second, even with the alternatives, I probably wouldn't enjoy it so much, and joy is vitally important for hobby projects like this one.
About
PineTime smart watch companion app for Linux phone and desktop