From Fedora Project Wiki

m (→‎Getting Help and Getting Involved: missing closed paren)
No edit summary
 
(19 intermediate revisions by 9 users not shown)
Line 1: Line 1:
= Fedora Mobility =
''Some parts of this wiki may not be up to date. We are working on updating it.''


Fedora Mobility is a group of Fedora contributors that are interested in Fedora on small devices. The SIG became mostly inactive for around 10 years until 2020, when it was resurrected to work on software for the [https://fedoraproject.org/wiki/Architectures/ARM/PinePhone Pine64 Pinephone].
'''We are looking for people to [[#Getting Involved|join the SIG]].'''


== Mission ==
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 [https://fedoraproject.org/wiki/Architectures/ARM/PinePhone Pine64 Pinephone].


Fedora Mobility hopes to eventually create an official Fedora spin that runs on mobile phones. Right now we're focusing on the PinePhone, but we hope to support even more smartphones including the Librem 5 and OnePlus 5/5T when they gain mainline kernel support.
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.


== Getting Help and Getting Involved ==
== Communication ==


At the moment Fedora Mobility is primarily maintained by very few people. We need more help!
We communicate in the usual [[Communicate| Fedora channels]].
* [https://matrix.to/#/#mobility:fedoraproject.org Matrix] is the preferred channel currently.
* {{fpchat|#fedora-mobility}} on Libera.chat
* [https://t.me/fedoraphone Telegram]
* We use the arm mailing list [https://admin.fedoraproject.org/mailman/listinfo/arm subscribe to here].


We communicate in the usual [[Communicate| Fedora channels]]. As of 31-03-2020, communication has temporarily shifted over to [irc://chat.freenode.net/#fedora-phone #fedora-phone] on Freenode (bridged to [https://t.me/fedoraphone Telegram] and [https://matrix.to/#/#fedora-mobile:matrix.org Matrix]). We will eventually switch to [irc://chat.freenode.net/#fedora-mobility #fedora-mobility] instead. We also have an (inactive) mailing list which you can [https://admin.fedoraproject.org/mailman/listinfo/mobility subscribe to here].
There currently is no bridge set up between matrix and the other channels.


If you have no idea how to help us, here are some proposals where we need help:
== Getting help ==
* '''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 [https://gitlab.com/fedora-mobile/issues/ the GitLab page].
 
* '''Reviewers:''' Only a few people are doing reviews. [[Packaging/ReviewGuidelines| Help us with reviews]] so that more packages can be included. You can find a list of packages currently needing review in the [https://bugzilla.redhat.com/show_bug.cgi?id=1817424 Tracker Bug].
In case you are having trouble running Fedora on a mobile device. Join one of the communication channels to see if anyone can help.
 
== Getting Involved ==
 
If you are interested in this SIG and want to help out, join one of the communication channels and express your interest. Some examples of ways you can 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 [https://pagure.io/fedora-mobility/issues Fedora Mobility issue tracker]. Or of course you can contribute by packaging them yourself.
* '''Reviewers:''' People able to do [[Packaging/ReviewGuidelines| package reviews]] can find a list of packages currently needing review in the [https://bugzilla.redhat.com/show_bug.cgi?id=1817424 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 [https://bugzilla.redhat.com/show_bug.cgi?id=1817424 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 [https://bugzilla.redhat.com/show_bug.cgi?id=1817424 Tracker Bug].
* '''Bugs:''' Become a [[BugZappers| BugZapper]] and help us with Fedora Mobility related bugs.
* '''Bugs:''' Become a [[BugZappers| 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.
* '''Documentation:''' Keeping Wiki pages and documentation up to date.
There are no skill requirements to join the SIG, interest is the most important.
== Getting started ==
=== Supported devices ===
The list of devices we're planning to initially support are as follows:
* [https://fedoraproject.org/wiki/Architectures/ARM/PinePhone Pine64 Pinephone]
* [https://fedoraproject.org/wiki/Architectures/ARM/PinePhonePro Pine64 PinePhone Pro]
* [https://fedoraproject.org/wiki/Architectures/ARM/PineTab Pine64 Pinetab]
* [https://fedoraproject.org/wiki/Architectures/ARM/Librem5 Purism Librem 5]
We will review other devices as opportunity and interest arises, if you are capable and interested in adding support for other devices do reach out or file a RFE in the [https://pagure.io/fedora-mobility/issues Fedora Mobility issue tracker] with details of how you can assist in adding support for the new device.


== Current Status ==
=== Where to get Images ===


Fedora Mobility is moving forward. A decent amount of mobile packages are now available (or will be available, once they are reviewed) in Fedora 33 (rawhide). Packages include...
Nightly builds can be found on [ftp://pine.warpspeed.dk/nightly/pinephone FTP] which are released and rebuilt every night. These are currently based on Minimal images of (usually) the latest release of Fedora. Upon a new release of Fedora, it may take some time to get these changes into the nightly.
* A functional touch desktop environment, phosh.
 
Due to the nature of the nightly builds, there is no guarantee about expected system stability.
 
There are images for both Phosh and Plasma-Mobile in the Nightlies repo.
 
=== Phosh Environment DNF Group ===
 
Just like there are [https://docs.fedoraproject.org/en-US/fedora/f34/system-administrators-guide/package-management/DNF/#sec-Packages_and_Package_Groups 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.
 
[https://developer.puri.sm/Librem5/Software_Reference/Environments/Phosh.html Phosh] is a '''Pho'''ne '''Sh'''ell developed by [https://puri.sm/ Purism]. It is based on [https://en.wikipedia.org/wiki/GNOME 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.
 
=== 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 compatible touchscreen keyboard, squeekboard.
* That's it for now, really. We need more help!
* A Calling application for making/receiving phone calls, [https://source.puri.sm/Librem5/calls Calls]
* Numerous other Fedora applications such as Calendar, Maps, Contacts etc
 
Plasma-Mobile is now also available for the PinePhone, with all Gear apps ported.
 
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 [https://copr.fedorainfracloud.org/coprs/njha/mobile/ Copr]. Work is done to get all patches upstreamed. You can find an overview of packages that use downstream patches (and what they patch) [[Mobility/patched_applications|here]].
 
=== Reporting Bugs ===
 
We have a few different places to report bugs and request features:
* For bugs in packages we use the [https://bugzilla.redhat.com/enter_bug.cgi?classification=Fedora Fedora package bugzilla]. Please add the [https://bugzilla.redhat.com/show_bug.cgi?id=1817424 Tracker Bug] as a blocking bug to the bug report so we're aware the issue relates to Mobility.
* For issues with the images, new package requests or RFEs we use the [https://pagure.io/fedora-mobility/issues Fedora Mobility issue tracker].
 
== Future plans ==
 
=== Roadmap to Fedora Spin ===
 
The group is currently working on getting an official [https://spins.fedoraproject.org/ 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.


== Future ==
=== Official Kernel with Networking ===


This section used to have a bunch of no-longer-existing things like MeeGo and championing the rise of ARM as a supported Fedora arch (oh hey, that one actually happened). Now it does not.
The builds are currently reliant on a custom kernel built by [https://megous.com/git/linux/log/?h=pp-5.17 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.
 
=== 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, [https://imgfac.org/ Image Factory] will be used to generate the PinePhone images.
 
Currently there is no Mobility-specific kickstart file to use with Image Factory yet.
 
== Repositories ==
 
Available code is being worked on and linked to on [https://gitlab.com/fedora/sigs/mobility/ Fedora Mobility Special Interest Group Gitlab].


== Related Fedora projects ==
== Related Fedora projects ==


* The [[Architectures/ARM|ARM]] architecture project.
* The [[Architectures/ARM|ARM]] architecture project.
== Members ==
* Leigh Griffin - @lgriffin
* Eric Curtin - @ecurtin
* Justin - @Justinzobel
* Kevin Fenzi - @nirik
* Markus Rathgeb - @maggu2810
* Niko - @nikodunk
* Tor - @Torbuntu
* alho2 - @alho2


[[Category:SIGs]]
[[Category:SIGs]]
[[Category:Fedora special-interest groups]]
[[Category:Fedora special-interest groups]]

Latest revision as of 19:01, 29 April 2024

Some parts of this wiki may not be up to date. We are working on updating it.

We are looking for people to join the SIG.

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.

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.

Communication

We communicate in the usual Fedora channels.

There currently is no bridge set up between matrix and the other channels.

Getting help

In case you are having trouble running Fedora on a mobile device. Join one of the communication channels to see if anyone can help.

Getting Involved

If you are interested in this SIG and want to help out, join one of the communication channels and express your interest. Some examples of ways you can 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.
  • Documentation: Keeping Wiki pages and documentation up to date.

There are no skill requirements to join the SIG, interest is the most important.

Getting started

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 are 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.

Where to get Images

Nightly builds can be found on FTP which are released and rebuilt every night. These are currently based on Minimal images of (usually) the latest release of Fedora. Upon a new release of Fedora, it may take some time to get these changes into the nightly.

Due to the nature of the nightly builds, there is no guarantee about expected system stability.

There are images for both Phosh and Plasma-Mobile in the Nightlies repo.

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.

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

Plasma-Mobile is now also available for the PinePhone, with all Gear apps ported.

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.

Reporting Bugs

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

Future plans

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.

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.

Repositories

Available code is being worked on and linked to on Fedora Mobility Special Interest Group Gitlab.

Related Fedora projects

  • The ARM architecture project.

Members

  • Leigh Griffin - @lgriffin
  • Eric Curtin - @ecurtin
  • Justin - @Justinzobel
  • Kevin Fenzi - @nirik
  • Markus Rathgeb - @maggu2810
  • Niko - @nikodunk
  • Tor - @Torbuntu
  • alho2 - @alho2