Commit graph

788 commits

Author SHA1 Message Date
Bradley M. Kuhn
476a42bf0d In-page anchor links vs. bootstrap's fixed navbar
@keynote2k was the first to point out that the in-page anchor links in
the Guide failed to function properly, due to Bootstrap's fixed navbar.

This mixed solution of CSS and Javascript is the best solution I've been
able to come up with for the problem.  The CSS solution is obviously
preferable, and is used herein for those anchor id attributes in the
Guide that have no href of their own.

Due to problems with using a pure CSS solution where the anchor includes
both an href and a id attribute.  The Javascript solution is specific
for those cases.  I took care not to have them both happen at once, as
they would undoubtedly conflict.

I did a inordinate amount of research about this issue.  Bootstrap's own
page about the fixed navbar:
   http://getbootstrap.com/examples/navbar-fixed-top/

doesn't discuss this issue at all, but there is a bug in Booststrap's
 bugtracker:
     https://github.com/twitter/bootstrap/issues/1768

which discusses the issue.  (However, I don't understand why that bug is
closed, since none of the solutions I implement herein truly solve it).

The most useful page I found regarding this issue is this one:
  http://nicolasgallagher.com/jump-links-and-viewport-positioning/demo

which offers several pure CCS solutions (each with drawbacks and
advantages).  Unfortunately, none of those solutions consider the
question of anchor links that have both href and id attributes, and none
of them work properly in that situation.
2014-11-16 10:23:08 -05:00
Bradley M. Kuhn
fd1d257184 Javascript to shift window for in-page anchors.
In my research about issues with in-page anchors, I found this code that
might be useful.  More details once I've adapted it.
2014-11-15 18:54:59 -05:00
Bradley M. Kuhn
04b105a147 Remove commented out test code. 2014-11-15 18:42:26 -05:00
Bradley M. Kuhn
ab40337b50 Correct URL: s/gpl-compliance-tools/copyleft-org/
The name of the Gitorious project was renamed at the launch of
copyleft.org.  Therefore, the former URL is no longer valid.
2014-11-13 13:32:29 -05:00
Bradley M. Kuhn
58a88e5cd8 Denver should be listed in authors section.
Denver wrote much of the ThinkPenguin CCS chapter and should be
so-credited as an author, not just merely in the copyright notice.
2014-11-13 13:31:19 -05:00
Bradley M. Kuhn
5a71e2bdc4 Quoted text seemed to prominent.
In the HTML rendered versions of the guide, the quoted text, using the
previous CSS herein include, seemed to prominent.

Hopefully, this change will resolve that issue.
2014-11-13 13:25:22 -05:00
Bradley M. Kuhn
2c0d78bdae Merge 'master' into current 'next' branch.
There was one minor change to the title page on master that isn't
represented on 'next'.  While I could have rebased, I chose to merge so
I didn't have delete the publicly published 'next' branch on gitorious
like I have to do when I rebase.
2014-11-13 13:10:12 -05:00
Bradley M. Kuhn
d2e67f88c3 Spell check and correction.
Seems there were a lot of correctly spelled words missing from the
LocalWords lists as well.
2014-11-13 13:05:33 -05:00
Bradley M. Kuhn
20f710d605 s/unknowledgable/uninformed/
I'm not even sure unknowledgable is a word, and uninformed does just as
well.
2014-11-13 13:03:24 -05:00
Bradley M. Kuhn
07fce462fb Replace "enforcements" with "enforcement actions".
I think this sounds better.  While "enforcement" is a noun and therefore
it seems it should be "pluralizable", "enforcements" wasn't in my
dictionary as a correctly spelled word, and that made me realize I'd
never heard "enforcements" used in a plural before, and it immediately
sounded weird.  So, I changed it.
2014-11-13 13:02:45 -05:00
Bradley M. Kuhn
652c240896 Grammar and wording fix.
I think this sentence was improperly merged together with another one in
a previous commit and therefore needed correction.
2014-11-13 12:53:48 -05:00
Bradley M. Kuhn
954f35615d Replace ’ with '.
The unicode ’ was introduced by the pasted text mention in the previous
commits.  While I believe LaTeX can be configured to accept Unicode
quote equivalents, it seems simpler to me merely to replace the
character with an appropriate version that LaTeX expects in this
situation by default.
2014-11-13 12:48:25 -05:00
Bradley M. Kuhn
9f34658440 Integrate pasted text regarding LGPL.
Much of the pasted text here was useful.  However, some of the claims
were broad reaching, I've reigned those in.  (e.g., saying "Taken
together, these provisions mean:" was a bit strong).

Also, in that specific spot, the conclusions made in the text were
described as applying to LGPLv2.1, but are clearly conclusions about
LGPLv3.  I've corrected that herein.

Finally, I had to write a bunch of next text to make the pasted text
work, and also added one FIXME for later of where things could be
improved further.
2014-11-13 12:25:13 -05:00
Bradley M. Kuhn
895d387cc7 Add label for discussion of GPLv2§3(b). 2014-11-13 12:24:39 -05:00
Bradley M. Kuhn
e5669e4779 Correct \begin and \end{itemize} spelling. 2014-11-13 11:34:33 -05:00
Bradley M. Kuhn
b71951bbaa Link to copyleft.org on title page.
Often, the PDF file is separated fully from copyleft and distributed.
As such, the title page should not only include a link to the sources
for patches, but also for the main copyleft.org site for the Guide.
2014-11-13 11:15:09 -05:00
Bradley M. Kuhn
d8d666d5da Pasted sentence usable as is.
I simply combined this pasted sentence with the previous paragraph; I
think it probably works as-is.
2014-11-13 10:57:50 -05:00
Bradley M. Kuhn
065a88d180 Incorporate pasted text re: AGPLv3/GPLv3 combos.
This text was mostly useful as is.  However, it failed to make a key
point I've often made: that the combinations created by comingling
AGPLv3'd code with GPLv3'd code may be difficult to disentangle, and
thus in practice, it may turn out that such a combination effectively
must be licensed as a whole under AGPLv3, even if technically some
copyrights included therein are GPLv3'd.

In practice, this nuance is only a technical barrier, since complying
fully with AGPLv3 automatically complies with GPLv3.
2014-11-13 10:54:37 -05:00
Bradley M. Kuhn
65179995e9 Comment out text that may or may not be useful.
I'm not sure this text is actually useful, so I've commented it out.
2014-11-13 10:52:45 -05:00
Bradley M. Kuhn
c3815b0689 Integrate pasted introductory text for GPLv3§11.
This text was (on the whole) useful as introductory text to this
tutorial's existing extensive section on GPLv3§11.

The example, however, belonged further down in the section, so I've
placed it there.
2014-11-13 10:50:57 -05:00
Bradley M. Kuhn
1e0d39fe72 Integrate pasted text on GPLv3§10.
Most of this text was useful, particularly since there was a previous
FIXME here that GPLv3§10 was not extensively discussed.

However, the same footnote regarding Jaeger's opinion under German
copyright law applies to this text, so a reference back to it has herein
been added.
2014-11-13 10:41:56 -05:00
Bradley M. Kuhn
345da0fc2e Integrate pasted & commented out text for GPLv3§7.
The pasted text, most of which was useful, is now integrated as the
desired laundry-list of GPLv3§7 subsection explanations.

This also allowed for easy integration of some of the older
commented-out text that originally came from GPLv3 rationale documents.

Meanwhile, however, I discovered, upon more careful examination of the
pasted text, a serious and grave error regarding GPLv3§7(d).
Specifically, GPLv3§7(d) makes the modern "third clause" of the 3-Clause
BSD compatible with the GPL, *not* the problematic old-school BSD
advertising clause (from the 4-Clause BSD).

I'm amazed that anyone versed in licensing could make this error,
frankly, and readers should be told, since other materials are now
disseminated by others, that the point is incorrect.  Therefore, I've
not only noted the correct compatibility conclusion, but also
affirmatively identified the incorrectness of the wrong conclusion that
was previously added via the pasted text from SFLC's "Guide".

Finally, on a LaTeX formatting note, the enumitem package is now needed
since I'm using that for the list of GPLv3§7 subsections.
2014-11-13 10:32:54 -05:00
Bradley M. Kuhn
fd69b39c38 Properly close \footnote{}. 2014-11-13 07:57:18 -05:00
Bradley M. Kuhn
ea8cab561d Rewrite pasted paragraph with historical context.
This change perhaps is somewhat controversial, but reflects honest
reality of this history of additional requirements on GPL.  The
additional requirements that GPLv3 permits mostly represent historically
known situations where GPLv2 permitted license compatibility with Free
Software licenses containing such requirements.

Orthodox compatibility theory demands that such additional requirements
have explicit codification in a copyleft license, which hints at why
GPLv3 needed to include this section.

However, historical copyright holder toleration of these sorts of
requirements placed on GPLv2 works is well-documented, and failure to
mention it here is a disservice to the reader.
2014-11-13 07:41:08 -05:00
Bradley M. Kuhn
f03369c7ed Integrate introductory paragraph from pasted text
Most of the pasted text served as a useful introductory paragraph.

I also made some wordsmith changes to the following few paragraphs.
2014-11-13 07:36:41 -05:00
Bradley M. Kuhn
11fd5c29ca Once sentence here was not redundant.
Most of the pasted text was redundant to the existing guide text, but
one sentence reiterates a useful point in a creative way, so that
sentence is herein integrated into the preceding paragraph.
2014-11-12 14:02:42 -05:00
Bradley M. Kuhn
387f2c4ace Incorporate pasted text into intro paragraph.
Some of this text was useful as part of the introduction paragraph.
2014-11-12 13:59:04 -05:00
Bradley M. Kuhn
2145b87982 Simply remove this pasted text.
Upon second reading of this text, I don't know why I saved it.  The
existing guide already covers these issues adequately, and there is no
specific place I could find where this new text worked well as an
introductory paragraph (as has been done with others of these pasted
texts).
2014-11-12 13:26:47 -05:00
Bradley M. Kuhn
14d8ee9b16 Wordsmith last sentence of the footnote.
The word "nearly" appeared far too much in the previous version of this
text.
2014-11-12 12:23:29 -05:00
Bradley M. Kuhn
8a3a8434dd Qualify "additional copies == new license" claim.
The last commit brought in text that categorically claims: "automatic
termination cannot be cured by obtaining additional copies from an
alternate supplier".  While this position is by far the overwhelming
majority position among copyleft advocates, theorists, and legal
experts, the small minority dissenting opinion is simply too strongly
sourced to ignore.

Specifically, Till Jaeger's position was central to Harald Welte's
gpl-violations.org community-oriented GPL enforcement efforts.
Therefore, this tutorial must include his position when covering the
issue of automatic license reinstatement in this tutorial.

I have told Till that I can't believe his position is possibly correct.
(I understand that many other copyleft theorists and legal experts have
done so as well.)  However, Till remains steadfast that this position is
correct, at least under German copyright law.  Speaking for myself, I
have never met a legal expert as well-versed in both copyleft and German
copyright law as Till Jaeger is, and therefore I cannot in good
conscience allow this tutorial to remain silent regarding Till's
position, lest the tutorial propagate an inappropriate bias for the
majority belief.

That said, I still feel that a footnote is the right place for the
argument.  It *is* a tiny minority position [0] among an overwhelming
consensus to the contrary, and therefore adding the point to the main
text would only serve to distract the tutorial reader.

[0] In particular, I am convinced Jaeger's argument, if true, is a
    peculiarity of German law exclusively.  For example, French lawyers
    I've spoken with believe that the standard USA legal position on
    this issue is also accurate under French copyright law.  I therefore
    conclude the minority position (if accurate) is unrelated to
    differences between civil law and common law copyright regimes, and
    is instead a unique peculiarity to German copyright law.
2014-11-12 11:51:28 -05:00
Bradley M. Kuhn
d6bf6f07b1 Edit pasted automatic downstream license text.
This pasted text was quite useful and well-written.  I've incorporated
it fully, although it needed some copy edit work and additional
material.
2014-11-12 11:48:12 -05:00
Bradley M. Kuhn
bf85191e63 Add subsections for GPLv2§2 discussion.
The GPLv2§2 has gotten long enough that it really needed subsections.
2014-11-12 11:32:05 -05:00
Bradley M. Kuhn
c88f72765a Integrate pasted text on "separate & independent".
This pasted text was pretty useful, and is now integrated fully, with
additional text I wrote to improve and expand the point.
2014-11-12 11:28:51 -05:00
Bradley M. Kuhn
67bb09ea17 Integrate pasted explanation of GPLv2§2(c).
The tutorial did not previously have an adequate description of
GPLv2§2(c), so this pasted text is as good as any that I could think of,
although I reworded it slightly.

I chose to integrate this text *before* the discussion of GPLv2§2(b)
because the latter section requires so much attention, it seems
appropriate to get the less complex parts of GPLv2§2 out of the way
before diving into that essential discussion of GPLv2§2(b).
2014-11-12 10:19:01 -05:00
Bradley M. Kuhn
b8f084be3a Incorporate pasted text as chapter's introduction.
The pasted text, moved in an earlier commit to this chapter, is now
incorporated as the introduction for the chapter on derivative works.

Changes also included to the previous introduction so it properly flows
from the new text.
2014-11-12 10:10:41 -05:00
Bradley M. Kuhn
5e195ab80a Integrate this short sentence from pasted text.
This was easily integrated, but I am now not sure what I was thinking
with the FIXME note about linking back to the copyleft definition.  The
right link is a forward-link to the derivative works chapter, and thus
I've added that.
2014-11-12 07:50:28 -05:00
Bradley M. Kuhn
e36a9a4f4c Rework copyleft definition utilizing pasted text.
Some of the pasted text was useful as a method of introducing briefly
the legal details of copyleft, to an appropriate level of detail for
this initial copyleft definition found in the tutorial.  However,
substantial additional text was needed to both properly integrate the
pasted text, and also improve the copyleft definition overall in light
of the pasted text content.

Meanwhile, part of the pasted text definitely doesn't belong here, but I
noticed it likely makes a good addition to the introductory paragraph in
the derivative works section.
2014-11-12 07:44:47 -05:00
Bradley M. Kuhn
00ac5cfb9a Incorporate copyleft defn from copyleft.org site
I wrote a pretty good copyleft definition, originally based on the one
found on Wikipedia, for use on the front page of copyleft.org.  Herein
it is integrated with the tutorial as well.
2014-11-12 07:18:59 -05:00
Bradley M. Kuhn
077feb2da0 Correct CEGEO to COGEO.
Honestly, I just made up this acronym so I'm still not even used to it
yet myself.

OTOH, this is another example of why it's not so good. :)
2014-11-11 22:04:05 -05:00
Bradley M. Kuhn
29e2d38e9d Wrote section on "grey hat" GPL enforcement.
The inspiration for this section came from the pasted text, which
ultimately whitewashed this well-known and complex situation.  While my
new text likely has the biases inherent in a COGEO-oriented focused
document, so perhaps future patches that soften that side of it would be
helpful.

However, I believe generally that the new section describes the
situation substantially better than the terse pasted text that lauded
it.

Finally, this section is written to build up to some level of crescendo,
since the conclusion immediately follows it.
2014-11-11 22:02:38 -05:00
Bradley M. Kuhn
5bc647b591 Full rewrite of the new M&A compliance section.
Again, upon careful reading of the pasted text, it was clearly not
as useful as it first appeared, and is in fact somewhat misleading.

This rewrite does a better job explaining the necessary focus required
for an M&A situation.  The section could use some work, but generally
speaking IMO this new does a better job than both the pasted text and
other texts on the issues I've read elsewhere.
2014-11-11 21:23:58 -05:00
Bradley M. Kuhn
fed5eac075 Correct and integrate this pasted paragraph.
Upon closer inspection, this pasted paragraph contained a clear error:
as written.  Specifically, it stated that compliance was automatic if
you merely "pass along" the CCS received from upstream.  It's IOTTMCO
that this is wrong.  I've corrected it and integrated the text.
2014-11-11 19:25:10 -05:00
Bradley M. Kuhn
e24942c98b Integrate this LGPL text properly.
Upon a more detailed reading, it's clear this pasted text belongs in the
LGPL license analysis section, but that in fact some other text was
needed to improve the end of the section on LGPL in the compliance
guide.
2014-11-11 19:21:50 -05:00
Bradley M. Kuhn
746eff5786 Link LGPL compliance section to LGPL analysis.
Since so little material is currently given on LGPL compliance, it's
likely best to link back to the chapter on LGPL compliance.

Besides, I don't think there really is anything additional the
compliance guide can add regarding LGPL compliance, other than the
detail license analysis on LGPL already available in that part of the
text.

(Note labels had to be added for the chapters that didn't previously
exist.)
2014-11-11 19:21:21 -05:00
Bradley M. Kuhn
8b4497c6db This may better appear here. 2014-11-11 18:59:29 -05:00
Bradley M. Kuhn
36a6c7232e Rewrite section to incorporate text properly.
Much of the existing pasted text had subtle condescension toward
developers, which I've cleaned up here.  Admittedly, I may have over
compensated  and added subtle condescension toward lawyers.
2014-11-11 11:53:32 -05:00
Bradley M. Kuhn
472f89bedb Add use of CEGEO term here as well.
I still find my CEGEO acronym cumbersome, but I might as well commit to
using it until a better one comes along.
2014-11-11 11:53:05 -05:00
Bradley M. Kuhn
82831c9b81 Integrate this text and rewrite to make it work.
Also creates some label for references back.
2014-11-11 11:40:38 -05:00
Bradley M. Kuhn
8c1bf649d7 Integrate short sentence into main text. 2014-11-11 08:22:42 -05:00
Bradley M. Kuhn
29738b3419 Integrate short sentence. 2014-11-11 08:21:10 -05:00