Giter VIP home page Giter VIP logo

siglo's Introduction

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 theironrobin#80).

Arch Linux

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

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 pyxdg requests black

Build/Install

git clone https://github.com/alexr4535/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//40 org.gnome.Platform//40

flatpak-builder --user --install --repo=repo --force-clean build-dir/ com.github.alexr4535.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/40 org.gnome.Platform/aarch64/40

flatpak-builder --arch=aarch64 --repo=repo --force-clean build-dir com.github.alexr4535.siglo.json
flatpak build-bundle --arch=aarch64 ./repo/ siglo.flatpak com.github.alexr4535.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

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.