aboutsummaryrefslogtreecommitdiffstats
path: root/markdown/2016_08_replicant-6-early-work-upstream-work-and-f-droid-issue.md
blob: 2b15b55c8e5e6907aa5f1603cfae9f9b8c8ee9de (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
date: 2016-08-08T17:39:16+00:00
title: Replicant 6.0 early work, upstream work and F-Droid issue
authors: GNUtoo
tags: Replicant news, GNUtoo
licenses: CC-BY-3.0 OR CC-BY-4.0
---
**Replicant 6.0 early work and associated efforts:** At Replicant, things are
moving again: Replicant is being updated from Android 4.2 to Android 6.0 by
Wolfgang Wiedmeyer. The status and feedback takes place [in the forums][1]
before it is reviewed and integrated in the official Replicant repositories.
This work is currently being done for the Galaxy S 3 (I9300).

At the same time, Wolfgang Wiedmeyer is also working on the following for
Replicant 6.0:

* Graphics acceleration with mesa and llvmpipe: while this still uses the
  CPU, it should be faster and more feature-complete than the default
  implementation. This will hopefully fix some of the previously non-working
  applications in F-Droid.

* Building the toolchains: Replicant has always used some pre-built
  toolchains and utilities. Building such tools and/or using the ones from
  GNU/Linux distributions will make Replicant more trustworthy.

Replicant 6.0 should also bring full device encryption and SELinux support.

**Future directions:** In the future we also want to be able to support the
upstream Linux kernel for devices with a minimal amount of effort. This was
made possible thanks to:

* Android becoming more standard: it now requires very few changes to the
  upstream Linux to work. Linux also received changes that made it possible.

* The fact that the amount of work required to mainline a device in Linux
  has drastically been reduced, for some of the devices we target.

Devices such as the GTA04 and the Optimus Black are good targets for upstream
Linux kernel support. They also allow running free bootloaders.

In a similar fashion, we also want to be able to support upstream bootloaders,
such as U-Boot.

We hope that this will allow us to have longer term support for such devices.
Even if Replicant is unable to continue to support such devices in the future,
having them supported by upstream software will potentially enable users to
use them with other free software distributions.

We have thus started the work to support devices such as the Optimus Black and
the Kindle Fire (first generation) in upstream Linux and U-Boot. Other
projects and individuals are also very actively adding support for other
devices, such as Allwinner tablets, that will benefit Replicant eventually.

**Helping Replicant by contributing to F-Droid:** Replicant is supported,
recommended by the FSF and [listed as a fully free software distribution][2]
that respects the [GNU Free System Distribution Guidelines][3], along with
other GNU/Linux distributions such as [Trisquel][4] or [Parabola][5].
Replicant  
ships the F-Droid package manager in its images.

F-droid is committed to distributing only free software, and it does. However
some of it does not comply with the [GNU Free System Distribution
Guidelines][3].

Practically speaking some of the applications F-Droid distributes:

* [Promote non-free software][6]

* [Depends on non-free software][7]

While the list of such anti-features is displayed in red when selecting an
application in F-Droid, applications with anti-features are still listed aside
compliant ones. This is also quite confusing since free software isn't
expected to contain  
such anti-features in the first place.

It took Replicant a long time to realize the issue, this is due  
to its developers being very busy, to the fact that the anti-feature  
display is confusing and that there was no clear smoking gun.

After an investigation, that was delayed due to the lack of time, a  
smoking gun was finally found, and [a bug report][8] was opened on the
Replicant side.

At FOSDEM 2016, the issue was discussed with F-Droid developers in order to
find a way to fix it. On their side, F-Droid developers also opened [a bug
report][9]. Due to various reasons, progress was very slow and we recently
learned that efforts to fix this issue came to a stall.

Replicant developers are more dedicated and used to working on system
programming than writing or modifying Android applications. They are also
really busy doing so. However, some individuals wanting to help Replicant may
be able to work on Android applications, with some time to do so. This is
exactly the kind of skills required to solve this issue in F-Droid. Getting it
fixed is crucially important for Replicant.

If you're interested to jump-in and help resolve this issue, please get in
touch with us or with F-Droid developers directly to get directions on how to
get started.

 [1]: <https://redmine.replicant.us/boards/21/topics/12057>

 [2]: <https://www.gnu.org/distros/free-non-gnu-distros.html>

 [3]: <https://www.gnu.org/distros/free-system-distribution-guidelines.html>

 [4]: <https://trisquel.info/>

 [5]: <https://www.parabola.nu/>

 [6]: <https://f-droid.org/wiki/page/Antifeature:NonFreeAdd>

 [7]: <https://f-droid.org/wiki/page/Antifeature:NonFreeDep>

 [8]: <https://redmine.replicant.us/issues/1629>

 [9]: <https://gitlab.com/fdroid/fdroidclient/issues/564>