summaryrefslogtreecommitdiffstats
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md110
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/>
+[![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://paypal.me/theironrobin)
+<br/><br/>
+DOGE address: DLDNfkXoJeueb2GRx4scnmRc12SX1H22VW
+
+Icons by svgrepo.com