Size: 31494
Comment: Marked Hildon and GPE as dead projects
|
Size: 44618
Comment: additions to Applications Needed for Mobile Use
|
Deletions are marked like this. | Additions are marked like this. |
Line 9: | Line 9: |
Debian is the universal operating system. Thus, it needs to run on mobile devices. This wiki page is a tool to help bring Debian to mobile platforms. It would be great if Debian could run on many kinds of mobile devices: iPhones, Android capable HW, Windows Mobile HW, tablets, etc. The software should allow dual booting, into both Debian and any software that came with the hardware. |
Debian is the universal operating system. Thus, it should run on mobile devices. This wiki page is a tool to help bring Debian to mobile platforms. It would be great if Debian could run on many kinds of mobile devices: iPhones, Android capable HW, Windows Mobile HW, tablets, but this is very unlikely to happen anytime soon for the majority of devices. Devices built to run FLOSS stacks are more promising alternatives, for example PinePhone and [[Librem5|Librem 5]]. |
Line 19: | Line 19: |
Debian might benefit from having its own User Interface, or UIs, based on progression from the desktop Debian UIs - ex, GNOME or KDE. It would be great if the GNOME, KDE and other GUI communities could come to agreement on a common UI for Debian, to save unnecessary duplication of development effort, both of the Debian UI, and application software for Debian. Also to save the users from having to learn unnecessary extra UIs. | Debian might benefit from having its own User Interface, or UIs, based on progression from the desktop Debian UIs - ex, GNOME or KDE. It would be great if the GNOME, KDE and other GUI communities could come to agreement on a common UI for Debian, to save unnecessary duplication of development effort, both of the Debian UI, and application software for Debian. |
Line 39: | Line 39: |
Thanks for reading. Thanks for thinking. Thanks for all contributions you make. Let's all work together to enable Debian to fulfil its promise as "The Universal Operating System". :) | Thanks for reading. Thanks for thinking. Thanks for all contributions you make. Let's all work together to enable Debian to fulfil its promise as "The Universal Operating System". == Use of the Debian bug tracking system == Bugs related to Debian on mobile devices may have usertags with the user `debian-mobile@lists.debian.org`. These usertags are currently defined: * [[https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=user-interface;users=debian-mobile@lists.debian.org|user-interface]]: mobile user interface related bugs, e.g. intents to package UI software or necessary changes of existing UI to improve user experience on small screens or styles input etc. |
Line 44: | Line 49: |
= Meetings = * [[https://debconf18.debconf.org/talks/2-debian-on-mobile-devices/|DebConf18 BoF]]: [[/BoF201807#Agenda|agenda]], [[/BoF201807#Notes|notes]] * [[https://debconf17.debconf.org/talks/78/|DebConf17 BoF]]: [[/BoF201708#Agenda|agenda]], [[/BoF201708#Notes|notes]] * [[http://penta.debconf.org/dc12_schedule/events/947.en.html|DebConf12 BoF]]: [[https://lists.debian.org/1345373756.2710.84.camel@chianamo|notes]], [[http://meetings-archive.debian.net/pub/debian-meetings/2012/debconf12/high/947_Debian_mobile_BoF.ogv|video]] |
|
Line 52: | Line 63: |
|| Sicelo Mhlongo || Sicelo || Nokia N900 || Help with testing || Working Debian on N900 with UMTS/GPRS access || | || [[SiceloMhlongo|Sicelo Mhlongo]] || Sicelo || Nokia N900, Motorola Droid 4 || Help with testing and documentation || Working Debian on N900 and Droid 4 with UMTS/GPRS access and voice calls || |
Line 55: | Line 66: |
|| [[JonasSmedegaard]] || jo0nas || Openmoko !FreeRunner * 2, Nokia N900, !GeeksPhone One, Samsung Galaxy S3 || Improve ways to bootstrap, test || more stuff packaged in mainline Debian - with sensible defaults || | || [[JonasSmedegaard]] || jo0nas || Purism Librem 1 rev. C, Openmoko !FreeRunner, Nokia N900, misc. Samsung Galaxy models || Improve ways to bootstrap, test || more stuff packaged in mainline Debian - with sensible defaults || |
Line 62: | Line 73: |
|| David Derby || wicket64 || Nokia N900, Nokia N950, HP !TouchPad and soon Neo900 (pre-ordered) || Continue to improve [[https://github.com/dderby/debian900|DebiaN900]] scripts || To be able to fully replace Maemo with Debian as my everyday mobile OS || | || David Derby || dderby (freenode) || N900, N950, Droid 4, Nexus 5, PinePhone prototype shipping soon || --(Continue to improve [[https://github.com/dderby/debian900|DebiaN900]] scripts)-- Contribute to Maemo Leste || Mainline Linux running well on a variety of phones || || Martin || xmpp:debacle@debian.org || [[InstallingDebianOn/GPD/Pocket|GPD Pocket]],<<BR>>[[Librem5]] dev board,<<BR>>[[PinePhone]] [[Mobian]] edition,<<BR>>hopefully soon: Pyra || play with Debian on that devices || run unchanged Debian on that devices || || [[Karl Goetz|kgoetz]] || Kamping_Kaiser (rarely on irc.debian, usually free node) || N900, 2x Openmoko !FreeRunner, various android devices || Test things || An N900 experience on newer devices and newer Debian || || Ida Boustead (HezuKame) || No IRC, but hezukame@gmail.com || Samsung Galaxy S8+ (SM-G955F) Exynos8895 || Port Debian to my phone and maintain it. || To be able to fully replace Android with Debian as my main OS on my phone. || || Danny Colin || sdk || Pinephone Ubports CE / Pinephone Mobian CE || Bug hunting || Using Debian on Pinephone as my daily driver || || Guido Günther || agx_ || [[Librem5]] / N900 / WeTab || Work towards using Debian daily on my mobile devices || || || [[Russell Coker]] || || [[Librem5]] || Work towards using Debian daily on my mobile devices || To have lots of Debian applications work well at lower resolution and lower screen size || |
Line 73: | Line 90: |
* [[Teams/DebianOnMobile|DebianOnMobile team]]: Package software for Linux based mobile phones (currently focused around GNOME/Phosh based stack) | |
Line 81: | Line 98: |
* [[http://cascardo.eti.br/blog/GNU_on_Smartphones_part_II/|GNU on Smartphones]] | * [[https://cascardo.eti.br/blog/GNU_on_Smartphones_part_II/|GNU on Smartphones]] |
Line 83: | Line 100: |
* [[https://www.thanassis.space/android.html|Freeing my tablet]] * [[http://whiteboard.ping.se/Android/Debian|How to run Debian or Ubuntu GNU/Linux on your Android]] * [[https://www.xda-developers.com/guide-installing-and-running-a-gnulinux-environment-on-any-android-device/|Installing and Running a GNU/Linux Environment on Any Android Device]] * [[HowtoDebianInAndroid|Simple HowTo Debian in Android HTC G1 without chroot (Native)]] * [[http://julianwi.square7.ch/debian-on-smartphone/|Install debian on a smartphone and get the text console working]] |
|
Line 120: | Line 142: |
There are numerous [[#software-ui|existing FLOSS UXen]] for mobile devices. As the universal OS, Debian should aim to support several of these. | There are numerous [[#software-ui|existing FLOSS user experiences]] for mobile devices. As the universal OS, Debian should aim to support several of these. |
Line 150: | Line 172: |
* [[https://openjailbreak.org/|OpenJailbreak]]: jailbreaking iOS devices | * [[https://github.com/OpenJailbreak/|OpenJailbreak]], [[https://github.com/axi0mX/ipwndfu|ipwndfu]], [[https://theodyssey.dev/|Odyssey]]: jailbreaking iOS devices |
Line 154: | Line 176: |
* Other: [[https://redmine.replicant.us/projects/replicant/wiki/RootingDevices|Replicant guide to rooting Android devices]] | |
Line 161: | Line 184: |
* More on the ChrootOnAndroid page. | |
Line 167: | Line 191: |
* [[DebianPackage:android-tools-fastboot|Fastboot]]: flasher and memory booter for devices based on Android | * [[DebianPackage:fastboot|Fastboot]]: flasher and memory booter for devices based on Android |
Line 169: | Line 193: |
* [[https://github.com/linux-rockchip/rkflashtool|rkflashtool]]: flasher for Rockchip based devices * [[https://github.com/boundarydevices/imx_usb_loader|imx_usb_loader]]: flash devices using Freescale i.MX5/i.MX6 and Vybrid SoCs via the Serial Download Protocol (SDP) |
|
Line 174: | Line 200: |
* [[https://blog.fossencdi.org/nonfree-firmware-android.html|firmwares_nonfree]]: script to download and install proprietary firmware for Android devices | |
Line 180: | Line 207: |
* [[https://github.com/msm8916-mainline/lk2nd/|lk2nd]]: bootloader supporting some Qualcomm SoCs | |
Line 192: | Line 220: |
* experimental [[https://github.com/yuq/mesa-lima|mesa]]/[[https://github.com/yuq/linux-lima|Linux]] drivers in progress * [[https://notabug.org/cafe/chai|Chai]]: Mali T-series |
|
Line 194: | Line 224: |
* [[https://github.com/openpvrsgx-devgroup|OpenPVRSGX Linux Driver Group]]: An effort to lay common foundation to make PVR/SGX work without hacks on OMAP34xx, OMAP36xx, AM335x and potentially OMAP4, OMAP5. ([[https://www.pyra-handheld.com/pipermail/kernel/2019-February/003094.html|Related ML thread]]) | |
Line 196: | Line 227: |
* [[https://github.com/laanwj/etna_viv|Etnaviv]]: Vivante GCxxx GPUs | * [[https://github.com/etnaviv]]: Vivante GCxxx GPUs |
Line 203: | Line 234: |
* [[https://swiftshader.googlesource.com/SwiftShader|SwiftShader]]: a high-performance CPU-based implementation of the OpenGL ES and Direct3D 9 graphics APIs12. Its goal is to provide hardware independence for advanced 3D graphics. ([[https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=909156|RFP]]) | |
Line 215: | Line 247: |
* [[https://anbox.io/|Anbox]]: a way to run Android apps on GNU/Linux distros. | |
Line 217: | Line 250: |
* [[https://developer.chrome.com/apps/getstarted_arc|ARC]]: a way to run Android apps on Chrome OS. [[https://sites.google.com/a/chromium.org/dev/chromium-os/chrome-os-systems-supporting-android-apps|Further information]]. [[https://chromium.googlesource.com/arc/arc/ |Source code]]. * [[https://archon-runtime.github.io/|ARChon]]: a way to run Android apps under the Chrome web browswer. Source code: [[https://github.com/vladikoff/chromeos-apk|1]], [[https://bitbucket.org/vladikoff/archon|2]]. [[https://packages.debian.org/unstable/chromium|Chromium for Debian]]. * [[http://pakesson.se/2011/05/16/paralleldroid/|ParallelDroid]]: a way to run Android apps on desktop Linux in an X11 window. |
|
Line 218: | Line 254: |
* [[https://github.com/libhybris/libhybris|Hybris/libhybris]]: allows the use of non-free binary blobs (for example [[https://sailfishos.org/develop/hadk/|Sailfish OS Hardware Adaptation Development Kit]]) that were compiled against the bionic Android libc on glibc based systems. Useful to avoid having to develop open source drivers and possibly for reverse engineering binary blobs. * [[https://www.collabora.com/news-and-blog/blog/2019/04/01/running-android-next-to-wayland/|SPURV]]: a way to run Android apps on desktop Linux using Wayland |
|
Line 224: | Line 262: |
* [[http://www.enlightenment.org/|Enlightenment]]/Illume: [[DebianPackage:e17|E17 packaged]] by the [[PkgE|pkg-e]] team | * [[http://www.enlightenment.org/|Enlightenment]]: Provides "Illume", which optimises the interface for mobile devices. [[DebianPackage:enlightenment|Packaged]] by the [[PkgE|pkg-e]] team. Previously packaged as [[DebianPackage:e17|E17]] (stretch and earlier). |
Line 228: | Line 266: |
* [[WikiPedia:Hildon]]: [[https://wiki.gnome.org/Attic/Hildon|Main website]], [[https://github.com/community-ssu|Maemo CSSU repositories]], [[https://github.com/Cordia|Cordia]] (contains some stuff for GTK3) [[https://talk.maemo.org/showthread.php?t=96800|Latest GTK3 work]] ([[https://anonscm.debian.org/gitweb/?p=pkg-maemo/hildon-desktop.git|old Debian packages]]) | |
Line 229: | Line 268: |
* [[https://developer.tizen.org/development/guides/native-application/user-interface|Tizen UI]]: Based on Enlightenment and EFL, supports native and web applications. Source code: [[https://review.tizen.org/git/?a=project_list;pf=platform/core/uifw|1]] [[https://review.tizen.org/git/?a=project_list;pf=framework/uifw|2]] * [[https://wiki.merproject.org/wiki/Nemo/Glacier|Glacier]]: Replacement UI for Nemo. [[https://github.com/nemomobile-ux|Source code]]. * [[https://github.com/julianwi/fbkeyboard|fbkeyboard]]: Screen keyboard for linux text console. Useful on devices without hardware keyboard. * [[https://github.com/postmarketOS/osk-sdl|osk-sdl]]: On-Screen-Keyboard based on SDL2 Discontinued: * [[http://gpe.linuxtogo.org/|GPE]]: [[https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=727163|removed from Debian]], suitable for stylus-based devices |
|
Line 231: | Line 278: |
Discontinued: * [[WikiPedia:Hildon]]: [[https://wiki.gnome.org/Attic/Hildon|Main website]], [[https://gitorious.org/community-ssu|Maemo CSSU repositories]], [[https://github.com/Cordia|Cordia]] (contains some stuff for GTK3) ([[https://anonscm.debian.org/gitweb/?p=pkg-maemo/hildon-desktop.git|old Debian packages]]) * [[http://gpe.linuxtogo.org/|GPE]]: [[https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=727163|removed from Debian]], suitable for stylus-based devices |
|
Line 238: | Line 280: |
== Applications == | == Application Repositories == |
Line 243: | Line 285: |
* [[https://wiki.postmarketos.org/wiki/Applications_by_category|postmarketOS]]: applications list written by the postmarketOS community == Applications Suitable for Mobile Use == * [[DebianPackage:Empathy]] supports voice calls and short messages via [[DebianPackage:telepathy-ring]] * [[DebianPackage:Epiphany-browser]] is a web browser with a simple interface for GNOME, used by default on the [[Librem5]] * [[DebianPackage:Geary]] is a simple MUA for GNOME, used by default on the [[Librem5]] * [[DebianPackage:Kgx|Kings Cross]] is a simple GNOME terminal designed for small screens and touch usage, used by default on [[Librem5]] == Applications Needed for Mobile Use == * Calendar (editing and displaying) with web backend for distributed use * Note taking with web backend (like Google Keep) * Mastodon Client * Matrix Client (Element should work but it's not in Debian yet see [[Matrix]]) * Remote desktop clients (DebianPackage:Spice-client-gtk crashes on Librem5) * OSM map viewer with offline support and use of vector data, e.g. [[https://bugs.debian.org/986232|Organic Maps]] * Jabber/XMPP client with better support for small screens than the current [[https://packages.debian.org/source/experimental/dino-im|Dino with libhandy patches]] |
|
Line 250: | Line 310: |
* [[http://shr-project.org/|SHR]]: distribution for smartphones based on !OpenEmbedded and FSO software |
* [[https://ubports.com/|UBports]]: community continuation of Ubuntu for mobile devices |
Line 254: | Line 314: |
* [[http://www.defora.org/|DeforaOS]]: releases Debian packages * [[http://www.qalee.org/|Qalee]] |
|
Line 260: | Line 318: |
* [[http://developer.palm.com/|webOS]]: mobile distribution based on HTML/JS, !OpenEmbedded, backed by HP * [[http://www.webos-ports.org/|LuneOS]]: open source successor for webOS * [[http://webosose.org/|webOS OSE]]: open source successor for webOS from LG * [[http://www.mozilla.org/en-US/firefoxos/|FirefoxOS]]: Mozilla project to create an web-based OS * [[https://gerda.tech/|GerdaOS]]: aims to liberate !KaiOS, the proprietary !FirefoxOS derivative * [[https://wiki.gentoo.org/wiki/Project:Android|Gentoo on Android]]: Gentoo project to run Gentoo in a prefix on Android * [[http://merproject.org/|Mer]]: distribution aimed at re-use by device manufacturers * [[https://nemomobile.net/|Nemo]]: mobile distribution based on Mer (RPM), !MeeGo Handset, Qt * [[https://wiki.maemo.org/Cordia|Cordia]]: discontinued mobile distribution based on Mer (RPM), Maemo Hildon stack ported to newer GTK+/etc * [[http://seadot.org/|Seadot]]: mobile distribution based on Mer, successor for the !WeTab OS * [[http://sailfishos.org/|SailfishOS]]: commercial distro based on Mer * [[https://www.postmarketos.org/|postmarketOS]]: [[https://alpinelinux.org/|Alpine Linux]] derivative aimed at 10 year life-cycle for smartphones * [[https://maemo-leste.github.io/|Maemo Leste]]: aims to provide a free Maemo experience on mobile phones and tablets, built on top of Devuan Ascii (Debian Stretch) * [[https://www.pureos.net/|PureOS]]: is a derivative of Debian that will work on Librem5 the new device of [[https://puri.sm|Purism]] will be released at 2019 * [[https://devuan.org/|Devuan]]: a fork of Debian, optimised for use without systemd. Provides images for a variety of [[https://files.devuan.org/devuan_ascii/embedded/|mobile and embedded devices]] built with the [[https://github.com/dyne/arm-sdk|arm-sdk]]. * [[https://mobian-project.org/|Mobian]]: working on getting Debian on PinePhone and similar devices, with tweaks and configuration in an external repo * [[https://www.nixos.org/|NixOS]]: OS built on the Nix declarative package manager, has a [[https://mobile.nixos.org/|mobile effort]]. * [[https://jingos.com/|JingOS]]: Ubuntu-based Linux OS that mimics iPadOS and is designed for (x86?) tablets * [[https://fydeos.com/|FydeOS]]: Chinese-centric cloud based OS mimicking ChromeOS * [[http://expidusos.com/|ExpidusOS]]: OS for the Pinephone using the XFCE4 DE (based on Void Linux) * [[https://dahliaos.io/|dahliaOS]]: OS that supports Zircon and Linux kernels, with a Flutter-based UI * [[https://capyloon.org/|Capyloon]]: Spiritual successor of FirefoxOS, [[https://capyloon.org/linuxphones.html|ported to mainline linux]] === Android-based === |
|
Line 264: | Line 348: |
* [[http://www.cyanogenmod.org/|CyanogenMod]]: a commercial Android derivative | * CyanogenMod: a commercial Android derivative * [[http://lineageos.org/|LineageOS]]: renamed version of CyanogenMod community |
Line 267: | Line 352: |
* [[http://developer.palm.com/|webOS]]: mobile distribution based on HTML/JS, !OpenEmbedded, backed by HP * [[http://www.webos-ports.org/|LuneOS]]: open source successor for webOS * [[http://www.mozilla.org/en-US/firefoxos/|FirefoxOS]]: Mozilla project to create an web-based OS * [[https://wiki.gentoo.org/wiki/Project:Android|Gentoo on Android]]: Gentoo project to run Gentoo in a prefix on Android * [[http://merproject.org/|Mer]]: distribution aimed at re-use by device manufacturers * [[http://wiki.merproject.org/wiki/Nemo#Nemo_Mobile|Nemo]]: mobile distribution based on Mer (RPM), !MeeGo Handset UX, Qt * [[https://wiki.maemo.org/Cordia|Cordia]]: discontinued mobile distribution based on Mer (RPM), Maemo Hildon stack ported to newer GTK+/etc * [[http://seadot.org/|Seadot]]: mobile distribution based on Mer, successor for the !WeTab OS * [[http://sailfishos.org/|SailfishOS]]: commercial distro based on Mer |
* [[https://halium.org/|Halium]]: group maintenance of Android parts that cannot be added to normal GNU/Linux distributions, as well as compatibility shims. This includes proprietary blobs as well as Android forks of the Linux kernel. * [[https://grapheneos.org/|GrapheneOS]]: successor of CopperheadOS, a hardened fork of AOSP * [[https://calyxos.org/|CalyxOS]]: AOSP fork focussed on privacy * [[https://projectsandcastle.org/|Project Sandcastle]]: running Linux and Android on Apple devices. * [[https://divestos.org/|DivestOS]]: LineageOS fork "divested from the norm" |
Line 288: | Line 368: |
[[https://wiki.cyanogenmod.org/w/Devices|CyanogenMod]] ([[https://wiki.cyanogenmod.org/w/Unofficial_Ports|unofficial ports]]) | [[https://wiki.lineageos.org/devices/|LineageOS]] |
Line 290: | Line 370: |
[[http://webos-ports.org|webOS]] [[https://wiki.ubuntu.com/Touch/Devices|Ubuntu Touch]] |
[[http://webos-ports.org/wiki/Devices|webOS]] [[https://devices.ubuntu-touch.io/|Ubuntu Touch]] |
Line 294: | Line 374: |
[[https://wiki.postmarketos.org/wiki/Devices|postmarketOS]] ([[https://wiki.postmarketos.org/wiki/Device-Wishlist|wishlist]]) [[https://asteroidos.org/wiki/porting-status/|AsteroidOS]] [[https://mobile.nixos.org/devices/|NixOS]] [[https://calyxos.org/get/|CalyxOS]] [[https://divestos.org/index.php?page=devices&base=LineageOS|DivestOS]] |
|
Line 305: | Line 390: |
[[http://wiki.cyanogenmod.org/index.php?title=Doc:_porting_intro|CyanogenMod]] | [[https://wiki.lineageos.org/submitting_device.html|LineageOS]] |
Line 312: | Line 397: |
[[https://wiki.postmarketos.org/wiki/Porting_to_a_new_device|postmarketOS]] [[https://asteroidos.org/wiki/porting-guide/|AsteroidOS]] [[https://mobile.nixos.org/porting-guide.html|NixOS]] [[http://docs.halium.org/en/latest/porting/first-steps.html|Halium]] |
|
Line 314: | Line 403: |
||Gemini || Gemini || [[https://github.com/dguidipc/gemini-lk|LK]] || [[https://github.com/gemian/gemini-linux-kernel-3.18|fork]] || Android, [[https://support.planetcom.co.uk/index.php/Linux_Flashing_Guide|Debian]] || blobs in GSM,WiFi,BT, GPS; only BT not working; Android specific [[https://github.com/dguidipc|repo]] || ||Cosmo Communicator || Cosmo_communicator || [[https://github.com/dguidipc/cosmo-lk|LK]] || [[https://github.com/gemian/cosmo-linux-kernel-4.4/|fork]] || Android, [[https://support.planetcom.co.uk/index.php/Linux_for_Cosmo|Debian]], UBPorts || blobs in GSM,WiFi,BT, GPS; only BT not working; UBPorts lacks physical keyboard drivers; CoDI (front display) not supported under Linux; Android specific [[https://github.com/dguidipc|repo]] || |
|
Line 317: | Line 408: |
|| [[http://neo900.org/|Neo900]] || gta04b7 || [[http://projects.goldelico.com/p/gta04-uboot/|u-boot branch]] || Being upstreamed [[http://projects.goldelico.com/p/gta04-kernel/|1]] [[http://elinux.org/N900|2]] || [[http://projects.goldelico.com/p/gta04-rootfs/|Debian]] [[http://shr-project.org/trac/wiki/Devices/GTA04|SHR]] [[http://redmine.replicant.us/projects/replicant/wiki/GTA04|Replicant]] [[http://talk.maemo.org/showthread.php?t=91308|Maemo]] || || || Samsung [[WikiPedia:Samsung_Galaxy_S|Galaxy S]] || galaxysmtd || [[http://redmine.replicant.us/projects/replicant/wiki/S5PC110Bootloader|proprietary, locked]] || [[http://gitorious.org/replicant/kernel_samsung_aries|Replicant]] || [[http://bonedaddy.net/pabs3/log/2012/12/03/debian-mobile/|Debian]] [[https://redmine.replicant.us/projects/replicant/wiki/GalaxySI9000|Replicant]] [[http://www.cyanogenmod.org/devices/samsung-galaxy-s|CyanogenMod]] || blobs sent to !WiFi, BT. [[http://redmine.replicant.us/projects/replicant/wiki/SamsungModemIssues|modem not isolated]]. [[http://forum.xda-developers.com/wiki/Samsung_Galaxy_S_Series|XDA info]] || |
|| --([[http://neo900.org/|Neo900]])-- || gta04b7 || [[http://projects.goldelico.com/p/gta04-uboot/|u-boot branch]] || Being upstreamed [[http://projects.goldelico.com/p/gta04-kernel/|1]] [[http://elinux.org/N900|2]] || [[http://projects.goldelico.com/p/gta04-rootfs/|Debian]] [[http://shr-project.org/trac/wiki/Devices/GTA04|SHR]] [[http://redmine.replicant.us/projects/replicant/wiki/GTA04|Replicant]] [[http://talk.maemo.org/showthread.php?t=91308|Maemo]] || Neo900 project was discontinued || || Samsung [[WikiPedia:Samsung_Galaxy_S|Galaxy S]] || galaxysmtd || [[https://redmine.replicant.us/projects/replicant/wiki/SamsungSerial|proprietary, locked]] || [[https://git.replicant.us/replicant/kernel_samsung_aries|Replicant]] || [[http://bonedaddy.net/pabs3/log/2012/12/03/debian-mobile/|Debian]] [[https://redmine.replicant.us/projects/replicant/wiki/GalaxySI9000|Replicant]] || blobs sent to !WiFi, BT. [[https://redmine.replicant.us/projects/replicant/wiki/NexusSI902xPrivacySecurityEvaluation#Modem-related|modem not isolated]]. [[http://forum.xda-developers.com/wiki/Samsung_Galaxy_S_Series|XDA info]] || |
Line 320: | Line 411: |
|| Samsung [[WikiPedia:Samsung_Galaxy_Note_10.1|Galaxy Note 10.1]] || n8000 || || [[https://github.com/plumpudding/opensgn|OpenSGN]] || [[http://liliputing.com/2013/03/debian-linux-on-the-samsung-galaxy-note-10-1-with-pen-support-video.html|Debian]] [[http://wiki.cyanogenmod.org/w/N8000_Info|CyanogenMod]] [[https://wiki.ubuntu.com/Touch/Devices/n8000|Ubuntu]] || || | || Samsung [[WikiPedia:Samsung_Galaxy_Note_10.1|Galaxy Note 10.1]] || n8000 || || [[https://github.com/plumpudding/opensgn|OpenSGN]] || [[http://liliputing.com/2013/03/debian-linux-on-the-samsung-galaxy-note-10-1-with-pen-support-video.html|Debian]] [[https://wiki.ubuntu.com/Touch/Devices/n8000|Ubuntu]] || || || Samsung Galaxy S3 / Note II || midas ( SHV-E210K/L/S / GT-I9300 / GT-I9305 / GT-N7100 / GT-N7105 ) || [[https://github.com/fourkbomb/u-boot|u-boot branch]] || [[https://blog.forkwhiletrue.me/pages/midas-mainline/|Being mainlined]] || || || |
Line 322: | Line 414: |
|| Nokia [[WikiPedia:Nokia_770_Internet_Tablet|770]] || || || || [[ArmPort/Nokia770DebianSid|Debian]] || || || Nokia [[WikiPedia:Nokia_N800|N800]]/[[WikiPedia:Nokia_N810|N810]] || || || || [[http://wiki.maemo.org/Easy_Debian|Debian]] [[https://wiki.merproject.org/wiki/Adaptation/N8x0|Mer]] || || || Nokia [[WikiPedia:Nokia_N900|N900]] || Rover<<BR>>RX-51 || [[http://elinux.org/N900#U-Boot|u-boot upstream]] || [[http://elinux.org/N900|Being upstreamed]] || [[pkg-n900|Debian]] [[WikiPedia:Maemo]] [[http://shr-project.org/trac/wiki/Devices/NokiaN900|SHR]] [[http://www.nitdroid.com/|NITDroid]] [[https://wiki.merproject.org/wiki/Nemo/Installing#Nokia_N900|Mer]] [[http://www.defora.org/|DeforaOS]] (NetBSD) || || || Nokia [[WikiPedia:Nokia_N9|N9]] || RM-696<<BR>>Lankku || [[http://wiki.maemo.org/Ubiboot|Ubiboot]] [[https://talk.maemo.org/showthread.php?t=94042|N9 Easy Boot]] || [[https://wiki.merproject.org/wiki/N9_Kernel_update_project|N9 Kernel update project]] || [[Mobile/Nokia_N9|Debian]] [[https://en.wikipedia.org/wiki/MeeGo#MeeGo.2FHarmattan|MeeGo 1.2 Harmattan]] [[https://wiki.merproject.org/wiki/Adaptation/N9-N950|Mer]] [[http://www.jollausers.com/2013/12/sailfish-ported-to-n9-mini-tutorial/|Sailfish OS]] || || || Nokia [[WikiPedia:Nokia_N950|N950]] || RM680<<BR>>Dali || [[http://wiki.maemo.org/Ubiboot|Ubiboot]] [[https://talk.maemo.org/showthread.php?t=94042|N9 Easy Boot]] || [[http://elinux.org/N950|N950 being upstreamed]] || [[Mobile/Nokia_N9|Debian]] [[https://en.wikipedia.org/wiki/MeeGo#MeeGo.2FHarmattan|MeeGo 1.2 Harmattan]] [[https://wiki.merproject.org/wiki/Adaptation/N9-N950|Mer]] [[http://www.jollausers.com/2013/12/sailfish-ported-to-n9-mini-tutorial/|Sailfish OS]] || || |
|| Samsung Galaxy S8+ || SM-G955F (Exynos8895) || TBC || TBC || Debian || Work in progress || || Nokia [[WikiPedia:Nokia_770_Internet_Tablet|770]] || SU-18<<BR>>Sputnik || || [[https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/arm/mach-omap1/board-nokia770.c|Mainline board file]] || [[ArmPort/Nokia770DebianSid|Debian]] [[https://web.archive.org/web/20160114184659/https://code.google.com/p/inferno-bin/downloads/detail?name=emu-Linux-arm-fg-20080127&can=2&q=|Inferno]] || || || Nokia [[WikiPedia:Nokia_N800|N800]]/[[WikiPedia:Nokia_N810|N810]] || gagarin/selene || || [[http://elinux.org/N800|Being upstreamed]] || [[http://wiki.maemo.org/Easy_Debian|Debian]] [[https://wiki.merproject.org/wiki/Adaptation/N8x0|Mer]] || || || Nokia [[WikiPedia:Nokia_N900|N900]] || RX-51<<BR>>Rover || [[http://elinux.org/N900#U-Boot|u-boot upstream]] || [[http://elinux.org/N900|Being upstreamed]] || [[pkg-n900|Debian]] [[WikiPedia:Maemo|Maemo 5 (Fremantle)]] [[https://leste.maemo.org/Nokia_N900|Maemo Leste]] [[http://shr-project.org/trac/wiki/Devices/NokiaN900|SHR]] [[http://www.nitdroid.com/|NITDroid]] [[https://wiki.merproject.org/wiki/Nemo/Installing#Nokia_N900|Mer]] [[http://www.defora.org/|DeforaOS]] (NetBSD) [[https://files.devuan.org/devuan_ascii/embedded/|Devuan]] [[https://wiki.postmarketos.org/wiki/Nokia_N900|postmarketOS]] || || || Nokia [[WikiPedia:Nokia_N9|N9]] || RM-696<<BR>>Lankku || [[http://wiki.maemo.org/Ubiboot|Ubiboot]] [[https://talk.maemo.org/showthread.php?t=94042|N9 Easy Boot]] || [[https://wiki.merproject.org/wiki/N9_Kernel_update_project|N9 Kernel update project]] [[http://elinux.org/N9|Being upstreamed]]|| [[Mobile/Nokia_N9|Debian]] [[https://en.wikipedia.org/wiki/MeeGo#MeeGo.2FHarmattan|MeeGo 1.2 Harmattan]] [[https://wiki.merproject.org/wiki/Adaptation/N9-N950|Mer]] [[http://www.jollausers.com/2013/12/sailfish-ported-to-n9-mini-tutorial/|Sailfish OS]] [[https://files.devuan.org/devuan_ascii/embedded/|Devuan]] [[https://leste.maemo.org/Nokia_N9|Maemo Leste]] [[https://wiki.postmarketos.org/wiki/Nokia_N9|postmarketOS]] || || || Nokia [[WikiPedia:Nokia_N950|N950]] || RM-680<<BR>>Dali || [[http://wiki.maemo.org/Ubiboot|Ubiboot]] [[https://talk.maemo.org/showthread.php?t=94042|N9 Easy Boot]] || [[http://elinux.org/N950|Being upstreamed]] || [[Mobile/Nokia_N9|Debian]] [[https://en.wikipedia.org/wiki/MeeGo#MeeGo.2FHarmattan|MeeGo 1.2 Harmattan]] [[https://wiki.merproject.org/wiki/Adaptation/N9-N950|Mer]] [[http://www.jollausers.com/2013/12/sailfish-ported-to-n9-mini-tutorial/|Sailfish OS]] [[https://files.devuan.org/devuan_ascii/embedded/|Devuan]] [[https://leste.maemo.org/Nokia_N950|Maemo Leste]] || || |
Line 329: | Line 422: |
|| Motorola [[WikiPedia:Droid_4|Droid 4 XT894]] || maserati || [[https://github.com/stargo/android_packages_apps_Safestrap/releases/tag/v3.75|Safestrap]] [[https://github.com/tmlind/utagboot|utagboot]] [[https://github.com/tmlind/droid4-kexecboot|kexecboot]]|| [[http://elektranox.org/droid4/|Being upstreamed]] || Android, [[http://muru.com/linux/d4/|Linux]], [[http://elektranox.org/2017/02/0010-droid-4-debian/|Debian]] [[https://files.devuan.org/devuan_ascii/embedded/|Devuan]] [[https://leste.maemo.org/Motorola_Droid_4|Maemo Leste]] [[https://wiki.postmarketos.org/wiki/Motorola_Droid_4_(motorola-maserati)|postmarketOS]] || || | |
Line 331: | Line 425: |
|| LG [[WikiPedia:Nexus 4]] || mako || || || [[http://www.jollausers.com/2014/03/sailfish-os-early-adopters-have-got-their-email-to-go-crazy/|Sailfish OS]] [[http://wiki.cyanogenmod.org/w/Mako_Info|CyanogenMod]] [[Mobile/Ubuntu#Devices|Ubuntu]] || || | || LG [[WikiPedia:Nexus 4]] || mako || || || [[http://www.jollausers.com/2014/03/sailfish-os-early-adopters-have-got-their-email-to-go-crazy/|Sailfish OS]] [[https://wiki.lineageos.org/devices/mako|LineageOS]] [[Mobile/Ubuntu#Devices|Ubuntu]] || || |
Line 335: | Line 429: |
|| Dragonbox [[https://pyra-handheld.com/boards/pages/pyra/|Pyra]] || || || || || will run a custom Debian by default || || || [[https://crimier.github.io/ZeroPhone/|Zero Phone]] || || || || || runs Raspbian by default || || || [[https://puri.sm/shop/librem-5|Librem5]] || || || || Debian and derivatives like PureOS || Will be released at 2019 || || [[https://necunos.com/news/necunos-nc_1-and_ne_1-press-release/|Necunos NC_1]] || || || Being upstreamed || [[https://necunos.com/community/|Maemo Leste, LuneOS, Replicant, Plasma Mobile, postmarketOS, Nemo Mobile]] || Scheduled for release in 2019. || || [[http://wiki.pine64.org/index.php/PinePhone|PinePhone]] || || || [[https://sunxi.org/Pine64#Linux_Kernel|Being upstreamed]] || [[http://wiki.pine64.org/index.php/Project_Anakin#Software_and_OS_Image_Downloads|Arch Linux, AOSC]], [[https://forum.pine64.org/showthread.php?tid=7093&pid=43850|UBPorts, Maemo Leste, postmarketOS, Plasma Mobile]], [[https://mobian-project.org/|Mobian]] || || || Golden Delicious [[http://lists.goldelico.com/pipermail/community/2019-January/001935.html|Pyra Phone]] || GTA15 || || [[http://projects.goldelico.com/p/gta04-kernel/|Being upstreamed]] || Debian-based || || |
|
Line 345: | Line 445: |
= See Also = * http://lists.debian.org/debian-user/2011/03/msg01554.html - "Lets start Debian for Android hw phones" {{{ Let's start the "Debian distro for Android capable hardware phones". What are the first steps we can easily take, to get started on this? 1) Talk about how to do it on this email list. 2) Put something on www.debian.org web page about beginning to work on this project. 3) Create a mailing list for "Debian for Android Hw". 4) Send some thoughts in reply to this email, & to the new mailing list. 5) Make a wiki page for "Debian distro for Android capable hardware phones". - http://wiki.debian.org/DebianOnHandhelds = My motivation: I got an Android capable smartphone/computer a few months ago. - Samsung Intercept, Virgin Mobil, $200, $25/month includes unlimited internet. Of course, I'd like to get a GNU(Linux) distro on it. So, rather than have to piece together something using CyanogenMod & piece a bunch of aps together, I'd just like to have a KUbuntu version to put on there. - Download the ISO, start, 15 minutes later it's all there with all my familiar desktop aps in smartphone version. So, I figure, first step (before getting my KUbuntu), is there needs to be the Debian for Android Hw smartphones distro, for KUbuntu to build on top of. = Ok, well, there you are, folks. I've done my initial part for the project - suggest it get started. So, can some interested Debian individuals please now step it another step forward? Thanks for all the great Debian stuff! :) |
Debian on mobile devices
This page is about tracking every initiative to fully or partially install the system on mobile platforms:
Contents
About
Debian is the universal operating system. Thus, it should run on mobile devices. This wiki page is a tool to help bring Debian to mobile platforms.
It would be great if Debian could run on many kinds of mobile devices: iPhones, Android capable HW, Windows Mobile HW, tablets, but this is very unlikely to happen anytime soon for the majority of devices.
Devices built to run FLOSS stacks are more promising alternatives, for example ?PinePhone and ?Librem 5.
Debian on mobile devices should have GUI capabilities, appropriate to the hardware capabilities.
It would also be great if Debian could run applications written to be native to the original OS for the hardware. This will enable Debian to serve the many people in society who want to easily use those applications.
Debian might benefit from having its own User Interface, or UIs, based on progression from the desktop Debian UIs - ex, GNOME or KDE. It would be great if the GNOME, KDE and other GUI communities could come to agreement on a common UI for Debian, to save unnecessary duplication of development effort, both of the Debian UI, and application software for Debian.
Origin and Purpose
To get this wiki page started, see the original message I sent suggesting this project. It includes some reference URLs, to help seed thinking on Debian on smartphones development.
Contributions
Many people made useful replies to that email, and it would be great if they would add their suggestions of software components, foundations, and URLs thereof to this page. If we all take a few minutes to make contributions to this page when we have something valuable to add, this page will grow to be a great resource for us all. So, please take a moment to add something valuable to this page right now, or when you have the opportunity.
This page could use contributions like: Links to component software (embeded debian, GRUB, UIs, etc).
Software developers can write software for the many parts of this system and put links on this page to those components.
Writers can produce articles about Debian on smartphones in emails to the relevant Debian mailing lists, blogs, web pages and for the general media.
Artists can create the graphics and multimedia for Debian on smartphones.
Packagers can put it all together so people can download and install it on their smartphones.
Thanks for reading. Thanks for thinking. Thanks for all contributions you make. Let's all work together to enable Debian to fulfil its promise as "The Universal Operating System".
Use of the Debian bug tracking system
Bugs related to Debian on mobile devices may have usertags with the user debian-mobile@lists.debian.org. These usertags are currently defined:
user-interface: mobile user interface related bugs, e.g. intents to package UI software or necessary changes of existing UI to improve user experience on small screens or styles input etc.
Contact
If you want to chat about Debian mobile user interfaces, please join the #debian-mobile IRC channel on irc.debian.org or subscribe to the debian-mobile mailing list. If you are interested in kernel, bootloader or middleware related issues you might want to join the #debian-arm IRC channel instead. Other discussions will be appropriate to have on these lists instead: debian-embedded debian-arm debian-kernel debian-cd debian-devel android-tools-devel
Meetings
People
Here are some people interested in running Debian on mobile devices.
Name |
IRC nick |
Hardware owned |
Willing to |
Wishlist |
pabs |
probably-dead Openmoko FreeRunner |
Offer advice |
Linux mainline support for the Neo900 |
|
OdyX |
Openmoko FreeRunner |
Get paid to work towards Debian on Mobile devices :-p |
|
|
Sicelo |
Nokia N900, Motorola Droid 4 |
Help with testing and documentation |
Working Debian on N900 and Droid 4 with UMTS/GPRS access and voice calls |
|
Alishams Hassam |
Zeroedout |
Openmoko FreeRunner, Google Nexus One |
Help maintain wiki, file bugs, test new things |
Mainline FR support, QtMoko in Debian, Debian on the Nexus One, SHR on a Debian base |
Mirv |
GTA04, Nokia N9, Nokia N950, LG Nexus 4, Jolla |
Maintain some of the FR stuff, maybe do something to put Debian on N9, etc. |
More productized stuff via FSO, oFono etc. packaging to support more phones |
|
jo0nas |
Purism Librem 1 rev. C, Openmoko FreeRunner, Nokia N900, misc. Samsung Galaxy models |
Improve ways to bootstrap, test |
more stuff packaged in mainline Debian - with sensible defaults |
|
Jonathan Michalon |
johndescs |
Samsung Galaxy Note 1 |
test, learn stuff, help |
Have Debian in dualboot with Android and be able to do all basic tasks from it. |
Philipp Hug |
hug |
Nokia N900, N9, various Android devices |
Maintain mobile-related packages, test |
Debian on Android |
- |
N900, GTA04 |
Test |
Debian being Pocket Computer (aka Smart Phone) friendly |
|
Lukas Maerdian |
slyon |
GTA04, GTA02, Palm Pre |
Develop FSO, bootstrap Debian for new devices |
Nice UI based on FSO and Debian for GTA04. |
Tomas Caram |
Tomich |
Moto A1200r, Samsung Galaxy S (I9000b) |
test, learn stuff, help, compile, make scripts |
... |
Eva Ramon |
eramon |
Nokia N9, Nokia N900, Galaxy Note 10.1 |
Package mobile software, test, help with the installer |
chroot Debian on Android, dual boot |
David Derby |
dderby (freenode) |
N900, N950, Droid 4, Nexus 5, ?PinePhone prototype shipping soon |
Continue to improve DebiaN900 scripts Contribute to Maemo Leste |
Mainline Linux running well on a variety of phones |
Martin |
GPD Pocket, |
play with Debian on that devices |
run unchanged Debian on that devices |
|
?kgoetz |
Kamping_Kaiser (rarely on irc.debian, usually free node) |
N900, 2x Openmoko FreeRunner, various android devices |
Test things |
An N900 experience on newer devices and newer Debian |
Ida Boustead (?HezuKame) |
No IRC, but hezukame@gmail.com |
Samsung Galaxy S8+ (SM-G955F) Exynos8895 |
Port Debian to my phone and maintain it. |
To be able to fully replace Android with Debian as my main OS on my phone. |
Danny Colin |
sdk |
Pinephone Ubports CE / Pinephone Mobian CE |
Bug hunting |
Using Debian on Pinephone as my daily driver |
Guido Günther |
agx_ |
Work towards using Debian daily on my mobile devices |
|
|
|
?Librem5 |
Work towards using Debian daily on my mobile devices |
To have lots of Debian applications work well at lower resolution and lower screen size |
Groups
The people who work on various distributions
FSO: umbrella project for free software on smartphones, grew out of the OpenMoko community
Linaro: pushes upstream development on ARM, they work on Linux, GCC and related low-level stuff.
TinkerPhones (formerly OpenPhoenux): development of tinker-friendly phones that can run mainline linux and thus Debian.
XDA Developers forum: reverse engineering and developer discussion for Android and Windows devices
CE Workgroup: workgroup in the LF working on Linux mainlining
Debian Android tools team: working on packaging Android development tools (such as the SDK) for Debian
DebianOnMobile team: Package software for Linux based mobile phones (currently focused around GNOME/Phosh based stack)
Howto
Learn software development. Port low-level stuff to a device. Package some middleware. Package a user experience. Package applications that can deal with small screens and touch input. Build images for users to flash onto the device. Get hardware to developers.
Articles
Installing and Running a GNU/Linux Environment on Any Android Device
Simple HowTo Debian in Android HTC G1 without chroot (Native)
Install debian on a smartphone and get the text console working
Learning
At various stages you will need to learn some of the following. This can be done at the same time as working on Debian for smartphones.
- Languages:
- ARM assembly: Linux, bootloaders
- C: Linux, bootloaders, UIs
- make: build systems
- Python: middleware, applications
- Vala: middleware, applications
- Tools:
- Version control:
- git: Linux, middleware, applications
- svn: UI, applications
- bzr: applications
- Compilers: GCC, LLVM, GCC cross-compilers
- Build systems:
- make: almost everything
- autotools: middleware, UI, applications
- cmake: some things
- other: Linux and bootloaders might have custom build systems based on make
- Version control:
Porting
Pick a specific device. Get support for it into a bootloader (u-boot/etc), mainline Linux. Ask relevant teams to build linux/bootloader packages that work on your device. Port the debian installer to the device.
This is most of the work. It is important to get your changes into Linux/u-boot mainline otherwise Debian will not be able to support your device since the Linux kernel team for Debian will not add non-mainline drivers/patches to Debian kernels and therefore you won't be able to support Debian on the phone you care about. It will be made easier since the Android drivers probably already exist and can be ported to mainline Linux. Some hardware vendors will be violating the GPL and not releasing drivers/patches. You might be able to get the code by contacting them or getting the Software Freedom Conservancy or gpl-violations.org involved.
Middleware
Pick some middleware, join the packaging group for it or package it for Debian and look for some sponsors.
UI
Pick a UI or create a new one, create a team, start packaging it for Debian and look for sponsors.
There are numerous existing FLOSS user experiences for mobile devices. As the universal OS, Debian should aim to support several of these.
Applications
Package some touch-friendly applications.
Images
Talk to the Debian installer, live and CDs teams about building daily, weekly and release images that people can flash onto their phones. This could significantly change the way Debian images are built so it will require a fair bit of discussion first.
Other tips
If you can get hardware into the hands of kernel developers that would help a lot. You might find some hardware manufacturers who are willing to give out some free samples to developers.
Install howtos
More links in the devices and installers sections.
Software
Jailbreaking, Rooting, Unlocking, Exploits
OpenJailbreak, ipwndfu, Odyssey: jailbreaking iOS devices
android-rooting-tools: rooting Android devices
SunShine: (proprietary) bootloader unlock for HTC/Motorola devices (disclosures)
WP Internals: (proprietary) rooting Windows devices
Installers
Lil Debi: Debian chroot manager for Android
Debian Kit by Sven-Ola, an easy chroot kit (uses Android kernel to run a Debian from a loop sdcard disc image).
More on the ChrootOnAndroid page.
Flashers and USB booting
0xFFFF: flasher for Nokia Internet Tablets based on the NOLO bootloader
dfu-util: flasher for devices supporting the DFU 1.0 protocol. In practice this means the ?OpenMoko gta01 and gta02 and maybe other devices like the iPhone.
Fastboot: flasher and memory booter for devices based on Android
Heimdall: flasher for some Samsung phones
rkflashtool: flasher for Rockchip based devices
imx_usb_loader: flash devices using Freescale i.MX5/i.MX6 and Vybrid ?SoCs via the Serial Download Protocol (SDP)
Firmware
OsmocomBB: free software for GSM baseband devices, currently only for the baseband on the Openmoko FreeRunner and related devices
firmwares_nonfree: script to download and install proprietary firmware for Android devices
Bootloader
Qi: supports gta01, gta02
u-boot: supports various devices, forks for: gta01/gta02
Kernel
Linux: supports some devices, forks for specific devices in various distributions.
Drivers
- GPU drivers:
OpenFIMG: FIMG 3DSE core from Samsung SoCs (inc S3C6410, S5P6442 and S5PC100)
Lima: ARM Mali (inc Mali-200 and Mali-400)
freedreno: Qualcomm Adreno
PowerVR: Imagination PowerVR
OpenPVRSGX Linux Driver Group: An effort to lay common foundation to make PVR/SGX work without hacks on OMAP34xx, OMAP36xx, AM335x and potentially OMAP4, OMAP5. (Related ML thread)
cedarus: GPU from Allwinner A10 SoCs
videocoreiv: Broadcom VideoCore GPUs
https://github.com/etnaviv: Vivante GCxxx GPUs
grate-driver: official nvidia Tegra open driver
tegra-re: nvidia Tegra reverse engineering project
DRI for the Freerunner: SMedia Glamo3362 from the OpenMoko FreeRunner
- Other:
glshim: video acceleration for OpenGL 1.x software on mobile devices that use OpenGL ES.
note that this isn't needed for GPUs with Free Software drivers because mesa supports both OpenGL 1.x and OpenGL ES on the same hardware.
TinyGLES: a software OpenGL ES driver, intended for use with glshim
SwiftShader: a high-performance CPU-based implementation of the OpenGL ES and Direct3D 9 graphics APIs12. Its goal is to provide hardware independence for advanced 3D graphics. (RFP)
Middleware
Ubuntu: some pieces like ofono, Qt libraries, could be synced relatively directly from Ubuntu
- others in Android/MeeGo/Maemo/Tizen/FirefoxOS
CRAS: Chromium OS Audio Server. Looks like a good option for mobile devices. Further information. Source code.
Shashlik: a way to run Android apps on GNU/Linux distros.
Anbox: a way to run Android apps on GNU/Linux distros.
AndroidChroot: a way to run Android apps on webOS.
sfdroid: a way to run Android apps on Sailfish OS.
ARC: a way to run Android apps on Chrome OS. Further information. Source code.
ARChon: a way to run Android apps under the Chrome web browswer. Source code: 1, 2. Chromium for Debian.
ParallelDroid: a way to run Android apps on desktop Linux in an X11 window.
microG: libre replacements for Google’s proprietary Android user space apps and libraries.
Hybris/libhybris: allows the use of non-free binary blobs (for example Sailfish OS Hardware Adaptation Development Kit) that were compiled against the bionic Android libc on glibc based systems. Useful to avoid having to develop open source drivers and possibly for reverse engineering binary blobs.
SPURV: a way to run Android apps on desktop Linux using Wayland
User interface
KDE Kirigami UI: A framework oriented towards building mobile or convergent mobile/desktop applications using Qt.
Enlightenment: Provides "Illume", which optimises the interface for mobile devices. Packaged by the pkg-e team. Previously packaged as E17 (stretch and earlier).
Moksha: E17 fork
Gaia: interface for FirefoxOS
Mer/Nemo Mobile: The open parts of Jolla
Hildon: Main website, Maemo CSSU repositories, Cordia (contains some stuff for GTK3) Latest GTK3 work (old Debian packages)
Ubuntu: many Qt/QML libraries, applications, the Unity 8 shell
Tizen UI: Based on Enlightenment and EFL, supports native and web applications. Source code: 1 2
Glacier: Replacement UI for Nemo. Source code.
fbkeyboard: Screen keyboard for linux text console. Useful on devices without hardware keyboard.
osk-sdl: On-Screen-Keyboard based on SDL2
Discontinued:
GPE: removed from Debian, suitable for stylus-based devices
Application Repositories
F-Droid: repository of FOSS Android-based applications
OpenMoko: applications from the OpenMoko development community
Ubuntu: core applications from Ubuntu Touch
postmarketOS: applications list written by the postmarketOS community
Applications Suitable for Mobile Use
Empathy supports voice calls and short messages via telepathy-ring
Epiphany-browser is a web browser with a simple interface for GNOME, used by default on the ?Librem5
Geary is a simple MUA for GNOME, used by default on the ?Librem5
Kings Cross is a simple GNOME terminal designed for small screens and touch usage, used by default on ?Librem5
Applications Needed for Mobile Use
- Calendar (editing and displaying) with web backend for distributed use
- Note taking with web backend (like Google Keep)
- Mastodon Client
Matrix Client (Element should work but it's not in Debian yet see Matrix)
Remote desktop clients (Spice-client-gtk crashes on Librem5)
OSM map viewer with offline support and use of vector data, e.g. Organic Maps
Jabber/XMPP client with better support for small screens than the current Dino with libhandy patches
Distributions
Emdebian: discontinued cut down version of Debian for small and embedded devices
Ubuntu: Ubuntu for touchscreen based mobile devices
UBports: community continuation of Ubuntu for mobile devices
QtMoko: distribution based on Debian
PyNeo: distribution based on Debian
Maemo: mobile distribution based on Debian
Tizen: mobile distribution based on EFL, Debian/Ubuntu, backed by Samsung and others
webOS: mobile distribution based on HTML/JS, OpenEmbedded, backed by HP
LuneOS: open source successor for webOS
webOS OSE: open source successor for webOS from LG
FirefoxOS: Mozilla project to create an web-based OS
GerdaOS: aims to liberate !KaiOS, the proprietary !FirefoxOS derivative
Gentoo on Android: Gentoo project to run Gentoo in a prefix on Android
Mer: distribution aimed at re-use by device manufacturers
Nemo: mobile distribution based on Mer (RPM), MeeGo Handset, Qt
Cordia: discontinued mobile distribution based on Mer (RPM), Maemo Hildon stack ported to newer GTK+/etc
Seadot: mobile distribution based on Mer, successor for the WeTab OS
SailfishOS: commercial distro based on Mer
postmarketOS: Alpine Linux derivative aimed at 10 year life-cycle for smartphones
Maemo Leste: aims to provide a free Maemo experience on mobile phones and tablets, built on top of Devuan Ascii (Debian Stretch)
PureOS: is a derivative of Debian that will work on Librem5 the new device of Purism will be released at 2019
Devuan: a fork of Debian, optimised for use without systemd. Provides images for a variety of mobile and embedded devices built with the arm-sdk.
Mobian: working on getting Debian on ?PinePhone and similar devices, with tweaks and configuration in an external repo
NixOS: OS built on the Nix declarative package manager, has a mobile effort.
JingOS: Ubuntu-based Linux OS that mimics iPadOS and is designed for (x86?) tablets
FydeOS: Chinese-centric cloud based OS mimicking ChromeOS
ExpidusOS: OS for the Pinephone using the XFCE4 DE (based on Void Linux)
dahliaOS: OS that supports Zircon and Linux kernels, with a Flutter-based UI
Capyloon: Spiritual successor of FirefoxOS, ported to mainline linux
Android-based
Replicant: aiming to remove all the blobs and non-free stuff from Android
OmniROM: a community Android derivative
?CyanogenMod: a commercial Android derivative
AsteroidOS: open-source operating system for smartwatches
MaruOS: containers on Android
Halium: group maintenance of Android parts that cannot be added to normal GNU/Linux distributions, as well as compatibility shims. This includes proprietary blobs as well as Android forks of the Linux kernel.
GrapheneOS: successor of CopperheadOS, a hardened fork of AOSP
CalyxOS: AOSP fork focussed on privacy
Project Sandcastle: running Linux and Android on Apple devices.
DivestOS: LineageOS fork "divested from the norm"
Devices
General hardware support pages for various groups/distros: FSO oFono SHR Replicant (targets) OmniROM (unofficial ports) LineageOS Mer webOS Ubuntu Touch Firefox OS Gentoo postmarketOS (wishlist) AsteroidOS NixOS CalyxOS DivestOS
Porting guides for various groups/distros: oFono SHR (Android devices) Replicant (1, 2, 3) OmniROM LineageOS Mer webOS Tizen SailfishOS Ubuntu Touch FirefoxOS (2). postmarketOS AsteroidOS NixOS Halium
Name |
Codename |
Bootloaders |
Linux |
Operating systems |
Other |
|
Gemini |
Gemini |
Android, Debian |
blobs in GSM,WiFi,BT, GPS; only BT not working; Android specific repo |
|||
Cosmo Communicator |
Cosmo_communicator |
Android, Debian, UBPorts |
blobs in GSM,WiFi,BT, GPS; only BT not working; UBPorts lacks physical keyboard drivers; CoDI (front display) not supported under Linux; Android specific repo |
|||
Openmoko Neo 1973 |
gta01 |
|
|
|||
Openmoko Neo FreeRunner |
gta02 |
blobs in WiFi, GPS, GSM. GSM isolated, semi-supported by OsmocomBB. Emulated by forked qemu. |
||||
Golden Delicious Letux 2804 |
gta04 |
blob sent to WiFi |
||||
gta04b7 |
Neo900 project was discontinued |
|||||
Samsung Galaxy S |
galaxysmtd |
blobs sent to WiFi, BT. modem not isolated. XDA info |
||||
Samsung Nexus S |
crespo |
Android |
blobs sent to WiFi, BT. modem not isolated. |
|||
Samsung Galaxy Note 10.1 |
n8000 |
|
|
|||
Samsung Galaxy S3 / Note II |
midas ( SHV-E210K/L/S / GT-I9300 / GT-I9305 / GT-N7100 / GT-N7105 ) |
|
|
|||
Samsung Galaxy S5 |
|
aboot (Samsung eMMC unlock |
|
|
|
|
Samsung Galaxy S8+ |
SM-G955F (Exynos8895) |
TBC |
TBC |
Debian |
Work in progress |
|
Nokia 770 |
SU-18 |
|
|
|||
gagarin/selene |
|
|
||||
Nokia N900 |
RX-51 |
Debian Maemo 5 (Fremantle) Maemo Leste SHR NITDroid Mer DeforaOS (NetBSD) Devuan postmarketOS |
|
|||
Nokia N9 |
RM-696 |
Debian MeeGo 1.2 Harmattan Mer Sailfish OS Devuan Maemo Leste postmarketOS |
|
|||
Nokia N950 |
RM-680 |
Debian MeeGo 1.2 Harmattan Mer Sailfish OS Devuan Maemo Leste |
|
|||
HTC Nexus One |
|
|
|
|
||
Motorola Droid |
|
|
|
|
||
Motorola Droid 4 XT894 |
maserati |
Android, Linux, Debian Devuan Maemo Leste postmarketOS |
|
|||
Motorola Moto X (2nd generation) |
|
aboot (unlock |
Android kernel + GNU userland |
Android |
|
|
ASUS Nexus 7 |
|
|
|
|
||
LG Nexus 4 |
mako |
|
|
|
||
Geeksphone Peak |
|
|
|
|||
|
? |
Android kernel + GNU userland |
Sailfish OS |
|
||
|
|
|||||
Dragonbox Pyra |
|
|
|
|
will run a custom Debian by default |
|
|
|
|
|
runs Raspbian by default |
|
|
|
|
|
Debian and derivatives like PureOS |
Will be released at 2019 |
||
|
|
Being upstreamed |
Maemo Leste, LuneOS, Replicant, Plasma Mobile, postmarketOS, Nemo Mobile |
Scheduled for release in 2019. |
||
|
|
Arch Linux, AOSC, UBPorts, Maemo Leste, postmarketOS, Plasma Mobile, Mobian |
|
|||
Golden Delicious Pyra Phone |
GTA15 |
|
Debian-based |
|
Events
===== References: http://wiki.debian.org/DebianOnHandhelds http://wiki.debian.org/Handheld http://wiki.debian.org/Hardware http://wiki.debian.org/
- How can open source survive in a post-PC World? http://www.h-online.com/open/features/How-can-open-source-survive-in-a-post-PC-world-1210071.html How can open source survive in a post-PC World? (h-online.com) http://news.ycombinator.com/item?id=2348907
List_of_open_source_Android_applications http://maniacdev.com/2010/06/35-open-source-iphone-app-store-apps-updated-with-10-new-apps/
Open Source iPhone Apps List – Real App Store Code Examples! http://maniacdev.com/2010/06/35-open-source-iphone-app-store-apps-updated-with-10-new-apps/
- http://www.cyanogenmod.com/ CyanogenMod
Android_%28operating_system%29
- Permanent root for the Samsung Intercept http://forum.sdx-developers.com/intercept-development-2-2/sprint-intercept-wfroyo-permanent-root-using-epic-expoit/
[HOWTO] Rooting your Samsung Intercept the Easy Way http://forum.xda-developers.com/showthread.php?t=890460 Samsung Intercept > Intercept Android Development http://forum.xda-developers.com/forumdisplay.php?s=b6120fd362a554792ba666425dc5e102&f=901
- }}}