diff options
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 110 |
1 files changed, 110 insertions, 0 deletions
diff --git a/README.md b/README.md new file mode 100644 index 0000000..94dc20f --- /dev/null +++ b/README.md @@ -0,0 +1,110 @@ +# 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](https://flathub.org/apps/details/com.github.theironrobin.siglo) (Warning: SMS Notifications currently broken in flatpak https://github.com/theironrobin/siglo/issues/80). + +### Alpine +Works for Alpine and other Alpine-based distribution, such as [postmarketOS](https://postmarketos.org/). + +```sh +sudo apk add gettext glib-dev meson py3-dbus py3-pip python3 +pip3 install gatt +``` + +### Arch Linux + +```sh +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 + +```sh +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`](Dockerfile) contains all required dependencies, in addition to +[`xvfb`](https://www.x.org/releases/X11R7.6/doc/man/man1/Xvfb.1.xhtml) which allows us to make sure +the app can execute. + +```sh +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: + +```sh +/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 + +```sh +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: + +```sh +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: + +```sh +sudo flatpak install ./siglo.flatpak +``` + +## + +If this project helped you, you can buy me a cup of coffee :) +<br/><br/> +[](https://paypal.me/theironrobin) +<br/><br/> +DOGE address: DLDNfkXoJeueb2GRx4scnmRc12SX1H22VW + +Icons by svgrepo.com |