
The Quest to Build a Truly Free Version of Android - Tsiolkovsky
http://www.wired.com/wiredenterprise/2013/10/replicant/
======
gilgoomesh
I can't see this being a pleasurable user-experience. Ever.

I think this highlights the fact that it would be much easier to start with
open _hardware_ and install something intended to be fully open like Ubuntu
Touch on it. Unless you do that, you're going to need to reverse engineer
every device driver for every piece of phone hardware – you'll never finish
and the user will always be cut off from some percent of their phones features
and the rest might not work correctly.

I guess that a pleasurable user-experience might not be the end-goal and maybe
this is fun because hacking.

~~~
fosap
Freedom and convenience are virtually always antagonists.

~~~
nilved
That isn't true, and it's dangerous to say it is.

~~~
fosap
Slavery always requires less thinking.

~~~
Zuider
The road to slavery requires less thinking. Once you get there you need all of
your wits just to survive.

------
Zigurd
I help people make things using the Android OS - things that are not phones
and that do not include the Google ecosystem. I have also been involved with
using code from AOSP to create Android compatibility for non-Android OSs and
in convincing OEMs of non-Android system to use it. In my experience I have
traced the boundaries of what Google allows people in general to do, and their
OEM partners to do with Android.

This is roughly how it goes: If you want to use AOSP for anything, including
competing with Google, go for it. Google won't sue you, and won't even FUD you
the way Sun did and Oracle continues to do if you want to use an open source
Java implementation.

If you make Android devices that use Google's logo and proprietary code and
ecosystem, you can stuff Android full of crapware that your carrier partners
want, and that your product managers delude themselves into thinking gives you
"differentiation," even though Google really does not want that to happen.
What you can't do is compete with Google, or take a cafeteria approach to
using Google's apps and ecosystem. You are in or out. No in-between.

AOSP is Apache licensed and Google adheres to the letter and spirit of that
license. Both B&N and Amazon compete with Google using AOSP code and there has
never been a hint of FUD aimed at them for doing so.

Many China-market phones with China-based ecosystems are based on Android.
Here is where the lines blur a bit: China-based Lenovo gets away with making
AOSP-based products for the China market with non-Google ecosystems and they
make Google-logo Android phones. Somewhat famously, Taiwan-based ASUS was
slapped down by Google for trying to do, as far as I can tell, exactly the
same thing. There are also Google OEMs who make OPhone handsets. So Google
hasn't been 100% consistent regarding OEMs with one foot in the mainland China
market and one foot in the Google ecosystem.

It also appears that OEMs licensing other OSs, notablely Windows Phone, get no
retaliation from Google.

I also dealt with Sun, trying to get a license to use Java in a VoIP-oriented
OS. They were utterly opaque bastards about the licensing process, cost, etc.
and about their position regarding Java patents and open source
implementations. to the point where we concluded they could go to hell and we
would use an open source Java implementation. Using AOSP is by contrast FUD-
free.

~~~
fpgeek
It wasn't ASUS that got slapped down, it was Acer. ASUS, Samsung, Huawei (and
probably others beyond Lenovo) have had no trouble distributing AOSP-based
products without Google services. Acer's situation was different for two
reasons:

1\. Aliyun (Acer's partner in this) was distributed pirated apps via their app
store, including pirated Google apps:
[http://www.androidpolice.com/2012/09/15/aliyun-app-store-
con...](http://www.androidpolice.com/2012/09/15/aliyun-app-store-confirmed-to-
be-distributing-pirated-android-apps-many-from-another-pirate-site/)

2\. Google claimed that the Android-based OS that Acer and Aliyun had built
did not pass the standard Android compatibility tests, in violation of Acer's
agreements with the Open Handset Alliance (a prerequisite for their license
for the various Google apps). I'm not sure if a third-party verified this
claim before the project was killed, but it's plausible. And we do know that
most of the non-Google products OHA members distribute in China should pass
those same tests. They're usually the same as products the member is selling
outside China with Google services, with the exception of China-specific
radios.

~~~
Zigurd
Yeah I was wondering if I got the two confused. You are correct, it was Acer.
The other points you bring up are also correct. But there is more:

If Aliyun does not pass CTS, it's good enough to run those stolen apps. Also,
as I pointed out, other OEMs get away with having both Google logo phones and
Aliyun phones. (Aliyun was the Alibaba OS, and has been "spun out" though it's
hard to tell if that is a meaningful separation.)

Aliyun is certainly not the only app store selling apps that were never
submitted by the developer for distribution. It's a commonplace form of
sleaze.

~~~
fpgeek
> If Aliyun does not pass CTS, it's good enough to run those stolen apps.

I don't think we know that. Just because APKs were listed in a store doesn't
mean they did anything useful when installed. I don't recall any evidence one
way or the other about how well the various pirated apps actually ran on an
Aliyun device. If you know of any, I'd appreciate a pointer.

Separately, I agree that Aliyun's sleaze is relatively common, but so what?
I'm not suggesting Google should (or even can) proactively police every app
store out there. I'm just saying Google is well within their rights to come
down hard on one of their partners working with a store that pirates Google
apps, wherever it happens to be. Honestly, I'm still puzzled about why Google
leaned so much on compatibility in their response. I'd have thought that the
issues with unauthorized distribution of Google apps were simpler and more
clear-cut.

~~~
Zigurd
I have seen Aliyun handsets. Like other China-market AOSP-derived systems,
Aliyun is Android without Google's ecosystem. It will run any Android app up
to the API level used in Aluyun you put on it. The claim that it's not CTS
compliant is, at best, splitting hairs. No specific incompatibility has ever
been claimed, and no set of apps have been shown to fail.

Google is free to allow or deny anyone access to their proprietary app suite
for Google-logo Android handsets whether they are consistent or arbitrary
about it. I'm merely pointing out that that some OEMs, like Huawei and Haier,
get away with building both Google-logo Android handsets AND Aliyun handsets,
while others do not.

Like many Linux-based products in China, there are other things that are wrong
with Aliyun in addition to dubious app market practices. It doesn't observe
open source licenses, for one thing. But Aliyun being "bad" isn't the point.

I am just pointing out that Google is usually, _but not always,_ consistent
about enforcing a policy that Android OEMs can't participate in AOSP-based
products that compete with the Google ecosystem. In some cases the OEM
relationship appears to be more important than a consistent policy, or perhaps
licensing regulations differ in the PRC.

------
AndrewDucker
One of the things I love about Android is that you _can_ do this with it, if
you so wish.

You can't build a Truly Free Version of Windows Phone. You can't build a Truly
Free Version of iPhone.

But if Android doesn't do what you want, then you can fork it, tweak it, and
turn it into something that does!

~~~
eknkc
If it happens that the music player, dialer, home screen, messaging app are
all closed source Google apps (just like now, or will be in a while), then
what? You can create a non-google experience aosp build (meh..) or tweak the
filesystem caching parameters or something like that at best.

I think Google is doing what's best for Android, but Android is not open
source anymore.

Firefox OS might be a better choice for open source comminity to spend time
on. I haven't been following latest development, how's the hardware situation
on FF OS?

~~~
bad_user
The music player, the messaging app, the home screen ... these are not part of
the operating system and are easily replaceable.

I actually have an older phone (a first-gen Galaxy S) on which I installed
Cyanogenmod without Google's services, which is basically stock Android. In
spite of opinions to the contrary, the phone is quite usable without any of
Google's services on it.

I've got Firefox for web browsing, OsmAnd for maps, Apollo for playing music.
All 3 are open-source apps. At some point I even installed Amazon's App Store
on it, to be able to get some proprietary apps, like Facebook, installed. But
then I realized I don't need all that bloatware, as the web versions work
fine.

You should try out this experiment if you've got an extra Android lying
around. After you find apps suitable for whatever it is you want to do, it
really is OK. The level of polish is not the same as with the Google-enabled
Android, but it's still much, much better than the experience you get on low-
budget non-Android smartphones.

People forget that Amazon already forked Android and that without Android they
wouldn't have been able to deliver Kindle Fire. That's the power of open-
source, even if you choose to deny it.

~~~
dylz
Looking at this strictly from a user (not developer) POV, I searched for some
of the apps you mentioned. OsmAnd looks positively terrible from a UI/UX
perspective, and seems borderline unreadable[0].

I'm actually curious as to why F/OSS applications that aren't extremely high
profile or commercially backed (Firefox) seemingly tend to have UI/X as what
is probably the last possible priority ever.

[0] [http://osmand.net/en/screenshots-
menu.html](http://osmand.net/en/screenshots-menu.html)

~~~
andor
_OsmAnd looks positively terrible from a UI /UX perspective, and seems
borderline unreadable_

Yes, the renderer needs some work both in terms of prettiness and speed. It's
not as polished as Google Maps, but it's definitely usable. That the map data
is from OSM is a feature by itself, OSM maps are often more detailed than what
you get from Google, and you can download all data, which is great for
traveling. It even supports navigation.

------
aray
Radio (cellular) drivers are notoriously closed source and proprietary. Looks
like they're reverse engineering the existing radio drivers and re-
implementing them as open source[1]! Thats very interesting.

They don't describe how they're doing the reverse-engineering though.

[1]
[http://redmine.replicant.us/projects/replicant/wiki/Libsamsu...](http://redmine.replicant.us/projects/replicant/wiki/Libsamsung-
ipc)

------
c3kwue
Unfortunately Replicant does not run on my phone. When time comes to purchase
a new one, I will probably get a compatible one. Most of the apps I use
already come from the F-Droid repository
[https://f-droid.org/repository/browse/](https://f-droid.org/repository/browse/)
as there is a lot of fantastic software available there.

I don't like it when threads end up as list of lists but some recommendations
that might not be well known:

 _Aard_ is a offline wiki(pedia and others) reader. _AFWall+_ is a firewall to
give/revoke internet access to apps. It is a fork of DroidWall which went
inactive. _Document Viewer_ is the best PDF reader I know and it's free
software, hooray. It can automatically cut off white margins, you can set your
own touch controls etc. _Gibberbot_ is a great XMPP client. I tested many but
this one did not randomly stop receiving messages like all the others did.
_GnuCash_ for keeping track of finances. _Mirakel_ is a Todo app which I
switched from Astrid to. Astrid is free software too but relies on several
non-free libraries from what I know. Mirakel seems more concerned with
privacy. _OsmAnd_ for offline maps. And of course you can get APG, AdAway,
ConnectBot, FBReader, K-9 Mail, ScummVM, Terminal Emulator etc. from F-Droid.

~~~
kriro
With the Nexus 5 out, the 4 might drop in price and make for a good "play with
Ubuntu phone" phone :)

[https://wiki.ubuntu.com/Touch/Install](https://wiki.ubuntu.com/Touch/Install)

~~~
Create
Really BAD: has too much proprietary things and the hardware is bad for
freedom: modem transport is over HSIC (high speed USB), but it controls the
GPS (included in the modem chip), audio and perhaps NAND too

[http://redmine.replicant.us/projects/replicant/wiki/TargetsE...](http://redmine.replicant.us/projects/replicant/wiki/TargetsEvaluation)

~~~
happycube
Looks like you want a Galaxy Nexus or a Samsung SOC S1-S3.

------
qwerta
There is one more dimension: surveillance and security. Closed source phone
could have spyware. It also does not get security updates just 6 months after
release.

I simply want some basic privacy and phone which lasts more than 2 years.
Commercial vendors failed here, perhaps OSS will deliver.

~~~
rimantas
Will OSS also deliver cell towers? Otherwise the talk about privacy does not
make much sense.

~~~
bad_user
OSS can deliver good encryption solutions and can greatly enhance security.

No solution is perfect, but if you read the trail of Snowden-branded leaks and
the opinions of security experts, the greatest weapon that the NSA possess are
the vulnerabilities and backdoors planted on people's own devices. Plus, NSA
is not the only enemy, or the enemy most of us should fear, but rather
organized crime syndicates or business competitors, which for many of us are
much more immediate threats.

You're making the mistake of thinking that just because all security solutions
are imperfect, they are somehow equal. You're wrong!

------
brudgers
The critical path for free software runs through open sourced hardware
specifications. Otherwise, a.project like replicant can never hit enough of
the moving target to gain the critical mass needed to take off.

~~~
chatman
If the few pieces of hardware drivers, that still remain proprietary, are
reverse engineered, then everything will be fine for a sustained prominence of
Replicant/Free Android.

~~~
Someone
Sustained only for as long as hardware it is running on can be bought. In
practice, it will be replaced with new hardware with new proprietary drivers
really soon, making additional reverse engineering necessary.

------
gegtik
Replicant's maintainers have a real attitude problem imho
[http://redmine.replicant.us/issues/669](http://redmine.replicant.us/issues/669)

------
tete
I wish this would become become big. Something I wonder about the closed
hardware drivers.. I am sorry, no hardware hacker, but what I always wonder is
whether or not something like ReNouveau for Nvidia Graphics Cards would also
be helpful to such projects. They did a really great job at reverse
engineering and writing nice drivers. I think there would be lots of people
running something like that, even when they don't use Replicant, but would
love to support them.

~~~
bad_user
About Nouveau, on a 2 years old laptop I have with an Nvidia card, I always
had problems with Ubuntu and Nvidia's proprietary drivers, up to the point
that I got so sick of it as to buy a new laptop without an Nvidia card on it.
But then I tried out the Nouveau drivers and oh my, the problems vanished. The
Nouveau drivers are right now better than the official drivers for some Nvidia
cards. And they'll never vanish, even if Nvidia decides to drop support for
older GeForce cards.

~~~
thelukester
On my 2-3yr old laptop w/ a 8600GT, I agree that for 2D only X11 apps, Nouveau
drivers seem to have less issues with tearing and drawing than the proprietary
drivers. But once you want to need power management to run on battery, play
games, or watch HD videos, the Nouveau are buggy, glitchy, and useless.

I have an extensive Steam library and while most of the Linux games work fine
with proprietary, they are unplayable with Nouveau. I really hope Valve's
commitment to Linux motivates Nvidia to put some resources into their open
source drivers like AMD and Intel have done. If Nouveau was my only option
under Linux, I'd switch to Windows.

Even for non-gammers, how can you seriously recommend laptop drivers that
don't offer critical features like power management and video out?

------
Semaphor
> But CyanogenMOD gets around the restrictions placed on redistributing
> Google’s apps and other proprietary code by backing up the original copies
> from a user’s phone before installing the replacement operating system.

Do they?

My understanding was, that they come with some stuff that's released by google
as closed source + the gapps package.

~~~
anon1385
That used to be the case but Google got their lawyers to send a Cease and
Desist to CyanogenMod: [http://www.androidcentral.com/google-sends-cease-
desist-orde...](http://www.androidcentral.com/google-sends-cease-desist-order-
cyanogenmod)

~~~
Semaphor
No, I'm talking about "backing up the original copies from a user’s phone".

~~~
zmmmmm
That, actually, was where it started, and where, philosophically it still
rests today. In practise, people now just blow away their original gapps and
download a separately created gapps package from some free download service
and flash it. But in theory, they could have (legally) extracted all the apps
from their own phone, saved them, then flashed them back on again themselves.
This theoretical possibility is what keeps people using gapps with custom ROMs
(just barely) on the legal side of the thin line dividing fair use and
outright copyright infringement.

------
Mikeb85
What I'd rather see is more work put into Meego/Sailfish or Firefox OS. Maybe
introduce a native app layer for Firefox OS, that would be pretty sweet. I'd
add Ubuntu Phone here too, except it runs like shit and is pretty much useless
at the moment. Firefox OS is already way more polished...

As for Android, I don't think the chip vendors are too interesting in opening
up their drivers, and it's not like Google will ever open up their services
(and why would they?). Pretty much everything in Android that doesn't hook up
directly to Google is already open anyway...

------
ravestar
This project is dead on arrival. You cannot build solid structures on moving
ground. We need open hardware/parts/DIY kits easily accessible first.

~~~
vidarh
Linux (and other open OS's) have had to fight this from the very beginning. It
may seem DOA now, but then Linux did too for a lot of people.

And while we still need the occasional closed source firmware blob or driver,
there are now also systems where we can replace every little bit from the BIOS
upwards with open alternatives.

In the mobile space, RockChip has released sufficient source to allow Ubuntu
to be ported to the RK3188 CPU's (quad core Cortex A9), so there's movement.
Given that RockChip is one of 3 CPU providers dominating the Chinese Android
devices, if this helps their market share you can expect MTK and AllWinner
(the two other main CPU providers) to be more open too.

That does not mean these systems are open - a lot of pieces still will be
locked down often because they license GPU's etc. and don't have the rights to
open up everything, but several of the Chinese/Taiwanese manufacturers in fact
do seem to want to make custom builds available (not least because a _lot_ of
these devices ship as XBMC devices - many distributors now ship with XBMC by
default, and at least one offers to flash their Android sticks with plain
Linux + Linux version of XBMC instead of Android)

------
joeblau
I feel like history, and unfortunately mistakes, are repeating themselves. I
love *nix'ed based OSes but the developers on those platforms are all self
serving. This includes the developers that claim to make a version that is
going to be "Truly Open/Free". These developers are coming in with pure
intentions but once they hit roadblocks, their sentiment will change.

With current Linux distros, you have 3 major roots: Debian, Slackware and
Redhat. From those, 100's of children have spawned which fragments the
community, creates factions, divides, conquers and creates this "crab in a
bucket" mentality. Meanwhile Microsoft or Apple come along with one vision and
just clean up the market. What I want to see, and what I think would work, is
Google championing this effort in trying to make a truly free version of
Android.

------
darklajid
I'd love to use something like this. But so far that's not going to happen
(and it seems it won't ever be possible).

Ignoring the fact that most devices I'd like to put this on (I have some old
handsets, I'd like to put this on my wife's phone etc.) aren't supported -
that's fixable - I'm unable to accept a mobile OS without Wifi support.

And I have a hard time thinking of a solution to this problem. I'd love to
hear something different, would be grateful if someone could prove me wrong,
but I'm really pessimistic that this will change..

All the other tradeoffs are fine. Camera, GPS - not an issue. But data
connectivity and Wifi are the basic requirements to use my devices.

------
Mikeb85
Another thing that needs to be said, is that the existence of proprietary
software on Android doesn't make Android any less 'free'. Just like the
existence of proprietary software like Chrome, Flash, Steam, etc... doesn't
make my openSUSE system any less free...

------
mfincham
So if I want to run this today and get the best experience, what phone should
I buy?

------
laureny
I wish the talented team behind Replicant would choose to put their energy
toward something that will actually be useful, because as it stands right now,
Replicant is guaranteed to never go anywhere.

The main problem with Replicant is that it's solving a problem that users
don't have. Ask any phone user (any, not just Android) if they care whether
their phone is running on free software and either they will have no idea what
you're talking about or they will tell you "Not really, I just want my phone
to work".

The Replicant team (like the FSF) is trying to solve a problem that only they
have.

Naïveté about how the world works is only cute for so long.

------
frank_boyd
Great! That should keep Ubuntu/Mark Shuttleworth honest, in the mobile space.

------
AsymetricCom
A standardized open android just means easier rooting by hardware. No, you
don't want to write to that location, mr. software, how about I link you a
dialog about violating your EULA instead?

