From Fedora Project Wiki

 
(5 intermediate revisions by 2 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 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].
'''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 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.
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 {{fpchat|#fedora-meeting}} on Libera.chat on the second Monday of each month. See: [https://meetbot.fedoraproject.org/sresults/?group_id=fedora_mobility_sig&type=team]


== Communication ==
== Communication ==
Line 21: Line 17:
There currently is no bridge set up between matrix and the other channels.
There currently is no bridge set up between matrix and the other channels.


== Getting Help and Getting Involved ==
== 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.


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:
== 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.
* '''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].
* '''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].
Line 30: Line 30:
* '''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.
* '''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.
* '''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]


== Current Status ==
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.
 
=== Where to get Images ===
 
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.
 
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.
 
=== Current Status ===


Fedora Mobility has a reasonable amount of mobile focused packages available in Fedora Rawhide. Packages groups include:
Fedora Mobility has a reasonable amount of mobile focused packages available in Fedora Rawhide. Packages groups include:
Line 41: Line 63:
Plasma-Mobile is now also available for the PinePhone, with all Gear apps ported.
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.
Fedora recently added support for building aarch64 FlatPaks so we will 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]].
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]].


== Supported devices ==
=== Reporting Bugs ===
The list of devices we're planning to initially support are as follows:
* [https://fedoraproject.org/wiki/Architectures/ARM/PinePhone Pine64 Pinephone]
* 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're 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.
== Reporting Bugs ==
We have a few different places to report bugs and request features:
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 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].
* For issues with the images, new package requests or RFEs we use the [https://pagure.io/fedora-mobility/issues Fedora Mobility issue tracker].


== Related Fedora projects ==
== Desktop environments ==
 
* The [[Architectures/ARM|ARM]] architecture project.


Several option are available for mobile capable desktop environments. Phosh is the default environment for and most well supported. Plasma mobile images are also available on the FTP server. For Gnome-mobile-shell there is a copr repository included but is currently out dated.


= Where to get Images =
=== Phosh Environment DNF Group ===


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.
Just like there are [https://docs.fedoraproject.org/en-US/fedora/f40/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.


Note that while both builds somewhat deviate in terms of features and ''goodies'', both provide at least basic functionality.
[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.
 
== Repositories ==
 
Available code is being worked on and linked to on [https://gitlab.com/fedora/sigs/mobility/ Fedora Mobility Special Interest Group Gitlab].
 
== Nightly Builds ==
 
The builds on [ftp://pine.warpspeed.dk/nightly/pinephone FTP] are released and rebuilt every night (hence the "nightly"). These are currently based on Minimal images, and are built for both F36 and F37(Rawhide).
 
Due to the nature of the nightly builds, there is no guarantee about expected system stability.
In general the F36 images should break less often as they are based on stable F36 branch, where the
F37 (Rawhide) branch are more bleeding edge - you get lots more updates every day, and failures happens.


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


= Roadmap to Fedora Spin =
=== 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.
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.


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


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 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.
Line 95: Line 95:
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.
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 ===


== Phosh Environment DNF Group ==
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.


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.
Currently there is no Mobility-specific kickstart file to use with Image Factory yet.


[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.
== Repositories ==


Available code is being worked on and linked to on [https://gitlab.com/fedora/sigs/mobility/ Fedora Mobility Special Interest Group Gitlab].


== Official Image Infrastructure ==
== Related Fedora projects ==


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.
* The [[Architectures/ARM|ARM]] architecture project.
 
Currently there is no Mobility-specific kickstart file to use with Image Factory yet.


== Members ==
== Members ==
Line 119: Line 119:
* Tor - @Torbuntu
* Tor - @Torbuntu
* alho2 - @alho2
* alho2 - @alho2
 
* Tomi Lähteenmäki - @lihis
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.
 
 
 


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

Latest revision as of 12:30, 1 May 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.

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 will 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:

Desktop environments

Several option are available for mobile capable desktop environments. Phosh is the default environment for and most well supported. Plasma mobile images are also available on the FTP server. For Gnome-mobile-shell there is a copr repository included but is currently out dated.

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.

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
  • Tomi Lähteenmäki - @lihis