Project

General

Profile

Actions

PortingToAndroid9 » History » Revision 49

« Previous | Revision 49/241 (diff) | Next »
Denis 'GNUtoo' Carikli, 03/28/2019 12:37 PM


Porting Replicant to Android 9

Status

  • The Galaxy SIII 4G (i9305) boots (with graphics hacks) under AOSP9, without having to import nonfree libraries. Not much has been validated beside that.
  • The kernel used is based on Linux 5.0-rc6 and has ~150 Android specific patches on top and some patches for the Galaxy SIII 4G (i9305) on top

Repositories and changes

  • git://git.putti.eu/aosp/manifest_i9305.git
  • git://git.putti.eu/aosp/kernel_i9305.git
  • git://git.putti.eu/aosp/device_i9305.git

Building (WIP)

First get the source code:

$ repo init -u git://git.putti.eu/aosp/manifest_i9305.git -b android-9.0.0

For Trisquel8 (WIP):

sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev libgl1-mesa-dev libxml2-utils xsltproc unzip bc python-mako

Then see the device/putti/i9305/README.md for the build instructions.

TODO

  • Boot a device under AOSP9
  • Build it under a FSDG compliant distribution like Trisquel8
  • Port the device on top of LineageOS 16
  • Find and remove proprietary software if there is any shipped or downloaded with the source code
  • Port Replicant 6 changes
  • Port libsamsung-ipc and libsamsung-ril
  • Port the sensors libraries and other device specific libraries
  • Port the AOSP9 changes on top of LineageOS 16
  • Rebrand LineageOS as Replicant
  • Make sure that Replicant can be built on a GNU/Linux distribution that follows the Free Software Distributions Guidelines
  • Reduce the attack surface
  • Add support for smartphones that were supported in Replicant 4.2 and 6.0 if they meet the HardwareRequirements
  • Add in-system upgrades

Replicant 6.0 changes

Repository path rebase worked Changes
build No
manifest No N/A
bootable/recovery Yes * UI changes to improve usability
* Branding
* Small fix(es)
external/boringssl Yes * Small fix(es)
external/heimdall No
frameworks/av Yes * Software rendering fix(es)
frameworks/base Yes * WiFi fixe(s) for external dongles
* Software rendering fix(es)
* Privacy fix(es)
* Security improvements
* Usability improvements
frameworks/native No
hardware/broadcom/wlan Yes * Remove nonfree software
hardware/libhardware Yes * Software rendering fix(es)
hardware/libhardware_legacy Yes * Don't depend on nonfree software
hardware/ti/omap4 Yes * Remove nonfree software
* Don't depend on nonfree software
* Small fix(es)
libcore Yes * Small fix(es)
packages/apps/Browser Yes * Privacy fix(es)
* Branding
* Small fix(es)
packages/apps/LegacyCamera Yes * Software rendering fix(es)
* Small fix(es)
packages/apps/RepWifi Not upstreamed, obsolete N/A
packages/apps/ReplicantWallpapers Not upstreamed * Branding
packages/apps/Settings No
packages/apps/SetupWizard Yes * Privacy fix(es)
* Don't depend on nonfree software
* Branding
packages/apps/ThemeChooser Yes * Privacy fix(es) ?
* Don't depend on nonfree software ?
packages/providers/ContactsProvider Yes * Small fix(es)
system/core Yes * Branding
* various fixes
vendor/replicant No
vendor/cmsdk Yes * Branding
external/chromium-webview ? ?
external/drm_gralloc Yes * Software rendering fix(es)
external/llvm Yes * Software rendering fix(es)
external/mesa3d Yes * Software rendering fix(es)
* Performance debugging for software rendering
external/parameter-framework Yes * Small fix(es)
external/protobuf N/A No changes
prebuilts/ndk ? ?
prebuilts/sdk ? ?
sdk Yes * Small fix(es)
toolchain/src/binutils Yes * Small fix(es)
toolchain/src/gcc No
toolchain/src/jack Yes * Small fix(es)
toolchain/src/jill Yes * Small fix(es)
kernel/samsung/smdk4412 Yes * Security fixes
* Privacy Fixes (TrustZone)
* Don't depend on nonfree software
* Remove nonfree software
* Small fix(es)
kernel/samsung/tuna
kernel/samsung/espresso10
device/samsung/i9100 No * Replace nonfree software by free software
* free software sensors implementation(s)
* free software modem audio implementation(s)
* Software rendering fix(es)
* Privacy Fixes (TrustZone)
* Don't depend on nonfree software
* Remove nonfree software
* Branding
* Small fix(es)
device/samsung/n7000 Yes
device/samsung/i9300 No
device/samsung/i9305 No
device/samsung/n7100 Yes
device/samsung/n5100 Yes
device/samsung/n5110 Yes
device/samsung/maguro Yes
device/samsung/tuna Yes
device/samsung/espressowifi Yes
device/samsung/espresso3g Yes
device/samsung/galaxys2-common Yes
device/samsung/smdk4412-common No
device/samsung/kona-common Yes
hardware/ril/samsung-ril Not upstreamed N/A
external/libsamsung-ipc Not upstreamed N/A
hardware/tinyalsa-audio Not upstreamed? N/A

Links

Updated by Denis 'GNUtoo' Carikli 8 months ago · 49 revisions