-
Notifications
You must be signed in to change notification settings - Fork 3
/
LICENSE
1000 lines (813 loc) · 65.1 KB
/
LICENSE
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The GNU General Public License is a free, copyleft license for
software and other kinds of works.
The licenses for most software and other practical works are designed
to take away your freedom to share and change the works. By contrast,
the GNU General Public License is intended to guarantee your freedom to
share and change all versions of a program--to make sure it remains free
software for all its users. We, the Free Software Foundation, use the
GNU General Public License for most of our software; it applies also to
any other work released this way by its authors. You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
them if you wish), that you receive source code or can get it if you
want it, that you can change the software or use pieces of it in new
free programs, and that you know you can do these things.
To protect your rights, we need to prevent others from denying you
these rights or asking you to surrender the rights. Therefore, you have
certain responsibilities if you distribute copies of the software, or if
you modify it: responsibilities to respect the freedom of others.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must pass on to the recipients the same
freedoms that you received. You must make sure that they, too, receive
or can get the source code. And you must show them these terms so they
know their rights.
Developers that use the GNU GPL protect your rights with two steps:
(1) assert copyright on the software, and (2) offer you this License
giving you legal permission to copy, distribute and/or modify it.
For the developers' and authors' protection, the GPL clearly explains
that there is no warranty for this free software. For both users' and
authors' sake, the GPL requires that modified versions be marked as
changed, so that their problems will not be attributed erroneously to
authors of previous versions.
Some devices are designed to deny users access to install or run
modified versions of the software inside them, although the manufacturer
can do so. This is fundamentally incompatible with the aim of
protecting users' freedom to change the software. The systematic
pattern of such abuse occurs in the area of products for individuals to
use, which is precisely where it is most unacceptable. Therefore, we
have designed this version of the GPL to prohibit the practice for those
products. If such problems arise substantially in other domains, we
stand ready to extend this provision to those domains in future versions
of the GPL, as needed to protect the freedom of users.
Finally, every program is threatened constantly by software patents.
States should not allow patents to restrict development and use of
software on general-purpose computers, but in those that do, we wish to
avoid the special danger that patents applied to a free program could
make it effectively proprietary. To prevent this, the GPL assures that
patents cannot be used to render the program non-free.
The precise terms and conditions for copying, distribution and
modification follow.
TERMS AND CONDITIONS
0. Definitions.
"This License" refers to version 3 of the GNU General Public License.
"Copyright" also means copyright-like laws that apply to other kinds of
works, such as semiconductor masks.
"The Program" refers to any copyrightable work licensed under this
License. Each licensee is addressed as "you". "Licensees" and
"recipients" may be individuals or organizations.
To "modify" a work means to copy from or adapt all or part of the work
in a fashion requiring copyright permission, other than the making of an
exact copy. The resulting work is called a "modified version" of the
earlier work or a work "based on" the earlier work.
A "covered work" means either the unmodified Program or a work based
on the Program.
To "propagate" a work means to do anything with it that, without
permission, would make you directly or secondarily liable for
infringement under applicable copyright law, except executing it on a
computer or modifying a private copy. Propagation includes copying,
distribution (with or without modification), making available to the
public, and in some countries other activities as well.
To "convey" a work means any kind of propagation that enables other
parties to make or receive copies. Mere interaction with a user through
a computer network, with no transfer of a copy, is not conveying.
An interactive user interface displays "Appropriate Legal Notices"
to the extent that it includes a convenient and prominently visible
feature that (1) displays an appropriate copyright notice, and (2)
tells the user that there is no warranty for the work (except to the
extent that warranties are provided), that licensees may convey the
work under this License, and how to view a copy of this License. If
the interface presents a list of user commands or options, such as a
menu, a prominent item in the list meets this criterion.
1. Source Code.
The "source code" for a work means the preferred form of the work
for making modifications to it. "Object code" means any non-source
form of a work.
A "Standard Interface" means an interface that either is an official
standard defined by a recognized standards body, or, in the case of
interfaces specified for a particular programming language, one that
is widely used among developers working in that language.
The "System Libraries" of an executable work include anything, other
than the work as a whole, that (a) is included in the normal form of
packaging a Major Component, but which is not part of that Major
Component, and (b) serves only to enable use of the work with that
Major Component, or to implement a Standard Interface for which an
implementation is available to the public in source code form. A
"Major Component", in this context, means a major essential component
(kernel, window system, and so on) of the specific operating system
(if any) on which the executable work runs, or a compiler used to
produce the work, or an object code interpreter used to run it.
The "Corresponding Source" for a work in object code form means all
the source code needed to generate, install, and (for an executable
work) run the object code and to modify the work, including scripts to
control those activities. However, it does not include the work's
System Libraries, or general-purpose tools or generally available free
programs which are used unmodified in performing those activities but
which are not part of the work. For example, Corresponding Source
includes interface definition files associated with source files for
the work, and the source code for shared libraries and dynamically
linked subprograms that the work is specifically designed to require,
such as by intimate data communication or control flow between those
subprograms and other parts of the work.
The Corresponding Source need not include anything that users
can regenerate automatically from other parts of the Corresponding
Source.
The Corresponding Source for a work in source code form is that
same work.
2. Basic Permissions.
All rights granted under this License are granted for the term of
copyright on the Program, and are irrevocable provided the stated
conditions are met. This License explicitly affirms your unlimited
permission to run the unmodified Program. The output from running a
covered work is covered by this License only if the output, given its
content, constitutes a covered work. This License acknowledges your
rights of fair use or other equivalent, as provided by copyright law.
You may make, run and propagate covered works that you do not
convey, without conditions so long as your license otherwise remains
in force. You may convey covered works to others for the sole purpose
of having them make modifications exclusively for you, or provide you
with facilities for running those works, provided that you comply with
the terms of this License in conveying all material for which you do
not control copyright. Those thus making or running the covered works
for you must do so exclusively on your behalf, under your direction
and control, on terms that prohibit them from making any copies of
your copyrighted material outside their relationship with you.
Conveying under any other circumstances is permitted solely under
the conditions stated below. Sublicensing is not allowed; section 10
makes it unnecessary.
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
No covered work shall be deemed part of an effective technological
measure under any applicable law fulfilling obligations under article
11 of the WIPO copyright treaty adopted on 20 December 1996, or
similar laws prohibiting or restricting circumvention of such
measures.
When you convey a covered work, you waive any legal power to forbid
circumvention of technological measures to the extent such circumvention
is effected by exercising rights under this License with respect to
the covered work, and you disclaim any intention to limit operation or
modification of the work as a means of enforcing, against the work's
users, your or third parties' legal rights to forbid circumvention of
technological measures.
4. Conveying Verbatim Copies.
You may convey verbatim copies of the Program's source code as you
receive it, in any medium, provided that you conspicuously and
appropriately publish on each copy an appropriate copyright notice;
keep intact all notices stating that this License and any
non-permissive terms added in accord with section 7 apply to the code;
keep intact all notices of the absence of any warranty; and give all
recipients a copy of this License along with the Program.
You may charge any price or no price for each copy that you convey,
and you may offer support or warranty protection for a fee.
5. Conveying Modified Source Versions.
You may convey a work based on the Program, or the modifications to
produce it from the Program, in the form of source code under the
terms of section 4, provided that you also meet all of these conditions:
a) The work must carry prominent notices stating that you modified
it, and giving a relevant date.
b) The work must carry prominent notices stating that it is
released under this License and any conditions added under section
7. This requirement modifies the requirement in section 4 to
"keep intact all notices".
c) You must license the entire work, as a whole, under this
License to anyone who comes into possession of a copy. This
License will therefore apply, along with any applicable section 7
additional terms, to the whole of the work, and all its parts,
regardless of how they are packaged. This License gives no
permission to license the work in any other way, but it does not
invalidate such permission if you have separately received it.
d) If the work has interactive user interfaces, each must display
Appropriate Legal Notices; however, if the Program has interactive
interfaces that do not display Appropriate Legal Notices, your
work need not make them do so.
A compilation of a covered work with other separate and independent
works, which are not by their nature extensions of the covered work,
and which are not combined with it such as to form a larger program,
in or on a volume of a storage or distribution medium, is called an
"aggregate" if the compilation and its resulting copyright are not
used to limit the access or legal rights of the compilation's users
beyond what the individual works permit. Inclusion of a covered work
in an aggregate does not cause this License to apply to the other
parts of the aggregate.
6. Conveying Non-Source Forms.
You may convey a covered work in object code form under the terms
of sections 4 and 5, provided that you also convey the
machine-readable Corresponding Source under the terms of this License,
in one of these ways:
a) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by the
Corresponding Source fixed on a durable physical medium
customarily used for software interchange.
b) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by a
written offer, valid for at least three years and valid for as
long as you offer spare parts or customer support for that product
model, to give anyone who possesses the object code either (1) a
copy of the Corresponding Source for all the software in the
product that is covered by this License, on a durable physical
medium customarily used for software interchange, for a price no
more than your reasonable cost of physically performing this
conveying of source, or (2) access to copy the
Corresponding Source from a network server at no charge.
c) Convey individual copies of the object code with a copy of the
written offer to provide the Corresponding Source. This
alternative is allowed only occasionally and noncommercially, and
only if you received the object code with such an offer, in accord
with subsection 6b.
d) Convey the object code by offering access from a designated
place (gratis or for a charge), and offer equivalent access to the
Corresponding Source in the same way through the same place at no
further charge. You need not require recipients to copy the
Corresponding Source along with the object code. If the place to
copy the object code is a network server, the Corresponding Source
may be on a different server (operated by you or a third party)
that supports equivalent copying facilities, provided you maintain
clear directions next to the object code saying where to find the
Corresponding Source. Regardless of what server hosts the
Corresponding Source, you remain obligated to ensure that it is
available for as long as needed to satisfy these requirements.
e) Convey the object code using peer-to-peer transmission, provided
you inform other peers where the object code and Corresponding
Source of the work are being offered to the general public at no
charge under subsection 6d.
A separable portion of the object code, whose source code is excluded
from the Corresponding Source as a System Library, need not be
included in conveying the object code work.
A "User Product" is either (1) a "consumer product", which means any
tangible personal property which is normally used for personal, family,
or household purposes, or (2) anything designed or sold for incorporation
into a dwelling. In determining whether a product is a consumer product,
doubtful cases shall be resolved in favor of coverage. For a particular
product received by a particular user, "normally used" refers to a
typical or common use of that class of product, regardless of the status
of the particular user or of the way in which the particular user
actually uses, or expects or is expected to use, the product. A product
is a consumer product regardless of whether the product has substantial
commercial, industrial or non-consumer uses, unless such uses represent
the only significant mode of use of the product.
"Installation Information" for a User Product means any methods,
procedures, authorization keys, or other information required to install
and execute modified versions of a covered work in that User Product from
a modified version of its Corresponding Source. The information must
suffice to ensure that the continued functioning of the modified object
code is in no case prevented or interfered with solely because
modification has been made.
If you convey an object code work under this section in, or with, or
specifically for use in, a User Product, and the conveying occurs as
part of a transaction in which the right of possession and use of the
User Product is transferred to the recipient in perpetuity or for a
fixed term (regardless of how the transaction is characterized), the
Corresponding Source conveyed under this section must be accompanied
by the Installation Information. But this requirement does not apply
if neither you nor any third party retains the ability to install
modified object code on the User Product (for example, the work has
been installed in ROM).
The requirement to provide Installation Information does not include a
requirement to continue to provide support service, warranty, or updates
for a work that has been modified or installed by the recipient, or for
the User Product in which it has been modified or installed. Access to a
network may be denied when the modification itself materially and
adversely affects the operation of the network or violates the rules and
protocols for communication across the network.
Corresponding Source conveyed, and Installation Information provided,
in accord with this section must be in a format that is publicly
documented (and with an implementation available to the public in
source code form), and must require no special password or key for
unpacking, reading or copying.
7. Additional Terms.
"Additional permissions" are terms that supplement the terms of this
License by making exceptions from one or more of its conditions.
Additional permissions that are applicable to the entire Program shall
be treated as though they were included in this License, to the extent
that they are valid under applicable law. If additional permissions
apply only to part of the Program, that part may be used separately
under those permissions, but the entire Program remains governed by
this License without regard to the additional permissions.
When you convey a copy of a covered work, you may at your option
remove any additional permissions from that copy, or from any part of
it. (Additional permissions may be written to require their own
removal in certain cases when you modify the work.) You may place
additional permissions on material, added by you to a covered work,
for which you have or can give appropriate copyright permission.
Notwithstanding any other provision of this License, for material you
add to a covered work, you may (if authorized by the copyright holders of
that material) supplement the terms of this License with terms:
a) Disclaiming warranty or limiting liability differently from the
terms of sections 15 and 16 of this License; or
b) Requiring preservation of specified reasonable legal notices or
author attributions in that material or in the Appropriate Legal
Notices displayed by works containing it; or
c) Prohibiting misrepresentation of the origin of that material, or
requiring that modified versions of such material be marked in
reasonable ways as different from the original version; or
d) Limiting the use for publicity purposes of names of licensors or
authors of the material; or
e) Declining to grant rights under trademark law for use of some
trade names, trademarks, or service marks; or
f) Requiring indemnification of licensors and authors of that
material by anyone who conveys the material (or modified versions of
it) with contractual assumptions of liability to the recipient, for
any liability that these contractual assumptions directly impose on
those licensors and authors.
All other non-permissive additional terms are considered "further
restrictions" within the meaning of section 10. If the Program as you
received it, or any part of it, contains a notice stating that it is
governed by this License along with a term that is a further
restriction, you may remove that term. If a license document contains
a further restriction but permits relicensing or conveying under this
License, you may add to a covered work material governed by the terms
of that license document, provided that the further restriction does
not survive such relicensing or conveying.
If you add terms to a covered work in accord with this section, you
must place, in the relevant source files, a statement of the
additional terms that apply to those files, or a notice indicating
where to find the applicable terms.
Additional terms, permissive or non-permissive, may be stated in the
form of a separately written license, or stated as exceptions;
the above requirements apply either way.
8. Termination.
You may not propagate or modify a covered work except as expressly
provided under this License. Any attempt otherwise to propagate or
modify it is void, and will automatically terminate your rights under
this License (including any patent licenses granted under the third
paragraph of section 11).
However, if you cease all violation of this License, then your
license from a particular copyright holder is reinstated (a)
provisionally, unless and until the copyright holder explicitly and
finally terminates your license, and (b) permanently, if the copyright
holder fails to notify you of the violation by some reasonable means
prior to 60 days after the cessation.
Moreover, your license from a particular copyright holder is
reinstated permanently if the copyright holder notifies you of the
violation by some reasonable means, this is the first time you have
received notice of violation of this License (for any work) from that
copyright holder, and you cure the violation prior to 30 days after
your receipt of the notice.
Termination of your rights under this section does not terminate the
licenses of parties who have received copies or rights from you under
this License. If your rights have been terminated and not permanently
reinstated, you do not qualify to receive new licenses for the same
material under section 10.
9. Acceptance Not Required for Having Copies.
You are not required to accept this License in order to receive or
run a copy of the Program. Ancillary propagation of a covered work
occurring solely as a consequence of using peer-to-peer transmission
to receive a copy likewise does not require acceptance. However,
nothing other than this License grants you permission to propagate or
modify any covered work. These actions infringe copyright if you do
not accept this License. Therefore, by modifying or propagating a
covered work, you indicate your acceptance of this License to do so.
10. Automatic Licensing of Downstream Recipients.
Each time you convey a covered work, the recipient automatically
receives a license from the original licensors, to run, modify and
propagate that work, subject to this License. You are not responsible
for enforcing compliance by third parties with this License.
An "entity transaction" is a transaction transferring control of an
organization, or substantially all assets of one, or subdividing an
organization, or merging organizations. If propagation of a covered
work results from an entity transaction, each party to that
transaction who receives a copy of the work also receives whatever
licenses to the work the party's predecessor in interest had or could
give under the previous paragraph, plus a right to possession of the
Corresponding Source of the work from the predecessor in interest, if
the predecessor has it or can get it with reasonable efforts.
You may not impose any further restrictions on the exercise of the
rights granted or affirmed under this License. For example, you may
not impose a license fee, royalty, or other charge for exercise of
rights granted under this License, and you may not initiate litigation
(including a cross-claim or counterclaim in a lawsuit) alleging that
any patent claim is infringed by making, using, selling, offering for
sale, or importing the Program or any portion of it.
11. Patents.
A "contributor" is a copyright holder who authorizes use under this
License of the Program or a work on which the Program is based. The
work thus licensed is called the contributor's "contributor version".
A contributor's "essential patent claims" are all patent claims
owned or controlled by the contributor, whether already acquired or
hereafter acquired, that would be infringed by some manner, permitted
by this License, of making, using, or selling its contributor version,
but do not include claims that would be infringed only as a
consequence of further modification of the contributor version. For
purposes of this definition, "control" includes the right to grant
patent sublicenses in a manner consistent with the requirements of
this License.
Each contributor grants you a non-exclusive, worldwide, royalty-free
patent license under the contributor's essential patent claims, to
make, use, sell, offer for sale, import and otherwise run, modify and
propagate the contents of its contributor version.
In the following three paragraphs, a "patent license" is any express
agreement or commitment, however denominated, not to enforce a patent
(such as an express permission to practice a patent or covenant not to
sue for patent infringement). To "grant" such a patent license to a
party means to make such an agreement or commitment not to enforce a
patent against the party.
If you convey a covered work, knowingly relying on a patent license,
and the Corresponding Source of the work is not available for anyone
to copy, free of charge and under the terms of this License, through a
publicly available network server or other readily accessible means,
then you must either (1) cause the Corresponding Source to be so
available, or (2) arrange to deprive yourself of the benefit of the
patent license for this particular work, or (3) arrange, in a manner
consistent with the requirements of this License, to extend the patent
license to downstream recipients. "Knowingly relying" means you have
actual knowledge that, but for the patent license, your conveying the
covered work in a country, or your recipient's use of the covered work
in a country, would infringe one or more identifiable patents in that
country that you have reason to believe are valid.
If, pursuant to or in connection with a single transaction or
arrangement, you convey, or propagate by procuring conveyance of, a
covered work, and grant a patent license to some of the parties
receiving the covered work authorizing them to use, propagate, modify
or convey a specific copy of the covered work, then the patent license
you grant is automatically extended to all recipients of the covered
work and works based on it.
A patent license is "discriminatory" if it does not include within
the scope of its coverage, prohibits the exercise of, or is
conditioned on the non-exercise of one or more of the rights that are
specifically granted under this License. You may not convey a covered
work if you are a party to an arrangement with a third party that is
in the business of distributing software, under which you make payment
to the third party based on the extent of your activity of conveying
the work, and under which the third party grants, to any of the
parties who would receive the covered work from you, a discriminatory
patent license (a) in connection with copies of the covered work
conveyed by you (or copies made from those copies), or (b) primarily
for and in connection with specific products or compilations that
contain the covered work, unless you entered into that arrangement,
or that patent license was granted, prior to 28 March 2007.
Nothing in this License shall be construed as excluding or limiting
any implied license or other defenses to infringement that may
otherwise be available to you under applicable patent law.
12. No Surrender of Others' Freedom.
If conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot convey a
covered work so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you may
not convey it at all. For example, if you agree to terms that obligate you
to collect a royalty for further conveying from those to whom you convey
the Program, the only way you could satisfy both those terms and this
License would be to refrain entirely from conveying the Program.
13. Use with the GNU Affero General Public License.
Notwithstanding any other provision of this License, you have
permission to link or combine any covered work with a work licensed
under version 3 of the GNU Affero General Public License into a single
combined work, and to convey the resulting work. The terms of this
License will continue to apply to the part which is the covered work,
but the special requirements of the GNU Affero General Public License,
section 13, concerning interaction through a network will apply to the
combination as such.
14. Revised Versions of this License.
The Free Software Foundation may publish revised and/or new versions of
the GNU General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the
Program specifies that a certain numbered version of the GNU General
Public License "or any later version" applies to it, you have the
option of following the terms and conditions either of that numbered
version or of any later version published by the Free Software
Foundation. If the Program does not specify a version number of the
GNU General Public License, you may choose any version ever published
by the Free Software Foundation.
If the Program specifies that a proxy can decide which future
versions of the GNU General Public License can be used, that proxy's
public statement of acceptance of a version permanently authorizes you
to choose that version for the Program.
Later license versions may give you additional or different
permissions. However, no additional obligations are imposed on any
author or copyright holder as a result of your choosing to follow a
later version.
15. Disclaimer of Warranty.
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
16. Limitation of Liability.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
SUCH DAMAGES.
17. Interpretation of Sections 15 and 16.
If the disclaimer of warranty and limitation of liability provided
above cannot be given local legal effect according to their terms,
reviewing courts shall apply local law that most closely approximates
an absolute waiver of all civil liability in connection with the
Program, unless a warranty or assumption of liability accompanies a
copy of the Program in return for a fee.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
state the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
Also add information on how to contact you by electronic and paper mail.
If the program does terminal interaction, make it output a short
notice like this when it starts in an interactive mode:
<program> Copyright (C) <year> <name of author>
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, your program's commands
might be different; for a GUI interface, you would use an "about box".
You should also get your employer (if you work as a programmer) or school,
if any, to sign a "copyright disclaimer" for the program, if necessary.
For more information on this, and how to apply and follow the GNU GPL, see
<http://www.gnu.org/licenses/>.
The GNU General Public License does not permit incorporating your program
into proprietary programs. If your program is a subroutine library, you
may consider it more useful to permit linking proprietary applications with
the library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License. But first, please read
<http://www.gnu.org/philosophy/why-not-lgpl.html>.
GNU 通用公共授權 (繁體中文翻譯版)
聲明!
This is an unofficial translation of the GNU General Public License into simplified Chinese. It was not published by the Free Software Foundation, and does not legally state the distribution terms for software that uses the GNU GPL—only the original English text of the GNU GPL does that. However, we hope that this translation will help Chinese speakers understand the GNU GPL better.
這是一份GNU通用公共授權的非官方中文繁體翻譯。它並非由自由軟體基金會發佈,也不是使用GNU通用公共授權的軟體的法定發佈條款——只有GNU通用公共授權的英文原版具有這樣的效力。然而,我們希望這份翻譯能夠幫助中文讀者更好的理解GNU通用公共授權。
GNU通用公共授權
第三版 2007年6月29日
版權所有(C)2007 Free Software Foundation, Inc. (http://fsf.org)
允許所有人複製和發佈本授權文件的完整版本
但不允許對它進行任何修改
導言
GNU通用公共授權是一份針對軟體和其他種類作品的自由的、公共的授權文件。
大多數軟體授權申明被設計爲剝奪您共用和修改軟體的自由。相反地,GNU通用公共授權力圖保護您分享和修改自由軟體地自由——以確保軟體對所有使用者都是自由的。我們,自由軟體基金會,對我們的大多數軟體使用GNU通用公共授權;本授權同樣適用于任何其作者以這種方式發佈的軟體。您也可以讓您的軟體使用本授權。
當我們談論自由軟體時,我們指的是行爲的自由,而非價格免費。GNU通用公共授權被設計爲確保您擁有發佈自由軟體副本(以及爲此收費,如果您希望的話)的自由,確保您能收到源代碼或者在您需要時能獲取源代碼,確保您能修改軟體或者將它的一部分用於新的自由軟體,並且確保您知道您能做這些事情。
爲了保護您的權利,我們需要做出要求,禁止任何人否認您的這些權利或者要求您放棄這些權利。因此,如果您發佈此軟體的副本或者修改它,您就需要肩負起尊重他人自由的責任。
例如,如果您發佈自由軟體的副本,無論以免費還是以收費的模式,您都必須把您獲得的自由同樣的給予副本的接收者。您必須確保他們也能收到或者得到源代碼。而且您必須向他們展示這些條款,以使他們知道自己享有這樣的權利。
使用GNU通用公共授權的開發者通過兩項措施來保護您的權利:(1)聲明軟體的版權;(2)向您提供本授權文件以給您複製、發佈並且/或者修改軟體的法律許可。
爲了保護軟體發展者和作者,通用公共授權明確闡釋自由軟體沒有任何擔保責任。如用戶和軟體作者所希望的,通用公共授權要求軟體被修改過的版本必須明確標示,從而避免它們的問題被錯誤地歸咎於先前的版本。
某些設備被設計成拒絕用戶安裝或運行其內部軟體的修改版本,儘管製造商可以安裝和運行它們。這從根本上違背了通用公共授權保護用戶能修改軟體的自由的宗旨。此類濫用本授權的系統模式出現在了最讓人無法接受的個人用戶産品領域。因此,我們設計了這個版本的通用公共授權來禁止那些産品的侵權行爲。如果此類問題在其他領域大量出現,我們準備好了在將來的通用公共授權版本裏擴展這項規定,以保護用戶的自由。
最後,每個程式都經常受到軟體專利的威脅。政府不應該允許專利權限制通用電腦軟體的發展和使用,但是在政府確實允許這種事情的地區,我們希望避免應用于自由軟體的專利權使該軟體有效私有化的危險。爲了阻止這樣的事情的發生,通用公共授權確保沒有人能夠使用專利權使得自由軟體非自由化。
以下是複製,發佈和修改軟體的詳細條款和條件。
條款和條件
0.定義
“本授權”指GNU通用公共授權第三版
“版權”一詞同樣指適用於其他産品如半導體防護罩等的保護版權的法律。
“本程式”指任何在本授權下發佈的受版權保護的作品。被授權人稱爲“您”。“被授權人”和“版權接受者”可以是個人或組織。
“修改”作品是指從軟體中拷貝或者做出全部或一丁點兒的修改,這不同於逐字逐句的複製,是需要版權許可的。修改成果被稱爲先前作品的“修改版本”或者“基於”先前作品的軟體。
“覆蓋程式”指未被修改過的本程式或者基於本程式的程式。
“傳播”程式指使用該程式做任何如果沒有許可就會在適用的版權法下直接或間接侵權的事情,不包括在電腦上執行程式或者是做出您不與人共用的修改。傳播包括複製,分發(無論修改與否),向公衆共用,以及在某些國家的其他行爲。
“發佈”作品指任何讓其他組織製作或者接受副本的傳播行爲。僅僅通過電腦網路和一個用戶交流,且沒有發送程式拷貝的行爲不是發佈。
一個顯示“適當的法律通告”的交互的用戶介面應包括這樣一個方便而顯著的可視部件,它具有以下功能:(1)顯示一個合適的版權通告;(2)告訴用戶對本程式沒有任何擔保責任(除非有擔保明確告知),受權人可以在本授權下發佈本程式,以及如果閱讀本授權協定的副本。如果該介面顯示了一個用戶命令或選項列表,比如功能表,該列表中的選項需要符合上述規範。
1.源代碼
“源代碼”指修改程式常用的形式。“目標代碼”指程式的任何非源代碼形式。
“標準介面”有兩種含義,一是由標準組織分支定義的官方標準;二是針對某種語言專門定義的衆多介面中,在該類語言的開發者中廣爲使用的那種介面。
可執行程式的“系統庫”不是指整個程式,而是指任何包含於主要部件但不屬於該部件的部分,並且只是爲了使能該部件而開發,或者爲了實現某些已有公開源代碼的標準介面。“主要部件”在這裏指的是執行程式的特定作業系統(如果有的話)的主要的關鍵部件(內核,視窗系統等),或者生成該可執行程式時使用的編譯器,或者運行該程式的目標代碼解釋器。
目標代碼中的程式“對應的源代碼”指所有生成,安裝,(對可執行程式而言)運行該目標代碼和修改該程式所需要的源代碼,包括控制這些行爲的腳本。但是,它不包括程式需要的系統庫,通用目的的工具,以及程式在完成某些功能時不經修改地使用的那些不包括在程式中的普遍可用的自由軟體。例如,對應的源代碼包括與程式的原始檔案相關的介面定義文件,以及共用庫中的源代碼和該程式設計需要的通過如頻繁的資料交互或者這些副程式和該程式其他部分之間的控制流等方式獲得的動態鏈結副程式。
對應的源代碼不需要包含任何擁護可以從這些資源的其他部分自動再生的資源。
源代碼形式的程式對應的源代碼定義同上。
2.基本的許可
所有在本授權協定下授予的權利都是對本程式的版權而言,並且只要所述的條件都滿足了,這些授權是不能收回的。本授權明確的確認您可以不受任何限制地運行本程式的未修改版本。運行一個本授權覆蓋的程式獲得的結果只有在該結果的內容構成一個覆蓋程式的時候才由本授權覆蓋。本授權承認您正當使用或版權法規定的其他類似行爲的權利。
只要您的授權仍然有效,您可以無條件地製作,運行和傳播那些您不發佈的覆蓋程式。只要您遵守本授權中關於發佈您不具有版權的資料的條款,您可以向別人發佈覆蓋程式,以要求他們爲您做出專門的修改或者向您提供運行這些程式的簡易設備。那些爲您製作或運行覆蓋程式的人作爲您專門的代表也必須在您的指示和控制下做到這些,請禁止他們在他們和您的關係之外製作任何您擁有版權的程式的副本。
當下述條件滿足的時候,在任何其他情況下的發佈都是允許的。
轉授許可證授權是不允許的,第10節讓它變的沒有必要了。
3.保護用戶的合法權利不受反破解法侵犯
在任何實現1996年通過的世界知識産權組織版權條約第11章中所述任務的法律,或者是禁止或限制這種破解方法的類似法律下,覆蓋程式都不會被認定爲有效的技術手段的一部分。
當您發佈一個覆蓋程式時,您將放棄任何禁止技術手段破解的法律力量,甚至在本授權關於覆蓋程式的條款下執行權利也能完成破解。同時,您放棄任何限制用戶操作或修改該覆蓋程式以執行您禁止技術手段破解的合法權利的企圖。
4.發佈完整副本
你可以通過任何媒介發佈本程式源代碼的未被修改過的完整副本,只要您顯著而適當地在每個副本上發佈一個合適的版權通告;保持完整所有敍述本授權和任何按照第7節加入的非許可的條款;保持完整所有的免責申明;並隨程式給所有的接受者一份本授權。
您可以爲您的副本收取任何價格的費用或者免費,你也可以提供技術支援或者責任擔保來收取費用。
5.發佈修改過的源碼版本
您可以在第4節的條款下以源碼形式發佈一個基於本程式的軟體,或者從本程式中製作該軟體需要進行的修改,只要您同時滿足所有以下條件:
* a)製作的軟體必須包含明確的通告說明您修改了它,並給出相應的修改日期。
* b)製作的軟體必須包含明確的通告,陳述它在本授權下發佈並指出任何按照第7節加入的條件。這條要求修改了第4節的“保持所有通知完整”的要求。
* c)您必須把整個軟體作爲一個整體向任何獲取副本的人按照本授權協定授權。本授權因此會和任何按照第7節加入的條款一起,對整個軟體及其所有部分,無論是以什麽形式打包的,起法律效力。本授權不允許以其他任何形式授權該軟體,但如果您個別地收到這樣的許可,本授權並不否定該許可。
* d)如果您製作的套裝軟體含交互的用戶介面,每個用戶介面都必須顯示適當的法律通告;但是,如果本套裝程式含沒有顯示適當的法律通告的交互介面,您的軟體沒有必要修改他們讓他們顯示。
如果一個覆蓋程式和其他本身不是該程式的擴展的程式的聯合體,這樣的聯合的目的不是爲了在某個存儲或發佈媒體上生成更大的程式,且聯合體程式和相應産生的版權沒有用來限制程式的使用或限制單個程式賦予的聯合程式的用戶的合法權利的時候,這樣的聯合體就被稱爲“聚集體”。在聚集體中包含覆蓋程式並不會使本授權應用於該聚集體的其他部分。
6.發佈非源碼形式的副本
您可以在第4,5節條款下以目標代碼形式發佈程式,只要您同時以一下的一種方式在本授權條款下發佈機器可讀的對應的源代碼:
* a)在物理産品(包括一個物理的發佈媒介)中或作爲其一部分發佈目標代碼,並在通常用於軟體交換的耐用的物理媒介中發佈對應的源代碼。
* b)在物理産品(包括一個物理的發佈媒介)中或作爲其一部分發佈目標代碼,並附上有效期至少3年且與您爲該産品模型提供配件或客戶服務的時間等長的書面承諾,給予每個擁有該目標代碼的人(1)要麽在通常用於軟體交換的耐用物理媒介中,以不高於您執行這種源碼的發佈行爲所花費的合理費用的價格,一份該産品中所有由本授權覆蓋的軟體的對應的源代碼的拷貝;(2)要麽通過網路服務器免費提供這些對應源代碼的訪問。
* c)單獨地發佈目標代碼的副本,並附上一份提供對應源代碼的書面承諾。這種行爲只允許偶爾發生並不能盈利,且在您收到的目標代碼附有第6節b規定的承諾的時候。
* d)在指定的地點(免費或收費地)提供發佈的目標代碼的訪問並在同樣的地點以不增加價格的方式提供對應源代碼的同樣的訪問權。您不需要要求接收者在複製目標代碼的時候一道複製對應的源代碼。如果複製目標代碼的地點是網路服務器,對應的源代碼可以在另外一個支援相同複製功能的伺服器上(由您或者第三方運作),只要您在目標代碼旁邊明確指出在哪里可以找到對應的源代碼。無論什麽樣的伺服器提供這些對應的源代碼,您都有義務保證它在任何有需求的時候都可用,從而滿足本條規定。
* e)用點對點傳輸發佈目標代碼,您需要告知其他的節點目標代碼和對應的源代碼在哪里按照第6節d的條款向大衆免費提供。
目標代碼中可分離的部分,其源代碼作爲系統庫不包含在對應的源代碼中,不需要包含在發佈目標代碼的行爲中。
“用戶産品”指(1)“消費品”,即通常用於個人的、家庭的或日常目的的有形個人財産;或者(2)任何爲公司設計或銷售卻賣給了個人的東西。在判斷一個産品是否消費品時,有疑點的案例將以有利於覆蓋面的結果加以判斷。對特定用戶接收到的特定産品,“正常使用”指該類産品的典型的或通常的使用,無論該用戶的特殊情況,或者該用戶實際使用該産品的情況,或者該産品要求的使用方式如何。一個産品是否是消費品與該産品是否具有實質的經濟上的、工業的或非消費品的用處無關,除非該用處是此類産品唯一的重要使用模式。
用戶産品的“安裝資訊”指從對應源碼的修改版本安裝和運行該用戶産品中包含的覆蓋程式的修改版本所需要的任何方法、過程、授權密鑰或其他資訊。這些資訊必須足以保證修改後的目標代碼不會僅僅因爲被修改過而不能繼續運行。
如果您在本節條款下在用戶産品中,或隨同,或專門爲了其中的使用,發佈目標代碼程式,而在發佈過程中用戶産品的所有權和使用權都永久地或在一定時期內(無論此項發佈的特點如何)傳遞給了接收者,在本節所述的條款下發佈的對應的源代碼必須包含安裝資訊。但是如果您或者任何第三方組織都沒有保留在用戶産品上安裝修改過的目標代碼的能力(比如程式被安裝在了ROM上),那麽這項要求不會生效。
提供安裝資訊的要求並沒有要求爲接收者修改或安裝過的程式,或者修改或安裝該程式的用戶産品,繼續提供支援服務、擔保或升級。當修改本身實際上相反地影響了網路的運行,或者違反了網路通信的規則和協定時,網路訪問可以被拒絕。
根據本節發佈的對應源代碼和提供的安裝資訊必須以公共的文件格式發佈(並附加一個該類型文檔的實現方法以源碼形式向公衆共用),解壓縮、閱讀或複製這些資訊不能要求任何密碼。
7.附加條款
“附加許可”是通過允許一些本授權的特例來補充本授權的條款。只要它們在使用法律下合法,對整個程式都生效的附加許可就應當被認爲是本授權的內容。如果附加許可只是對本程式的一部分生效,那麽該部分可以在那些許可下獨立使用,但整個程式是在本授權管理下,無論附加許可如何。
當您發佈覆蓋程式的副本時,您可以選擇刪除該副本或其部分的任何附加許可。(當您修改程式時,附加許可可能要求在某些情況下將自身刪除)。您可以把附加許可放在材料上,加入到您擁有或能授予版權許可的覆蓋程式中。
儘管本授權在別處有提供,對於您加入到程式中的材料,您可以(如果您由該材料的版權所有者授權的話)用以下條款補充本授權:
a. 拒絕擔保責任或以與本授權第15和16小節條款不同的方式限制責任;或者
b. 要求保留特定的合理法律通告,或者該材料中或包含於適當法律通告中的該程式的作者貢獻;或者
c. 禁止誤傳該材料的來源,或者要求該材料的修改版本以合理的方式標誌爲與原版本不同的版本;或者
d. 限制以宣傳爲目的的使用該材料作者或授權人的姓名;或者
e. 降低授權級別以在商標法下使用一些商品名稱,商標或服務標記;或者
f. 要求任何發佈該材料(或其修改版本)的人用對接收者的責任假設合同對授權人和材料作者進行保護,避免任何這樣的假設合同直接造成授權人和作者的責任。
所有其他不許可的附加條款都被認爲是第10節中的“進一步的約束”。如果您收到的程式或者其部分,聲稱自己由本授權管理,並補充了進一步約束,那麽您可以刪除這些約束。如果一個授權文件包含進一步約束,但是允許再次授權或者在本授權下發佈,只要這樣的進一步的約束在這樣的再次授權或發佈中無法保留下來,您就可以在覆蓋程式中加入該授權文件條款管理下的材料。
如果您依據本小節向覆蓋程式添加條款,您必須在相關的源碼文件中加入一個應用於那些文件的附加條款的聲明或者指明在哪里可以找到這些條款的通告。
附加的條款,無論是許可的還是非許可的條款,都可以寫在一個單獨的書面授權中,或者申明爲例外情況;這兩種方法都可以實現上述要求。
8.終止授權
您只有在本授權的明確授權下才能傳播或修改覆蓋程式。任何其他的傳播或修改覆蓋程式的嘗試都是非法的,並將自動終止您在本授權下獲取的權利(包括依據第11節第三段條款授予的任何專利授權)。
然而,如果您停止違反本授權,那麽您從某個特定版權所有者處獲取的授權許可能夠以以下方式恢復(a)您可以暫時地擁有授權,直到版權所有者明確地終止您的授權;(b)如果在您停止違反本授權後的60天內,版權所有者沒有以某種合理的方式告知您的違背行爲,那麽您可以永久地獲取該授權。
進一步地,如果某個版權所有者以某種合理的方式告知您違反本授權的行爲,而這是您第一次收到來自該版權所有者的違反本授權的通知(對任何軟體),並且在收到通知後30天內修正了違反行爲,那麽您從該版權所有者處獲取的授權將永久地恢復。
當您的授權在本節條款下被終止時,那些從您那獲取授權的組織只要保持不違反本授權協定,其授權就不會被終止。您只有在授權被版權所有者恢復了之後才有資格依據第10節的條款獲取該材料的新的授權。
9.獲取副本不需要接受本授權
您不需要爲了接收或運行本程式的副本而接受本授權協定。僅僅是因爲點對點傳輸獲取副本引起傳播行爲,也不要求您接受本授權協定。然而,除了本授權外,任何授權協定都不能授予您傳播或修改覆蓋程式的許可。因此,如果您修改或者傳播了本程式的副本,那麽您就默認地接受了本授權。
10.下游接收者的自動授權
每次您發佈覆蓋程式,接收者都自動獲得一份來自原授權人的依照本授權協定運行、修改和傳播該程式的授權。依據本授權,您不爲執行任何第三方組織的要求負責。
“實體事務”指轉移一個組織的控制權或全部資産,或者拆分組織,或者合併組織的事務。如果覆蓋程式的傳播是實體事務造成的,該事務中每一個接收本程式副本的組織都將獲取一份其前身擁有的或者能夠依據前面的條款提供的任何授權,以及從其前身獲取程式對應的源代碼的權利,如果前身擁有或以合理的努力能夠獲取這些源代碼的話。
您不可以對從本授權協定獲取或確認的權利的執行強加任何約束。比如,您不可以要求授權費用,版稅要求或對從本授權獲取的權利的執行收取任何費用。您不可以發起訴訟(包括聯合訴訟和反訴)聲稱由於製作、使用、銷售、批發或者引進本程式或其任何一部分而侵犯了任何專利權。
11.專利權
“貢獻者”是在本授權下授予本程式或者本程式所基於的程式的使用權的版權所有者。這樣的程式被成爲貢獻者的“貢獻者版本”。
一個貢獻者的“實質的專利申明”是該貢獻者所佔有和控制的全部專利,無論已經獲得的還是在將來獲得的,那些可能受到某種方式侵犯的專利權。本授權允許製作、使用和銷售其貢獻者版本,但不包括那些只會由於對貢獻者版本進一步的修改而受到侵犯的專利的申明。爲此,“控制”一詞包括以同本授權要求一致的方式給予從屬授權的權利。
每個貢獻者在該貢獻者的實質的專利申明下授予您非獨家的,全世界的,不需要版稅的專利授權,允許您製作、使用、銷售、批發、進口以及運行、修改和傳播其貢獻者版本內容。
在以下三個自然段中,“專利授權”指任何形式表達的不執行專利權的協定或承諾(例如使用專利權的口頭許可,或者不爲侵犯專利而起訴的契約)。向一個組織授予專利授權指做出這樣的不向該組織提出強制執行專利權的承諾。
如果您在自己明確知道的情況下發佈基於某個專利授權的覆蓋程式,而這個程式的對應的源代碼並不能在本授權條款下通過網路服務器或其他有效途徑免費地向公衆提供訪問,您必須做到:(1)使對應的源代碼按照上述方法可訪問;或者(2)放棄從該程式的專利授權獲取任何利益;或者(3)以某種與本授權要求一致的方法使該專利授權延伸到下游的接收者。“在自己明確知道的情況下”指您明確地知道除了獲取專利授權外,在某個國家您傳播覆蓋程式的行爲,或者接收者使用覆蓋程式的行爲,會由於該專利授權而侵犯一個或多個在該國可確認的專利權,而這些專利權您有足夠的理由相信它們是有效的。
在依照或者涉及某一次事務或安排時,如果您通過獲取發佈或傳播覆蓋程式的傳輸版本,並給予接收該覆蓋程式的某些組織專利授權,允許他們使用,傳播,修改或者發佈該覆蓋程式的特殊版本,那麽您賦予這些組織的專利授權將自動延伸到所有該覆蓋程式及基於該程式的作品的接收者。
一份專利授權是“有偏見的”,如果它沒有在自身所覆蓋的範圍內包含,禁止行使,或者要求不執行一個或多個本授權下明確認可的權利。以下情況,您不可以發佈一個覆蓋程式:如果您與軟體發佈行業的第三方組織有協定,而該協定要求您根據該程式的發佈情況向該組織付費,同時該組織在你們的協定中賦予任何從您那裏獲得覆蓋軟體的組織一份有偏見的專利授權,要麽(a)連同您所發佈的副本(或者從這些副本製作的副本);要麽(b)主要爲了並連同某個的産品或者包含該覆蓋程式的聯合體。如果您簽署該協定或獲得該專利授權的日期早於2007年3月28日,那麽您不受本條款約束。
本授權的任何部分不會被解釋爲拒絕或者限制任何暗含的授權或其他在適用專利權法下保護您的專利不受侵犯的措施。
12.不要放棄別人的自由
如果您遇到了與本授權向矛盾的情況(無論是法庭判決,合同或者其他情況),它們不能使您免去本授權的要求。如果您不能同時按照本授權中的義務和其他相關義務來發佈覆蓋程式,那麽您將不能發佈它們。比如,如果您接受了要求您向從您這裏或許本程式的人收取版稅的條款,您唯一能夠同時滿足本授權和那些條款的方法是完全不要發佈本程式。
13.和GNU Affero通用公共授權一起使用
儘管本協定有其他防備條款,您有權把任何覆蓋程式和基於第三版GNU Affero通用公共授權的程式鏈結起來,並且發佈該聯合程式。本授權的條款仍然對您的覆蓋程式有效,但是GNU Affero通用公共授權第13節關於通過網路交互的要求會對整個聯合體有效。
14.本授權的修訂版
自由軟體基金會有時候可能會發佈GNU通用軟體授權的修訂版本和/或新版本。這樣的新版本將會和現行版本保持精神上的一致性,但是可能會在細節上有所不同,以處理新的問題和情況。
每個版本都有一個單獨的版本號。如果本程式指出了應用於本程式的一個特定的GNU通用公共授權版本號“以及後續版本”,您將擁有選擇該版本或任何由自由軟體基金會發佈的後續版本中的條款和條件的權利。如果本程式沒有指定特定的GNU通用公共授權版本號,那麽您可以選擇任何自由軟體基金會已發佈的版本。
如果本程式指出某個代理可以決定將來的GNU通用公共授權是否可以應用於本程式,那麽該代理的接受任何版本的公開稱述都是您選擇該版本應用於本程式的永久認可。
後續的授權版本可能會賦予您額外的或者不同的許可。但是,您對後續版本的選擇不會對任何作者和版權所有者強加任何義務。
15.免責申明
在適用法律許可下,本授權不對本程式承擔任何擔保責任。除非是書面申明,否則版權所有者和/或提供本程式的第三方組織,“照舊”不承擔任何形式的擔保責任,無論是承諾的還是暗含的,包括但不限於就適售性和爲某個特殊目的的適用性的默認擔保責任。有關本程式質量與效能的全部風險均由您承擔。如本程式被證明有瑕疵,您應承擔所有必要的服務、修復或更正的費用。
16.責任範圍
除非受適用法律要求或者書面同意,任何版權所有者,或任何依前述方式修改和/或發佈本程式者,對於您因爲使用或不能使用本程式所造成的一般性、特殊性、意外性或間接性損失,不負任何責任(包括但不限於,資料損失,資料執行不精確,或應由您或第三人承擔的損失,或本程式無法與其他程式運作等),即便該版權所有者或其他組織已經被告知程式有此類損失的可能性也是如此。
17.第15和16節的解釋
如果上述免責申明和責任範圍不能按照地方法律條款獲得法律效力,復審法庭應該採用最接近于完全放棄關於本程式的民事責任的法律,除非隨同本程式的責任擔保或責任假設合同是收費的。
-條款和條件結束-
如何在您的新程式中應用這些條款?
如果您開發了一個新程式,並且希望能夠讓它盡可能地被大衆使用,達成此目的的最好方式就是讓它成爲自由軟體。任何人都能夠依據這些條款對該軟體再次發佈和修改。
爲了做到這一點,請將以下聲明附加到程式上。最安全的作法,是將聲明放在每份源碼文件的起始處,以有效傳達無擔保責任的訊息;且每份文件至少應有「版權」列以及本份聲明全文位置的提示。
<用一行描述程式的名稱與其用途簡述>
版權所有(C) <年份><作者姓名>
本程式爲自由軟體;您可依據自由軟體基金會所發表的GNU通用公共授權條款,對本程式再次發佈和/或修改;無論您依據的是本授權的第三版,或(您可選的)任一日後發行的版本。
本程式是基於使用目的而加以發佈,然而不負任何擔保責任;亦無對適售性或特定目的適用性所爲的默示性擔保。詳情請參照GNU通用公共授權。
您應已收到附隨於本程式的GNU通用公共授權的副本;如果沒有,請參照
<http://www.gnu.org/licenses/>.
同時附上如何以電子及書面信件與您聯繫的資料。
如果程式進行終端對話模式運作,請在互動式模式開始時,輸出以下提示:
<程式> 版權所有(C) <年份> <作者姓名>
本程式不負任何擔保責任,欲知詳情請鍵入'show w'。
這是一個自由軟體,歡迎您在特定條件下再發佈本程式;欲知詳情請鍵入'show c'。
所假設的指令'show w'與'show c'應顯示通用公共授權的相對應條款。當然,您可以使用'show w'與'show c'以外的指令名稱;對於圖形用戶介面,您可以用“關於”項代實現此功能。
如有需要,您還應該取得您的雇主(若您的工作爲程式設計師)或學校就本程式所簽署的“版權放棄承諾書”。欲知這方面的詳情,以及如何應用和遵守GNU通用公共授權,請參考
<http://www.gnu.org/licenses/>
GNU通用公共授權並不允許您將本程式合併到私有的程式中。若您的程式是一個子程式庫,您可能認爲允許私有的應用程式鏈結該庫會更有用。如果這是您所想做的,請使用GNU鬆弛通用公共授權代替本授權。但這樣做之前,請閱讀
<http://www.gnu.org/philosophy/why-not-lgpl.html>
--------------------------------------------------------------------------------
原文網站: http://www.gnu.org/licenses/gpl.html
Released under Creative Commons Attribution-NoDerivs 2.0 Generic Version License