Project

General

Profile

Google Summer of Code 2018 » History » Version 18

Jeremy Rand, 01/22/2018 09:33 AM

1 1 Jeremy Rand
h1. Google Summer of Code 2018
2
3
Replicant intends to apply to GSoC 2018 as part of the FSF umbrella.  This page lists suggested projects for GSoC students.  *This list is a draft!*
4
5 2 Jeremy Rand
h2. Advance the Optimus Black U-Boot and Linux mainline ports
6 1 Jeremy Rand
7 13 Jeremy Rand
The Optimus Black is an interesting potential target for Replicant, since it has the ability to use a free bootloader.  Paul did some initial work on getting U-Boot and mainline Linux running on it, which would lay the groundwork for a future Replicant port.  You can help by picking up where Paul left off, and getting U-Boot and mainline Linux running on the Optimus Black.
8 1 Jeremy Rand
9 2 Jeremy Rand
*Difficulty*: TODO
10 1 Jeremy Rand
11 2 Jeremy Rand
*Requirements/Prerequisites*: TODO
12 1 Jeremy Rand
13 2 Jeremy Rand
*Expected Outcomes/Deliverables*: TODO
14 1 Jeremy Rand
15 2 Jeremy Rand
*Possible Mentors*: Paul (confirmed)
16
17
h2. Advance the Kindle Fire first generation U-Boot and Linux mainline ports
18
19
(Project description: TODO.)
20
21
*Difficulty*: TODO
22
23
*Requirements/Prerequisites*: TODO
24
25
*Expected Outcomes/Deliverables*: TODO
26
27
*Possible Mentors*: Paul (confirmed)
28 3 Jeremy Rand
29 5 Jeremy Rand
h2. Access Point mode for RepWifi
30
31 11 Jeremy Rand
RepWifi is Replicant's app for using an external USB WiFi adapter.  RepWifi is useful for Replicant because there exist USB WiFi adapters with free firmware, while the built-in WiFi chipsets in mobile phones do not have free firmware.  Right now, RepWifi doesn't support acting as an access point (e.g. for WiFi tethering purposes); you can help by adding this functionality to RepWifi.
32 5 Jeremy Rand
33
*Difficulty*: Easy to Medium
34
35
*Requirements/Prerequisites*: TODO
36
37
*Expected Outcomes/Deliverables*: TODO
38
39
*Possible Mentors*: Fil?
40
41 4 Jeremy Rand
h2. Port Replicant to a newer LineageOS version
42
43
(Project description: TODO.)
44
45
*Difficulty*: TODO
46
47
*Requirements/Prerequisites*: TODO
48
49
*Expected Outcomes/Deliverables*: TODO
50
51 18 Jeremy Rand
*Possible Mentors*: Forkbomb (confirmed), Wolfgang?
52 6 Jeremy Rand
53
h2. OS Updater
54
55 15 Jeremy Rand
It would be useful for a Replicant device to be able to update itself to a new version of Replicant without requiring being connected to a PC.  You can help by implementing this functionality.  LineageOS already supports this; we suspect that it should be possible to adapt this LineageOS functionality to Replicant.
56 6 Jeremy Rand
57
*Difficulty*: Medium to Hard
58
59
*Requirements/Prerequisites*: TODO
60
61
*Expected Outcomes/Deliverables*: TODO
62
63
*Possible Mentors*: Wolfgang?
64 4 Jeremy Rand
65 7 Jeremy Rand
h2. Implement a fully-featured QMI-RIL
66
67
(Project description: TODO.)
68
69
*Difficulty*: TODO
70
71
*Requirements/Prerequisites*: TODO
72
73
*Expected Outcomes/Deliverables*: TODO
74
75
*Possible Mentors*: Wolfgang?
76
77
h2. Implement the missing features of Samsung-RIL
78
79 12 Jeremy Rand
Samsung-RIL is the RIL (Radio Interface Layer) that many Replicant devices use to communicate with the modem.  It is a free, reverse-engineered replacement for the proprietary RIL that the Samsung phones ship with by default (which has been found to have backdoors). Right now, Samsung-RIL mostly implements only the protocol features that are absolutely necessary for the phone to be operable.  As a result, many more rarely used protocol features are unimplemented, which decreases functionality compared to the proprietary RIL.  You can help by implementing the missing features of Samsung-RIL.
80 7 Jeremy Rand
81
*Difficulty*: TODO
82
83
*Requirements/Prerequisites*: TODO
84
85
*Expected Outcomes/Deliverables*: TODO
86
87 18 Jeremy Rand
*Possible Mentors*: Forkbomb (confirmed), Wolfgang?
88 7 Jeremy Rand
89 8 Jeremy Rand
h2. Debug metallic sound in many 3G calls
90
91 14 Jeremy Rand
Replicant has been observed to sometimes exhibit a metallic sound quality when doing voice calls over 3G (2G works fine).  This is problematic, since most users prefer to stay in 3G mode (and some carriers are dropping support for 2G).  You can help by debugging the issue.
92 8 Jeremy Rand
93 10 Jeremy Rand
*Difficulty*: TODO
94
95 8 Jeremy Rand
*Requirements/Prerequisites*: TODO
96
97
*Expected Outcomes/Deliverables*: TODO
98
99
*Possible Mentors*: TODO
100
101 9 Jeremy Rand
h2. Optimize power consumption in external WiFi adapter firmware
102
103 16 Jeremy Rand
The USB WiFi adapters used with Replicant are originally intended for laptops, not phones.  As a result, they tend to consume a lot of power.  This poses two issues: they can adversely impact battery life, and they can randomly stop working completely (e.g. needing to unplug and replug the adapter periodically to keep it operational).  You can help by optimizing power consumption in the WiFi adapter firmware.
104 10 Jeremy Rand
105
*Difficulty*: TODO
106 9 Jeremy Rand
107
*Requirements/Prerequisites*: TODO
108
109
*Expected Outcomes/Deliverables*: TODO
110
111
*Possible Mentors*: TODO
112
113 17 Jeremy Rand
h2. Upgrade the WebView
114
115
Replicant uses an old version of the Android WebView (from circa 2015).  This is a security and functionality problem.  You can help by getting a more recent WebView working on Replicant.
116
117
*Difficulty*: TODO
118
119
*Requirements/Prerequisites*: TODO
120
121
*Expected Outcomes/Deliverables*: TODO
122 1 Jeremy Rand
123
*Possible Mentors*: TODO
124 18 Jeremy Rand
125
h2. Port the Galaxy S3 and Galaxy Note 2 to Mainline Linux
126
127
The Galaxy S3 and Galaxy Note 2 currently use a vendor fork of Linux, which poses a maintainability and security issue.  Forkbomb has done some initial work on porting these devices to use mainline Linux.  You can help by continuing this work.
128
129
*Difficulty*: TODO
130
131
*Requirements/Prerequisites*: TODO
132
133
*Expected Outcomes/Deliverables*: TODO
134
135
*Possible Mentors*: Forkbomb (confirmed)
136 17 Jeremy Rand
137 3 Jeremy Rand
h2. Projects mentored by other organizations
138
139
h3. llvmpipe ARM optimizations
140
141
(Project description: TODO; can probably be adapted from https://redmine.replicant.us/projects/replicant/wiki/GraphicsResearch#llvmpipe .)
142
143
*Difficulty*: TODO
144
145
*Requirements/Prerequisites*: TODO
146
147
*Expected Outcomes/Deliverables*: TODO
148
149
Mesa would probably be a good organization for mentoring this project.  If interested in working on this project, please propose it to Mesa.  (We're happy to help.)