+1
.envrc
+1
.envrc
···
···
1
+
use flake
+75
-645
LICENSE
+75
-645
LICENSE
···
1
-
GNU GENERAL PUBLIC LICENSE
2
-
Version 3, 29 June 2007
3
-
4
-
Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
5
-
Everyone is permitted to copy and distribute verbatim copies
6
-
of this license document, but changing it is not allowed.
7
-
8
-
Preamble
9
-
10
-
The GNU General Public License is a free, copyleft license for
11
-
software and other kinds of works.
12
-
13
-
The licenses for most software and other practical works are designed
14
-
to take away your freedom to share and change the works. By contrast,
15
-
the GNU General Public License is intended to guarantee your freedom to
16
-
share and change all versions of a program--to make sure it remains free
17
-
software for all its users. We, the Free Software Foundation, use the
18
-
GNU General Public License for most of our software; it applies also to
19
-
any other work released this way by its authors. You can apply it to
20
-
your programs, too.
21
-
22
-
When we speak of free software, we are referring to freedom, not
23
-
price. Our General Public Licenses are designed to make sure that you
24
-
have the freedom to distribute copies of free software (and charge for
25
-
them if you wish), that you receive source code or can get it if you
26
-
want it, that you can change the software or use pieces of it in new
27
-
free programs, and that you know you can do these things.
28
-
29
-
To protect your rights, we need to prevent others from denying you
30
-
these rights or asking you to surrender the rights. Therefore, you have
31
-
certain responsibilities if you distribute copies of the software, or if
32
-
you modify it: responsibilities to respect the freedom of others.
33
-
34
-
For example, if you distribute copies of such a program, whether
35
-
gratis or for a fee, you must pass on to the recipients the same
36
-
freedoms that you received. You must make sure that they, too, receive
37
-
or can get the source code. And you must show them these terms so they
38
-
know their rights.
39
-
40
-
Developers that use the GNU GPL protect your rights with two steps:
41
-
(1) assert copyright on the software, and (2) offer you this License
42
-
giving you legal permission to copy, distribute and/or modify it.
43
-
44
-
For the developers' and authors' protection, the GPL clearly explains
45
-
that there is no warranty for this free software. For both users' and
46
-
authors' sake, the GPL requires that modified versions be marked as
47
-
changed, so that their problems will not be attributed erroneously to
48
-
authors of previous versions.
49
-
50
-
Some devices are designed to deny users access to install or run
51
-
modified versions of the software inside them, although the manufacturer
52
-
can do so. This is fundamentally incompatible with the aim of
53
-
protecting users' freedom to change the software. The systematic
54
-
pattern of such abuse occurs in the area of products for individuals to
55
-
use, which is precisely where it is most unacceptable. Therefore, we
56
-
have designed this version of the GPL to prohibit the practice for those
57
-
products. If such problems arise substantially in other domains, we
58
-
stand ready to extend this provision to those domains in future versions
59
-
of the GPL, as needed to protect the freedom of users.
60
-
61
-
Finally, every program is threatened constantly by software patents.
62
-
States should not allow patents to restrict development and use of
63
-
software on general-purpose computers, but in those that do, we wish to
64
-
avoid the special danger that patents applied to a free program could
65
-
make it effectively proprietary. To prevent this, the GPL assures that
66
-
patents cannot be used to render the program non-free.
67
-
68
-
The precise terms and conditions for copying, distribution and
69
-
modification follow.
70
-
71
-
TERMS AND CONDITIONS
72
-
73
-
0. Definitions.
74
-
75
-
"This License" refers to version 3 of the GNU General Public License.
76
-
77
-
"Copyright" also means copyright-like laws that apply to other kinds of
78
-
works, such as semiconductor masks.
79
-
80
-
"The Program" refers to any copyrightable work licensed under this
81
-
License. Each licensee is addressed as "you". "Licensees" and
82
-
"recipients" may be individuals or organizations.
83
-
84
-
To "modify" a work means to copy from or adapt all or part of the work
85
-
in a fashion requiring copyright permission, other than the making of an
86
-
exact copy. The resulting work is called a "modified version" of the
87
-
earlier work or a work "based on" the earlier work.
88
-
89
-
A "covered work" means either the unmodified Program or a work based
90
-
on the Program.
91
-
92
-
To "propagate" a work means to do anything with it that, without
93
-
permission, would make you directly or secondarily liable for
94
-
infringement under applicable copyright law, except executing it on a
95
-
computer or modifying a private copy. Propagation includes copying,
96
-
distribution (with or without modification), making available to the
97
-
public, and in some countries other activities as well.
98
-
99
-
To "convey" a work means any kind of propagation that enables other
100
-
parties to make or receive copies. Mere interaction with a user through
101
-
a computer network, with no transfer of a copy, is not conveying.
102
-
103
-
An interactive user interface displays "Appropriate Legal Notices"
104
-
to the extent that it includes a convenient and prominently visible
105
-
feature that (1) displays an appropriate copyright notice, and (2)
106
-
tells the user that there is no warranty for the work (except to the
107
-
extent that warranties are provided), that licensees may convey the
108
-
work under this License, and how to view a copy of this License. If
109
-
the interface presents a list of user commands or options, such as a
110
-
menu, a prominent item in the list meets this criterion.
111
-
112
-
1. Source Code.
113
-
114
-
The "source code" for a work means the preferred form of the work
115
-
for making modifications to it. "Object code" means any non-source
116
-
form of a work.
117
-
118
-
A "Standard Interface" means an interface that either is an official
119
-
standard defined by a recognized standards body, or, in the case of
120
-
interfaces specified for a particular programming language, one that
121
-
is widely used among developers working in that language.
122
-
123
-
The "System Libraries" of an executable work include anything, other
124
-
than the work as a whole, that (a) is included in the normal form of
125
-
packaging a Major Component, but which is not part of that Major
126
-
Component, and (b) serves only to enable use of the work with that
127
-
Major Component, or to implement a Standard Interface for which an
128
-
implementation is available to the public in source code form. A
129
-
"Major Component", in this context, means a major essential component
130
-
(kernel, window system, and so on) of the specific operating system
131
-
(if any) on which the executable work runs, or a compiler used to
132
-
produce the work, or an object code interpreter used to run it.
133
-
134
-
The "Corresponding Source" for a work in object code form means all
135
-
the source code needed to generate, install, and (for an executable
136
-
work) run the object code and to modify the work, including scripts to
137
-
control those activities. However, it does not include the work's
138
-
System Libraries, or general-purpose tools or generally available free
139
-
programs which are used unmodified in performing those activities but
140
-
which are not part of the work. For example, Corresponding Source
141
-
includes interface definition files associated with source files for
142
-
the work, and the source code for shared libraries and dynamically
143
-
linked subprograms that the work is specifically designed to require,
144
-
such as by intimate data communication or control flow between those
145
-
subprograms and other parts of the work.
146
-
147
-
The Corresponding Source need not include anything that users
148
-
can regenerate automatically from other parts of the Corresponding
149
-
Source.
150
-
151
-
The Corresponding Source for a work in source code form is that
152
-
same work.
153
-
154
-
2. Basic Permissions.
155
-
156
-
All rights granted under this License are granted for the term of
157
-
copyright on the Program, and are irrevocable provided the stated
158
-
conditions are met. This License explicitly affirms your unlimited
159
-
permission to run the unmodified Program. The output from running a
160
-
covered work is covered by this License only if the output, given its
161
-
content, constitutes a covered work. This License acknowledges your
162
-
rights of fair use or other equivalent, as provided by copyright law.
163
-
164
-
You may make, run and propagate covered works that you do not
165
-
convey, without conditions so long as your license otherwise remains
166
-
in force. You may convey covered works to others for the sole purpose
167
-
of having them make modifications exclusively for you, or provide you
168
-
with facilities for running those works, provided that you comply with
169
-
the terms of this License in conveying all material for which you do
170
-
not control copyright. Those thus making or running the covered works
171
-
for you must do so exclusively on your behalf, under your direction
172
-
and control, on terms that prohibit them from making any copies of
173
-
your copyrighted material outside their relationship with you.
174
-
175
-
Conveying under any other circumstances is permitted solely under
176
-
the conditions stated below. Sublicensing is not allowed; section 10
177
-
makes it unnecessary.
178
-
179
-
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
180
-
181
-
No covered work shall be deemed part of an effective technological
182
-
measure under any applicable law fulfilling obligations under article
183
-
11 of the WIPO copyright treaty adopted on 20 December 1996, or
184
-
similar laws prohibiting or restricting circumvention of such
185
-
measures.
186
-
187
-
When you convey a covered work, you waive any legal power to forbid
188
-
circumvention of technological measures to the extent such circumvention
189
-
is effected by exercising rights under this License with respect to
190
-
the covered work, and you disclaim any intention to limit operation or
191
-
modification of the work as a means of enforcing, against the work's
192
-
users, your or third parties' legal rights to forbid circumvention of
193
-
technological measures.
194
-
195
-
4. Conveying Verbatim Copies.
196
-
197
-
You may convey verbatim copies of the Program's source code as you
198
-
receive it, in any medium, provided that you conspicuously and
199
-
appropriately publish on each copy an appropriate copyright notice;
200
-
keep intact all notices stating that this License and any
201
-
non-permissive terms added in accord with section 7 apply to the code;
202
-
keep intact all notices of the absence of any warranty; and give all
203
-
recipients a copy of this License along with the Program.
204
-
205
-
You may charge any price or no price for each copy that you convey,
206
-
and you may offer support or warranty protection for a fee.
207
-
208
-
5. Conveying Modified Source Versions.
209
-
210
-
You may convey a work based on the Program, or the modifications to
211
-
produce it from the Program, in the form of source code under the
212
-
terms of section 4, provided that you also meet all of these conditions:
213
-
214
-
a) The work must carry prominent notices stating that you modified
215
-
it, and giving a relevant date.
216
-
217
-
b) The work must carry prominent notices stating that it is
218
-
released under this License and any conditions added under section
219
-
7. This requirement modifies the requirement in section 4 to
220
-
"keep intact all notices".
221
-
222
-
c) You must license the entire work, as a whole, under this
223
-
License to anyone who comes into possession of a copy. This
224
-
License will therefore apply, along with any applicable section 7
225
-
additional terms, to the whole of the work, and all its parts,
226
-
regardless of how they are packaged. This License gives no
227
-
permission to license the work in any other way, but it does not
228
-
invalidate such permission if you have separately received it.
229
-
230
-
d) If the work has interactive user interfaces, each must display
231
-
Appropriate Legal Notices; however, if the Program has interactive
232
-
interfaces that do not display Appropriate Legal Notices, your
233
-
work need not make them do so.
234
-
235
-
A compilation of a covered work with other separate and independent
236
-
works, which are not by their nature extensions of the covered work,
237
-
and which are not combined with it such as to form a larger program,
238
-
in or on a volume of a storage or distribution medium, is called an
239
-
"aggregate" if the compilation and its resulting copyright are not
240
-
used to limit the access or legal rights of the compilation's users
241
-
beyond what the individual works permit. Inclusion of a covered work
242
-
in an aggregate does not cause this License to apply to the other
243
-
parts of the aggregate.
244
-
245
-
6. Conveying Non-Source Forms.
246
-
247
-
You may convey a covered work in object code form under the terms
248
-
of sections 4 and 5, provided that you also convey the
249
-
machine-readable Corresponding Source under the terms of this License,
250
-
in one of these ways:
251
-
252
-
a) Convey the object code in, or embodied in, a physical product
253
-
(including a physical distribution medium), accompanied by the
254
-
Corresponding Source fixed on a durable physical medium
255
-
customarily used for software interchange.
256
-
257
-
b) Convey the object code in, or embodied in, a physical product
258
-
(including a physical distribution medium), accompanied by a
259
-
written offer, valid for at least three years and valid for as
260
-
long as you offer spare parts or customer support for that product
261
-
model, to give anyone who possesses the object code either (1) a
262
-
copy of the Corresponding Source for all the software in the
263
-
product that is covered by this License, on a durable physical
264
-
medium customarily used for software interchange, for a price no
265
-
more than your reasonable cost of physically performing this
266
-
conveying of source, or (2) access to copy the
267
-
Corresponding Source from a network server at no charge.
268
-
269
-
c) Convey individual copies of the object code with a copy of the
270
-
written offer to provide the Corresponding Source. This
271
-
alternative is allowed only occasionally and noncommercially, and
272
-
only if you received the object code with such an offer, in accord
273
-
with subsection 6b.
274
-
275
-
d) Convey the object code by offering access from a designated
276
-
place (gratis or for a charge), and offer equivalent access to the
277
-
Corresponding Source in the same way through the same place at no
278
-
further charge. You need not require recipients to copy the
279
-
Corresponding Source along with the object code. If the place to
280
-
copy the object code is a network server, the Corresponding Source
281
-
may be on a different server (operated by you or a third party)
282
-
that supports equivalent copying facilities, provided you maintain
283
-
clear directions next to the object code saying where to find the
284
-
Corresponding Source. Regardless of what server hosts the
285
-
Corresponding Source, you remain obligated to ensure that it is
286
-
available for as long as needed to satisfy these requirements.
287
-
288
-
e) Convey the object code using peer-to-peer transmission, provided
289
-
you inform other peers where the object code and Corresponding
290
-
Source of the work are being offered to the general public at no
291
-
charge under subsection 6d.
292
-
293
-
A separable portion of the object code, whose source code is excluded
294
-
from the Corresponding Source as a System Library, need not be
295
-
included in conveying the object code work.
296
-
297
-
A "User Product" is either (1) a "consumer product", which means any
298
-
tangible personal property which is normally used for personal, family,
299
-
or household purposes, or (2) anything designed or sold for incorporation
300
-
into a dwelling. In determining whether a product is a consumer product,
301
-
doubtful cases shall be resolved in favor of coverage. For a particular
302
-
product received by a particular user, "normally used" refers to a
303
-
typical or common use of that class of product, regardless of the status
304
-
of the particular user or of the way in which the particular user
305
-
actually uses, or expects or is expected to use, the product. A product
306
-
is a consumer product regardless of whether the product has substantial
307
-
commercial, industrial or non-consumer uses, unless such uses represent
308
-
the only significant mode of use of the product.
309
-
310
-
"Installation Information" for a User Product means any methods,
311
-
procedures, authorization keys, or other information required to install
312
-
and execute modified versions of a covered work in that User Product from
313
-
a modified version of its Corresponding Source. The information must
314
-
suffice to ensure that the continued functioning of the modified object
315
-
code is in no case prevented or interfered with solely because
316
-
modification has been made.
317
-
318
-
If you convey an object code work under this section in, or with, or
319
-
specifically for use in, a User Product, and the conveying occurs as
320
-
part of a transaction in which the right of possession and use of the
321
-
User Product is transferred to the recipient in perpetuity or for a
322
-
fixed term (regardless of how the transaction is characterized), the
323
-
Corresponding Source conveyed under this section must be accompanied
324
-
by the Installation Information. But this requirement does not apply
325
-
if neither you nor any third party retains the ability to install
326
-
modified object code on the User Product (for example, the work has
327
-
been installed in ROM).
328
-
329
-
The requirement to provide Installation Information does not include a
330
-
requirement to continue to provide support service, warranty, or updates
331
-
for a work that has been modified or installed by the recipient, or for
332
-
the User Product in which it has been modified or installed. Access to a
333
-
network may be denied when the modification itself materially and
334
-
adversely affects the operation of the network or violates the rules and
335
-
protocols for communication across the network.
336
-
337
-
Corresponding Source conveyed, and Installation Information provided,
338
-
in accord with this section must be in a format that is publicly
339
-
documented (and with an implementation available to the public in
340
-
source code form), and must require no special password or key for
341
-
unpacking, reading or copying.
342
-
343
-
7. Additional Terms.
344
-
345
-
"Additional permissions" are terms that supplement the terms of this
346
-
License by making exceptions from one or more of its conditions.
347
-
Additional permissions that are applicable to the entire Program shall
348
-
be treated as though they were included in this License, to the extent
349
-
that they are valid under applicable law. If additional permissions
350
-
apply only to part of the Program, that part may be used separately
351
-
under those permissions, but the entire Program remains governed by
352
-
this License without regard to the additional permissions.
353
-
354
-
When you convey a copy of a covered work, you may at your option
355
-
remove any additional permissions from that copy, or from any part of
356
-
it. (Additional permissions may be written to require their own
357
-
removal in certain cases when you modify the work.) You may place
358
-
additional permissions on material, added by you to a covered work,
359
-
for which you have or can give appropriate copyright permission.
360
-
361
-
Notwithstanding any other provision of this License, for material you
362
-
add to a covered work, you may (if authorized by the copyright holders of
363
-
that material) supplement the terms of this License with terms:
364
-
365
-
a) Disclaiming warranty or limiting liability differently from the
366
-
terms of sections 15 and 16 of this License; or
367
-
368
-
b) Requiring preservation of specified reasonable legal notices or
369
-
author attributions in that material or in the Appropriate Legal
370
-
Notices displayed by works containing it; or
371
-
372
-
c) Prohibiting misrepresentation of the origin of that material, or
373
-
requiring that modified versions of such material be marked in
374
-
reasonable ways as different from the original version; or
375
-
376
-
d) Limiting the use for publicity purposes of names of licensors or
377
-
authors of the material; or
378
-
379
-
e) Declining to grant rights under trademark law for use of some
380
-
trade names, trademarks, or service marks; or
381
-
382
-
f) Requiring indemnification of licensors and authors of that
383
-
material by anyone who conveys the material (or modified versions of
384
-
it) with contractual assumptions of liability to the recipient, for
385
-
any liability that these contractual assumptions directly impose on
386
-
those licensors and authors.
387
-
388
-
All other non-permissive additional terms are considered "further
389
-
restrictions" within the meaning of section 10. If the Program as you
390
-
received it, or any part of it, contains a notice stating that it is
391
-
governed by this License along with a term that is a further
392
-
restriction, you may remove that term. If a license document contains
393
-
a further restriction but permits relicensing or conveying under this
394
-
License, you may add to a covered work material governed by the terms
395
-
of that license document, provided that the further restriction does
396
-
not survive such relicensing or conveying.
397
-
398
-
If you add terms to a covered work in accord with this section, you
399
-
must place, in the relevant source files, a statement of the
400
-
additional terms that apply to those files, or a notice indicating
401
-
where to find the applicable terms.
402
-
403
-
Additional terms, permissive or non-permissive, may be stated in the
404
-
form of a separately written license, or stated as exceptions;
405
-
the above requirements apply either way.
406
-
407
-
8. Termination.
408
-
409
-
You may not propagate or modify a covered work except as expressly
410
-
provided under this License. Any attempt otherwise to propagate or
411
-
modify it is void, and will automatically terminate your rights under
412
-
this License (including any patent licenses granted under the third
413
-
paragraph of section 11).
414
-
415
-
However, if you cease all violation of this License, then your
416
-
license from a particular copyright holder is reinstated (a)
417
-
provisionally, unless and until the copyright holder explicitly and
418
-
finally terminates your license, and (b) permanently, if the copyright
419
-
holder fails to notify you of the violation by some reasonable means
420
-
prior to 60 days after the cessation.
421
-
422
-
Moreover, your license from a particular copyright holder is
423
-
reinstated permanently if the copyright holder notifies you of the
424
-
violation by some reasonable means, this is the first time you have
425
-
received notice of violation of this License (for any work) from that
426
-
copyright holder, and you cure the violation prior to 30 days after
427
-
your receipt of the notice.
428
-
429
-
Termination of your rights under this section does not terminate the
430
-
licenses of parties who have received copies or rights from you under
431
-
this License. If your rights have been terminated and not permanently
432
-
reinstated, you do not qualify to receive new licenses for the same
433
-
material under section 10.
434
-
435
-
9. Acceptance Not Required for Having Copies.
436
-
437
-
You are not required to accept this License in order to receive or
438
-
run a copy of the Program. Ancillary propagation of a covered work
439
-
occurring solely as a consequence of using peer-to-peer transmission
440
-
to receive a copy likewise does not require acceptance. However,
441
-
nothing other than this License grants you permission to propagate or
442
-
modify any covered work. These actions infringe copyright if you do
443
-
not accept this License. Therefore, by modifying or propagating a
444
-
covered work, you indicate your acceptance of this License to do so.
445
-
446
-
10. Automatic Licensing of Downstream Recipients.
447
-
448
-
Each time you convey a covered work, the recipient automatically
449
-
receives a license from the original licensors, to run, modify and
450
-
propagate that work, subject to this License. You are not responsible
451
-
for enforcing compliance by third parties with this License.
452
-
453
-
An "entity transaction" is a transaction transferring control of an
454
-
organization, or substantially all assets of one, or subdividing an
455
-
organization, or merging organizations. If propagation of a covered
456
-
work results from an entity transaction, each party to that
457
-
transaction who receives a copy of the work also receives whatever
458
-
licenses to the work the party's predecessor in interest had or could
459
-
give under the previous paragraph, plus a right to possession of the
460
-
Corresponding Source of the work from the predecessor in interest, if
461
-
the predecessor has it or can get it with reasonable efforts.
462
-
463
-
You may not impose any further restrictions on the exercise of the
464
-
rights granted or affirmed under this License. For example, you may
465
-
not impose a license fee, royalty, or other charge for exercise of
466
-
rights granted under this License, and you may not initiate litigation
467
-
(including a cross-claim or counterclaim in a lawsuit) alleging that
468
-
any patent claim is infringed by making, using, selling, offering for
469
-
sale, or importing the Program or any portion of it.
470
-
471
-
11. Patents.
472
-
473
-
A "contributor" is a copyright holder who authorizes use under this
474
-
License of the Program or a work on which the Program is based. The
475
-
work thus licensed is called the contributor's "contributor version".
476
-
477
-
A contributor's "essential patent claims" are all patent claims
478
-
owned or controlled by the contributor, whether already acquired or
479
-
hereafter acquired, that would be infringed by some manner, permitted
480
-
by this License, of making, using, or selling its contributor version,
481
-
but do not include claims that would be infringed only as a
482
-
consequence of further modification of the contributor version. For
483
-
purposes of this definition, "control" includes the right to grant
484
-
patent sublicenses in a manner consistent with the requirements of
485
-
this License.
486
-
487
-
Each contributor grants you a non-exclusive, worldwide, royalty-free
488
-
patent license under the contributor's essential patent claims, to
489
-
make, use, sell, offer for sale, import and otherwise run, modify and
490
-
propagate the contents of its contributor version.
491
-
492
-
In the following three paragraphs, a "patent license" is any express
493
-
agreement or commitment, however denominated, not to enforce a patent
494
-
(such as an express permission to practice a patent or covenant not to
495
-
sue for patent infringement). To "grant" such a patent license to a
496
-
party means to make such an agreement or commitment not to enforce a
497
-
patent against the party.
498
499
-
If you convey a covered work, knowingly relying on a patent license,
500
-
and the Corresponding Source of the work is not available for anyone
501
-
to copy, free of charge and under the terms of this License, through a
502
-
publicly available network server or other readily accessible means,
503
-
then you must either (1) cause the Corresponding Source to be so
504
-
available, or (2) arrange to deprive yourself of the benefit of the
505
-
patent license for this particular work, or (3) arrange, in a manner
506
-
consistent with the requirements of this License, to extend the patent
507
-
license to downstream recipients. "Knowingly relying" means you have
508
-
actual knowledge that, but for the patent license, your conveying the
509
-
covered work in a country, or your recipient's use of the covered work
510
-
in a country, would infringe one or more identifiable patents in that
511
-
country that you have reason to believe are valid.
512
-
513
-
If, pursuant to or in connection with a single transaction or
514
-
arrangement, you convey, or propagate by procuring conveyance of, a
515
-
covered work, and grant a patent license to some of the parties
516
-
receiving the covered work authorizing them to use, propagate, modify
517
-
or convey a specific copy of the covered work, then the patent license
518
-
you grant is automatically extended to all recipients of the covered
519
-
work and works based on it.
520
-
521
-
A patent license is "discriminatory" if it does not include within
522
-
the scope of its coverage, prohibits the exercise of, or is
523
-
conditioned on the non-exercise of one or more of the rights that are
524
-
specifically granted under this License. You may not convey a covered
525
-
work if you are a party to an arrangement with a third party that is
526
-
in the business of distributing software, under which you make payment
527
-
to the third party based on the extent of your activity of conveying
528
-
the work, and under which the third party grants, to any of the
529
-
parties who would receive the covered work from you, a discriminatory
530
-
patent license (a) in connection with copies of the covered work
531
-
conveyed by you (or copies made from those copies), or (b) primarily
532
-
for and in connection with specific products or compilations that
533
-
contain the covered work, unless you entered into that arrangement,
534
-
or that patent license was granted, prior to 28 March 2007.
535
-
536
-
Nothing in this License shall be construed as excluding or limiting
537
-
any implied license or other defenses to infringement that may
538
-
otherwise be available to you under applicable patent law.
539
-
540
-
12. No Surrender of Others' Freedom.
541
542
-
If conditions are imposed on you (whether by court order, agreement or
543
-
otherwise) that contradict the conditions of this License, they do not
544
-
excuse you from the conditions of this License. If you cannot convey a
545
-
covered work so as to satisfy simultaneously your obligations under this
546
-
License and any other pertinent obligations, then as a consequence you may
547
-
not convey it at all. For example, if you agree to terms that obligate you
548
-
to collect a royalty for further conveying from those to whom you convey
549
-
the Program, the only way you could satisfy both those terms and this
550
-
License would be to refrain entirely from conveying the Program.
551
552
-
13. Use with the GNU Affero General Public License.
553
554
-
Notwithstanding any other provision of this License, you have
555
-
permission to link or combine any covered work with a work licensed
556
-
under version 3 of the GNU Affero General Public License into a single
557
-
combined work, and to convey the resulting work. The terms of this
558
-
License will continue to apply to the part which is the covered work,
559
-
but the special requirements of the GNU Affero General Public License,
560
-
section 13, concerning interaction through a network will apply to the
561
-
combination as such.
562
563
-
14. Revised Versions of this License.
564
565
-
The Free Software Foundation may publish revised and/or new versions of
566
-
the GNU General Public License from time to time. Such new versions will
567
-
be similar in spirit to the present version, but may differ in detail to
568
-
address new problems or concerns.
569
570
-
Each version is given a distinguishing version number. If the
571
-
Program specifies that a certain numbered version of the GNU General
572
-
Public License "or any later version" applies to it, you have the
573
-
option of following the terms and conditions either of that numbered
574
-
version or of any later version published by the Free Software
575
-
Foundation. If the Program does not specify a version number of the
576
-
GNU General Public License, you may choose any version ever published
577
-
by the Free Software Foundation.
578
579
-
If the Program specifies that a proxy can decide which future
580
-
versions of the GNU General Public License can be used, that proxy's
581
-
public statement of acceptance of a version permanently authorizes you
582
-
to choose that version for the Program.
583
584
-
Later license versions may give you additional or different
585
-
permissions. However, no additional obligations are imposed on any
586
-
author or copyright holder as a result of your choosing to follow a
587
-
later version.
588
589
-
15. Disclaimer of Warranty.
590
591
-
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
592
-
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
593
-
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
594
-
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
595
-
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
596
-
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
597
-
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
598
-
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
599
600
-
16. Limitation of Liability.
601
602
-
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
603
-
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
604
-
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
605
-
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
606
-
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
607
-
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
608
-
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
609
-
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
610
-
SUCH DAMAGES.
611
612
-
17. Interpretation of Sections 15 and 16.
613
614
-
If the disclaimer of warranty and limitation of liability provided
615
-
above cannot be given local legal effect according to their terms,
616
-
reviewing courts shall apply local law that most closely approximates
617
-
an absolute waiver of all civil liability in connection with the
618
-
Program, unless a warranty or assumption of liability accompanies a
619
-
copy of the Program in return for a fee.
620
621
-
END OF TERMS AND CONDITIONS
622
623
-
How to Apply These Terms to Your New Programs
624
625
-
If you develop a new program, and you want it to be of the greatest
626
-
possible use to the public, the best way to achieve this is to make it
627
-
free software which everyone can redistribute and change under these terms.
628
629
-
To do so, attach the following notices to the program. It is safest
630
-
to attach them to the start of each source file to most effectively
631
-
state the exclusion of warranty; and each file should have at least
632
-
the "copyright" line and a pointer to where the full notice is found.
633
634
-
<one line to give the program's name and a brief idea of what it does.>
635
-
Copyright (C) <year> <name of author>
636
637
-
This program is free software: you can redistribute it and/or modify
638
-
it under the terms of the GNU General Public License as published by
639
-
the Free Software Foundation, either version 3 of the License, or
640
-
(at your option) any later version.
641
642
-
This program is distributed in the hope that it will be useful,
643
-
but WITHOUT ANY WARRANTY; without even the implied warranty of
644
-
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
645
-
GNU General Public License for more details.
646
647
-
You should have received a copy of the GNU General Public License
648
-
along with this program. If not, see <https://www.gnu.org/licenses/>.
649
650
-
Also add information on how to contact you by electronic and paper mail.
651
652
-
If the program does terminal interaction, make it output a short
653
-
notice like this when it starts in an interactive mode:
654
655
-
<program> Copyright (C) <year> <name of author>
656
-
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
657
-
This is free software, and you are welcome to redistribute it
658
-
under certain conditions; type `show c' for details.
659
660
-
The hypothetical commands `show w' and `show c' should show the appropriate
661
-
parts of the General Public License. Of course, your program's commands
662
-
might be different; for a GUI interface, you would use an "about box".
663
664
-
You should also get your employer (if you work as a programmer) or school,
665
-
if any, to sign a "copyright disclaimer" for the program, if necessary.
666
-
For more information on this, and how to apply and follow the GNU GPL, see
667
-
<https://www.gnu.org/licenses/>.
668
669
-
The GNU General Public License does not permit incorporating your program
670
-
into proprietary programs. If your program is a subroutine library, you
671
-
may consider it more useful to permit linking proprietary applications with
672
-
the library. If this is what you want to do, use the GNU Lesser General
673
-
Public License instead of this License. But first, please read
674
-
<https://www.gnu.org/licenses/why-not-lgpl.html>.
···
1
+
# PolyForm Strict License 1.0.0
2
3
+
<https://polyformproject.org/licenses/strict/1.0.0>
4
5
+
## Acceptance
6
7
+
In order to get any license under these terms, you must agree
8
+
to them as both strict obligations and conditions to all
9
+
your licenses.
10
11
+
## Copyright License
12
13
+
The licensor grants you a copyright license for the software
14
+
to do everything you might do with the software that would
15
+
otherwise infringe the licensor's copyright in it for any
16
+
permitted purpose, other than distributing the software or
17
+
making changes or new works based on the software.
18
19
+
## Patent License
20
21
+
The licensor grants you a patent license for the software that
22
+
covers patent claims the licensor can license, or becomes able
23
+
to license, that you would infringe by using the software.
24
25
+
## Noncommercial Purposes
26
27
+
Any noncommercial purpose is a permitted purpose.
28
29
+
## Personal Uses
30
31
+
Personal use for research, experiment, and testing for
32
+
the benefit of public knowledge, personal study, private
33
+
entertainment, hobby projects, amateur pursuits, or religious
34
+
observance, without any anticipated commercial application,
35
+
is use for a permitted purpose.
36
37
+
## Noncommercial Organizations
38
39
+
Use by any charitable organization, educational institution,
40
+
public research organization, public safety or health
41
+
organization, environmental protection organization,
42
+
or government institution is use for a permitted purpose
43
+
regardless of the source of funding or obligations resulting
44
+
from the funding.
45
46
+
## Fair Use
47
48
+
You may have "fair use" rights for the software under the
49
+
law. These terms do not limit them.
50
51
+
## No Other Rights
52
53
+
These terms do not allow you to sublicense or transfer any of
54
+
your licenses to anyone else, or prevent the licensor from
55
+
granting licenses to anyone else. These terms do not imply
56
+
any other licenses.
57
58
+
## Patent Defense
59
60
+
If you make any written claim that the software infringes or
61
+
contributes to infringement of any patent, your patent license
62
+
for the software granted under these terms ends immediately. If
63
+
your company makes such a claim, your patent license ends
64
+
immediately for work on behalf of your company.
65
66
+
## Violations
67
68
+
The first time you are notified in writing that you have
69
+
violated any of these terms, or done anything with the software
70
+
not covered by your licenses, your licenses can nonetheless
71
+
continue if you come into full compliance with these terms,
72
+
and take practical steps to correct past violations, within
73
+
32 days of receiving notice. Otherwise, all your licenses
74
+
end immediately.
75
76
+
## No Liability
77
78
+
***As far as the law allows, the software comes as is, without
79
+
any warranty or condition, and the licensor will not be liable
80
+
to you for any damages arising out of these terms or the use
81
+
or nature of the software, under any kind of legal claim.***
82
83
+
## Definitions
84
85
+
The **licensor** is the individual or entity offering these
86
+
terms, and the **software** is the software the licensor makes
87
+
available under these terms.
88
89
+
**You** refers to the individual or entity agreeing to these
90
+
terms.
91
92
+
**Your company** is any legal entity, sole proprietorship,
93
+
or other kind of organization that you work for, plus all
94
+
organizations that have control over, are under the control of,
95
+
or are under common control with that organization. **Control**
96
+
means ownership of substantially all the assets of an entity,
97
+
or the power to direct its management and policies by vote,
98
+
contract, or otherwise. Control can be direct or indirect.
99
100
+
**Your licenses** are all the licenses granted to you for the
101
+
software under these terms.
102
103
+
**Use** means anything you do with the software requiring one
104
+
of your licenses.
+287
LICENSE-EUPL
+287
LICENSE-EUPL
···
···
1
+
EUROPEAN UNION PUBLIC LICENCE v. 1.2
2
+
EUPL ยฉ the European Union 2007, 2016
3
+
4
+
This European Union Public Licence (the โEUPLโ) applies to the Work (as defined
5
+
below) which is provided under the terms of this Licence. Any use of the Work,
6
+
other than as authorised under this Licence is prohibited (to the extent such
7
+
use is covered by a right of the copyright holder of the Work).
8
+
9
+
The Work is provided under the terms of this Licence when the Licensor (as
10
+
defined below) has placed the following notice immediately following the
11
+
copyright notice for the Work:
12
+
13
+
Licensed under the EUPL
14
+
15
+
or has expressed by any other means his willingness to license under the EUPL.
16
+
17
+
1. Definitions
18
+
19
+
In this Licence, the following terms have the following meaning:
20
+
21
+
- โThe Licenceโ: this Licence.
22
+
23
+
- โThe Original Workโ: the work or software distributed or communicated by the
24
+
Licensor under this Licence, available as Source Code and also as Executable
25
+
Code as the case may be.
26
+
27
+
- โDerivative Worksโ: the works or software that could be created by the
28
+
Licensee, based upon the Original Work or modifications thereof. This Licence
29
+
does not define the extent of modification or dependence on the Original Work
30
+
required in order to classify a work as a Derivative Work; this extent is
31
+
determined by copyright law applicable in the country mentioned in Article 15.
32
+
33
+
- โThe Workโ: the Original Work or its Derivative Works.
34
+
35
+
- โThe Source Codeโ: the human-readable form of the Work which is the most
36
+
convenient for people to study and modify.
37
+
38
+
- โThe Executable Codeโ: any code which has generally been compiled and which is
39
+
meant to be interpreted by a computer as a program.
40
+
41
+
- โThe Licensorโ: the natural or legal person that distributes or communicates
42
+
the Work under the Licence.
43
+
44
+
- โContributor(s)โ: any natural or legal person who modifies the Work under the
45
+
Licence, or otherwise contributes to the creation of a Derivative Work.
46
+
47
+
- โThe Licenseeโ or โYouโ: any natural or legal person who makes any usage of
48
+
the Work under the terms of the Licence.
49
+
50
+
- โDistributionโ or โCommunicationโ: any act of selling, giving, lending,
51
+
renting, distributing, communicating, transmitting, or otherwise making
52
+
available, online or offline, copies of the Work or providing access to its
53
+
essential functionalities at the disposal of any other natural or legal
54
+
person.
55
+
56
+
2. Scope of the rights granted by the Licence
57
+
58
+
The Licensor hereby grants You a worldwide, royalty-free, non-exclusive,
59
+
sublicensable licence to do the following, for the duration of copyright vested
60
+
in the Original Work:
61
+
62
+
- use the Work in any circumstance and for all usage,
63
+
- reproduce the Work,
64
+
- modify the Work, and make Derivative Works based upon the Work,
65
+
- communicate to the public, including the right to make available or display
66
+
the Work or copies thereof to the public and perform publicly, as the case may
67
+
be, the Work,
68
+
- distribute the Work or copies thereof,
69
+
- lend and rent the Work or copies thereof,
70
+
- sublicense rights in the Work or copies thereof.
71
+
72
+
Those rights can be exercised on any media, supports and formats, whether now
73
+
known or later invented, as far as the applicable law permits so.
74
+
75
+
In the countries where moral rights apply, the Licensor waives his right to
76
+
exercise his moral right to the extent allowed by law in order to make effective
77
+
the licence of the economic rights here above listed.
78
+
79
+
The Licensor grants to the Licensee royalty-free, non-exclusive usage rights to
80
+
any patents held by the Licensor, to the extent necessary to make use of the
81
+
rights granted on the Work under this Licence.
82
+
83
+
3. Communication of the Source Code
84
+
85
+
The Licensor may provide the Work either in its Source Code form, or as
86
+
Executable Code. If the Work is provided as Executable Code, the Licensor
87
+
provides in addition a machine-readable copy of the Source Code of the Work
88
+
along with each copy of the Work that the Licensor distributes or indicates, in
89
+
a notice following the copyright notice attached to the Work, a repository where
90
+
the Source Code is easily and freely accessible for as long as the Licensor
91
+
continues to distribute or communicate the Work.
92
+
93
+
4. Limitations on copyright
94
+
95
+
Nothing in this Licence is intended to deprive the Licensee of the benefits from
96
+
any exception or limitation to the exclusive rights of the rights owners in the
97
+
Work, of the exhaustion of those rights or of other applicable limitations
98
+
thereto.
99
+
100
+
5. Obligations of the Licensee
101
+
102
+
The grant of the rights mentioned above is subject to some restrictions and
103
+
obligations imposed on the Licensee. Those obligations are the following:
104
+
105
+
Attribution right: The Licensee shall keep intact all copyright, patent or
106
+
trademarks notices and all notices that refer to the Licence and to the
107
+
disclaimer of warranties. The Licensee must include a copy of such notices and a
108
+
copy of the Licence with every copy of the Work he/she distributes or
109
+
communicates. The Licensee must cause any Derivative Work to carry prominent
110
+
notices stating that the Work has been modified and the date of modification.
111
+
112
+
Copyleft clause: If the Licensee distributes or communicates copies of the
113
+
Original Works or Derivative Works, this Distribution or Communication will be
114
+
done under the terms of this Licence or of a later version of this Licence
115
+
unless the Original Work is expressly distributed only under this version of the
116
+
Licence โ for example by communicating โEUPL v. 1.2 onlyโ. The Licensee
117
+
(becoming Licensor) cannot offer or impose any additional terms or conditions on
118
+
the Work or Derivative Work that alter or restrict the terms of the Licence.
119
+
120
+
Compatibility clause: If the Licensee Distributes or Communicates Derivative
121
+
Works or copies thereof based upon both the Work and another work licensed under
122
+
a Compatible Licence, this Distribution or Communication can be done under the
123
+
terms of this Compatible Licence. For the sake of this clause, โCompatible
124
+
Licenceโ refers to the licences listed in the appendix attached to this Licence.
125
+
Should the Licensee's obligations under the Compatible Licence conflict with
126
+
his/her obligations under this Licence, the obligations of the Compatible
127
+
Licence shall prevail.
128
+
129
+
Provision of Source Code: When distributing or communicating copies of the Work,
130
+
the Licensee will provide a machine-readable copy of the Source Code or indicate
131
+
a repository where this Source will be easily and freely available for as long
132
+
as the Licensee continues to distribute or communicate the Work.
133
+
134
+
Legal Protection: This Licence does not grant permission to use the trade names,
135
+
trademarks, service marks, or names of the Licensor, except as required for
136
+
reasonable and customary use in describing the origin of the Work and
137
+
reproducing the content of the copyright notice.
138
+
139
+
6. Chain of Authorship
140
+
141
+
The original Licensor warrants that the copyright in the Original Work granted
142
+
hereunder is owned by him/her or licensed to him/her and that he/she has the
143
+
power and authority to grant the Licence.
144
+
145
+
Each Contributor warrants that the copyright in the modifications he/she brings
146
+
to the Work are owned by him/her or licensed to him/her and that he/she has the
147
+
power and authority to grant the Licence.
148
+
149
+
Each time You accept the Licence, the original Licensor and subsequent
150
+
Contributors grant You a licence to their contributions to the Work, under the
151
+
terms of this Licence.
152
+
153
+
7. Disclaimer of Warranty
154
+
155
+
The Work is a work in progress, which is continuously improved by numerous
156
+
Contributors. It is not a finished work and may therefore contain defects or
157
+
โbugsโ inherent to this type of development.
158
+
159
+
For the above reason, the Work is provided under the Licence on an โas isโ basis
160
+
and without warranties of any kind concerning the Work, including without
161
+
limitation merchantability, fitness for a particular purpose, absence of defects
162
+
or errors, accuracy, non-infringement of intellectual property rights other than
163
+
copyright as stated in Article 6 of this Licence.
164
+
165
+
This disclaimer of warranty is an essential part of the Licence and a condition
166
+
for the grant of any rights to the Work.
167
+
168
+
8. Disclaimer of Liability
169
+
170
+
Except in the cases of wilful misconduct or damages directly caused to natural
171
+
persons, the Licensor will in no event be liable for any direct or indirect,
172
+
material or moral, damages of any kind, arising out of the Licence or of the use
173
+
of the Work, including without limitation, damages for loss of goodwill, work
174
+
stoppage, computer failure or malfunction, loss of data or any commercial
175
+
damage, even if the Licensor has been advised of the possibility of such damage.
176
+
However, the Licensor will be liable under statutory product liability laws as
177
+
far such laws apply to the Work.
178
+
179
+
9. Additional agreements
180
+
181
+
While distributing the Work, You may choose to conclude an additional agreement,
182
+
defining obligations or services consistent with this Licence. However, if
183
+
accepting obligations, You may act only on your own behalf and on your sole
184
+
responsibility, not on behalf of the original Licensor or any other Contributor,
185
+
and only if You agree to indemnify, defend, and hold each Contributor harmless
186
+
for any liability incurred by, or claims asserted against such Contributor by
187
+
the fact You have accepted any warranty or additional liability.
188
+
189
+
10. Acceptance of the Licence
190
+
191
+
The provisions of this Licence can be accepted by clicking on an icon โI agreeโ
192
+
placed under the bottom of a window displaying the text of this Licence or by
193
+
affirming consent in any other similar way, in accordance with the rules of
194
+
applicable law. Clicking on that icon indicates your clear and irrevocable
195
+
acceptance of this Licence and all of its terms and conditions.
196
+
197
+
Similarly, you irrevocably accept this Licence and all of its terms and
198
+
conditions by exercising any rights granted to You by Article 2 of this Licence,
199
+
such as the use of the Work, the creation by You of a Derivative Work or the
200
+
Distribution or Communication by You of the Work or copies thereof.
201
+
202
+
11. Information to the public
203
+
204
+
In case of any Distribution or Communication of the Work by means of electronic
205
+
communication by You (for example, by offering to download the Work from a
206
+
remote location) the distribution channel or media (for example, a website) must
207
+
at least provide to the public the information requested by the applicable law
208
+
regarding the Licensor, the Licence and the way it may be accessible, concluded,
209
+
stored and reproduced by the Licensee.
210
+
211
+
12. Termination of the Licence
212
+
213
+
The Licence and the rights granted hereunder will terminate automatically upon
214
+
any breach by the Licensee of the terms of the Licence.
215
+
216
+
Such a termination will not terminate the licences of any person who has
217
+
received the Work from the Licensee under the Licence, provided such persons
218
+
remain in full compliance with the Licence.
219
+
220
+
13. Miscellaneous
221
+
222
+
Without prejudice of Article 9 above, the Licence represents the complete
223
+
agreement between the Parties as to the Work.
224
+
225
+
If any provision of the Licence is invalid or unenforceable under applicable
226
+
law, this will not affect the validity or enforceability of the Licence as a
227
+
whole. Such provision will be construed or reformed so as necessary to make it
228
+
valid and enforceable.
229
+
230
+
The European Commission may publish other linguistic versions or new versions of
231
+
this Licence or updated versions of the Appendix, so far this is required and
232
+
reasonable, without reducing the scope of the rights granted by the Licence. New
233
+
versions of the Licence will be published with a unique version number.
234
+
235
+
All linguistic versions of this Licence, approved by the European Commission,
236
+
have identical value. Parties can take advantage of the linguistic version of
237
+
their choice.
238
+
239
+
14. Jurisdiction
240
+
241
+
Without prejudice to specific agreement between parties,
242
+
243
+
- any litigation resulting from the interpretation of this License, arising
244
+
between the European Union institutions, bodies, offices or agencies, as a
245
+
Licensor, and any Licensee, will be subject to the jurisdiction of the Court
246
+
of Justice of the European Union, as laid down in article 272 of the Treaty on
247
+
the Functioning of the European Union,
248
+
249
+
- any litigation arising between other parties and resulting from the
250
+
interpretation of this License, will be subject to the exclusive jurisdiction
251
+
of the competent court where the Licensor resides or conducts its primary
252
+
business.
253
+
254
+
15. Applicable Law
255
+
256
+
Without prejudice to specific agreement between parties,
257
+
258
+
- this Licence shall be governed by the law of the European Union Member State
259
+
where the Licensor has his seat, resides or has his registered office,
260
+
261
+
- this licence shall be governed by Belgian law if the Licensor has no seat,
262
+
residence or registered office inside a European Union Member State.
263
+
264
+
Appendix
265
+
266
+
โCompatible Licencesโ according to Article 5 EUPL are:
267
+
268
+
- GNU General Public License (GPL) v. 2, v. 3
269
+
- GNU Affero General Public License (AGPL) v. 3
270
+
- Open Software License (OSL) v. 2.1, v. 3.0
271
+
- Eclipse Public License (EPL) v. 1.0
272
+
- CeCILL v. 2.0, v. 2.1
273
+
- Mozilla Public Licence (MPL) v. 2
274
+
- GNU Lesser General Public Licence (LGPL) v. 2.1, v. 3
275
+
- Creative Commons Attribution-ShareAlike v. 3.0 Unported (CC BY-SA 3.0) for
276
+
works other than software
277
+
- European Union Public Licence (EUPL) v. 1.1, v. 1.2
278
+
- Quรฉbec Free and Open-Source Licence โ Reciprocity (LiLiQ-R) or Strong
279
+
Reciprocity (LiLiQ-R+).
280
+
281
+
The European Commission may update this Appendix to later versions of the above
282
+
licences without producing a new version of the EUPL, as long as they provide
283
+
the rights granted in Article 2 of this Licence and protect the covered Source
284
+
Code from exclusive appropriation.
285
+
286
+
All other changes or additions to this Appendix require the production of a new
287
+
EUPL version.
+7
README.md
+7
README.md
···
···
1
+
# Incendium Biomes Only
2
+
An addon for [Incendium](https://modrinth.com/datapack/incendium) that disabled the items, mobs and structures - leaving only the biomes.
3
+
4
+
## Licensing
5
+
IBO is dual-licensed under [Polyform Strict](LICENSE) and conditionally under the [EUPL v1.2](LICENSE-EUPL).
6
+
7
+
If you wish to gain a copy of IBO under the EUPL, please reach out at [mia@naomieow.xyz](mailto:mia@naomieow.xyz), on my [Discord](https://chat.lesbian.skin/) or on the issue tracker here.
-57
build.gradle
-57
build.gradle
···
1
-
plugins {
2
-
id 'fabric-loom' version '1.2-SNAPSHOT'
3
-
id 'maven-publish'
4
-
}
5
-
6
-
version = project.mod_version
7
-
group = project.maven_group
8
-
9
-
base {
10
-
archivesName = project.archives_base_name
11
-
}
12
-
13
-
repositories {
14
-
}
15
-
16
-
dependencies {
17
-
minecraft "com.mojang:minecraft:${project.minecraft_version}"
18
-
mappings "net.fabricmc:yarn:${project.yarn_mappings}:v2"
19
-
modImplementation "net.fabricmc:fabric-loader:${project.loader_version}"
20
-
modImplementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_version}"
21
-
22
-
}
23
-
24
-
processResources {
25
-
inputs.property "version", project.version
26
-
27
-
filesMatching("fabric.mod.json") {
28
-
expand "version": project.version
29
-
}
30
-
}
31
-
32
-
tasks.withType(JavaCompile).configureEach {
33
-
it.options.release = 17
34
-
}
35
-
36
-
java {
37
-
withSourcesJar()
38
-
39
-
sourceCompatibility = JavaVersion.VERSION_17
40
-
targetCompatibility = JavaVersion.VERSION_17
41
-
}
42
-
43
-
jar {
44
-
from("LICENSE") {
45
-
rename { "${it}_${project.archivesBaseName}"}
46
-
}
47
-
}
48
-
49
-
publishing {
50
-
publications {
51
-
mavenJava(MavenPublication) {
52
-
from components.java
53
-
}
54
-
}
55
-
repositories {
56
-
}
57
-
}
···
+138
build.gradle.kts
+138
build.gradle.kts
···
···
1
+
plugins {
2
+
`maven-publish`
3
+
alias(libs.plugins.cloche)
4
+
}
5
+
6
+
repositories {
7
+
cloche {
8
+
mavenForge()
9
+
mavenFabric()
10
+
mavenNeoforged()
11
+
librariesMinecraft()
12
+
main()
13
+
}
14
+
maven("https://maven.neoforged.net/mojang-meta")
15
+
mavenLocal()
16
+
mavenCentral()
17
+
}
18
+
19
+
group = "xyz.naomieow"
20
+
version = "3.1.0"
21
+
22
+
cloche {
23
+
metadata {
24
+
modId = "ibo"
25
+
name = "Incendium Biomes Only"
26
+
description = "Disables everything but biomes in Incendium"
27
+
license = "PolyForm Strict License 1.0.0"
28
+
29
+
author {
30
+
name = "Naomi Roberts"
31
+
}
32
+
}
33
+
34
+
val common = common("common:datapack")
35
+
36
+
forge("forge:1.19") {
37
+
minecraftVersion = "1.19"
38
+
loaderVersion = "41.1.0"
39
+
40
+
metadata {
41
+
dependencies {
42
+
dependency {
43
+
modId = "incendium"
44
+
required = true
45
+
version("5.1.4")
46
+
}
47
+
}
48
+
}
49
+
50
+
dependsOn(common)
51
+
}
52
+
53
+
forge("forge:1.19.3") {
54
+
minecraftVersion = "1.19.3"
55
+
loaderVersion = "44.1.23"
56
+
57
+
metadata {
58
+
dependencies {
59
+
dependency {
60
+
modId = "incendium"
61
+
required = true
62
+
version("5.1.4")
63
+
}
64
+
}
65
+
}
66
+
67
+
dependsOn(common)
68
+
}
69
+
70
+
fabric("fabric:1.19") {
71
+
minecraftVersion = "1.19"
72
+
loaderVersion = "0.16.0"
73
+
74
+
metadata {
75
+
entrypoint("main", "xyz.naomieow.ibo.IboMod")
76
+
dependencies {
77
+
dependency {
78
+
modId = "incendium"
79
+
required = true
80
+
version("5.1.4")
81
+
}
82
+
fabricApi("0.58.0")
83
+
}
84
+
}
85
+
86
+
dependsOn(common)
87
+
}
88
+
89
+
fabric("fabric:1.21") {
90
+
minecraftVersion = "1.21"
91
+
loaderVersion = "0.16.0"
92
+
93
+
metadata {
94
+
entrypoint("main", "xyz.naomieow.ibo.IboMod")
95
+
dependencies {
96
+
dependency {
97
+
modId = "incendium"
98
+
required = true
99
+
version("5.4.3")
100
+
}
101
+
fabricApi("0.102.0")
102
+
}
103
+
}
104
+
105
+
dependsOn(common)
106
+
}
107
+
108
+
neoforge("neoforge:1.21") {
109
+
minecraftVersion = "1.21"
110
+
loaderVersion = "21.0.167"
111
+
112
+
metadata {
113
+
dependencies {
114
+
dependency {
115
+
modId = "incendium"
116
+
required = true
117
+
version("5.4.3")
118
+
}
119
+
}
120
+
}
121
+
122
+
dependsOn(common)
123
+
}
124
+
125
+
val datapackZip by tasks.registering(Zip::class) {
126
+
// Cloche doesn't generate resources folder for common anymore
127
+
// so I jankily grab the datapack from the source code instead.
128
+
from(File(projectDir, "src/common/datapack/main/resources/resourcepacks/ibo")) {
129
+
include("**")
130
+
}
131
+
archiveClassifier = "datapack"
132
+
destinationDirectory = base.distsDirectory
133
+
}
134
+
135
+
artifacts {
136
+
archives(datapackZip)
137
+
}
138
+
}
+27
flake.lock
+27
flake.lock
···
···
1
+
{
2
+
"nodes": {
3
+
"nixpkgs": {
4
+
"locked": {
5
+
"lastModified": 1763934636,
6
+
"narHash": "sha256-9glbI7f1uU+yzQCq5LwLgdZqx6svOhZWkd4JRY265fc=",
7
+
"owner": "NixOS",
8
+
"repo": "nixpkgs",
9
+
"rev": "ee09932cedcef15aaf476f9343d1dea2cb77e261",
10
+
"type": "github"
11
+
},
12
+
"original": {
13
+
"owner": "NixOS",
14
+
"ref": "nixpkgs-unstable",
15
+
"repo": "nixpkgs",
16
+
"type": "github"
17
+
}
18
+
},
19
+
"root": {
20
+
"inputs": {
21
+
"nixpkgs": "nixpkgs"
22
+
}
23
+
}
24
+
},
25
+
"root": "root",
26
+
"version": 7
27
+
}
+45
flake.nix
+45
flake.nix
···
···
1
+
{
2
+
inputs = {
3
+
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
4
+
};
5
+
6
+
outputs = {nixpkgs, ...} @ inputs: let
7
+
lib = nixpkgs.lib;
8
+
supportedSystems = ["x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin"];
9
+
forEachSupportedSystem = f:
10
+
lib.genAttrs supportedSystems (system:
11
+
f {
12
+
pkgs = import nixpkgs {inherit system;};
13
+
});
14
+
in {
15
+
devShells = forEachSupportedSystem ({pkgs}: let
16
+
java21 = pkgs.temurin-bin-21;
17
+
java17 = pkgs.temurin-bin-17;
18
+
19
+
nativeBuildInputs = with pkgs; [
20
+
java21
21
+
java17
22
+
kotlin
23
+
kotlin-language-server
24
+
];
25
+
26
+
buildInputs = with pkgs; [
27
+
libGL
28
+
glfw3-minecraft
29
+
flite
30
+
libpulseaudio
31
+
];
32
+
in {
33
+
default = pkgs.mkShell {
34
+
inherit nativeBuildInputs buildInputs;
35
+
36
+
env = {
37
+
LD_LIBRARY_PATH = lib.makeLibraryPath buildInputs;
38
+
JAVA_HOME = "${java21.home}";
39
+
JDK21 = "${java21.home}";
40
+
JDK17 = "${java17.home}";
41
+
};
42
+
};
43
+
});
44
+
};
45
+
}
gradle/wrapper/gradle-wrapper.jar
gradle/wrapper/gradle-wrapper.jar
This is a binary file and will not be displayed.
+2
-1
gradle/wrapper/gradle-wrapper.properties
+2
-1
gradle/wrapper/gradle-wrapper.properties
+2
-16
gradle.properties
+2
-16
gradle.properties
···
1
-
# Done to increase the memory available to gradle.
2
-
org.gradle.jvmargs=-Xmx1G
3
org.gradle.parallel=true
4
-
5
-
# Fabric Properties
6
-
# check these on https://fabricmc.net/develop
7
-
minecraft_version=1.19.3
8
-
yarn_mappings=1.19.3+build.5
9
-
loader_version=0.14.24
10
-
11
-
# Mod Properties
12
-
mod_version=1.0.0
13
-
maven_group=xyz.naomieow.ibo
14
-
archives_base_name=ibo
15
-
16
-
# Dependencies
17
-
fabric_version=0.76.1+1.19.3
+17
-10
gradlew
+17
-10
gradlew
···
15
# See the License for the specific language governing permissions and
16
# limitations under the License.
17
#
18
19
##############################################################################
20
#
···
55
# Darwin, MinGW, and NonStop.
56
#
57
# (3) This script is generated from the Groovy template
58
-
# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
59
# within the Gradle project.
60
#
61
# You can find Gradle at https://github.com/gradle/gradle/.
···
83
# This is normally unused
84
# shellcheck disable=SC2034
85
APP_BASE_NAME=${0##*/}
86
-
APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit
87
88
# Use the maximum available, or set MAX_FD != -1 to use that value.
89
MAX_FD=maximum
···
130
fi
131
else
132
JAVACMD=java
133
-
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
134
135
Please set the JAVA_HOME variable in your environment to match the
136
location of your Java installation."
137
fi
138
139
# Increase the maximum file descriptors if we can.
···
141
case $MAX_FD in #(
142
max*)
143
# In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
144
-
# shellcheck disable=SC3045
145
MAX_FD=$( ulimit -H -n ) ||
146
warn "Could not query maximum file descriptor limit"
147
esac
···
149
'' | soft) :;; #(
150
*)
151
# In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
152
-
# shellcheck disable=SC3045
153
ulimit -n "$MAX_FD" ||
154
warn "Could not set maximum file descriptor limit to $MAX_FD"
155
esac
···
198
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
199
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
200
201
-
# Collect all arguments for the java command;
202
-
# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of
203
-
# shell script including quotes and variable substitutions, so put them in
204
-
# double quotes to make sure that they get re-expanded; and
205
-
# * put everything else in single quotes, so that it's not re-expanded.
206
207
set -- \
208
"-Dorg.gradle.appname=$APP_BASE_NAME" \
···
15
# See the License for the specific language governing permissions and
16
# limitations under the License.
17
#
18
+
# SPDX-License-Identifier: Apache-2.0
19
+
#
20
21
##############################################################################
22
#
···
57
# Darwin, MinGW, and NonStop.
58
#
59
# (3) This script is generated from the Groovy template
60
+
# https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
61
# within the Gradle project.
62
#
63
# You can find Gradle at https://github.com/gradle/gradle/.
···
85
# This is normally unused
86
# shellcheck disable=SC2034
87
APP_BASE_NAME=${0##*/}
88
+
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
89
+
APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
90
+
' "$PWD" ) || exit
91
92
# Use the maximum available, or set MAX_FD != -1 to use that value.
93
MAX_FD=maximum
···
134
fi
135
else
136
JAVACMD=java
137
+
if ! command -v java >/dev/null 2>&1
138
+
then
139
+
die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
140
141
Please set the JAVA_HOME variable in your environment to match the
142
location of your Java installation."
143
+
fi
144
fi
145
146
# Increase the maximum file descriptors if we can.
···
148
case $MAX_FD in #(
149
max*)
150
# In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
151
+
# shellcheck disable=SC2039,SC3045
152
MAX_FD=$( ulimit -H -n ) ||
153
warn "Could not query maximum file descriptor limit"
154
esac
···
156
'' | soft) :;; #(
157
*)
158
# In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
159
+
# shellcheck disable=SC2039,SC3045
160
ulimit -n "$MAX_FD" ||
161
warn "Could not set maximum file descriptor limit to $MAX_FD"
162
esac
···
205
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
206
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
207
208
+
# Collect all arguments for the java command:
209
+
# * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
210
+
# and any embedded shellness will be escaped.
211
+
# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
212
+
# treated as '${Hostname}' itself on the command line.
213
214
set -- \
215
"-Dorg.gradle.appname=$APP_BASE_NAME" \
+94
-92
gradlew.bat
+94
-92
gradlew.bat
···
1
-
@rem
2
-
@rem Copyright 2015 the original author or authors.
3
-
@rem
4
-
@rem Licensed under the Apache License, Version 2.0 (the "License");
5
-
@rem you may not use this file except in compliance with the License.
6
-
@rem You may obtain a copy of the License at
7
-
@rem
8
-
@rem https://www.apache.org/licenses/LICENSE-2.0
9
-
@rem
10
-
@rem Unless required by applicable law or agreed to in writing, software
11
-
@rem distributed under the License is distributed on an "AS IS" BASIS,
12
-
@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
-
@rem See the License for the specific language governing permissions and
14
-
@rem limitations under the License.
15
-
@rem
16
-
17
-
@if "%DEBUG%"=="" @echo off
18
-
@rem ##########################################################################
19
-
@rem
20
-
@rem Gradle startup script for Windows
21
-
@rem
22
-
@rem ##########################################################################
23
-
24
-
@rem Set local scope for the variables with windows NT shell
25
-
if "%OS%"=="Windows_NT" setlocal
26
-
27
-
set DIRNAME=%~dp0
28
-
if "%DIRNAME%"=="" set DIRNAME=.
29
-
@rem This is normally unused
30
-
set APP_BASE_NAME=%~n0
31
-
set APP_HOME=%DIRNAME%
32
-
33
-
@rem Resolve any "." and ".." in APP_HOME to make it shorter.
34
-
for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
35
-
36
-
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
37
-
set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
38
-
39
-
@rem Find java.exe
40
-
if defined JAVA_HOME goto findJavaFromJavaHome
41
-
42
-
set JAVA_EXE=java.exe
43
-
%JAVA_EXE% -version >NUL 2>&1
44
-
if %ERRORLEVEL% equ 0 goto execute
45
-
46
-
echo.
47
-
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
48
-
echo.
49
-
echo Please set the JAVA_HOME variable in your environment to match the
50
-
echo location of your Java installation.
51
-
52
-
goto fail
53
-
54
-
:findJavaFromJavaHome
55
-
set JAVA_HOME=%JAVA_HOME:"=%
56
-
set JAVA_EXE=%JAVA_HOME%/bin/java.exe
57
-
58
-
if exist "%JAVA_EXE%" goto execute
59
-
60
-
echo.
61
-
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
62
-
echo.
63
-
echo Please set the JAVA_HOME variable in your environment to match the
64
-
echo location of your Java installation.
65
-
66
-
goto fail
67
-
68
-
:execute
69
-
@rem Setup the command line
70
-
71
-
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
72
-
73
-
74
-
@rem Execute Gradle
75
-
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
76
-
77
-
:end
78
-
@rem End local scope for the variables with windows NT shell
79
-
if %ERRORLEVEL% equ 0 goto mainEnd
80
-
81
-
:fail
82
-
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
83
-
rem the _cmd.exe /c_ return code!
84
-
set EXIT_CODE=%ERRORLEVEL%
85
-
if %EXIT_CODE% equ 0 set EXIT_CODE=1
86
-
if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE%
87
-
exit /b %EXIT_CODE%
88
-
89
-
:mainEnd
90
-
if "%OS%"=="Windows_NT" endlocal
91
-
92
-
:omega
···
1
+
@rem
2
+
@rem Copyright 2015 the original author or authors.
3
+
@rem
4
+
@rem Licensed under the Apache License, Version 2.0 (the "License");
5
+
@rem you may not use this file except in compliance with the License.
6
+
@rem You may obtain a copy of the License at
7
+
@rem
8
+
@rem https://www.apache.org/licenses/LICENSE-2.0
9
+
@rem
10
+
@rem Unless required by applicable law or agreed to in writing, software
11
+
@rem distributed under the License is distributed on an "AS IS" BASIS,
12
+
@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+
@rem See the License for the specific language governing permissions and
14
+
@rem limitations under the License.
15
+
@rem
16
+
@rem SPDX-License-Identifier: Apache-2.0
17
+
@rem
18
+
19
+
@if "%DEBUG%"=="" @echo off
20
+
@rem ##########################################################################
21
+
@rem
22
+
@rem Gradle startup script for Windows
23
+
@rem
24
+
@rem ##########################################################################
25
+
26
+
@rem Set local scope for the variables with windows NT shell
27
+
if "%OS%"=="Windows_NT" setlocal
28
+
29
+
set DIRNAME=%~dp0
30
+
if "%DIRNAME%"=="" set DIRNAME=.
31
+
@rem This is normally unused
32
+
set APP_BASE_NAME=%~n0
33
+
set APP_HOME=%DIRNAME%
34
+
35
+
@rem Resolve any "." and ".." in APP_HOME to make it shorter.
36
+
for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
37
+
38
+
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
39
+
set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
40
+
41
+
@rem Find java.exe
42
+
if defined JAVA_HOME goto findJavaFromJavaHome
43
+
44
+
set JAVA_EXE=java.exe
45
+
%JAVA_EXE% -version >NUL 2>&1
46
+
if %ERRORLEVEL% equ 0 goto execute
47
+
48
+
echo. 1>&2
49
+
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2
50
+
echo. 1>&2
51
+
echo Please set the JAVA_HOME variable in your environment to match the 1>&2
52
+
echo location of your Java installation. 1>&2
53
+
54
+
goto fail
55
+
56
+
:findJavaFromJavaHome
57
+
set JAVA_HOME=%JAVA_HOME:"=%
58
+
set JAVA_EXE=%JAVA_HOME%/bin/java.exe
59
+
60
+
if exist "%JAVA_EXE%" goto execute
61
+
62
+
echo. 1>&2
63
+
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2
64
+
echo. 1>&2
65
+
echo Please set the JAVA_HOME variable in your environment to match the 1>&2
66
+
echo location of your Java installation. 1>&2
67
+
68
+
goto fail
69
+
70
+
:execute
71
+
@rem Setup the command line
72
+
73
+
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
74
+
75
+
76
+
@rem Execute Gradle
77
+
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
78
+
79
+
:end
80
+
@rem End local scope for the variables with windows NT shell
81
+
if %ERRORLEVEL% equ 0 goto mainEnd
82
+
83
+
:fail
84
+
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
85
+
rem the _cmd.exe /c_ return code!
86
+
set EXIT_CODE=%ERRORLEVEL%
87
+
if %EXIT_CODE% equ 0 set EXIT_CODE=1
88
+
if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE%
89
+
exit /b %EXIT_CODE%
90
+
91
+
:mainEnd
92
+
if "%OS%"=="Windows_NT" endlocal
93
+
94
+
:omega
+2
libs.versions.toml
+2
libs.versions.toml
run/saves/New World/icon.png
run/saves/New World/icon.png
This is a binary file and will not be displayed.
-10
settings.gradle
-10
settings.gradle
+15
settings.gradle.kts
+15
settings.gradle.kts
···
···
1
+
rootProject.name = "ibo"
2
+
3
+
pluginManagement {
4
+
repositories {
5
+
mavenCentral()
6
+
gradlePluginPortal()
7
+
maven("https://maven.msrandom.net/repository/cloche/")
8
+
}
9
+
}
10
+
11
+
dependencyResolutionManagement {
12
+
versionCatalogs.create("libs") {
13
+
from(files("libs.versions.toml"))
14
+
}
15
+
}
src/common/datapack/main/resources/assets/ibo/icon.png
src/common/datapack/main/resources/assets/ibo/icon.png
This is a binary file and will not be displayed.
src/common/datapack/main/resources/icon.png
src/common/datapack/main/resources/icon.png
This is a binary file and will not be displayed.
+6
src/common/datapack/main/resources/pack.mcmeta
+6
src/common/datapack/main/resources/pack.mcmeta
src/common/datapack/main/resources/resourcepacks/ibo/data/incendium/function/load.mcfunction
src/common/datapack/main/resources/resourcepacks/ibo/data/incendium/function/load.mcfunction
This is a binary file and will not be displayed.
+1
src/common/datapack/main/resources/resourcepacks/ibo/data/incendium/functions/load.mcfunction
+1
src/common/datapack/main/resources/resourcepacks/ibo/data/incendium/functions/load.mcfunction
···
···
1
+
+18
src/common/datapack/main/resources/resourcepacks/ibo/data/minecraft/worldgen/structure_set/nether_complexes.json
+18
src/common/datapack/main/resources/resourcepacks/ibo/data/minecraft/worldgen/structure_set/nether_complexes.json
···
···
1
+
{
2
+
"placement": {
3
+
"type": "minecraft:random_spread",
4
+
"salt": 30084232,
5
+
"separation": 4,
6
+
"spacing": 27
7
+
},
8
+
"structures": [
9
+
{
10
+
"structure": "minecraft:fortress",
11
+
"weight": 2
12
+
},
13
+
{
14
+
"structure": "minecraft:bastion_remnant",
15
+
"weight": 3
16
+
}
17
+
]
18
+
}
+22
src/common/datapack/main/resources/resourcepacks/ibo/pack.mcmeta
+22
src/common/datapack/main/resources/resourcepacks/ibo/pack.mcmeta
···
···
1
+
{
2
+
"pack": {
3
+
"pack_format": 10,
4
+
"description": "Disables everything but biomes in Incendium"
5
+
},
6
+
"filter": {
7
+
"block": [
8
+
{
9
+
"namespace": "^incendium$",
10
+
"path": "^(structures?|advancements?|loot_tables?|item_modifiers?|predicates?|recipes?)/.*$"
11
+
},
12
+
{
13
+
"namespace": "^incendium$",
14
+
"path": "^functions?\/(admin|border_of_life|castle|clocks|entity|hovering_inferno|item|misc|player|sanctum|technical|_admin_menu|incendium).*$"
15
+
},
16
+
{
17
+
"namespace": "^incendium$",
18
+
"path": "^worldgen\/(structure|structure_set|template_pool)/.*$"
19
+
}
20
+
]
21
+
}
22
+
}
src/common/datapack/main/resources/resourcepacks/ibo/pack.png
src/common/datapack/main/resources/resourcepacks/ibo/pack.png
This is a binary file and will not be displayed.
+21
src/fabric/1.19/main/java/xyz/naomieow/ibo/IboMod.java
+21
src/fabric/1.19/main/java/xyz/naomieow/ibo/IboMod.java
···
···
1
+
package xyz.naomieow.ibo;
2
+
3
+
import net.fabricmc.api.ModInitializer;
4
+
import net.fabricmc.fabric.api.resource.ResourceManagerHelper;
5
+
import net.fabricmc.fabric.api.resource.ResourcePackActivationType;
6
+
import net.fabricmc.loader.api.FabricLoader;
7
+
import net.minecraft.resources.ResourceLocation;
8
+
9
+
public class IboMod implements ModInitializer {
10
+
@Override
11
+
public void onInitialize() {
12
+
FabricLoader.getInstance().getModContainer("ibo").ifPresent((modContainer ->
13
+
ResourceManagerHelper.registerBuiltinResourcePack(
14
+
new ResourceLocation("ibo", "ibo"),
15
+
modContainer,
16
+
"Incendium Biomes Only",
17
+
ResourcePackActivationType.ALWAYS_ENABLED
18
+
)
19
+
));
20
+
}
21
+
}
+20
src/fabric/1.21/main/java/xyz/naomieow/ibo/IboMod.java
+20
src/fabric/1.21/main/java/xyz/naomieow/ibo/IboMod.java
···
···
1
+
package xyz.naomieow.ibo;
2
+
3
+
import net.fabricmc.api.ModInitializer;
4
+
import net.fabricmc.fabric.api.resource.ResourceManagerHelper;
5
+
import net.fabricmc.fabric.api.resource.ResourcePackActivationType;
6
+
import net.fabricmc.loader.api.FabricLoader;
7
+
import net.minecraft.network.chat.Component;
8
+
import net.minecraft.resources.ResourceLocation;
9
+
10
+
public class IboMod implements ModInitializer {
11
+
@Override
12
+
public void onInitialize() {
13
+
ResourceManagerHelper.registerBuiltinResourcePack(
14
+
ResourceLocation.tryBuild("ibo", "ibo"),
15
+
FabricLoader.getInstance().getModContainer("ibo").get(),
16
+
Component.literal("Incendium Biomes Only"),
17
+
ResourcePackActivationType.ALWAYS_ENABLED
18
+
);
19
+
}
20
+
}
+61
src/forge/1.19/main/java/xyz/naomieow/ibo/IboMod.java
+61
src/forge/1.19/main/java/xyz/naomieow/ibo/IboMod.java
···
···
1
+
package xyz.naomieow.ibo;
2
+
3
+
import net.minecraft.network.chat.Component;
4
+
import net.minecraft.server.packs.PackType;
5
+
import net.minecraft.server.packs.metadata.pack.PackMetadataSection;
6
+
import net.minecraft.server.packs.repository.Pack;
7
+
import net.minecraft.server.packs.repository.PackSource;
8
+
import net.minecraftforge.event.AddPackFindersEvent;
9
+
import net.minecraftforge.eventbus.api.IEventBus;
10
+
import net.minecraftforge.fml.ModList;
11
+
import net.minecraftforge.fml.common.Mod;
12
+
import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;
13
+
import net.minecraftforge.forgespi.locating.IModFile;
14
+
import net.minecraftforge.resource.PathPackResources;
15
+
16
+
import java.io.IOException;
17
+
import java.nio.file.Path;
18
+
19
+
@Mod("ibo")
20
+
public class IboMod {
21
+
public IboMod() {
22
+
IEventBus bus = FMLJavaModLoadingContext.get().getModEventBus();
23
+
bus.addListener(this::registerPack);
24
+
}
25
+
26
+
private void registerPack(final AddPackFindersEvent event) {
27
+
if (event.getPackType() == PackType.SERVER_DATA) {
28
+
try {
29
+
IModFile modFile = ModList.get()
30
+
.getModFileById("ibo")
31
+
.getFile();
32
+
33
+
Path path = modFile.findResource("resourcepacks/ibo");
34
+
35
+
PathPackResources datapack = new PathPackResources(
36
+
modFile.getFileName() + ":ibo",
37
+
path
38
+
);
39
+
40
+
PackMetadataSection mcmeta = datapack.getMetadataSection(PackMetadataSection.SERIALIZER);
41
+
42
+
if (mcmeta != null) {
43
+
event.addRepositorySource(((consumer, packConstructor) ->
44
+
consumer.accept(packConstructor.create(
45
+
"ibo/ibo",
46
+
Component.literal("Incendium Biomes Only"),
47
+
true,
48
+
() -> datapack,
49
+
mcmeta,
50
+
Pack.Position.TOP,
51
+
PackSource.BUILT_IN
52
+
)))
53
+
);
54
+
}
55
+
} catch (IOException e) {
56
+
throw new RuntimeException(e);
57
+
}
58
+
}
59
+
}
60
+
}
61
+
+56
src/forge/1.19.3/main/java/xyz/naomieow/ibo/IboMod.java
+56
src/forge/1.19.3/main/java/xyz/naomieow/ibo/IboMod.java
···
···
1
+
package xyz.naomieow.ibo;
2
+
3
+
import net.minecraft.network.chat.Component;
4
+
import net.minecraft.server.packs.*;
5
+
import net.minecraft.server.packs.metadata.pack.PackMetadataSection;
6
+
import net.minecraft.server.packs.repository.Pack;
7
+
import net.minecraft.server.packs.repository.PackSource;
8
+
import net.minecraftforge.event.AddPackFindersEvent;
9
+
import net.minecraftforge.eventbus.api.IEventBus;
10
+
import net.minecraftforge.fml.ModList;
11
+
import net.minecraftforge.fml.common.Mod;
12
+
import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;
13
+
import net.minecraftforge.forgespi.locating.IModFile;
14
+
15
+
import java.io.IOException;
16
+
import java.nio.file.Path;
17
+
import java.util.Optional;
18
+
19
+
@Mod("ibo")
20
+
public class IboMod {
21
+
public IboMod() {
22
+
IEventBus bus = FMLJavaModLoadingContext.get().getModEventBus();
23
+
bus.addListener(this::registerPack);
24
+
}
25
+
26
+
private void registerPack(final AddPackFindersEvent event) {
27
+
if (event.getPackType() == PackType.SERVER_DATA) {
28
+
Path path = ModList.get()
29
+
.getModFileById("ibo")
30
+
.getFile()
31
+
.findResource("resourcepacks/ibo");
32
+
33
+
Pack datapack = Pack.readMetaAndCreate(
34
+
"",
35
+
Component.literal("Incendium Biomes Only"),
36
+
false,
37
+
new Pack.ResourcesSupplier() {
38
+
@Override
39
+
public PackResources open(String string) {
40
+
return new PathPackResources(
41
+
path.getFileName().toString(),
42
+
path,
43
+
false
44
+
);
45
+
}
46
+
},
47
+
PackType.SERVER_DATA,
48
+
Pack.Position.TOP,
49
+
PackSource.BUILT_IN
50
+
);
51
+
52
+
event.addRepositorySource((consumer -> consumer.accept(datapack)));
53
+
}
54
+
}
55
+
}
56
+
-21
src/main/java/xyz/naomieow/ibo/IboFabric.java
-21
src/main/java/xyz/naomieow/ibo/IboFabric.java
···
1
-
package xyz.naomieow.ibo;
2
-
3
-
import net.fabricmc.api.ModInitializer;
4
-
5
-
import net.fabricmc.fabric.api.resource.ResourceManagerHelper;
6
-
import net.fabricmc.fabric.api.resource.ResourcePackActivationType;
7
-
import net.fabricmc.loader.api.FabricLoader;
8
-
import net.minecraft.text.Text;
9
-
import net.minecraft.util.Identifier;
10
-
11
-
public class IboFabric implements ModInitializer {
12
-
@Override
13
-
public void onInitialize() {
14
-
FabricLoader.getInstance().getModContainer("ibo").ifPresent((modContainer -> ResourceManagerHelper.registerBuiltinResourcePack(
15
-
new Identifier("ibo", "ibo"),
16
-
modContainer,
17
-
Text.literal("ibo"),
18
-
ResourcePackActivationType.DEFAULT_ENABLED
19
-
)));
20
-
}
21
-
}
···
src/main/resources/assets/ibo/icon.png
src/main/resources/assets/ibo/icon.png
This is a binary file and will not be displayed.
-30
src/main/resources/fabric.mod.json
-30
src/main/resources/fabric.mod.json
···
1
-
{
2
-
"schemaVersion": 1,
3
-
"id": "ibo",
4
-
"version": "1.0.0",
5
-
"name": "Incendium Biomes Only",
6
-
"description": "Disables everything but biomes in Incendium",
7
-
"authors": [
8
-
"Naomi Roberts <mia@naomieow.xyz>"
9
-
],
10
-
"contact": {
11
-
"email": "support@naomieow.xyz",
12
-
"homepage": "https://modrinth.com/datapack/ibo",
13
-
"sources": "https://gitlab.com/naomieow/ibo",
14
-
"issues": "https://gitlab.com/naomieow/ibo/-/issues"
15
-
},
16
-
"license": "LGPL-v3",
17
-
"environment": "*",
18
-
"entrypoints": {
19
-
"main": [
20
-
"xyz.naomieow.ibo.IboFabric"
21
-
]
22
-
},
23
-
"mixins": [],
24
-
"depends": {
25
-
"fabricloader": ">=0.12.7",
26
-
"minecraft": ">=1.19.3",
27
-
"fabric-api": "*",
28
-
"incendium": ">=5.1.5"
29
-
}
30
-
}
···
-18
src/main/resources/resourcepacks/ibo/data/minecraft/worldgen/structure_set/nether_complexes.json
-18
src/main/resources/resourcepacks/ibo/data/minecraft/worldgen/structure_set/nether_complexes.json
···
1
-
{
2
-
"placement": {
3
-
"type": "minecraft:random_spread",
4
-
"salt": 30084232,
5
-
"separation": 4,
6
-
"spacing": 27
7
-
},
8
-
"structures": [
9
-
{
10
-
"structure": "minecraft:fortress",
11
-
"weight": 2
12
-
},
13
-
{
14
-
"structure": "minecraft:bastion_remnant",
15
-
"weight": 3
16
-
}
17
-
]
18
-
}
···
-54
src/main/resources/resourcepacks/ibo/pack.mcmeta
-54
src/main/resources/resourcepacks/ibo/pack.mcmeta
···
1
-
{
2
-
"pack": {
3
-
"pack_format": 12,
4
-
"description": "Disables everything but biomes in Incendium"
5
-
},
6
-
"filter": {
7
-
"block": [
8
-
{
9
-
"namespace": "incendium",
10
-
"path": "functions/.*"
11
-
},
12
-
{
13
-
"namespace": "incendium",
14
-
"path": "structures/.*"
15
-
},
16
-
{
17
-
"namespace": "incendium",
18
-
"path": "advancements/.*"
19
-
},
20
-
{
21
-
"namespace": "incendium",
22
-
"path": "loot_tables/.*"
23
-
},
24
-
{
25
-
"namespace": "incendium",
26
-
"path": "item_modifiers/.*"
27
-
},
28
-
{
29
-
"namespace": "incendium",
30
-
"path": "predicates/.*"
31
-
},
32
-
{
33
-
"namespace": "incendium",
34
-
"path": "recipes/.*"
35
-
},
36
-
{
37
-
"namespace": "incendium",
38
-
"path": "worldgen/structure/.*"
39
-
},
40
-
{
41
-
"namespace": "incendium",
42
-
"path": "worldgen/structure_set/.*"
43
-
},
44
-
{
45
-
"namespace": "incendium",
46
-
"path": "worldgen/template_pool/.*"
47
-
},
48
-
{
49
-
"namespace": "incendium",
50
-
"path": "worldgen/structure/.*"
51
-
}
52
-
]
53
-
}
54
-
}
···
src/main/resources/resourcepacks/ibo/pack.png
src/main/resources/resourcepacks/ibo/pack.png
This is a binary file and will not be displayed.
+51
src/neoforge/1.21/main/java/xyz/naomieow/ibo/IboMod.java
+51
src/neoforge/1.21/main/java/xyz/naomieow/ibo/IboMod.java
···
···
1
+
package xyz.naomieow.ibo;
2
+
3
+
import net.minecraft.network.chat.Component;
4
+
import net.minecraft.server.packs.PackLocationInfo;
5
+
import net.minecraft.server.packs.PackSelectionConfig;
6
+
import net.minecraft.server.packs.PackType;
7
+
import net.minecraft.server.packs.PathPackResources;
8
+
import net.minecraft.server.packs.repository.Pack;
9
+
import net.minecraft.server.packs.repository.PackSource;
10
+
import net.neoforged.bus.api.IEventBus;
11
+
import net.neoforged.fml.ModList;
12
+
import net.neoforged.fml.common.Mod;
13
+
import net.neoforged.neoforge.event.AddPackFindersEvent;
14
+
15
+
import java.io.IOException;
16
+
import java.nio.file.Path;
17
+
import java.util.Optional;
18
+
19
+
@Mod("ibo")
20
+
public class IboMod {
21
+
public IboMod(IEventBus bus) {
22
+
bus.addListener(this::registerPack);
23
+
}
24
+
25
+
private void registerPack(final AddPackFindersEvent event) {
26
+
if (event.getPackType() == PackType.SERVER_DATA) {
27
+
Path path = ModList.get()
28
+
.getModFileById("ibo")
29
+
.getFile()
30
+
.findResource("resourcepacks/ibo");
31
+
32
+
Pack datapack = Pack.readMetaAndCreate(
33
+
new PackLocationInfo(
34
+
path.getFileName().toString(),
35
+
Component.literal("Incendium Biomes Only"),
36
+
PackSource.BUILT_IN,
37
+
Optional.empty()
38
+
),
39
+
new PathPackResources.PathResourcesSupplier(path),
40
+
PackType.SERVER_DATA,
41
+
new PackSelectionConfig(
42
+
true,
43
+
Pack.Position.TOP,
44
+
false
45
+
)
46
+
);
47
+
48
+
event.addRepositorySource((consumer -> consumer.accept(datapack)));
49
+
}
50
+
}
51
+
}