Skip to content

theironrobin/siglo

Repository files navigation

siglo

GTK app to sync InfiniTime watch with PinePhone

'siglo' means century in Spanish

Requirements

Gtk >= 3.30

Download and Install

Download the latest stable version from Flathub (Warning: SMS Notifications currently broken in flatpak #80).

Alpine

Works for Alpine and other Alpine-based distribution, such as postmarketOS.

sudo apk add desktop-file-utils gettext glib-dev meson py3-dbus py3-pip python3 
pip3 install gatt

Arch Linux

sudo pacman -S --needed meson python-pip base-devel bluez bluez-utils dbus-python python-gobject
pip3 install gatt

Fedora

sudo dnf install meson glib2-devel
pip3 install gatt

Ubuntu

sudo apt install libgtk-3-dev python3-pip meson python3-dbus gtk-update-icon-cache desktop-file-utils gettext appstream-util libglib2.0-dev
pip3 install gatt requests black

Build/Install

git clone https://github.com/theironrobin/siglo.git
cd siglo
mkdir build
meson build/
cd build
sudo ninja install

Mocked Testing with Docker

While you won't get Bluetooth connectivity, you can get some high-level vetting in a container, which will open the way forward to better CI testing on GitHub.

The Dockerfile contains all required dependencies, in addition to xvfb which allows us to make sure the app can execute.

sudo docker build . --tag siglo; and sudo docker run --name siglo --volume (pwd):/siglo --rm -it siglo:latest

Once the container is running, you can launch the app:

/etc/init.d/dbus start && dbus-run-session xvfb-run -a -s "-screen 0 1024x768x24" siglo

Building and installing Flatpak app

Building and installing on target architecture

flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak install --user flathub org.gnome.Sdk//42 org.gnome.Platform//42

flatpak-builder --user --install --repo=repo --force-clean build-dir/ com.github.theironrobin.siglo.json

Cross-compiling for PinePhone

Example cross-compiling for PinePhone on an x86_64 Fedora machine:

sudo dnf install qemu-system-arm qemu-user-static
flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak install --user flathub org.gnome.Sdk/aarch64/42 org.gnome.Platform/aarch64/42

flatpak-builder --arch=aarch64 --repo=repo --force-clean build-dir com.github.theironrobin.siglo.json
flatpak build-bundle --arch=aarch64 ./repo/ siglo.flatpak com.github.theironrobin.siglo

Transfer the siglo.flatpak file on the PinePhone and install it with the following command:

sudo flatpak install ./siglo.flatpak

If this project helped you, you can buy me a cup of coffee :)

Donate

DOGE address: DLDNfkXoJeueb2GRx4scnmRc12SX1H22VW

Icons by svgrepo.com