Zverik / every_door

A dedicated app for collecting thousands of POI for OpenStreetMap
https://every-door.app
ISC License
420 stars 36 forks source link

Mobile GNU/Linux (e.g., PinePhone) support #462

Open kkofler opened 2 years ago

kkofler commented 2 years ago

Since this app is written in a cross-platform toolkit, any chance we can get a GNU/Linux aarch64 build (for devices such as the PinePhone, the PinePhone Pro, the Librem5, etc.)?

According to https://docs.flutter.dev/development/platform-integration/desktop, it should be possible to build Flutter applications for GNU/Linux.

Zverik commented 2 years ago

Building for Linux is possible, as well as for other platforms, but I don't want to make a desktop version, and I cannot build/test for linux phones since I don't have one. Maybe somebody else could take on this task...

GeorgeHoneywood commented 2 years ago

I've managed to get a Linux build working over on my fork.

I also don't have a mobile Linux device, so I can't really test it, but it does run okay on amd64 desktop Fedora and Ubuntu.

All seems to work, apart from OAuth login. Some of the animations look a little bit weird on desktop, but I'm sure they'd look normal on a Linux phone.

I've created a binary for amd64, which you can download from this release. I would also have provided an arm64 binary, but unfortunately Flutter doesn't currently seem to support amd64 to arm64 cross compiling. So if you want to test this on some arm64 device, you'll need to compile it on one.

Some screenshots: ![1](https://user-images.githubusercontent.com/25514836/198890027-f8cf65fe-f2b9-4318-8fbe-ffbc12167dbc.png) ![2](https://user-images.githubusercontent.com/25514836/198890138-8c09d5f1-d459-473b-aa8a-246adda0cb8e.jpg)

Edit: looks like it might be possible to cross-build from amd64 to arm64 using flutter-elinux.