Differences between revisions 218 and 296 (spanning 78 versions)
Revision 218 as of 2016-12-27 23:14:26
Size: 33501
Editor: ?DavidDerby
Comment: Added Tizen to User Interface section
Revision 296 as of 2020-06-12 16:50:06
Size: 42541
Editor: DannyColin
Comment: Add Danny Colin to People
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 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 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 ||
|| W. Martin Borgert || no IRC, but xmpp:debacle@debian.org || [[InstallingDebianOn/GPD/Pocket|GPD Pocket]], Librem 5 dev board, hopefully soon: Pyra || work on Debian for 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 CE || Bug hunting || Use the pinephone w/ Debian as my daily driver ||
Line 74: Line 89:
Line 85: Line 99:
 * [[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 152: Line 169:
 * [[https://openjailbreak.org/|OpenJailbreak]]: jailbreaking iOS devices  * [[https://github.com/OpenJailbreak/|OpenJailbreak]], [[https://github.com/axi0mX/ipwndfu|ipwndfu]]: jailbreaking iOS devices
Line 156: Line 173:
 * Other: [[https://redmine.replicant.us/projects/replicant/wiki/RootingDevices|Replicant guide to rooting Android devices]]
Line 163: Line 181:
 * More on the ChrootOnAndroid page.
Line 169: Line 188:
 * [[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 171: Line 190:
 * [[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 176: Line 197:
 * [[https://blog.fossencdi.org/nonfree-firmware-android.html|firmwares_nonfree]]: script to download and install proprietary firmware for Android devices
Line 194: Line 216:
    * 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 196: Line 220:
    * [[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 205: Line 230:
  * [[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 217: Line 243:
 * [[https://anbox.io/|Anbox]]: a way to run Android apps on GNU/Linux distros.
Line 221: Line 248:
 * [[http://pakesson.se/2011/05/16/paralleldroid/|ParallelDroid]]: a way to run Android apps on desktop Linux in an X11 window.
Line 229: Line 257:
 * [[http://www.enlightenment.org/|Enlightenment]]/Illume: [[DebianPackage:enlightenment|E21 (experimental)]] and [[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 235: Line 263:
 * [[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 236: Line 272:
 * [[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]]

Discontinued:

 * [[http://gpe.linuxtogo.org/|GPE]]: [[https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=727163|removed from Debian]], suitable for stylus-based devices
 * [[https://wiki.merproject.org/wiki/Nemo/Glacier|Glacier]]
Line 258: Line 288:
 * [[https://ubports.com/|UBports]]: community continuation of Ubuntu for mobile devices
Line 272: Line 303:
 * [[http://www.cyanogenmod.org/|CyanogenMod]]: a commercial Android derivative  * CyanogenMod: a commercial Android derivative
Line 276: Line 307:
 * [[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
Line 279: Line 312:
 * [[http://webosose.org/|webOS OSE]]: open source successor for webOS from LG
Line 280: Line 314:
 * [[https://gerda.tech/|GerdaOS]]: aims to liberate !KaiOS, the proprietary !FirefoxOS derivative
Line 283: Line 318:
 * [[http://wiki.merproject.org/wiki/Nemo#Nemo_Mobile|Nemo]]: mobile distribution based on Mer (RPM), !MeeGo Handset UX, Qt  * [[https://nemomobile.net/|Nemo]]: mobile distribution based on Mer (RPM), !MeeGo Handset UX, Qt
Line 287: Line 322:
 * [[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 mobile, with tweaks, hacks 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]].
Line 297: Line 339:
[[https://wiki.cyanogenmod.org/w/Devices|CyanogenMod]] ([[https://wiki.cyanogenmod.org/w/Unofficial_Ports|unofficial ports]]) [[https://wiki.lineageos.org/devices/|LineageOS]]
Line 299: Line 341:
[[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 303: Line 345:
[[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]]
Line 314: Line 359:
[[http://wiki.cyanogenmod.org/index.php?title=Doc:_porting_intro|CyanogenMod]] [[https://wiki.lineageos.org/submitting_device.html|LineageOS]]
Line 321: Line 366:
[[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]]
Line 327: Line 375:
|| 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]] [[http://www.cyanogenmod.org/devices/samsung-galaxy-s|CyanogenMod]] || 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]] || || 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 329: Line 377:
|| 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 Galax
y 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 331: Line 380:
|| Nokia [[WikiPedia:Nokia_770_Internet_Tablet|770]] ||  || || || [[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]] ||  || || || [[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]] [[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]] || 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]] || ||
|| 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 338: Line 388:
|| 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 340: Line 391:
|| 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 344: Line 395:
|| 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]] || Scheduled for release in 2019. ||
|| 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 || ||

Debian on mobile devices

This page is about tracking every initiative to fully or partially install the system on mobile platforms:

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

Paul Wise

pabs

probably-dead Openmoko FreeRunner

Offer advice

Linux mainline support for the Neo900

Didier Raboud

OdyX

Openmoko FreeRunner

Get paid to work towards Debian on Mobile devices :-p

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

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

Timo Jyrinki

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

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

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

MichaelDorrington

-

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

W. Martin Borgert

no IRC, but xmpp:debacle@debian.org

GPD Pocket, Librem 5 dev board, hopefully soon: Pyra

work on Debian for 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 CE

Bug hunting

Use the pinephone w/ Debian as my daily driver

Groups

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

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

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 UXen 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

Software

Jailbreaking, Rooting, Unlocking, Exploits

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

Kernel

Drivers

  • GPU drivers:
  • 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

User interface

Discontinued:

Applications

  • F-Droid: repository of FOSS Android-based applications

  • OpenMoko: applications from the OpenMoko development community

  • Ubuntu: core applications from Ubuntu Touch

  • Empathy supports voice calls and short messages via telepathy-ring

Distributions

  • Debian

  • 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

  • SHR: distribution for smartphones based on OpenEmbedded and FSO software

  • QtMoko: distribution based on Debian

  • PyNeo: distribution based on Debian

  • DeforaOS: releases Debian packages

  • Qalee

  • QuantumSTEP

  • Maemo: mobile distribution based on Debian

  • Tizen: mobile distribution based on EFL, Debian/Ubuntu, backed by Samsung and others

  • Android

  • Replicant: aiming to remove all the blobs and non-free stuff from Android

  • OmniROM: a community Android derivative

  • ?CyanogenMod: a commercial Android derivative

  • LineageOS: renamed version of ?CyanogenMod community

  • 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

  • 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 UX, 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 mobile, with tweaks, hacks and configuration in an external repo

  • NixOS: OS built on the Nix declarative package manager, has a mobile effort.

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

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

Name

Codename

Bootloaders

Linux

Operating systems

Other

Openmoko Neo 1973

gta01

Debian more

Openmoko Neo FreeRunner

gta02

qi or forked u-boot

Needs upstreaming

Debian QtMoko SHR Android-on-FreeRunner more

blobs in WiFi, GPS, GSM. GSM isolated, semi-supported by OsmocomBB. Emulated by forked qemu.

Golden Delicious Letux 2804

gta04

u-boot branch

being upstreamed

Debian SHR Replicant

blob sent to WiFi

Neo900

gta04b7

u-boot branch

Being upstreamed 1 2

Debian SHR Replicant Maemo

Samsung Galaxy S

galaxysmtd

proprietary, locked

Replicant

Debian Replicant

blobs sent to WiFi, BT. modem not isolated. XDA info

Samsung Nexus S

crespo

proprietary, locked

Android

Replicant Ubuntu

blobs sent to WiFi, BT. modem not isolated.

Samsung Galaxy Note 10.1

n8000

OpenSGN

Debian Ubuntu

Samsung Galaxy S3 / Note II

midas ( SHV-E210K/L/S / GT-I9300 / GT-I9305 / GT-N7100 / GT-N7105 )

u-boot branch

Being mainlined

Samsung Galaxy S5

aboot (Samsung eMMC unlock

Samsung Galaxy S8+

SM-G955F (Exynos8895)

TBC

TBC

Debian

Work in progress

Nokia 770

SU-18
Sputnik

Mainline board file

Debian Inferno

Nokia N800/N810

gagarin/selene

Being upstreamed

Debian Mer

Nokia N900

RX-51
Rover

u-boot upstream

Being upstreamed

Debian Maemo 5 (Fremantle) Maemo Leste SHR NITDroid Mer DeforaOS (NetBSD) Devuan postmarketOS

Nokia N9

RM-696
Lankku

Ubiboot N9 Easy Boot

N9 Kernel update project Being upstreamed

Debian MeeGo 1.2 Harmattan Mer Sailfish OS Devuan Maemo Leste postmarketOS

Nokia N950

RM-680
Dali

Ubiboot N9 Easy Boot

Being upstreamed

Debian MeeGo 1.2 Harmattan Mer Sailfish OS Devuan Maemo Leste

HTC Nexus One

Debian

Motorola Droid

Debian

Motorola Droid 4 XT894

maserati

Safestrap utagboot kexecboot

Being upstreamed

Android, Linux, Debian Devuan Maemo Leste postmarketOS

Motorola Moto X (2nd generation)

aboot (unlock

Android kernel + GNU userland

Android

ASUS Nexus 7

Ubuntu Mer Replicant

LG Nexus 4

mako

Sailfish OS LineageOS Ubuntu

Geeksphone Peak

fork

Fedora

Jolla

?

Android kernel + GNU userland

Sailfish OS

Aakash

being upstreamed

Debian

Dragonbox Pyra

will run a custom Debian by default

Zero Phone

runs Raspbian by default

Librem5

Debian and derivatives like PureOS

Will be released at 2019

Necunos NC_1

Being upstreamed

Maemo Leste, LuneOS, Replicant, Plasma Mobile, postmarketOS, Nemo Mobile

Scheduled for release in 2019.

PinePhone

Being upstreamed

Arch Linux, AOSC, UBPorts, Maemo Leste, postmarketOS, Plasma Mobile

Scheduled for release in 2019.

Golden Delicious Pyra Phone

GTA15

Being upstreamed

Debian-based

Events

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!  :)


=====  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


WikiPedia: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/
WikiPedia:CyanogenMod


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

OLD_Misc_OLD