NewPipe - Porting an Android app to Sailfish OS
UB4.132 | Day 1 | 13:30 - 14:00 | Speakers: David Llewellyn-Jones, Fabio Giovanazzi
Abstract
NewPipe is a widely used FOSS Android app that provides privacy-respecting access to YouTube, PeerTube, and other streaming services. It can search, view channels, play videos, listen to playlists, download media, and more.
Developing an application with so many distinct features often involves compromises or feature trade-offs. During the talk, we'll explain how TeamNewPipe takes these decisions together with the community. In recent years the team has been supported by NewPipe e.V., a German association which strives to promote access to libre digital media, even outside of the NewPipe app. This more general spirit dates back to the beginning of NewPipe, when the backend library that scrapes data from services was made independent of the user interface, making the backend ideal for use in other projects.
Usually it's hard to port Android apps to other mobile Linux platforms due to the use of Java and the tight integration with the Android APIs. The user interface libraries required aren't available outside of Android emulation layers and, even if they were, the user interface paradigms would differ greatly. In this talk we'll go on to describe our efforts to port the app to Sailfish OS, a Qt-based mobile Linux platform with a user interface paradigm that differs significantly from Android's. The process took us on a fascinating journey, compiling Java code for a platform without a JVM and integrating it with the Qt (C++, QML, Silica) layers above.
This talk will cover topics relevant to AOSP users, mobile Linux users, the Sailfish OS community, Android developers and Qt developers.
Attachments
Speakers
David (he/him) is a Research Data Scientist at The Alan Turing Institute and a member of the Research Computing Team managing and developing the organisation's High Performance Computing and Cloud infrastructure.
In previous lives he's been a computer games programmer, computer security researcher and most recently a software engineer developing the Linux-based Sailfish OS smartphone operating system at Jolla in Finland.
David is passionate about open source and open research. He's involved in open source software development and the open source community, especially the community around Sailfish OS. Over the last 12 months he's been writing a daily dev diary of his experience porting NewPipe for use on Sailfish OS.
Fabio (he/him) is passionate about free and open source software, having contributed to and having created many such projects. While being familiar with Rust, modern C++ and other languages, Fabio is especially experienced in Android development, being part of the NewPipe team and also having built the apps Dicio (a voice assistant) and Tridenta (for public transport) from scratch. All three published on F-Droid.
Fabio is a member of NewPipe e.V. and of the MindsHub hackspace in Ala (Italy), and is studying Computer Science at ETH Zürich. He uses the Murena operating system (formerly /e/) on his Fairphone and Manjaro with KDE on his PC, trying to live off FOSS apps as much as possible.
Links
External Links
Notice: The placeholder video image is licensed under CC BY-SA 4.0. The original image can be found hereChanges made to the image are: Cropped the image to a new ratio, part of the image was cut off.
