LWN.net Logo

Users should be able to run their own code on their own machines

Users should be able to run their own code on their own machines

Posted Feb 10, 2006 16:59 UTC (Fri) by sepreece (subscriber, #19270)
In reply to: Users should be able to run their own code on their own machines by xoddam
Parent article: Open Source's New Frontiers (Business Week)

So, you would say that devices with non-replaceable software should not be allowed to contain free software components?

Basically, you're asking that free software be licensed for use only on free hardware. If the FSF and its supporters wish to make that choice, clearly they may do so. However, they should recognize that in doing so they are radically reducing their potential scope. A lot of device manufacturers will simply switch to something different. The attention from those companies and their developers, and the component developers who want to supply them, will move some fraction of community effort away from GPLv3 projects to projects under other licenses.

I don't know that this makes any practical difference to anybody. Embedded device makers often acquire open-software components under dual licensing anyway. I think it's a tactical mistake, because I think more and more hardware is going to impose constraints on the software it will run, which is going to reduce the audience for software that won't run in such environments (as well as reducing the development community).

That is, I think the availability of execution environments still outweighs the merits of the available free software. But, we'll see...

[DISCLAIMER: I work for a consumer electronics manufacturer. My views, expressed here, are my own and do not necessarily align with the views of that company.]


(Log in to post comments)

Users should be able to run their own code on their own machines

Posted Feb 13, 2006 0:49 UTC (Mon) by xoddam (subscriber, #2322) [Link]

> So, you would say that devices with non-replaceable software should
> not be allowed to contain free software components?

Not at all. I'm saying that replacing the software is a freedom that
should inhere to the end user, not a privilege which can be granted or
withheld at the whim of the hardware vendor.

Hardware-like firmware installations like genuine ROMs can only be
replaced physically, and if the user is technically competent to prepare
a replacement ROM he or she *should* have every right to do so, though of
course opening the case may void any warranty. Replacing software on
EEPROM or Flash memory should be *exactly the same*, and it *is* the same
on non-TPM hardware: the warranty is voided by user replacement of the
software, but nothing else stops the user from experimenting with the
device. The TPM uses digital restrictions, backed by the force of (bad)
law, to prevent the user from modifying the software. If the user
doesn't have a key which allows them to modify the software, the software
is not free, even if it is licensed under GPL v2. Trying to do the same
with software licensed under GPL v3 would be a violation of the licence,
unless the hardware vendor supplied each user with the requisite key.

> Basically, you're asking that free software be licensed for use
> only on free hardware.

No. I'm saying that if the user can't replace the software without loss
of hardware functionality, the software *isn't* free. The GPLv3 draft
merely codifies something which is already a fact, and a loophole in
existing free software licences.

> A lot of device manufacturers will simply switch to something
> different.

That's something that device manufacturers may already do. No such
anti-DRM-licensed software exists yet, so manufacturers are losing
nothing. It is only future versions of software which chooses to adopt
such licence provisions which will be denied those device makers who
continue to deny their users' freedom.

> I don't know that this makes any practical difference to anybody.

By that reasoning, the GPL ever made any *practical* difference to
anybody. The difference is *principled*, not practical, and always has
been.

> more and more hardware is going to impose constraints on the
> software it will run

If the hardware constrains the software to be non-free, it matters to
the free software community.

Users should be able to run their own code on their own machines

Posted Feb 14, 2006 20:24 UTC (Tue) by sepreece (subscriber, #19270) [Link]

OK, should free software not be permitted to be used in contexts where the end user is not permitted to install software? That is, a particular system may not grant administrative rights to all users. Would you say that in such a situation, the owner of the machine should not be able to expose free software to the end users, because those users would be unable to modify it?

Consider a further example where a manufacturer of MP3 players distributes them with only a superuser login allowed to install software and conveys the machines as licensed rather than sold, with the company specifically retaining the right to modify the software. Is that in or out of license terms? [Many people with Tivos get them under terms not unlike that, from cable/satellite content providers.]

Just curious how far the philosophy goes...

Users should be able to run their own code on their own machines

Posted Feb 15, 2006 1:19 UTC (Wed) by xoddam (subscriber, #2322) [Link]

> OK, should free software not be permitted to be used in contexts
> where the end user is not permitted to install software? That is,
> a particular system may not grant administrative rights to all users.

Ah. Yes, if it's not your machine you need the owner's permission to do
anything with it at all. The admins of timeshared systems have every
right to restrict your use of their machines, if only to ensure reliable
operation. You have no 'software freedoms' at all without the
appropriate equipment. In the context of a copyright licence, the rights
you obtain under the GPL to software you use on someone else's machine
are entirely contingent on your right as an unprivileged user to exercise
them.

I see now that this is probably the ultimate reason that the GPL was not
originally phrased in terms of the end-user's four software freedoms: it
would have prevented timeshare administrators from letting their users
run free software while placing usage restrictions on the machine. For
the purposes of copyleft, the licensee is any person who legitimately
obtains a copy of a program. For the purposes of the definition of 'free
software' the user is the person who has the wherewithal to exercise some
or all of the four freedoms; the software is only free for a user if all
four freedoms are both legal *and* within the realm of physical
possibility. The purpose of copyleft on a program is to propagate the
freedoms along with all copies of it -- but a licence can't provide the
freedoms to users who have inadequate access to hardware.

The idea that a network provider can place restrictions on the operation
of network-connected set-top-boxes and telephones is perfectly acceptable
on the grounds of network reliability. But if I *buy* a machine, I want
full usage rights over it. Any conditions on its mode of operation would
have to be asserted somewhere other than the bill of sale: tort law or
network access contract, for instance.

If I'm clearly *leasing* it from another owner, on the other hand, the
lease agreement can place all sorts of restrictions on what I do with it:
it's just like buying time on a computer in an internet cafe, except that
I get to take the machine away with me. Any rights to the software I
receive along with my lease are subject to the other conditions I have
agreed to. This means that, for me as a user of this computer, any
copyleft software on it isn't 'free software' unless the lease permits me
to exercise the four freedoms.

It's up to lessees to accept these conditions, and up to local laws
whether they are actually enforceable. I think (but IANAL, and I may be
thinking by analogy with shrink-wrap software licensing) that there are
some jurisdictions where such a lease is effectively a sale, and some of
the lease conditions may be null and void. Certainly to be enforceable
the lease should be a signed contract, and I suspect it often isn't.

Now I have a feeling that long-term leases of consumer products like
Tivos and music players *should* grant more rights over the product to
lessees than I'd expect from just walking in and sitting down at a
computer in a uni lab, but I can't make a solid argument for it right
now. I will say that such leases are generally intended to effect a
'sale' while limiting the rights of the purchaser over the product, but
in many cases the limits imposed might be reasonable; it's only
objectionable when the limits are unreasonable.

Inasmuch as the lease conditions are enforced by, and used to enforce,
such iniquities as digital restrictions, I think the FSF is right to pull
GPL'd software out of the mix. But the real iniquity which the FSF is
fighting is not merely DRM as a technology; it is the backing of DRM by
the DMCA and its cousins abroad.

As far as I can see there's little copyleft and the idea of free software
can do about unreasonable conditions imposed when someone signs a lease.
Any sufficiently general clause in the GPL which precluded unreasonable
uses of free software in leased consumer products would probably also
prevent reasonable uses in other restricted environments like
public-access networks.

> Consider a further example where a manufacturer of MP3 players
> distributes them with only a superuser login allowed to install
> software and conveys the machines as licensed rather than sold,
> with the company specifically retaining the right to modify the
> software. Is that in or out of license terms?

The licence terms of GPLv2 don't actually mention the hardware, so
compliance with GPLv2 depends on notice of the licence and access to
source -- not on the actual possibility of replacing the software on the
original device. The draft GPLv3 *does* mention the hardware, but only
in the DRM clause with the presumption that nothing besides DRM prevents
the replacement of the software on a device. It certainly doesn't talk
about lease terms, so yes, in the absence of DRM, I think your use case
is draft-GPLv3 compliant too. The device may not employ DRM to prevent
the replacement of any GPLv3'd software, but preventing it in any other
way seems acceptable under the draft version.

All of a sudden I think this is an area that needs some work! We're only
*starting* to learn why Moglen says that protecting freedom is
complicated :-)

Copyright © 2008, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds
Powered by Rackspace Managed Hosting.