Project

General

Profile

DeprecatedPortingToAndroid10 » History » Version 48

Denis 'GNUtoo' Carikli, 03/28/2019 12:27 PM

1 1 Denis 'GNUtoo' Carikli
h1. Porting Replicant to Android 9
2
3 47 Denis 'GNUtoo' Carikli
h2. Status
4 46 Denis 'GNUtoo' Carikli
5 1 Denis 'GNUtoo' Carikli
The Galaxy SIII 4G (i9305) boots (with graphics hacks) under AOSP9, without having to import nonfree libraries. Not much has been validated beside that.
6
7 46 Denis 'GNUtoo' Carikli
h2. Repositories and changes
8
 
9
* git://git.putti.eu/aosp/manifest_i9305.git
10
* git://git.putti.eu/aosp/kernel_i9305.git
11
* git://git.putti.eu/aosp/device_i9305.git
12 1 Denis 'GNUtoo' Carikli
13
h2. Building (WIP)
14
15 46 Denis 'GNUtoo' Carikli
First get the source code:
16
<pre>
17
$ repo init -u git://git.putti.eu/aosp/manifest_i9305.git -b android-9.0.0
18
</pre>
19
20 45 Denis 'GNUtoo' Carikli
For Trisquel8 (WIP):
21
<pre>
22
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
23
</pre>
24
25 48 Denis 'GNUtoo' Carikli
Then see the device/putti/i9305/README.md for the build instructions.
26
27 45 Denis 'GNUtoo' Carikli
h2. TODO
28 38 Denis 'GNUtoo' Carikli
29 43 Denis 'GNUtoo' Carikli
* -Boot a device under AOSP9-
30 36 Denis 'GNUtoo' Carikli
* Build it under a "FSDG compliant distribution":https://www.gnu.org/distros/free-distros.html like Trisquel8
31
* Port the device on top of LineageOS 16
32 1 Denis 'GNUtoo' Carikli
* Find and remove proprietary software if there is any shipped or downloaded with the source code
33 38 Denis 'GNUtoo' Carikli
* Port Replicant 6 changes
34 36 Denis 'GNUtoo' Carikli
* Port libsamsung-ipc and libsamsung-ril
35
* Port the sensors libraries and other device specific libraries
36
* Port the AOSP9 changes on top of LineageOS 16
37
* Rebrand LineageOS as Replicant
38 39 Denis 'GNUtoo' Carikli
* Make sure that Replicant can be built on a GNU/Linux distribution that follows the Free Software Distributions Guidelines
39 36 Denis 'GNUtoo' Carikli
* Reduce the attack surface
40 34 Denis 'GNUtoo' Carikli
* Add support for smartphones that were supported in Replicant 4.2 and 6.0 if they meet the [[HardwareRequirements]]
41
* Add in-system upgrades
42
43
h2. Replicant 6.0 changes
44 2 Denis 'GNUtoo' Carikli
45 4 Denis 'GNUtoo' Carikli
|_. Repository path |_. rebase worked |_. Changes |
46 22 Denis 'GNUtoo' Carikli
| build | No | |
47 1 Denis 'GNUtoo' Carikli
| manifest | No | N/A |
48 32 Denis 'GNUtoo' Carikli
| bootable/recovery | Yes | * UI changes to improve usability 
49 5 Denis 'GNUtoo' Carikli
* Branding
50 31 Denis 'GNUtoo' Carikli
* Small fix(es) | 
51 4 Denis 'GNUtoo' Carikli
| external/boringssl | Yes | * Small fix(es) |
52
| external/heimdall | No | |
53
| frameworks/av | Yes | * Software rendering fix(es) |
54
| frameworks/base | Yes | * WiFi fixe(s) for external dongles
55
* Software rendering fix(es) 
56
* Privacy fix(es) 
57 1 Denis 'GNUtoo' Carikli
* Security improvements 
58 5 Denis 'GNUtoo' Carikli
* Usability improvements |
59
| frameworks/native | No |
60
| hardware/broadcom/wlan | Yes | * Remove nonfree software |
61 10 Denis 'GNUtoo' Carikli
| hardware/libhardware | Yes | * Software rendering fix(es) |
62 5 Denis 'GNUtoo' Carikli
| hardware/libhardware_legacy | Yes | * Don't depend on nonfree software |
63
| hardware/ti/omap4 | Yes | * Remove nonfree software 
64 33 Denis 'GNUtoo' Carikli
* Don't depend on nonfree software 
65
* Small fix(es) |
66 6 Denis 'GNUtoo' Carikli
| libcore | Yes | * Small fix(es) | 
67 8 Denis 'GNUtoo' Carikli
| packages/apps/Browser | Yes | * Privacy fix(es) 
68 33 Denis 'GNUtoo' Carikli
* Branding
69 7 Denis 'GNUtoo' Carikli
* Small fix(es) |
70 33 Denis 'GNUtoo' Carikli
| packages/apps/LegacyCamera | Yes | * Software rendering fix(es)
71 22 Denis 'GNUtoo' Carikli
* Small fix(es) |
72
| packages/apps/RepWifi | Not upstreamed, obsolete | N/A |
73 11 Denis 'GNUtoo' Carikli
| packages/apps/ReplicantWallpapers | Not upstreamed | * Branding |
74
| packages/apps/Settings | No | |
75
| packages/apps/SetupWizard | Yes | * Privacy fix(es) 
76
* Don't depend on nonfree software
77 12 Denis 'GNUtoo' Carikli
* Branding |
78
| packages/apps/ThemeChooser | Yes | * Privacy fix(es) ?
79 33 Denis 'GNUtoo' Carikli
* Don't depend on nonfree software ? |
80 13 Denis 'GNUtoo' Carikli
| packages/providers/ContactsProvider | Yes | * Small fix(es) |
81
| system/core | Yes | * Branding
82
* various fixes |
83
| vendor/replicant | No | |
84 14 Denis 'GNUtoo' Carikli
| vendor/cmsdk | Yes | * Branding |
85
| external/chromium-webview | ? | ? |
86
| external/drm_gralloc | Yes | * Software rendering fix(es) |
87
| external/llvm | Yes | * Software rendering fix(es) |
88
| external/mesa3d |  Yes | * Software rendering fix(es)
89 33 Denis 'GNUtoo' Carikli
* Performance debugging for software rendering |
90 14 Denis 'GNUtoo' Carikli
| external/parameter-framework | Yes | * Small fix(es) |
91
| external/protobuf | N/A | No changes |
92
| prebuilts/ndk | ? | ? |
93 33 Denis 'GNUtoo' Carikli
| prebuilts/sdk | ? | ? |
94
| sdk | Yes | * Small fix(es) |
95 14 Denis 'GNUtoo' Carikli
| toolchain/src/binutils | Yes | * Small fix(es) |
96 33 Denis 'GNUtoo' Carikli
| toolchain/src/gcc | No | |
97
| toolchain/src/jack | Yes | * Small fix(es) |
98 22 Denis 'GNUtoo' Carikli
| toolchain/src/jill | Yes | * Small fix(es) |
99 1 Denis 'GNUtoo' Carikli
| kernel/samsung/smdk4412 |/3. Yes |/3. * Security fixes
100
* Privacy Fixes (TrustZone)
101 20 Denis 'GNUtoo' Carikli
* Don't depend on nonfree software
102 33 Denis 'GNUtoo' Carikli
* Remove nonfree software
103 22 Denis 'GNUtoo' Carikli
* Small fix(es) |
104
| kernel/samsung/tuna |
105 28 Denis 'GNUtoo' Carikli
| kernel/samsung/espresso10 |
106
| device/samsung/i9100 | No |/14. * Replace nonfree software by free software
107
* free software sensors implementation(s)
108 25 Denis 'GNUtoo' Carikli
* free software modem audio implementation(s)
109 29 Denis 'GNUtoo' Carikli
* Software rendering fix(es)
110
* Privacy Fixes (TrustZone)
111
* Don't depend on nonfree software
112 1 Denis 'GNUtoo' Carikli
* Remove nonfree software
113 33 Denis 'GNUtoo' Carikli
* Branding
114 1 Denis 'GNUtoo' Carikli
* Small fix(es) |
115
| device/samsung/n7000 | Yes |
116
| device/samsung/i9300 | No |
117
| device/samsung/i9305 | No |
118 29 Denis 'GNUtoo' Carikli
| device/samsung/n7100 | Yes |
119
| device/samsung/n5100 | Yes |
120
| device/samsung/n5110 | Yes |
121
| device/samsung/maguro | Yes |
122 30 Denis 'GNUtoo' Carikli
| device/samsung/tuna | Yes |
123
| device/samsung/espressowifi | Yes |
124
| device/samsung/espresso3g | Yes |
125
| device/samsung/galaxys2-common | Yes |
126
| device/samsung/smdk4412-common | No |
127 22 Denis 'GNUtoo' Carikli
| device/samsung/kona-common | Yes |
128
| hardware/ril/samsung-ril | Not upstreamed | N/A |
129 23 Denis 'GNUtoo' Carikli
| external/libsamsung-ipc | Not upstreamed | N/A |
130 40 Denis 'GNUtoo' Carikli
| hardware/tinyalsa-audio | Not upstreamed? | N/A |
131
132
h2. Links 
133
134 1 Denis 'GNUtoo' Carikli
* https://source.android.com/setup/build/requirements