Can The Proprietary GPS Daemon Be Removed?

Dave Crossland dave at lab6.com
Mon Dec 4 02:06:50 CET 2006


On 03/12/06, Richard Franks <spontificus at gmail.com> wrote:
> I'm happy to support open source development where appropriate. I
> think in this case though, reverse engineering a proprietary driver
> for something as single-purpose as a GPS chip is overly aggressive.
> And to what end?

The point of Free Software is to drive proprietary software out of
existence. I'm sorry to hear that you've been told it was anything
other than that. That is the reason GNU/Linux exists, and will
continue to exist.

If this seems strange, I recommend reading the essay "Why Software
Should Not Have Owners" at
http://www.gnu.org/philosophy/shouldbefree.html

It explains why all proprietary software is wrong, and why we cannot
tolerate it if we're to live in an ethical, sustainable, friendly way.

Since it was written in 1992, it does not cover the issues raised by
the philosophy of "Open Source" that began in 1998 when that phrase
was coined. Here is a short explanation:

-- 8< --
Many users have imbibed the Linux/Open Source philosophy: 'It's fun to
have software that you can share and change', it leads to more
reliable software, it's purely a technical issue.

The Open Source movement *recommends* allowing people to study, change
and redistribute the software because that gives better technical
results, it allows us to develop more powerful software faster. But
that's as deep as they go.

We in the Free Software movement recognise these practical benefits,
and they are nice, but they are not the most important issue. More
important are the ethical and political aspects. To be able to live in
an upright way, treating your friends decently, sharing, helping them
when they ask you for help. Living as part of a society, instead of a
dog-eat-dog jungle.

'Free' in Free Software is free as in "free speech", not free as in
"free beer". You're allowed to charge for copies of free software. But
you're not allowed to stop other people from modifying or distributing
it further.

The philosophy of Free Software is that you are entitled to certain
freedoms in using software. Freedom to study what a programme really
does. To change it – if it doesn't do what you want, to change it so
that it does. And to redistribute copies of it, to share knowledge
with the rest of humanity.

That's why we created a new kind of software license, called the GNU
General Public License (GNU GPL). The GPL uses existing copyright and
patent law to prevent anyone from turning free software back into
proprietary software. Software licensed by its developers under the
GPL must remain free, so proprietary software companies can't pillage
the commons we have created.

We are fighting for freedom here. Non-free programmes don't respect
your freedom, they trample your freedom. They are not inferior
solutions to be accepted until something better arrives. They are
problems, to be solved by replacing them with free software.
-- 8< --
- http://www.opendemocracy.net/articles/ViewPopUpArticle.jsp?id=8&articleId=31

> If it is without the cooperation of Global Locate,
> then surely they can switch off AGPS access if they choose?

Please could you re-explain this - I don't understand enough about how
AGPS works to understand what you mean.

> Even with
> their blessing, how long would we expect it to take to improve upon
> the efforts of their expert full-time development and QA staff who
> surely take into account balancing not only individual unit
> performance but that of the overall network?

Imagine someone arguing that creating a society where we have free
elections, where everyone's allowed to vote, isn't worthwhile because
it will take a long time to overthrow a tyrant dictator and set up a
senate/congress/parliment.

They would be missing the point.

> What if we used the open-source replacement and accidentally crashed
> their servers in the process? What if someone else crashes their
> servers on purpose?

It is naieve to expect that if you offer a network service to the
public, no one will act in bad faith. Spammers and crackers will come
knocking. Therefore I would expect anyone offering network services to
maintain good security practices.

Efforts to create a good-faith Free Software client for a network
service should therefore be unable to crash their servers.

If they need to write better servers, they need to write better servers.

"Security through obscurity" is not a good security practice, and
those who adopt it will certainly get hax0red.

> Opening up the GSM stack holds similar concerns --
> what's the point of having a 100% open (all device drivers and all)
> phone, if you can't use it because the commercial carrier has decided
> that they are tired of a few people abusing their servers?

Please explain how it is possible to stop someone reverse engineering
a protocol and writing a Free Software implementation.

I don't believe its theoretically possible.

> Supporting open source initiatives does not mean that one has to
> methodologically seek to remove or replace all instances of closed
> source.

I'm sorry you've misunderstood what's going on here. That is precisely
what the GNU/Linux operating system developers are doing.

"The idea is not just to produce a scattering of free programs that
were nice to use. Rather, the idea is to systematically build free
software so that one can escape completely from non-free software.
Non-free software is basically antisocial, it subjugates it users, and
it should not exist."
- http://www.zmag.org/content/showarticle.cfm?ItemID=9350

> The AGPS driver will have code or algorithms which, for whatever
> reason, Global Locate wish not to publish. That is their choice, and
> as long as they supply a great product which I derive benefit from, by
> choosing their product I am explicitly agreeing to their terms.

When a developer makes proprietary software available to the public,
the code and algorithms are published. If a developer wishes for them
to be secret, they are foolish to make them available to the public.

Now, its true that its wrong to break the terms of an agreement. But
it is also wrong to refuse to share with your friends.

What can you do? Well, if you have to chose between two wrongs, you
should chose the 'lesser of two evils' - you should break the
agreement, not the friendship.

If you have any unauthorised copies of music, films, fonts other
proprietary software, you agree with this.

But its still not a good thing to do the lesser of two evils, if you
can avoid getting into the dialemma in the first place. And you can,
by not using proprietary software and using Free Software that
respects you instead.

If Free Software doesn't exist for what you want to do, you can write
your own if you know how, or pay someone to write some for you. If
proprietary software is made available to the public, reverse
engineering it to write Free Software replacements is inevitable.

> Dave Crossland <dave at lab6.com> wrote:
> "I'm essentially asking if its theoretically possible that this phone
> might be FSF endorsed - non-free firmware is fine by the FSF as long
> as it is burned onto a ROM and can never present an ethical problem."
>
> So... if the APGS driver was burned onto ROM, and not present as a
> closed-source binary driver which can be updated and improved.. the
> FSF would be happy to endorse a phone which supplied no
> upgrade/bug-fix options to the end-user? Assuming that is the FSF's
> position, and it does seem to this end-user to be following idealism
> to a rather religious extent, then fine - everyone has a choice - this
> individual end-user could care less.

"The ethical issues of free software arise because users obtain
programs and install them in computers; they don't really apply to
hidden embedded computers, or the BIOS burned in a ROM, or the
microcode inside a processor chip, or the firmware that is wired into
a processor in an I/O device. In aspects that relate to their design,
those things are software; but as regards copying and modification,
they may as well be hardware. The BIOS in ROM was, indeed, not a
problem.

Since that time, the situation has changed. Today the BIOS is no
longer burned in ROM; it is stored in nonvolatile writable memory that
users can rewrite. Today the BIOS sits square on the edge of the line.
It comes prewritten in our computers, and normally we never install
another. So far, that is just barely enough to excuse treating it as
hardware. But once in a while the manufacturer suggests installing
another BIOS, which is available only as an executable. This, clearly,
is installing a non-free program--it is just as bad as installing
Microsoft Windows, or Adobe Photoshop. As the unethical practice of
installing another BIOS executable becomes common, the version
delivered inside the computer starts to raise an ethical problem issue
as well."
- http://www.fsf.org/campaigns/free-bios.html

> "However, straight up, while the proprietary GPS daemon is included by
> default, or in fact recommended/mentioned by OpenMoko, its not going
> to be endorsed by the FSF:"
>
> What good is freedom of software, if it comes at the cost of freedom of choice?

Some choices are ethical, some are not.

> So any product with a FSF Endorsement is therefore unable to even
> mention an alternative closed-source replacement which may provide me
> with better functionality?

The primary goal of Free Software is to use ethical, sustainable,
friendly software. It is counterproductive to use non-free software,
even if it provides the illusion of better functionality today,
because it is unethical and thus unsustainable in the future.

> I have to say, as far as PR in the market-place of ideas goes, it
> would make me think twice about picking up a phone with a FSF
> endorsement, as my first thought would be.. how hard do I have to hunt
> if I want to use this phone to its full potential?

If the phone contains non-free software, it cannot be used to its full
potential.

-- 
Regards,
Dave


More information about the community mailing list