Skip to content

tchx84/flathub-mobile

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 

Flathub On Mobile

If you are looking forward to a OSTree/Flatpak/GNOME community-driven phone OS, that makes two of us but, how far are we?

Well, there are multiple projects working on the necessary technology, e.g. Pinephone (hardware), PostmarketOS (sofware), Librem (both), and others. To my knowledge, only Fedora on the Pinephone group is considering such goal but, are our Flatpak applications ready?

This weekend project aims to provide a bit more clarity.

Project

Given a refurbished Moto G4 Play phone and a custom postmarketOS image containing only Phosh, Terminal and Flatpak, how close can I get to my regular phone workflow?

Criteria

  1. Built with GTK and other GNOME technologies.
  2. Main features working on a real mobile device.
  3. Available on flathub.

Evaluation

AppId Category Issues Notes
org.gnome.Epiphany Internet Check videos performance
org.gnome.Geary Internet Won't fit in screen Reduce content min-width
org.librehunt.Organizer Documents
org.gnome.Documents Documents Won't start Reduce content min-width
org.gnome.Evince Documents Won't fit in screen Reduce content min-width and port to GtkFileChooserNative
org.gnome.Fractal Social
re.sonny.Tangram Social Won't fit in screen Reduce headerbar min-width
uk.co.ibboard.cawbird Social
com.github.bleakgrey.tootle Social Won't respond
org.gnome.clocks Information
org.gnome.Weather Information Won't fit in screen
org.gabmus.gfeeds Information
org.gnome.Calendar Information Won't fit in screen Not touchscreen friendly and reduce headerbar min-width
org.gnome.eog Image Won't fit in screen Reduce headerbar min-width
org.gnome.Lollypop Audio
de.haeckerfelix.Shortwave Audio
org.gnome.Podcasts Audio
org.gnome.SoundRecorder Audio
com.github.Johnn3y.Forklift Video
org.gnome.gitlab.YaLTeR.VideoTrimmer Video Won't show file chooser Works with GtkFileChooser downstream patches
io.github.celluloid_player.Celluloid Video
org.gnome.Cheese Video Won't fit in screen Reduce controls min-width
org.gabmus.notorious Utilities
com.uploadedlobster.peek Utilities Won't fit in screen Port to GtkFileChooserNative
org.gnome.Calculator Utilities
org.gnome.Contacts Utilities
org.gnome.Maps Utilities
com.github.tchx84.Flatseal Utilities
com.github.bilelmoussaoui.Authenticator Utilities
de.haeckerfelix.Fragments Utilities Won't fit in screen Port to GtkFileChooserNative
com.frac_tion.teleport Utilities Works on master
dev.tchx84.Portfolio Utilities

Missing on Flathub

AppId Category Issues Notes
Screenshot Utilities Only available on nightly
Flashlight Utilities Can't find it anywhere
Usage Utilities Only available on nightly

Common pain points

Issue Description Blocker Notes
Won't fit in screen The application window won't shrink enough to fit inside the device screen, or main features rely on GTK widgets that won't shrink YES A few attempts to fix GtkFileChooser, both for EndlessOS and Librem. I authored EndlessOS fixes,so I revived these here
Small popovers Using popovers for menu options works great in the desktop but requires too much dexterity on small devices NO
Buttons in the headerbar Main features require users to use the secondary hand which occludes the content and it feels awkward NO

Workflows

Workflow Description Supported Available Missing Notes
Developer Develop Flatpak applications YES Terminal Flatpak Develop on computer, build on the phone, e.g. using ssh
Adopter Interact with developers and help testing applications YES Epiphany Fractal Notorious Flatseal
Enthusiast Situational use and help promote the vision YES GFeeds Lollypop Shortwave Podcasts These applications are great examples
Regular Personal use for basic tasks NO Portfolio Clocks Calculator Contacts SoundRecorder Screenshot Documents Cheese Calendar
Daily Personal use for all tasks NO Organizer Forklift Cawbird Authenticator Maps Usage Teleport Celluloid Geary Evince EoG Flashlight Tangram Tootle Weather Peek Fragments VideoTrimmer

NOTE: Each workflow requires the previous workflow to be supported.

NOTE: This reflects my workflows, yours might differ, and that's OK.

Low-hanging fruits

  1. Use GtkFileChooserNative for portal support and, potentially, benefitting from downstream GTK patches.
  2. Extra padding on menu items (see this example).
  3. Whenever possible, reduce arbitrary width-requests to 360.

Something missing?

If you have any suggestion just send a PR to this repo.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published