Librephone project announced

The Free Software Foundation has recently announced a project named „Librephone“ (sometimes also „LibrePhone“; they don’t seem to have come up with a consistent spelling yet.)

From their FSF40 recap:

Librephone is a new initiative by the FSF to bring full computing freedom to mobile computing environments. The LibrePhone Project is a partnership with Rob Savoye, a developer who has worked on free software (including the GNU toolchain) since the 1980s. “Since mobile phone computing is now so ubiquitous, we’re very excited about LibrePhone and think it has the potential to bring software freedom to many more users all over the world.”

This sounds a little ominous and pretty vague. What could the project Librephone be? A new OS? Some other piece of software? An umbrella term to channel the FSF’s efforts towards a mobile ecosystem with more user freedom?

Regardless of what one might think of the FSF, I’m curious to know whether this is a thing I’m supposed to be interested in.

And: IANAL, but isn’t the name „Librephone“ dangerously close to Purism’s trademarks territory?

8 Likes

Yes and it’s up to Purism to show if they (I guess if Todd) believes more in the money or in the overall mission for more user freedom. Maybe someone should mail them to ask if they’re aware of.

I’m not so much interested in a new device, since I bought my one to keep it for long time to reduce eWaste. But it could be an interesting thing. I want to know more about.

3 Likes

I asked in the FSF associate members forum. Attendees say that the project was presented as an effort focused on reverse-engineering some of the blobs which stay in the way of using phones with only libre software. It is not a new OS or a new product. A website is expected soon with more details. So, we may have to wait a little for precise information about the project’s objective.

11 Likes

Why is this in General > Round Table? This has direct consequences for Librem 5 and should be discussed more extensively here. Please move it to Hardware > Librem 5 .

Discussion on Hacker News: FSF announces Librephone project | Hacker News

My comment:

Librem 5 is the only smartphone running an FSF-endorsed [0] operating system. FSF didn’t even mention it or provided any reasoning for supporting a Google-controlled operating system - despite recommending Librem 5 earlier [1]. What am I missing? Should I stop my support of the FSF?

[0] Why FSF Endorsing PureOS Matters – Purism

[1] Ethical Tech | Giving Guide

5 Likes

That is my understanding too – it is a reverse-engineering project. The goal is to reverse engineer the blobs used by a generic AOSP system with the goal that those systems be fully free (both OS and drivers+firmware). Of course, once there are Free drivers they could also be used by PostmarketOS, Mobian and others.

I will point out that it is a never-ending battle — new phones/devices will require new efforts — until the phone manufacturers begin to provide Free drivers themselves.

1 Like

Because according to the rules, that was the correct place by the time I made the post.
Now that we know more about what Librephone is, moving the topic is in order.

1 Like

This is pretty misleading.

  1. If this project succeeds, we will be able to run Mobian/PureOS only on that phone model – in theory, given infinite resources. The final drivers will only work for Android – the OS for which Google completely controls the direction of development. Serios effort will be needed to run PureOS on that device.
  2. Librem 5 has all FLOSS drivers, so one only needs to reverse-engineer the firmware. It’s not only less effort but also the resulting code will be compatible with all operating systems, including Android.

What is the point to choose any Android phone?

2 Likes

Not true. If you have a Free driver for Android, it would not be hard to adapt it to a general Linux kernel as a loadable kernel module. Most Android drivers implemented as loadable kernel modules ever since GKI and project Treble.

Why would you think that “they would only work for Android”? You must think that the Android kernel is vastly different from upstream Linux. They aren’t anymore (as the result of GKI and other projects).

Not quite true. A particular reverse-engineered driver would be applicable to phones that had that same hardware (and that is different than being restricted to the exact phone). Lots of phones share the same SoCs and a FLOSS video driver would be applicable to any phone that shares that SoC.

Also … this point is exactly what I meant when I said: “I will point out that it is a never-ending battle — new phones/devices will require new efforts — until the phone manufacturers begin to provide Free drivers themselves.”

Did you not understand that, or just choose to ignore it in order to be combative???

It’s not IMO.

Furthermore, you seem to think I’m advocating for the project. All I was trying to do was describe the project. Anything else is something that you, a self-proclaimed “FSF lover” (if I understand your username), need to take up with the FSF. It’s their project. Argue with them if you must. But it’s my understanding that they are the ones that are focusing on reverse engineering Android drivers and phone firmware.

3 Likes

The reality is that you are both speculating. Since this is the announcement of a project, not the announcement of any fruit, we don’t know how applicable / how useful the results of the project will be outside of the specific environment that the project was working within - or even whether anything worthwhile will come of it.

One thing is certain though, as you say:

In fact, some manufacturers may take exception to this project and deliberately change interfaces on an unnecessary basis as new models come out - so that they are in control over what you can run on the device that you foolishly think you own.

And as far as any firmware is concerned that has to be loaded into components other than the CPU, they could even go “the full Intel” and encode the firmware in such a way that it cannot feasibly be reverse engineered.

Because “freedom is slavery”, don’t you know? :wink:

4 Likes

We’re speculating about how useful the project would be. But, of course, that’s true about any opinion about what the result will be. It’s “the future” and, since my time machine doesn’t seem to be functioning, that requires speculation.

I will say, though, that we’re gaining more information about the intent of the project. I’ll put this link here: FSF announces Librephone project — Free Software Foundation — Working together for free software . Some quotes:

Librephone is a new initiative by the FSF with the goal of bringing full freedom to the mobile computing environment.

And in regard to its relationship to Android specifically:

Practically, Librephone aims to close the last gaps between existing distributions of the Android operating system and software freedom. … He is currently investigating the state of device firmware and binary blobs in other mobile phone freedom projects, prioritizing the free software work done by the not entirely free software mobile phone operating system LineageOS.

and, further:

… I looked for collaborators to reverse-engineer and replace those proprietary modules with fully free software, for at least one modern phone."

Triaging existing packages and device compatibility to find a phone with the fewest, most fixable freedom problems is the first step. From there, the FSF and Savoye aim to reverse-engineer and replace the remaining nonfree software. Librephone will serve existing developers and projects who aim to build a fully functioning and free (as in freedom) Android-compatible OS.

And I want it to be completely clear: This is not me advocating for this project or Android. This is the FSF describing their view. In that sense, I’m trying to provide references to what the project is intended to do. If you think the FSF’s intent is misguided … take it up with the FSF.

2 Likes

So we’ll just “wait and see” for now? i.e. for whether it has any relevance or benefit for the Librem 5.

For sure, I would love for them to tackle the BM818 firmware :wink: - so that some gremlins can get fixed.

1 Like

Should we ask them about that? We could reach them on the IRC channel which they indicated on their new webpage: https://librephone.fsf.org/ Or should someone from Purism reach out to them instead? So, should we write to Purism about that?

It worth noting that, according to their FAQ, they are at the stage of defining the project. See: librephone Project - FAQ

2 Likes

Up to you.

At one time, I was able to use an Android app that was written by someone else (from the App store), to create a chroot directory on my Android phone and then within that chroot directory, I installed a version of opensource Debian Linux that had been compiled to run on ARM7. Everything worked great in Debian on that phone, including the Desktop and Linux apps, except for the USB port which was pretty much dead to the Linux. After using a toothpick on the desktop for two hours I started getting a headache from squinting. So I moved to a remote display from my Linux PC to work with it. So only some drivers are the issue. I never got that USB port working on that phone in Linux. But all of the other drivers (mouse, display, audio, etc..) just worked. The op-codes and operands for ARM will work just as well in Linux. I even found an x86 compatibility layer called Exagear (which is no longer available), to translate to x86, installed wine, and got Notepad taken from Windows working on a $40 rooted Android phone. Anything will run on an Android phone. Getting access to drivers may or may not be possible.

My employer has a proprietary program that was built to run in Windows but is not supposed to run in Android or anything else. I brought it up on that old $40 Android phone just to see how the guys that built the program would respond when they saw the company logo and opening screen come up on my phone. But that’s only far as it would go before it froze up.

2 Likes

Interesting exercise but I think that departs from the philosophy and goal of this particular project. That is, this project intends to be able to run directly a libre mobile phone operating system. That is, what are the gaps between “reality” and “libre” in the mobile phone space and can we close them?

Yes, you should, as you apparently already have a line of communication with them. I would say though that the question should be at a higher level i.e. are they even assessing the Librem 5 as a potential least gappy phone? Or even just: which phones and projects are they assessing?

1 Like

The documentation states their (broad) scope:

See also:

2 Likes

My point in mentioning the compatibility layer was to show that the compatability layer works also.

But my main point is that when you match the processor type to the compiler for the operating system, that any operating system will run on any processor that is capable of high enough execution speeds and throughput of data and operations, often measured in “mega-instructions per second”. The operational codes and operands will always match what is required and then execute. Microsoft only uses Rosetta to switch their OS to ARM because they don’t want to re-write Windows from scratch and they’ve deviated too far from Linux in development over several decades. So the Android drivers may need to be altered to meet what is required for them to work in Linux. But PureOS might be just plug-n-play after recompiling it, in some android phones, until the driver issue comes up.

2 Likes