From Fedora Project Wiki

Fedora Mobility

Fedora Mobility SIG is a group of contributors that are interested in running Fedora on portable devices such as phones and tablets. The revitalised SIG relaunched when open phone and tablet devices started to become available such as the Pine64 Pinephone.

Mission

Fedora Mobility is aiming to eventually create an official Fedora spin to run on mobile phones, tablets and other similar portable battery powered devices. Initial focus is on the PinePhone, but we hope to support other smartphones such as the Librem 5. The aim is to get a stable, open source Phone platform that can be used as a daily driver, with full upstream software.

Meetings

Meetings are 16:30 UTC on #fedora-meeting on irc.freenode.net on the second Monday of each month. See: [1]

Communication

We communicate in the usual Fedora channels.

Getting Help and Getting Involved

The effort is still quite early on, quite a bit of the phosh desktop is in place and we're working to get a Fedora Remix for Fedora 34 which will have a regular image generated soon. There's a number of ways you can get involved and help out:

  • Packagers: There are so many interesting packages that are not yet packaged for Fedora. You can find a list of things we need to package on Fedora Mobility issue tracker. Or of course you can contribute by packaging them yourself.
  • Reviewers: People able to do package reviews can find a list of packages currently needing review in the Tracker Bug.
  • Testers: If you have a small device and use Fedora on it, file bugs and add them as a blocker for the Fedora Mobility Tracker Bug.
  • Bugs: Become a BugZapper and help us with Fedora Mobility related bugs.
  • Hardware Enablement: If you have the skills to work with low level early firmware, kernel and related components there's a need for assistance for device bring up, kernel development, debug and fixes to get support upstream and fix issues with hardware.
  • Software Develment: Fixes, features, mobile applications, improvement to existing Fedora applications to better run on phones and tablets.

Current Status

Fedora Mobility has a reasonable amount of mobile focused packages available in Fedora Rawhide. Packages groups include:

  • A functional touch desktop environment, phosh.
  • A compatible touchscreen keyboard, squeekboard.
  • A Calling application for making/receiving phone calls, Calls
  • Numerous other Fedora applications such as Calendar, Maps, Contacts etc

Fedora recently added support for building aarch64 FlatPaks so we'll be looking at what applications can be packaged as FlatPaks to make them easily consumable.

As of currently, some core packages are maintained in Copr. Work is done to get all patches upstreamed. You can find an overview of packages that use downstream patches (and what they patch) here.

Supported devices

The list of devices we're planning to initially support are as follows:

We will review other devices as opportunity and interest arises, if you're capable and interested in adding support for other devices do reach out or file a RFE in the Fedora Mobility issue tracker with details of how you can assist in adding support for the new device.

Reporting Bugs

We have a few different places to report bugs and request features:

Related Fedora projects

  • The ARM architecture project.


Where to get Images

As mentioned above, the effort is still quite early on and thus we have no official build infrastructure yet. Currently two different builds are maintained, see below for details.

Note that while both builds somewhat deviate in terms of features and goodies, both provide at least basic functionality.

Github

Builds on Github are released on an irregular basis. However, in the repository you will find a collection of shell scripts that will allow you to perform your own builds. These images are based on Rawhide Minimal and add various components needed to provide a decent user experience on mobile devices. As there is no strict documentation on what's included, it's best to consult the scripts.

Tagged and published releases have undergone at least some testing by the community. As the images are based on Rawhide you will receive updates very frequently, which may break things in unexpected ways. If you plan to daily-drive your phone via rawhide, reach out to us on any of our channels to get some valuable tips on the current state.

Nightlies

The builds on FTP are released and rebuilt every night (hence the "nightly"). These are currently based on Minimal images, and are built for both F34 and F35(Rawhide).

Due to the nature of the nightly builds, there is no guarantee about expected system stability. In general the F34 images should break less often as they are based on stable F34 branch, where the F35 (Rawhide) branch are more bleeding edge - you get lots more updates every day, and failures happens.

Roadmap to Fedora Spin

The group is currently working on getting an official Fedora Spin going. There is no strict schedule at the moment, as the situation is evolving dynamically. This section tracks the progress and what needs to be done towards this goal.


Official Kernel with Networking

The builds are currently reliant on a custom kernel built by megous that includes a variety of patches. The patches are slowly accepted by the upstream kernel devs, which is required for them to land in the official Fedora kernel.

The biggest missing part as of currently is a working WiFi/BT driver for the Realtek RTL8723CS chip in the Pinephone, as well as some bits regarding GPS in the ModemManager.


Phosh Environment DNF Group

Just like there are Package Groups for *Workstation*, *KDE* or *Development Tools* that pull in bundles of packages related to each other, a Package Group for Phosh is required.

Phosh is a Phone Shell developed by Purism. It is based on GNOME and currently provides the default desktop for all Mobility images based on Fedora. Phosh is required because the default GNOME doesn't work well on devices with form factors as small as Smartphones and isn't optimized for touch inputs.


Official Image Infrastructure

Images are currently generated by collections of shell scripts (see above). In order to become an official spin, the images must be generated with more official tooling. As it isn't intended for the user to boot a live .iso on the phone, Image Factory will be used to generate the PinePhone images.

Currently there is no Mobility-specific kickstart file to use with Image Factory yet.