Initial commit
6
.gitignore
vendored
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
_site
|
||||||
|
.sass-cache
|
||||||
|
.jekyll-cache
|
||||||
|
.jekyll-metadata
|
||||||
|
vendor
|
||||||
|
.idea
|
674
COPYING
Normal file
@ -0,0 +1,674 @@
|
|||||||
|
GNU GENERAL PUBLIC LICENSE
|
||||||
|
Version 3, 29 June 2007
|
||||||
|
|
||||||
|
Copyright (C) 2007 Free Software Foundation, Inc. <https://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 <https://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
|
||||||
|
<https://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
|
||||||
|
<https://www.gnu.org/licenses/why-not-lgpl.html>.
|
14
Gemfile
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
source "https://rubygems.org"
|
||||||
|
gem "jekyll", "~> 4.3.3"
|
||||||
|
group :jekyll_plugins do
|
||||||
|
gem "jekyll-feed", "~> 0.12"
|
||||||
|
end
|
||||||
|
|
||||||
|
platforms :mingw, :x64_mingw, :mswin, :jruby do
|
||||||
|
gem "tzinfo", ">= 1", "< 3"
|
||||||
|
gem "tzinfo-data"
|
||||||
|
end
|
||||||
|
|
||||||
|
gem "wdm", "~> 0.1.1", :platforms => [:mingw, :x64_mingw, :mswin]
|
||||||
|
|
||||||
|
gem "http_parser.rb", "~> 0.6.0", :platforms => [:jruby]
|
162
Gemfile.lock
Normal file
@ -0,0 +1,162 @@
|
|||||||
|
GEM
|
||||||
|
remote: https://rubygems.org/
|
||||||
|
specs:
|
||||||
|
addressable (2.8.6)
|
||||||
|
public_suffix (>= 2.0.2, < 6.0)
|
||||||
|
colorator (1.1.0)
|
||||||
|
concurrent-ruby (1.2.3)
|
||||||
|
em-websocket (0.5.3)
|
||||||
|
eventmachine (>= 0.12.9)
|
||||||
|
http_parser.rb (~> 0)
|
||||||
|
eventmachine (1.2.7)
|
||||||
|
ffi (1.16.3)
|
||||||
|
forwardable-extended (2.6.0)
|
||||||
|
google-protobuf (4.26.1)
|
||||||
|
rake (>= 13)
|
||||||
|
google-protobuf (4.26.1-aarch64-linux)
|
||||||
|
rake (>= 13)
|
||||||
|
google-protobuf (4.26.1-arm64-darwin)
|
||||||
|
rake (>= 13)
|
||||||
|
google-protobuf (4.26.1-x86-linux)
|
||||||
|
rake (>= 13)
|
||||||
|
google-protobuf (4.26.1-x86_64-darwin)
|
||||||
|
rake (>= 13)
|
||||||
|
google-protobuf (4.26.1-x86_64-linux)
|
||||||
|
rake (>= 13)
|
||||||
|
http_parser.rb (0.8.0)
|
||||||
|
i18n (1.14.4)
|
||||||
|
concurrent-ruby (~> 1.0)
|
||||||
|
jekyll (4.3.3)
|
||||||
|
addressable (~> 2.4)
|
||||||
|
colorator (~> 1.0)
|
||||||
|
em-websocket (~> 0.5)
|
||||||
|
i18n (~> 1.0)
|
||||||
|
jekyll-sass-converter (>= 2.0, < 4.0)
|
||||||
|
jekyll-watch (~> 2.0)
|
||||||
|
kramdown (~> 2.3, >= 2.3.1)
|
||||||
|
kramdown-parser-gfm (~> 1.0)
|
||||||
|
liquid (~> 4.0)
|
||||||
|
mercenary (>= 0.3.6, < 0.5)
|
||||||
|
pathutil (~> 0.9)
|
||||||
|
rouge (>= 3.0, < 5.0)
|
||||||
|
safe_yaml (~> 1.0)
|
||||||
|
terminal-table (>= 1.8, < 4.0)
|
||||||
|
webrick (~> 1.7)
|
||||||
|
jekyll-feed (0.17.0)
|
||||||
|
jekyll (>= 3.7, < 5.0)
|
||||||
|
jekyll-sass-converter (3.0.0)
|
||||||
|
sass-embedded (~> 1.54)
|
||||||
|
jekyll-seo-tag (2.8.0)
|
||||||
|
jekyll (>= 3.8, < 5.0)
|
||||||
|
jekyll-watch (2.2.1)
|
||||||
|
listen (~> 3.0)
|
||||||
|
kramdown (2.4.0)
|
||||||
|
rexml
|
||||||
|
kramdown-parser-gfm (1.1.0)
|
||||||
|
kramdown (~> 2.0)
|
||||||
|
liquid (4.0.4)
|
||||||
|
listen (3.9.0)
|
||||||
|
rb-fsevent (~> 0.10, >= 0.10.3)
|
||||||
|
rb-inotify (~> 0.9, >= 0.9.10)
|
||||||
|
mercenary (0.4.0)
|
||||||
|
minima (2.5.1)
|
||||||
|
jekyll (>= 3.5, < 5.0)
|
||||||
|
jekyll-feed (~> 0.9)
|
||||||
|
jekyll-seo-tag (~> 2.1)
|
||||||
|
pathutil (0.16.2)
|
||||||
|
forwardable-extended (~> 2.6)
|
||||||
|
public_suffix (5.0.5)
|
||||||
|
rake (13.2.1)
|
||||||
|
rb-fsevent (0.11.2)
|
||||||
|
rb-inotify (0.10.1)
|
||||||
|
ffi (~> 1.0)
|
||||||
|
rexml (3.2.6)
|
||||||
|
rouge (4.2.1)
|
||||||
|
safe_yaml (1.0.5)
|
||||||
|
sass-embedded (1.74.1)
|
||||||
|
google-protobuf (>= 3.25, < 5.0)
|
||||||
|
rake (>= 13.0.0)
|
||||||
|
sass-embedded (1.74.1-aarch64-linux-android)
|
||||||
|
google-protobuf (>= 3.25, < 5.0)
|
||||||
|
sass-embedded (1.74.1-aarch64-linux-gnu)
|
||||||
|
google-protobuf (>= 3.25, < 5.0)
|
||||||
|
sass-embedded (1.74.1-aarch64-linux-musl)
|
||||||
|
google-protobuf (>= 3.25, < 5.0)
|
||||||
|
sass-embedded (1.74.1-aarch64-mingw-ucrt)
|
||||||
|
google-protobuf (>= 3.25, < 5.0)
|
||||||
|
sass-embedded (1.74.1-arm-linux-androideabi)
|
||||||
|
google-protobuf (>= 3.25, < 5.0)
|
||||||
|
sass-embedded (1.74.1-arm-linux-gnueabihf)
|
||||||
|
google-protobuf (>= 3.25, < 5.0)
|
||||||
|
sass-embedded (1.74.1-arm-linux-musleabihf)
|
||||||
|
google-protobuf (>= 3.25, < 5.0)
|
||||||
|
sass-embedded (1.74.1-arm64-darwin)
|
||||||
|
google-protobuf (>= 3.25, < 5.0)
|
||||||
|
sass-embedded (1.74.1-riscv64-linux-android)
|
||||||
|
google-protobuf (>= 3.25, < 5.0)
|
||||||
|
sass-embedded (1.74.1-riscv64-linux-gnu)
|
||||||
|
google-protobuf (>= 3.25, < 5.0)
|
||||||
|
sass-embedded (1.74.1-riscv64-linux-musl)
|
||||||
|
google-protobuf (>= 3.25, < 5.0)
|
||||||
|
sass-embedded (1.74.1-x86-cygwin)
|
||||||
|
google-protobuf (>= 3.25, < 5.0)
|
||||||
|
sass-embedded (1.74.1-x86-linux-android)
|
||||||
|
google-protobuf (>= 3.25, < 5.0)
|
||||||
|
sass-embedded (1.74.1-x86-linux-gnu)
|
||||||
|
google-protobuf (>= 3.25, < 5.0)
|
||||||
|
sass-embedded (1.74.1-x86-linux-musl)
|
||||||
|
google-protobuf (>= 3.25, < 5.0)
|
||||||
|
sass-embedded (1.74.1-x86-mingw-ucrt)
|
||||||
|
google-protobuf (>= 3.25, < 5.0)
|
||||||
|
sass-embedded (1.74.1-x86_64-cygwin)
|
||||||
|
google-protobuf (>= 3.25, < 5.0)
|
||||||
|
sass-embedded (1.74.1-x86_64-darwin)
|
||||||
|
google-protobuf (>= 3.25, < 5.0)
|
||||||
|
sass-embedded (1.74.1-x86_64-linux-android)
|
||||||
|
google-protobuf (>= 3.25, < 5.0)
|
||||||
|
sass-embedded (1.74.1-x86_64-linux-gnu)
|
||||||
|
google-protobuf (>= 3.25, < 5.0)
|
||||||
|
sass-embedded (1.74.1-x86_64-linux-musl)
|
||||||
|
google-protobuf (>= 3.25, < 5.0)
|
||||||
|
terminal-table (3.0.2)
|
||||||
|
unicode-display_width (>= 1.1.1, < 3)
|
||||||
|
unicode-display_width (2.5.0)
|
||||||
|
webrick (1.8.1)
|
||||||
|
|
||||||
|
PLATFORMS
|
||||||
|
aarch64-linux
|
||||||
|
aarch64-linux-android
|
||||||
|
aarch64-linux-gnu
|
||||||
|
aarch64-linux-musl
|
||||||
|
aarch64-mingw-ucrt
|
||||||
|
arm-linux-androideabi
|
||||||
|
arm-linux-gnueabihf
|
||||||
|
arm-linux-musleabihf
|
||||||
|
arm64-darwin
|
||||||
|
riscv64-linux-android
|
||||||
|
riscv64-linux-gnu
|
||||||
|
riscv64-linux-musl
|
||||||
|
ruby
|
||||||
|
x86-cygwin
|
||||||
|
x86-linux
|
||||||
|
x86-linux-android
|
||||||
|
x86-linux-gnu
|
||||||
|
x86-linux-musl
|
||||||
|
x86-mingw-ucrt
|
||||||
|
x86_64-cygwin
|
||||||
|
x86_64-darwin
|
||||||
|
x86_64-linux-android
|
||||||
|
x86_64-linux-gnu
|
||||||
|
x86_64-linux-musl
|
||||||
|
|
||||||
|
DEPENDENCIES
|
||||||
|
http_parser.rb (~> 0.6.0)
|
||||||
|
jekyll (~> 4.3.3)
|
||||||
|
jekyll-feed (~> 0.12)
|
||||||
|
minima (~> 2.5)
|
||||||
|
tzinfo (>= 1, < 3)
|
||||||
|
tzinfo-data
|
||||||
|
wdm (~> 0.1.1)
|
||||||
|
|
||||||
|
BUNDLED WITH
|
||||||
|
2.5.7
|
674
LICENSE
Normal file
@ -0,0 +1,674 @@
|
|||||||
|
GNU GENERAL PUBLIC LICENSE
|
||||||
|
Version 3, 29 June 2007
|
||||||
|
|
||||||
|
Copyright (C) 2007 Free Software Foundation, Inc. <https://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 <https://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
|
||||||
|
<https://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
|
||||||
|
<https://www.gnu.org/licenses/why-not-lgpl.html>.
|
3
README.md
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
# shrapnelblog - now rewritten for maybe the third time
|
||||||
|
|
||||||
|
this time in jekyll. now i don't need to do my weird little workaround for fetching posts... it was totally overkill!
|
8
_config.yml
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
title: shr4pnelblog !!
|
||||||
|
description: Ruminations on music, the world and whatever rubbish pops into my head delivered straight to you.
|
||||||
|
url: blog.shr4pnel.com
|
||||||
|
author: tyler!
|
||||||
|
plugins:
|
||||||
|
- jekyll-feed
|
||||||
|
exclude:
|
||||||
|
- .idea
|
38
_layouts/post.html
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
<!doctype html>
|
||||||
|
<html lang="en-gb">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||||
|
<link rel="stylesheet" href="/assets/css/post.css">
|
||||||
|
<link rel="icon" href="/assets/favicon.ico">
|
||||||
|
<title>{{ site.title }}</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<header>
|
||||||
|
<div class="container title-container">
|
||||||
|
<h1 class="logo">shrapnelnet</h1>
|
||||||
|
</div>
|
||||||
|
</header>
|
||||||
|
<main>
|
||||||
|
<div class="container">
|
||||||
|
<article>
|
||||||
|
<div id="content" class="use-ibm">
|
||||||
|
<div id="title">
|
||||||
|
<h1>{{ page.title }}</h1>
|
||||||
|
</div>
|
||||||
|
<div id="date">
|
||||||
|
<p>{{ page.date | date: "%a, %d %b %Y, %r" }}</p>
|
||||||
|
</div>
|
||||||
|
<sub>by tyler, yes, the tyler!</sub>
|
||||||
|
<div class="flex-newline"></div>
|
||||||
|
<img src="/assets/graphics/duckzone.gif" alt="waddling animated ducks" class="ducks"/>
|
||||||
|
{{ content }}
|
||||||
|
</div>
|
||||||
|
</article>
|
||||||
|
<a href="/">back home!</a>
|
||||||
|
</div>
|
||||||
|
</main>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
386
_layouts/shr4pnel.html
Normal file
@ -0,0 +1,386 @@
|
|||||||
|
<!doctype html>
|
||||||
|
<html lang="en-gb">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||||
|
<link rel="icon" href="/assets/favicon.ico">
|
||||||
|
<link rel="stylesheet" href="/assets/css/index.css">
|
||||||
|
<title>{{ page.title }}</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<header>
|
||||||
|
<div class="container title-container">
|
||||||
|
<h1 class="logo">shrapnelnet</h1>
|
||||||
|
<p id="quote"></p>
|
||||||
|
</div>
|
||||||
|
</header>
|
||||||
|
<main>
|
||||||
|
<div class="container">
|
||||||
|
<h2 class="highlighted">article</h2>
|
||||||
|
<div id="articles">
|
||||||
|
{% for post in site.posts %}
|
||||||
|
<article>
|
||||||
|
<div class="card">
|
||||||
|
<img src="/assets/graphics/anon.png" alt="little face with sunglasses">
|
||||||
|
<a href="{{ post.url }}">{{ post.title }}</a>
|
||||||
|
<p>{{ post.date | date: "%d/%m/%y" }}</p>
|
||||||
|
</div>
|
||||||
|
</article>
|
||||||
|
{% endfor %}
|
||||||
|
<p>or uhh just play <a href="#">minesweeper</a> :3</p>
|
||||||
|
<img src="/assets/graphics/cutiecat.png" alt="little animated cats in a line">
|
||||||
|
</div>
|
||||||
|
<div id="socials">
|
||||||
|
<h2 class="highlighted">socials</h2>
|
||||||
|
<div>
|
||||||
|
<div class="fake-logo"></div>
|
||||||
|
<a href="mailto:admin@shr4pnel.com">My email</a>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<img
|
||||||
|
src="/assets/graphics/github-mark.svg"
|
||||||
|
alt="github logo"
|
||||||
|
width="32"
|
||||||
|
height="32"
|
||||||
|
/>
|
||||||
|
<a href="https://github.com/shrapnelnet/" target="_blank" rel="noreferrer">
|
||||||
|
github/shrapnelnet
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<img src="/assets/graphics/mastodon.svg" alt="mastodon logo" width="32" height="32"/>
|
||||||
|
<a href="https://blobfox.coffee/@tyler" target="_blank" rel="noreferrer">
|
||||||
|
@tyler@blobfox.coffee
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<img src="/assets/graphics/rss_optimised.png" alt="rss logo" width="32" height="32" />
|
||||||
|
<a href="/feed.xml">RSS feed</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="friends">
|
||||||
|
<h2 class="highlighted">friends</h2>
|
||||||
|
<div class="friend-container">
|
||||||
|
<a href="/">
|
||||||
|
<img
|
||||||
|
src="/assets/buttons/blogbutton.gif"
|
||||||
|
alt="blog.shr4pnel.com blog button. has a little animated cat called mauzy on it"
|
||||||
|
loading="lazy"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://foreverliketh.is">
|
||||||
|
<img
|
||||||
|
src="/assets/buttons/foreverliketh.is.png"
|
||||||
|
alt="foreverliketh.is blog banner. green leaves with light blue text in front"
|
||||||
|
loading="lazy"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://angelsaremathematical.neocities.org/" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/buttons/angels.png"
|
||||||
|
alt="pink background with confetti with original apple pink CRT with monospaced font reading angels are mathematical"
|
||||||
|
loading="lazy"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://blunt.gay" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/buttons/bluntgay.png"
|
||||||
|
alt="purple outline and text, monospaced, rainbow left aligned, text right aligned"
|
||||||
|
loading="lazy"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://gapandfriends.neocities.org" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/buttons/IMG_7032.png"
|
||||||
|
alt="blue chequered backdrop, red text reading: gap & friends"
|
||||||
|
loading="lazy"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://aboboracandy.neocities.org" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/buttons/aboborabtn.gif"
|
||||||
|
alt="a forest cabin with a smoking chimney next to swirling orange autumn leaves"
|
||||||
|
loading="lazy"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://myyolo1999.blogspot.com" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/buttons/porcupine.png"
|
||||||
|
alt="text reads: 'blog read', 'personality? no $$$ 4 dat!'"
|
||||||
|
loading="lazy"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://whitevhs.xyz" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/buttons/whitevhs.gif"
|
||||||
|
alt="monochrome 2 frame gif which inverts on each frame change. shows a vhs tape."
|
||||||
|
loading="lazy"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://idelides.xyz" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/buttons/idelides.png"
|
||||||
|
alt="idelides - the lazy goddess"
|
||||||
|
loading="lazy"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://dumbdizzy.neocities.org/" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/buttons/dumbdizzy.gif"
|
||||||
|
alt="blurred bunny with text reading dumbdizzy in black to yellow downwards gradient"
|
||||||
|
loading="lazy"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://voicedrew.xyz/" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/buttons/voicedrew.gif"
|
||||||
|
alt="voicedrew's button!"
|
||||||
|
loading="lazy"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://zinricky.tilde.team/" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/buttons/zinricky.png"
|
||||||
|
alt="zinrickys button !"
|
||||||
|
loading="lazy"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://psychcool.neocities.org" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/buttons/psychool.png"
|
||||||
|
alt="psychools button! lots of colours and wow and cool and etc"
|
||||||
|
loading="lazy"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://gau7ilu.xyz" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/buttons/gau7ilu.png"
|
||||||
|
alt="gau7ilu's blog button!"
|
||||||
|
loading="lazy"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<h2 class="highlighted">lainchan</h2>
|
||||||
|
<div class="friend-container lain">
|
||||||
|
<div class="friend-container lain">
|
||||||
|
<sub class="lain-text">
|
||||||
|
i am manually curating and adding to this list, please contact me at
|
||||||
|
<a href="mailto:admin@shr4pnel.com">admin@shr4pnel.com</a> or my
|
||||||
|
mastodon if you'd like to be added. feel free to add my button to your
|
||||||
|
blog, and the lainchan button onto your blog after sending your button
|
||||||
|
to the post there on the /tech/ section of the forum.
|
||||||
|
</sub>
|
||||||
|
<sub class="lain-text">
|
||||||
|
and please feel free to email me. i love hearing from new people and its
|
||||||
|
nice to not be the one reaching out.
|
||||||
|
</sub>
|
||||||
|
<span class="flex-wrap"></span>
|
||||||
|
<a href="/">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/blog.shr4pnel.com.gif"
|
||||||
|
loading="lazy"
|
||||||
|
alt="grey background, style of windows 9x button, cat called mauzy next to animated text which reads: blog.shr4pnel.com (disappears) you like blogs dont you?"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://forum.agoraroad.com" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/agora.gif"
|
||||||
|
loading="lazy"
|
||||||
|
alt="animated gif with scrolling fading out text: shhhhh (fade out) the best kept secret"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://articexploit.xyz" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/arcade.gif"
|
||||||
|
loading="lazy"
|
||||||
|
alt="animated gif with retropunk text outlined in blue filled with pink spelling: the arcade. background is a flashing arcade with lit up screens"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://lainchan.org" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/lainchan.org.gif"
|
||||||
|
loading="lazy"
|
||||||
|
alt="distorted gif with face of lain iwakura next to the font from the show in the top right reading: lainchan."
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://gamajun.neocities.org/webrings/assets/lainring" target="_blank"
|
||||||
|
rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/gamajun.png"
|
||||||
|
loading="lazy"
|
||||||
|
alt="grey background, pink design and text, glyphs surrounded by floral pattern"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://havinganame.neocities.org" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/havinganame.png"
|
||||||
|
loading="lazy"
|
||||||
|
alt="still image, neon green text on black backdrop. reads: havinganame@neocities"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://cabbagesorter.neocities.org/" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/cabbagesorter.png"
|
||||||
|
loading="lazy"
|
||||||
|
alt="still image, monospaced green font on black backdrop. face in anime style to right of image with glow effect applied around it. text is glowing green around the edges"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://foreverliketh.is" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/foreverliketh.is.gif"
|
||||||
|
loading="lazy"
|
||||||
|
alt="foreverliketh.is blog banner. green leaves with light blue text in front"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://sizeof.cat" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/sizeofcat.gif"
|
||||||
|
loading="lazy"
|
||||||
|
alt="white text on black background with blue cat. animated, cats eyes turn red and it rolls offscreen to the right. text reads: sizeof. cat is on the right of this text"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://varchar.neocities.org/" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/varchar.png"
|
||||||
|
loading="lazy"
|
||||||
|
alt="ascii art green terminal stylised text reading: varchar"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://猫.移动/webring/" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/xn-neko.gif"
|
||||||
|
loading="lazy"
|
||||||
|
alt="catgirl moving left and right next to 3d japanese characters"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://jahanrashidi.com/explore/" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/smile.png"
|
||||||
|
alt="emoticon smiley face on a grey backdrop"
|
||||||
|
loading="lazy"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://bass2nick.com" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/bass2nick.gif"
|
||||||
|
loading="lazy"
|
||||||
|
alt="round empty snail-like shell flashing in a circular motion reading: bass2nick.com"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://0x19.org" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/0x19.png"
|
||||||
|
loading="lazy"
|
||||||
|
alt="static image written in an old text editor reading: term% 0x19.org. black on white. cyan border"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://gapandfriends.neocities.org/webring" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/gapandfriend.png"
|
||||||
|
loading="lazy"
|
||||||
|
alt="red handdrawn bubble writing squared text with thin black outline reading: gap & friend! on a 2 tone blue checkered backdrop"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://navyjoecomics.neocities.org/" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/navyjoecomics.gif"
|
||||||
|
alt="2 tone blue checkered backdrop. centered text on left half white with dark blue outline in retro font reading: NAVY JOE COMICS. black and white portrait of the mascot is on the right of the text"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://s-config.com" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/s-config.png"
|
||||||
|
loading="lazy"
|
||||||
|
alt="tri tone black and white swirling effect with s-config.com written in cursive font"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://redchanit.xyz/assets/lainring.html" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/redchanit.png"
|
||||||
|
loading="lazy"
|
||||||
|
alt="black background with orange flames. red text with black outline saying: redchanit"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://crystal.tilde.institute" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/crystal-tilde.gif"
|
||||||
|
loading="lazy"
|
||||||
|
alt="grey border. black backdrop, glowing neon pink text flicking between 2 phrases: crystal.tilde.institute, your brain is tricking you into thinking. image flickers and has RGB noise and CRT scanlines"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://grafo.zone" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/grafo-zone.gif"
|
||||||
|
loading="lazy"
|
||||||
|
alt="yellow border, reddish black background. yellow text flickering like electricity flicking between 2 phrases: grafo, .zone"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://maerk.xyz" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/maerk.png"
|
||||||
|
alt="16bit style blonde character on baby blue background. text reads maerk.xyz"
|
||||||
|
loading="lazy"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://torpus.info" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/torpus.png"
|
||||||
|
alt="black and white, dice that says torpus."
|
||||||
|
loading="lazy"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://nauxnam.net" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/nauxnam.gif"
|
||||||
|
alt="spinning human head with glitchy background effect"
|
||||||
|
loading="lazy"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://lainnet.superglobalmegacorp.com/" target="_blank">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/lainnet.png"
|
||||||
|
alt="lainnet banner. red text on black background next to lain iwakura"
|
||||||
|
loading="lazy"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://nihilism.network" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/nihilism-banner.png"
|
||||||
|
alt="nihilism.network banner"
|
||||||
|
loading="lazy"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://datura.network" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/datura-banner.png"
|
||||||
|
alt="datura.network banner"
|
||||||
|
loading="lazy"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://a10days.net" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/a10days.png"
|
||||||
|
alt="a 10 days banner"
|
||||||
|
loading="lazy"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a href="https://scio.icu/" target="_blank" rel="noreferrer">
|
||||||
|
<img
|
||||||
|
src="/assets/lain/SCIO.png"
|
||||||
|
alt="SCI0 banner"
|
||||||
|
loading="lazy"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<p>Licensed under <a href="https://www.gnu.org/licenses/gpl-3.0.en.html">GNU GPLv3</a></p>
|
||||||
|
<p>source available at <a href="https://github.com/shrapnelnet/blog">github</a></p>
|
||||||
|
<img src="/assets/buttons/gnu.png" alt="gnu gpl logo">
|
||||||
|
</div>
|
||||||
|
</main>
|
||||||
|
<script data-goatcounter="https://goatcounter.shr4pnel.com/count" async="" src="https://goatcounter.shr4pnel.com/count.js"></script>
|
||||||
|
<script src="/assets/js/quote.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
21
_posts/2023-07-28-webrevival.md
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
---
|
||||||
|
title: "Infrastructure updates and web revival, or: \"why the internet fucking sucks and will possibly forever\""
|
||||||
|
date: "2023-07-28T15:04:31.661Z"
|
||||||
|
permalink: "webrevival"
|
||||||
|
description: "a brief microarticle on my gripes with the modern web development scene as well as what social media has developed into"
|
||||||
|
layout: post
|
||||||
|
---
|
||||||
|
|
||||||
|
today i migrated this domain from render.com to google cloud run. render.com does like my 2 least favourite things, charges for usage hours which is stupid because they don't reset monthly, and have an insanely slow cold start. i think it rebuilds ALL of my npm packages on each cold start.
|
||||||
|
|
||||||
|
for those of you who dont know what on earth npm is, it basically is a big bloated mess that is in love with getting rid of all of your computer storage and taking years upon years to install.
|
||||||
|
|
||||||
|
Webrevival is fucking cool and i'd like u guys to give it a go. go on neocities and just make shit, join a webring and support other people's shit.
|
||||||
|
|
||||||
|
i've personally found a bunch of cool stuff just looking around the internet. [postbox.garden](https://postbox.garden) is an imageboard that you can only post to by actually mailing a postcard to their garden in boston.
|
||||||
|
|
||||||
|
[rgbteahouse](https://rgbteahouse.neocities.org/home) is one of the first sites i ever visited while looking through webrings and neocities. The owner is very friendly and they are very talented at art.
|
||||||
|
|
||||||
|
[low tech magazine](https://solar.lowtechmagazine.com/about) run a website powered entirely on solar panels. They have a lot of really cool sustainability related content and i always love reading it.\ni hope you consider making your own content on the internet because every day it is becoming more corporatized and used as a marketing tool
|
||||||
|
|
||||||
|
thank you for reading!!! :hugs:
|
86
_posts/2023-08-08-swartz.md
Normal file
@ -0,0 +1,86 @@
|
|||||||
|
---
|
||||||
|
title: "The death of Aaron Swartz, or: \"fiction's about what it is to be a fucking human being\""
|
||||||
|
date: "2023-08-08T18:22:30.706Z"
|
||||||
|
permalink: "swartz"
|
||||||
|
description: "Tyler covers the life and death of Aaron Swartz, a software pioneer and savant who stuck to their principles to the end."
|
||||||
|
layout: post
|
||||||
|
---
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Aaron Swartz was born on November 08, 1986, and died at age 26 on January 26 2013 after 2 years of court proceedings. At age 13, he created RSS. At age 15, he created what would become reddit, and as people often forget, he also invented the markdown language which any user of VCS systems has used in the past.
|
||||||
|
|
||||||
|
Aaron was caught sharing paywalled scientific journals freely accessible to MIT alumni amongst the internet. For this, he was sentenced to a maximum fine in excess of £1,000,000 and fifty years in prison. His difficulty paying his attorneys, as well as MIT's unwillingness to help with his criminal proceedings, lead to his suicide by hanging.
|
||||||
|
|
||||||
|
Carmen Ortiz, the presiding judge over his case, faced multiple inquiries after the case, but was not removed from office and to this day continues to deny that Aaron was overcharged.
|
||||||
|
|
||||||
|
"Our beloved brother, son, friend, and partner Aaron Swartz hanged himself on Friday in his Brooklyn apartment. We are in shock, and have not yet come to terms with his passing. [Aaron's death is not simply a personal tragedy. It is the product of a criminal justice system rife with intimidation and prosecutorial overreach.](https://web.archive.org/web/20130112233941/https://rememberaaronsw.tumblr.com/post/40372208044/official-statement-from-the-family-and-partner-of-aaron\)"
|
||||||
|
|
||||||
|
One of Aaron's favourite books was infinite jest, by David Foster Wallace, who also tragically passed 5 years prior to Aaron of hanging. "[Fiction's about what it is to be a fucking human](https://web.archive.org/web/20150520115701/https://isismagazine.org.uk/2015/03/the-isis-short-essay-competition-fictions-about-what-it-is-to-be-a-fucking-human-being-david-foster-wallace-is-it)" is a quote of his. I spent a long time looking for a fitting title and it just seemed to click for me. Maybe this is tenuous, but i have never thought that art, software and fiction were that far from each other. Aaron's work enabled the creation and sharing of all three through the often overlooked power of RSS.
|
||||||
|
|
||||||
|
Looking through old archives of Aaron's, one of the most memorable things I've found is a collection of notes from his memorial service, at which Tim Berners Lee delivered Aaron's eulogy in the Internet Archive headquarters. Each is it's own short story, which paints its own picture of how individuals deal with grief. [This is a link to the entire archived collection of notes left for him](https://archive.org/details/AaronSwartzSFMemorialHandouts/), below are the pages that resonated the most with me, but i implore you to read through the booklet yourself to find the ones which you like most.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Quotes from top to bottom, "he had written the code that had written that code". "bits are NOT a BUG". "When the host approaches zero, the guests are limitless.", "TO BE taken seriously". "When the writer owns his/her words, the WRITER CAN GIVE". "to make salt for the people". "he felt responsible for the carcinogens he didn't stop". "when we built the internet there was no subscribe button". "Why haven't you read the books of your condition". "LICENSED | THE PUBLISHER OF THE PEOPLE". "I still think he's wrong about the Chinese room argument.". "The night before he died we shared a grilled cheese sandwich". "you can tell because i'm wearing my radical tie". "When the citizenry is well informed". "the bad thing may be in the news tomorrow do you want to hear from me?". "the first time he spoke, the audience didn't get it". "the thrill of meeting ACTUAL grown-up copy[write] activists". "i'm not sure you're right but maybe we can get out of this theorem". "**THERE IS NO NEXT Aaron... ONLY YOU**". "The 5 whys of TM cannot solve... why we call toyota, TM, -our management". "It's sort of like having a national park with moats and guns and turrets". "the revolution will be A/B tested" - Aaron. "What we choose to fight is so tiny / this is how he grows, by being beat constantly by greater beings.". "stop discouraging bulk downloads". "the government had copyrighted the copy-right database". "HEARING THE TRIAL Aaron DIDN'T WAIT for". "Let computers read". "I ansewered [sic] a couple questions about it at the end". "Yes, actually typography". @DAVIDSMOOKE
|
||||||
|
|
||||||
|
I can only ruminate about the meanings behind the scrawlings on this note. So many conversations, experiences and in-jokes condensed into one A4 sheet of paper.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
"Suicide is the tragic outcome of a treatable disease that attacks the part of the victim which otherwise would save them; the sense of hope that things will get better"
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
"Every time a rational altruist dies, the rest of us recieve a piece of his soul." - [Holden Karnofsky](https://en.wikipedia.org/wiki/Holden_Karnofsky), [givewell.org](givewell.org)
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
This is a difficult to transcribe poem, the contrast is a little garish for my eyes but i will try to the best of my ability.
|
||||||
|
|
||||||
|
The fans that keep the internet cool
|
||||||
|
sing behind the congregation
|
||||||
|
angel wings spinning
|
||||||
|
maybe angels have to hide
|
||||||
|
in reformation churches
|
||||||
|
turned church of internet
|
||||||
|
the wings of angels keep
|
||||||
|
the internet cool; wings sing on
|
||||||
|
over the voices of mourners
|
||||||
|
mourning in the evening
|
||||||
|
for suicide heroes and lost youth
|
||||||
|
aaron never made it to the promised land
|
||||||
|
so who will be our moses?
|
||||||
|
infuriating and wrong and brilliant all at the same time
|
||||||
|
making promises to ghosts
|
||||||
|
keeping promises to the living
|
||||||
|
there's nothing to do for the future
|
||||||
|
once you are in the past
|
||||||
|
once you have passed
|
||||||
|
free speech is free books is free knowledge
|
||||||
|
is free information
|
||||||
|
**he killed himself for the sorrows of knowledge**
|
||||||
|
incarcerated by dollars
|
||||||
|
knowledge denied to those without dollars
|
||||||
|
access to knowledge is a human right
|
||||||
|
suicide is a human regret :heart:
|
||||||
|
R.I.P. E.K.Keith
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
I wish i had talked to him just once. you are so lucky if you did.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Thanks, Aaron.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Ideas never really die.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
|
||||||
|
Thank you for showing us how to care about something more than our paychecks. I just wish it hadn't come at such a great cost. You are, always will be, my inspiration. - Vivek
|
||||||
|
|
||||||
|
Thank you for reading
|
39
_posts/2023-09-15-switzerland.md
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
---
|
||||||
|
title: "Switzerland 2023"
|
||||||
|
date: "2023-09-15T21:02:34.199Z"
|
||||||
|
permalink: "switzerland"
|
||||||
|
description: "photos of my trip to switzerland, lots of cows and trees to be seen here"
|
||||||
|
layout: post
|
||||||
|
---
|
||||||
|
|
||||||
|
I'm going to share some of my favourite photos from my trip to switzerland this year. Suffering from severe writers block and I just really want some content on my blog:)
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
during my time in switzerland, i went on a gauntlet of a hike, about 8 hours up a mountain, cooking at a stove, and right back down to the bottom again. this photo was taken after about an hour and a half of descending down twisting mountain paths where one slip could end up in you tumbling off of a cliff face. The house belongs to a farmer. they grew pine trees for christmas, as well as produced honey, which is what the small apiary to the left is there for.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Small clusters of village dot the landscape as the alps loom on the horizon. you can only see the alps on the clearest of days from this region of switzerland. the twisting aare river, flanked by trees, meanders around. There are grain silos and churches and all kinds of beautiful houses.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
These are mountain cows met on my travels uphill. some have bells attached to them that jingle as they walk. if you were to take the cable car up instead of hiking, you could see hundreds of jingling cows. the brown cow has a really cute haircut, almost like a highland cow. the black and white cow has flies buzzing around his mouth but doesnt smell too bad. they were relaxing in the beautiful mountainside sun.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
A clearing on the mountainside. the gravel crunches under your feet, and clumps in places hoping maybe to make you lose your footing. the dense forest made for good protection from the sun, but clearings like this were beautiful and warm and made me long to be away from the city for longer.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
a big clump of houses, seen from the top of the mountain. it was a nice sight. on the other side, you could see the alps in all their glory. the top of the mountain was full of the elderly. one thing you'll notice in switzerland is how much happier and healthier everyone seems to be.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
a few little mushrooms on a tree stump. it lived deep in the forest
|
||||||
|
|
||||||
|
as always, don't hesitate to email. <3
|
45
_posts/2023-11-01-suicide.md
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
---
|
||||||
|
title: "suicide in art and philosophy"
|
||||||
|
date: "2023-11-01T23:18:44.600Z"
|
||||||
|
permalink: "suicide"
|
||||||
|
description: "a delve into the theme of suicide, looking at the works of painters and philosophers through history."
|
||||||
|
layout: post
|
||||||
|
---
|
||||||
|
|
||||||
|
.jpg)
|
||||||
|
|
||||||
|
<sub>Edouard Manet - Le Suicidé</sub>
|
||||||
|
|
||||||
|
le suicidé has a pretty simple composition. a bed, a table, and a man collapsed backwards, still clutching the revolver that he used to take his life. his white shirt stands out amongst the browns and reds of his bedsheets and floor as though it was a blank canvas, painted with vivid red blood. it was possibly the only ever major depiction of suicide within the impressionist movement, definitely the only one not based on a historical account of suicide by a major figure.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
<sub>Jacques-Louis David - The Death of Seneca</sub>
|
||||||
|
|
||||||
|
seneca the younger was ordered by nero to kill himself in the aftermath of a conspiracy to kill and replace him. seneca's arm is outstretched limply, and his hand beckons towards his wife, phaedra. the painting depicts his final moments, his wrists slit, as he slowly bleeds out. his wife, pained by this, chose to die with him, and too slit her wrists. in stark contrast to manet's painting, the composition is rich. praetorian guard flank all edges of the painting, watching on from a balcony, holding seneca as he collapses against his chair. light washes over phaedra, being led away so neither of them have to endure watching each other die.
|
||||||
|
|
||||||
|
<img width="400" src="/article/suicide/Emile_Durkheim.jpeg" alt="Photo of sociologist Emile Durkheim">
|
||||||
|
|
||||||
|
emile durkheim was a french sociologist. they postulated that there were 4 types of suicide.
|
||||||
|
|
||||||
|
egoistic suicide:
|
||||||
|
|
||||||
|
you find yourself isolated from social groups, you lack support or any social groups. egoism within philosophy is the concept that we are motivated by self interest. egoism in this sense is not the typical egoism within philosophy wherein people are motivated by self-interest and selfishness. durkheim, however, used this phrase purely to refer to the self, the 'ego'. in this context, durkheim is probably talking about how this type of suicide is self motivated due to the individual's environment.
|
||||||
|
|
||||||
|
altruistic suicide:
|
||||||
|
|
||||||
|
altruistic suicide could be considered to be the opposite of egoistic suicide, when someone is too far integrated within their social group, when society puts collective interests at the forefront and the individual places this group's interests above even their own lives. this is most common historically with martyrdom.
|
||||||
|
|
||||||
|
anomic suicide:
|
||||||
|
|
||||||
|
anomic means to be disoriented, or to otherwise feel alienated. this often happens when social or economic conditions change swiftly, leaving people bankrupt, making people feel small. any marked major changes in routine could be said to cause this.
|
||||||
|
|
||||||
|
fatalistic suicide:
|
||||||
|
|
||||||
|
in scenarios where you feel a lack of control, surrounded by hurt and out of options, fatalistic suicide describes a situation in which suicide is the only or best option to regain control and power over your own life. this is seen in prisoners in solitary confinement, deprived of social interaction and cramped into a small cell.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
<sub>Grave of a Suicide - wilhelm kotarbiński</sub>
|
||||||
|
|
||||||
|
a solitary white flower grows between the cracks of an unmarked grave. light shines onto the flower, as a trickle of blood flows from its stem. wilting plants surround the tomb, suggesting themes of loneliness, one flower surrounded by 100 wilted ones.
|
19
_posts/2024-01-20-joy.md
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
---
|
||||||
|
title: "the great react rewrite of '24"
|
||||||
|
date: "2024-01-20T03:19:10.337Z"
|
||||||
|
description: "i mope about how doing things 'the right way' is a pain in the ass."
|
||||||
|
permalink: "joy"
|
||||||
|
layout: post
|
||||||
|
---
|
||||||
|
|
||||||
|
Welcome back to my experiment, now continuing for the wonderous year of 2024.
|
||||||
|
|
||||||
|
the entire website has been rewritten in react.js in order to keep everything as bad and as soulless as possible. still trying to fix the weird CLS shit on first load but i think that it's faster. i think i just wanted something to do !!
|
||||||
|
|
||||||
|
i hope you're all well. shit is a kick in the balls sometimes. i haven't fixed minesweeper yet and university is a fucking pain but it is what it is
|
||||||
|
|
||||||
|
all of my posts are written in MD now which means i can add pretty little :heart: hearts inline whenever i want and also do *this*. hooray ! it is also incredibly bloated and i have to polyfill everything. still working on better chunking my react code.
|
||||||
|
|
||||||
|
today i had an 18 inch pizza and yet somehow i do nothing but lose weight. i'm sure in a decade i'll be a fat shit or a very pretty cadaver
|
||||||
|
|
||||||
|
hope you've all been well! more compelling writing is coming soon. maybe ;)
|
116
_posts/2024-01-27-physical.md
Normal file
@ -0,0 +1,116 @@
|
|||||||
|
---
|
||||||
|
title: "physical media: it ain't so bad!"
|
||||||
|
date: "2024-01-27T18:10:34.524Z"
|
||||||
|
permalink: "physical"
|
||||||
|
description: "tyler moans about how much they like their damn cds!"
|
||||||
|
layout: post
|
||||||
|
---
|
||||||
|
# Physical media: it ain't so bad!
|
||||||
|
## Introduction
|
||||||
|
as the internet has grown and grown and grown, and we have access to every single piece of media we want digitally, it's easy to forget the value of media that you can hold in your hands.
|
||||||
|
|
||||||
|
this isn't just some misguided notion because i'm trying to be contrarian and rebel against the web. this shit makes life damn easy. not returning to jungle or some bullshit. ted kaczynski pretty much blew fingers off for nothing. i'm happy to be able to watch shit online and i can do this while disliking a lot of the bullshit that comes with it. (see: [dead internet theory](https://en.wikipedia.org/wiki/Dead_Internet_theory))
|
||||||
|
|
||||||
|
notably of these, the CD. "erm.... i can make playlists on spotify! i can blah blah blah" shut up!!! it's a damn interesting piece of technology. a laser pokes tiny little holes in the disc lacquer in the burner, then the reader reads these indents and turns it into music.
|
||||||
|
|
||||||
|
## part 1 - CDs are pretty fucking cool
|
||||||
|
|
||||||
|
i find the enjoyment in music can sometimes be attributed to the rituals around it. i wake up, turn on a playlist, shower with music on, walk outside with it, smoke with it and sleep with it. sometimes it feels like digital media platforms can in a way take the joy out of this.
|
||||||
|
|
||||||
|
### shopping around
|
||||||
|
|
||||||
|
this is not to mention the ritual of finding CDs itself. I like heading down into town, and sitting down by a massive shelf flicking through 100 pieces of absolute trash until i find something really personally meaningful, or an album i haven't really had a chance to fully explore.
|
||||||
|
|
||||||
|
i found this to be the case with a CD i found in my last haul. it was "tears for fears - songs from the big chair".
|
||||||
|
|
||||||
|
recently though, other albums i've found within my hauls have been the colour and the shape by foo fighters, adrenaline by deftones, decade by duran duran, and in utero by nirvana.
|
||||||
|
|
||||||
|
### dopamine (evil!)
|
||||||
|
|
||||||
|
i could've just as easily turned on spotify and listened to any of these. actually no, it would've been far easier! not to mention losslessly and all of this bullshit.
|
||||||
|
|
||||||
|
but for a few reasons, that would've made this series of events, this ritual i have crafted for myself, a completely different experience.
|
||||||
|
|
||||||
|
#### longevity
|
||||||
|
|
||||||
|
spotify will certainly not last forever. what will it matter when all of this music you have collected disappears into the ether?
|
||||||
|
|
||||||
|
but, god willing, i will NEVER allow my hifi to ever die. if it does, i will drop £20 and get another. CD breaks? i'll burn it from a ripped copy.
|
||||||
|
|
||||||
|
#### overlistening (dopamine, yet again!)
|
||||||
|
|
||||||
|
you find that PERFECT song, or revisit one that you know you damn love. you play it constantly on your headphones. then one day, maybe a week later, you realise that listening to it this much has ruined the song for you forever. maybe it'll take a whole year for you to like this song again.
|
||||||
|
|
||||||
|
but the thing about a hifi is that i cannot and will not be able to always have it on. i have university lectures, work and otherwise cannot always be home. on top of that, i have about 100 CDs now, and i burn lots every month so it keeps growing.
|
||||||
|
|
||||||
|
keeping this ritual, but dialling it back means that i never tire of the songs and albums that mean everything to me. music has always been so important to me, and i have killed numerous songs overlistening like this!
|
||||||
|
|
||||||
|
at the end of the day, i love the special occasions where i can play a couple of albums while getting my work done.
|
||||||
|
|
||||||
|
#### holding stuff and making stuff is pretty damn nice
|
||||||
|
|
||||||
|
i'm superficial, i just like holding stuff that i own. this CD, if stored properly and ignoring the [imminent solar flare](https://phys.org/news/2024-01-solar-maximum.html), i could listen to this until the day i die.
|
||||||
|
|
||||||
|
i like making my own designs for discs i've burnt. i love making tracklists on my typewriter, and this again falls back into this ritual pattern i mentioned. humans love patterns.
|
||||||
|
|
||||||
|
#### discovery
|
||||||
|
|
||||||
|
i have overlooked so many albums, because of one bad track i've heard from them. there are so many albums i have not paid attention to by artists i love because i just didn't think much about it. diamond eyes and gore by deftones, live and loud by nirvana, concrete and gold by foo fighters ([you should listen to sunday rain, by the way](https://www.youtube.com/watch?v=k0jX8y53ceY))!
|
||||||
|
|
||||||
|
(and yes, the irony of sending a link to this song over the internet is not lost to me, but fuck you! i'm not posting you a damn cd! i dont even know where you live!)
|
||||||
|
|
||||||
|
#### hackability
|
||||||
|
|
||||||
|
i love making shit. i love writing software. turns out all the linux GUI frontends for disc burning are damn broken. solution? write my own little workaround.
|
||||||
|
|
||||||
|
these projects always renew my joy for writing software. there is no motivator like actual personal interest in seeing through a project until the end. luckily, this one was short. [here's the repository!](https://github.com/shrapnelnet/shr4pnelburn). send a pull request (if you dare) (please do.)
|
||||||
|
|
||||||
|
## part 2 - cassettes (magical magnet boxes)
|
||||||
|
|
||||||
|
cassettes are pretty special. gen x hoarded a lot of music on cassette while they grew up, and they're very effective time capsules.
|
||||||
|
|
||||||
|
lots of unheard music is ONLY on tape, because during the 90's and early 2000s it was the easiest way to record from analogue.
|
||||||
|
|
||||||
|
contrary to popular belief, they're not low quality. cassettes are actually very good mediums for high quality audio recording, it's just that a lot of tapes were recorded direct from the speakers of radios, rather than from analogue or through a hifi.
|
||||||
|
|
||||||
|
CrO<sub>2</sub> tapes are always fun to come across. most tape in a cassette is made of iron oxide (or other ferrous oxide). chromium tapes are an awesome deep black colour, and provide incredible audio quality on par with lossless.
|
||||||
|
|
||||||
|
tapes, if you don't know, work by threading a reel of tape from one spool to another. this tape is split longways in half right down the middle. the tape heads inside your tape deck read the tape from the hole on the bottom of the cassette, where the tape is exposed, before it is spooled around the reel. when the tape finishes, you can play the other half of the tape by flipping it around and putting it back in the tape deck.
|
||||||
|
|
||||||
|
the way tape recording works is pretty complicated. you have to cover two holes on top of the cassette, and at this point, you can press the record button and tape via the line in port, or from other sources like CD if you have a micro hifi.
|
||||||
|
|
||||||
|
i cannot explain how the process actually work because i know fuck all about electromagnetism, but essentially your music is zapped onto this tape using magnets. pretty cool (?) i think so.
|
||||||
|
|
||||||
|
## part 3 - floppy disks, who the hell uses floppy disks?
|
||||||
|
|
||||||
|
me. this one is a little niche, but they're a pretty fun toy. as a developer, they're great to use to challenge yourself. as a writer, i love writing little stories onto these and distributing them. i have written lots of poetry and short stories onto them.
|
||||||
|
|
||||||
|
it's hard to work with 1.4MB of storage, but limitations make for the best solutions sometimes. fucking around with audio codecs to fit them onto floppies, making games in old versions of C, and playing with old DOS versions is always fun.
|
||||||
|
|
||||||
|
albeit impractical. but at very least they're good decorations!
|
||||||
|
|
||||||
|
## part 4 - vinyl (boo!!!)
|
||||||
|
|
||||||
|
unpopular opinion, but i don't love vinyl. they used to be a cool option that you could buy on the cheap from grandmas and at charity stores for cheap, but as this trend grew, the music industry happily grabbed onto it and commercialised it.
|
||||||
|
|
||||||
|
you can't even buy a new pressing for £30 any more! taylor swift (who i would never listen to) supposedly charges upwards of £100 for some limited pressings. this fucking sucks.
|
||||||
|
|
||||||
|
i also dislike the lack of hackability of the medium. nobody is pressing records at home, and since they're an analogue medium, they're pretty hard to write software for (nigh impossible)
|
||||||
|
|
||||||
|
not to mention the swarms of people claiming that they are a superior medium. no offence, but CD is quite literally magnitudes higher quality than vinyl. don't forget that the sound is produced by scratching a needle on grooves!
|
||||||
|
|
||||||
|
i won't deny that there is a difference in sound when you play vinyl, i even own a few albums that are important to me. but i do consider it to be a toy medium appropriated by those with far too much money to spend (or too few brains to spend it well).
|
||||||
|
|
||||||
|
not to mention those who buy them without players to display them on their walls! i shudder at the thought.
|
||||||
|
|
||||||
|
## part 5 - VHS (huh?)
|
||||||
|
|
||||||
|
VHS are big big cassettes which also store video data. often associated with the CRT monitors of the day [which are actually better at rendering retro video games](https://electronics.stackexchange.com/questions/302555/what-advantages-do-crts-still-have-over-more-modern-display-technologies)!
|
||||||
|
|
||||||
|
these are definitely only here for the nostalgia factor. i spent a lot of time with my gramps watching horrifically racist loony toons cartoons. i liked the episode where bugs fucked with the dude playing baseball for like 30 minutes. also loved all the wile e. coyote segments. sadly these are all back home, same as my VCR.
|
||||||
|
|
||||||
|
recently i picked up liar liar and have i got news for you (funny english talk show) on VHS. they go for free in a lot of marketplaces so it's worth picking some up at very least for the joy of it
|
||||||
|
|
||||||
|
## conclusion
|
||||||
|
|
||||||
|
owning shit is pretty nice! i'd love to see some of your latest hauls, be it old floppy software, cassettes, albums or vinyl LPs. email your photos to me at [admin@shr4pnel.com](mailto:admin@shr4pnel.com). looking forward to seeing what you've picked up!
|
36
_posts/2024-03-05-roundup.md
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
---
|
||||||
|
title: "Music roundup #1: March 2024"
|
||||||
|
date: "2024-03-05T21:06:29.663Z"
|
||||||
|
permalink: "roundup"
|
||||||
|
description: "Tyler fills your head with excellent excellent music free of charge. how does he find the time?"
|
||||||
|
layout: post
|
||||||
|
---
|
||||||
|
# Introduction
|
||||||
|
|
||||||
|
Welcome to the first installation of this thrilling document: the shrapnelnet music roundup of march 2024.
|
||||||
|
|
||||||
|
Today, I'll focus on some stuff you should listen to. wow! what a topic! shut up!
|
||||||
|
|
||||||
|
## Secondson: Esoteric, otherworldly production
|
||||||
|
|
||||||
|
Secondson is a Welsh composer known for his work in production using vintage equipment and rare or otherwise relatively unknown instruments with UK hip hop artists. A collector of synthesisers, vintage audio equipment and all manner of niche instruments. He blends interesting sounds together to create a beautiful composition out of instruments i couldn't even name.
|
||||||
|
|
||||||
|
For now, he is mostly working on his solo career, but previously he has worked with figures in the scene like Xeno. Together, they worked under the name "Plague" and created several excellent albums, my favourite being [Plague](https://sfdb.bandcamp.com/album/plague).
|
||||||
|
|
||||||
|
He also created a large project with a number of notable, talented UK artists such as Chester P, Jehst, Sway and Lewis Parker who are all giants in the UKHH scene. This project was called "[& His Orchestra](https://sfdb.bandcamp.com/album/his-orchestra)", including one of my favourite UKHH songs of all time, "Turn it up to the red" featuring Jehst.
|
||||||
|
|
||||||
|
## Snot: Alternative metal done right
|
||||||
|
|
||||||
|
Snot, as they are best known, released only one album before the tragic death of their lead singer Lynn Strait. "Get Some" was the name of their debut album, and in my opinion it is possibly one of the best metal albums ever released.
|
||||||
|
|
||||||
|
Get some features hard hitting, important lyrics and accomplished this far before their time. They touched on bigotry, racism and homophobia with remarkable lyricism. The song "Stoopid" in particular is an excellent critique on the backwards thinking of extremists and how their beliefs stem solely from self-hatred and intentional ignorance.
|
||||||
|
|
||||||
|
They are absolutely worth a listen, and if not for their lyrics (in case you're who they're singing about) then for their incredible work on the guitar, with funk inspired riffs and general awesome shredding in most of their songs. worth a listen!
|
||||||
|
|
||||||
|
## The song "dirty" by Korn. yeah just that one.
|
||||||
|
|
||||||
|
you all know korn so i will not write you a little essay but this song in particular deserves more attention. the final song on the album "issues". korn, personally, can be very hit or miss often due to the corny voice they do (i know its a staple of the genre but i cant stand it) but i LOVE this song. raw gutteral vocals, albiet simple, all tied together by a neat little chorus. i absolutely love it.
|
||||||
|
|
||||||
|
## Conclusion
|
||||||
|
|
||||||
|
who said you deserved one, huh?
|
30
_posts/23-08-07-diversifying.markdown
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
---
|
||||||
|
title: "Diversifying tastes in music, or: \"why you should be listening to good music instead of your music\""
|
||||||
|
description: "Tyler covers the riveting music scene and mentions a lot of niche bands and people you should listen to."
|
||||||
|
date: "2023-08-07T19:11:30.201Z"
|
||||||
|
permalink: "diversifying"
|
||||||
|
layout: post
|
||||||
|
---
|
||||||
|
Without attempting to feign some claim that I am some sort of hyper-cultured sophisticate who smokes long cigarillos like a leonardo dicaprio wannabe, most music is really really bad. I can't watch TV, not even a period drama, without there being an Ed Sheeran song playing on the fucking lute. This is a consequence of the conglomerates who own the airwaves also owning most popular musicians, and those musicians losing all cashflow if they write songs that are too interesting to cater to the largest possible audience
|
||||||
|
|
||||||
|
<img src="/article/misc/dicaprio_optimized.jpg" alt="Leonardo Dicaprio smoking a pipe" width="184" height="106">
|
||||||
|
|
||||||
|
Small mock-up of me: an absolute intellectual with always correct opinions and 12 inch flaccid wood
|
||||||
|
|
||||||
|
Recently in the news we learned Taylor Swift is an actual fucking collossal cunt. "What does she do", you may ask? Essentially she gallavants about in her private jet constantly. To me, her music always felt really repetitive. She does nothing mitski cannot do better.
|
||||||
|
|
||||||
|
Ed Sheeran triggers my uncanny valley effect. Also he has his own hot sauce and you can tell it was made by him because it is supposedly about as spicy as ketchup.
|
||||||
|
|
||||||
|
When I think about popular musicians that I actually like, I first think of Aphex Twin. Really distorted synths and complex slowly developing loops characterise Richard James' music. Often called ambient, which I don't really get because ambient is like rainforest noises or like setting up a camera at a pond for 12 hours but again I'm not a linguist.
|
||||||
|
|
||||||
|
I love Nirvana, they make amazing t-shirts and I think they used to do music or something. Not going to tell you much about Nirvana because you have already heard them but did you know there's an entire Kurt Cobain song where he sings about almost having sex with a mentally handicapped girl before trying to kill himself by [putting cement blocks on his chest and lying on train tracks](https://genius.com/Kurt-cobain-aberdeen-annotated). I'd like to write an entire post about how fucked up the whole debacle was.
|
||||||
|
|
||||||
|
конец солнечных дней make what some losers online call "shoegaze". I please petition you to call it alternative indie because no genre should have to endure being named after a shoe. The band is pronounced "konets solnechnykh dney" and it directly translates to "the end of sunny days". It is not often that you hear music that resonates with you despite not understanding any of the lyrics but the raw emotion that the band produce is pretty unparalleled in the genre (alternative. indie.). They're pretty niche too, which is important to me because i'm a philistine or something
|
||||||
|
|
||||||
|
The Microphones are an experimental project fronted by Phil Elverum, also known for his work with Mount Eerie. All of their works, from beginning to the end, have this ethereal sort of feeling. It kind of reminds me of the existensial dread of Elliot Smith, a remarkably talented songwriter who passed away too young. I enjoy The Microphones for their fast transition from quiet to loud, how the instruments layer, and the crashing drums that appear in a lot of their songs.
|
||||||
|
|
||||||
|
LAUSSE THE CAT has been an interesting figure in my life. Not because I've ever met him or anything, but just because of how unique his project is and the people I met through my love of his music. Known for his ability to weave French and English in the same verse and for his graffiti all over Leeds and south London. He is a breath of fresh air in the UK scene, which can be really oversaturated with people trying too hard to be more like american rappers. Backing tracks are often gentle drum beats with piano over them as well as random string instruments with the occasional beautiful vocals of Bawhe. One of the best UK projects out there, I hope you listen.
|
||||||
|
|
||||||
|
King Krule is another project that will resonate with other people raised in London or big cities in the UK. Archy Marshall is a singer-songwriter and if I was to describe his genre I would be paraphrasing wikipedia because of how unique his sound is. Dissonant vocals accompanied with harsh strums of the guitar characterise many of his songs, but to say that this encapsulates most, if little of his discography would be untrue. It's something you have to listen to yourself.
|
||||||
|
|
||||||
|
I hope you found something you enjoyed here. If you did, let me know at my mastodon at [tyler@blobfox.coffee](https://blobfox.coffee/@tyler).
|
BIN
article/misc/dicaprio_optimized.jpg
Normal file
After Width: | Height: | Size: 27 KiB |
BIN
article/suicide/David_La_morte_di_Seneca.jpg
Normal file
After Width: | Height: | Size: 188 KiB |
BIN
article/suicide/Emile_Durkheim.jpeg
Normal file
After Width: | Height: | Size: 52 KiB |
BIN
article/suicide/grave.jpg
Normal file
After Width: | Height: | Size: 241 KiB |
BIN
article/suicide/Édouard_Manet_-_Le_Suicidé_(ca._1877).jpg
Normal file
After Width: | Height: | Size: 134 KiB |
BIN
article/swartz/aaronswartz.jpg
Normal file
After Width: | Height: | Size: 62 KiB |
BIN
article/swartz/aaronswmemorialprogram_0015.jpg
Normal file
After Width: | Height: | Size: 380 KiB |
BIN
article/swartz/aaronswmemorialprogram_0019.jpg
Normal file
After Width: | Height: | Size: 163 KiB |
BIN
article/swartz/aaronswmemorialprogram_0031.jpg
Normal file
After Width: | Height: | Size: 65 KiB |
BIN
article/swartz/aaronswmemorialprogram_0035.jpg
Normal file
After Width: | Height: | Size: 82 KiB |
BIN
article/swartz/aaronswmemorialprogram_0047.jpg
Normal file
After Width: | Height: | Size: 59 KiB |
BIN
article/swartz/aaronswmemorialprogram_0049.jpg
Normal file
After Width: | Height: | Size: 60 KiB |
BIN
article/swartz/aaronswmemorialprogram_0057.jpg
Normal file
After Width: | Height: | Size: 59 KiB |
BIN
article/swartz/aaronswmemorialprogram_0059.jpg
Normal file
After Width: | Height: | Size: 56 KiB |
BIN
article/swartz/aaronswmemorialprogram_0063.jpg
Normal file
After Width: | Height: | Size: 66 KiB |
BIN
article/switzerland/alps_horizon.jpg
Normal file
After Width: | Height: | Size: 323 KiB |
BIN
article/switzerland/apiary.jpg
Normal file
After Width: | Height: | Size: 465 KiB |
BIN
article/switzerland/black_cow.jpg
Normal file
After Width: | Height: | Size: 427 KiB |
BIN
article/switzerland/brown_cow.jpg
Normal file
After Width: | Height: | Size: 551 KiB |
BIN
article/switzerland/forest_path.jpg
Normal file
After Width: | Height: | Size: 494 KiB |
BIN
article/switzerland/more_black_cows.jpg
Normal file
After Width: | Height: | Size: 433 KiB |
BIN
article/switzerland/mountain_village.jpg
Normal file
After Width: | Height: | Size: 374 KiB |
BIN
article/switzerland/mushroom_trunk.jpg
Normal file
After Width: | Height: | Size: 574 KiB |
BIN
assets/buttons/IMG_7032.png
Normal file
After Width: | Height: | Size: 2.2 KiB |
BIN
assets/buttons/aboborabtn.gif
Normal file
After Width: | Height: | Size: 4.9 KiB |
BIN
assets/buttons/angels.png
Normal file
After Width: | Height: | Size: 2.7 KiB |
BIN
assets/buttons/blogbutton.gif
Normal file
After Width: | Height: | Size: 3.1 KiB |
BIN
assets/buttons/bluntgay.png
Normal file
After Width: | Height: | Size: 834 B |
BIN
assets/buttons/dumbdizzy.gif
Normal file
After Width: | Height: | Size: 133 KiB |
BIN
assets/buttons/foreverliketh.is.png
Normal file
After Width: | Height: | Size: 1.7 KiB |
BIN
assets/buttons/gapandfriends.png
Normal file
After Width: | Height: | Size: 4.3 KiB |
BIN
assets/buttons/gau7ilu.png
Normal file
After Width: | Height: | Size: 8.6 KiB |
1
assets/buttons/github-mark.svg
Normal file
@ -0,0 +1 @@
|
|||||||
|
<svg width="98" height="96" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M48.854 0C21.839 0 0 22 0 49.217c0 21.756 13.993 40.172 33.405 46.69 2.427.49 3.316-1.059 3.316-2.362 0-1.141-.08-5.052-.08-9.127-13.59 2.934-16.42-5.867-16.42-5.867-2.184-5.704-5.42-7.17-5.42-7.17-4.448-3.015.324-3.015.324-3.015 4.934.326 7.523 5.052 7.523 5.052 4.367 7.496 11.404 5.378 14.235 4.074.404-3.178 1.699-5.378 3.074-6.6-10.839-1.141-22.243-5.378-22.243-24.283 0-5.378 1.94-9.778 5.014-13.2-.485-1.222-2.184-6.275.486-13.038 0 0 4.125-1.304 13.426 5.052a46.97 46.97 0 0 1 12.214-1.63c4.125 0 8.33.571 12.213 1.63 9.302-6.356 13.427-5.052 13.427-5.052 2.67 6.763.97 11.816.485 13.038 3.155 3.422 5.015 7.822 5.015 13.2 0 18.905-11.404 23.06-22.324 24.283 1.78 1.548 3.316 4.481 3.316 9.126 0 6.6-.08 11.897-.08 13.526 0 1.304.89 2.853 3.316 2.364 19.412-6.52 33.405-24.935 33.405-46.691C97.707 22 75.788 0 48.854 0z" fill="#24292f"/></svg>
|
After Width: | Height: | Size: 963 B |
BIN
assets/buttons/gnu.png
Normal file
After Width: | Height: | Size: 2.8 KiB |
BIN
assets/buttons/idelides.png
Normal file
After Width: | Height: | Size: 20 KiB |
BIN
assets/buttons/porcupine.png
Normal file
After Width: | Height: | Size: 6.6 KiB |
BIN
assets/buttons/psychool.png
Normal file
After Width: | Height: | Size: 9.5 KiB |
BIN
assets/buttons/voicedrew.gif
Normal file
After Width: | Height: | Size: 55 KiB |
BIN
assets/buttons/whitevhs.gif
Normal file
After Width: | Height: | Size: 5.3 KiB |
BIN
assets/buttons/zinricky.png
Normal file
After Width: | Height: | Size: 5.6 KiB |
233
assets/css/index.css
Normal file
@ -0,0 +1,233 @@
|
|||||||
|
body {
|
||||||
|
font-family: 'Toshiba Saturn', monospace;
|
||||||
|
background-color: #dbfbb3;
|
||||||
|
background-image: url("/assets/graphics/frog.gif") !important;
|
||||||
|
max-height: 100%;
|
||||||
|
max-width: 100%;
|
||||||
|
background-attachment: fixed;
|
||||||
|
}
|
||||||
|
|
||||||
|
a {
|
||||||
|
color: green;
|
||||||
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
max-width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
p > img {
|
||||||
|
display: block;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card > img {
|
||||||
|
height: 80px;
|
||||||
|
width: 80px;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: "Toshiba Saturn";
|
||||||
|
src: url("/assets/font/ToshibaSat_8x8.woff") format("woff");
|
||||||
|
font-display: fallback;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: "IBM VGA";
|
||||||
|
src: url("/assets/font/IBM_VGA_8x16.woff2") format("woff2");
|
||||||
|
font-display: fallback;
|
||||||
|
}
|
||||||
|
|
||||||
|
.container {
|
||||||
|
position: relative;
|
||||||
|
width: 900px;
|
||||||
|
max-width: 95%;
|
||||||
|
background-color: white;
|
||||||
|
border: 1px solid black;
|
||||||
|
margin: 25px auto 0;
|
||||||
|
text-align: center;
|
||||||
|
padding: 25px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title-container {
|
||||||
|
width: fit-content;
|
||||||
|
padding: 0 5%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.logo {
|
||||||
|
letter-spacing: 5px;
|
||||||
|
text-shadow: -4px 3px green;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.highlighted {
|
||||||
|
color: white;
|
||||||
|
background-color: green;
|
||||||
|
padding: 5px 30px;
|
||||||
|
width: fit-content;
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.post-container {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
#articles {
|
||||||
|
display: block;
|
||||||
|
margin: 0 auto;
|
||||||
|
padding: 10px;
|
||||||
|
width: fit-content;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
align-items: center;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card > a {
|
||||||
|
text-align: left;
|
||||||
|
margin-left: 2%;
|
||||||
|
font-size: small;
|
||||||
|
line-height: 1.5em;
|
||||||
|
flex-grow: 1;
|
||||||
|
padding-right: 2%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card > p {
|
||||||
|
text-align: right;
|
||||||
|
font-size: small;
|
||||||
|
margin-left: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
#socials {
|
||||||
|
display: block;
|
||||||
|
margin: 30px auto;
|
||||||
|
width: fit-content;
|
||||||
|
}
|
||||||
|
|
||||||
|
#socials > div {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
margin: 18px auto auto 8.5%;
|
||||||
|
}
|
||||||
|
|
||||||
|
#socials > div > img {
|
||||||
|
margin-right: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.friend-container {
|
||||||
|
margin: 20px auto;
|
||||||
|
display: flex;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
justify-content: center;
|
||||||
|
width: 80%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.placeholder {
|
||||||
|
height: 650px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.friend-container > img {
|
||||||
|
width: 88px;
|
||||||
|
height: 31px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.friend-container > a {
|
||||||
|
margin-right: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.lain > img {
|
||||||
|
width: 240px;
|
||||||
|
height: 60px
|
||||||
|
}
|
||||||
|
|
||||||
|
.flex-wrap {
|
||||||
|
width: 100%;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fake-logo {
|
||||||
|
width: 42px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.lain-text {
|
||||||
|
line-height: 1.25em;
|
||||||
|
width: 80%;
|
||||||
|
text-align: left;
|
||||||
|
margin-top: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* CLS FIX */
|
||||||
|
|
||||||
|
div.friend-container > a > img {
|
||||||
|
width: 88px;
|
||||||
|
height: 31px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.friend-container.lain > a > img {
|
||||||
|
width: 240px;
|
||||||
|
height: 60px;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media only screen and (max-width: 467px) {
|
||||||
|
.friend-container {
|
||||||
|
margin: 20px auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#socials > div {
|
||||||
|
margin: 20px 0 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#socials > div > a {
|
||||||
|
font-size: smaller;
|
||||||
|
}
|
||||||
|
|
||||||
|
.logo {
|
||||||
|
font-size: x-large;
|
||||||
|
text-shadow: -3px 2px green;
|
||||||
|
word-wrap: break-word;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card > p {
|
||||||
|
margin-left: 1%;
|
||||||
|
font-size: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card > a {
|
||||||
|
font-size: 12px ;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card > img {
|
||||||
|
padding-top: 2%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.highlighted {
|
||||||
|
padding: 5px 15px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title-container {
|
||||||
|
padding: 5px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media only screen and (max-width: 400px) {
|
||||||
|
.card > a {
|
||||||
|
font-size: 10px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media only screen and (max-width: 341px) {
|
||||||
|
#socials > div > a {
|
||||||
|
font-size: x-small;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media only screen and (max-width: 300px) {
|
||||||
|
#socials > div > a {
|
||||||
|
font-size: xx-small;
|
||||||
|
}
|
||||||
|
}
|
157
assets/css/post.css
Normal file
@ -0,0 +1,157 @@
|
|||||||
|
@font-face {
|
||||||
|
font-family: "Toshiba Saturn";
|
||||||
|
src: url("/assets/font/ToshibaSat_8x8.woff") format("woff");
|
||||||
|
font-display: fallback;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: "IBM VGA";
|
||||||
|
src: url("/assets/font/IBM_VGA_8x16.woff2") format("woff2");
|
||||||
|
font-display: fallback;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
font-family: 'Toshiba Saturn', monospace;
|
||||||
|
background-color: #dbfbb3;
|
||||||
|
background-image: url("/assets/graphics/frog.gif") !important;
|
||||||
|
max-height: 100%;
|
||||||
|
max-width: 100%;
|
||||||
|
background-attachment: fixed;
|
||||||
|
}
|
||||||
|
|
||||||
|
a {
|
||||||
|
color: green;
|
||||||
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
max-width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
p > img {
|
||||||
|
display: block;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.use-ibm > p {
|
||||||
|
font-family: "IBM VGA", monospace;
|
||||||
|
font-size: 1.125em;
|
||||||
|
}
|
||||||
|
|
||||||
|
footer > a {
|
||||||
|
margin-top: 40px;
|
||||||
|
font-size: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.use-ibm > sub {
|
||||||
|
font-size: x-small;
|
||||||
|
}
|
||||||
|
|
||||||
|
.container {
|
||||||
|
position: relative;
|
||||||
|
width: 900px;
|
||||||
|
max-width: 95%;
|
||||||
|
background-color: white;
|
||||||
|
border: 1px solid black;
|
||||||
|
margin: 25px auto 0;
|
||||||
|
text-align: center;
|
||||||
|
padding: 25px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title-container {
|
||||||
|
width: fit-content;
|
||||||
|
padding: 0 5%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.logo {
|
||||||
|
letter-spacing: 5px;
|
||||||
|
text-shadow: -4px 3px green;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.highlighted {
|
||||||
|
color: white;
|
||||||
|
background-color: green;
|
||||||
|
padding: 5px 30px;
|
||||||
|
width: fit-content;
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.post-container {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
#socials {
|
||||||
|
display: block;
|
||||||
|
margin: 30px auto;
|
||||||
|
width: fit-content;
|
||||||
|
}
|
||||||
|
|
||||||
|
#socials > div {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
margin: 18px auto auto 8.5%;
|
||||||
|
}
|
||||||
|
|
||||||
|
#socials > div > img {
|
||||||
|
margin-right: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#hotline {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
margin: 0 auto;
|
||||||
|
width: fit-content;
|
||||||
|
}
|
||||||
|
|
||||||
|
#content {
|
||||||
|
text-align: left;
|
||||||
|
margin: 0 auto;
|
||||||
|
width: 85%;
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media only screen and (max-width: 467px) {
|
||||||
|
.container {
|
||||||
|
margin: 10px auto 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#socials > div {
|
||||||
|
margin: 20px 0 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#socials > div > a {
|
||||||
|
font-size: smaller;
|
||||||
|
}
|
||||||
|
|
||||||
|
.logo {
|
||||||
|
font-size: x-large;
|
||||||
|
text-shadow: -3px 2px green;
|
||||||
|
word-wrap: break-word;
|
||||||
|
}
|
||||||
|
|
||||||
|
.highlighted {
|
||||||
|
padding: 5px 15px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title-container {
|
||||||
|
padding: 5px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.ducks {
|
||||||
|
margin-top: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media only screen and (max-width: 341px) {
|
||||||
|
#socials > div > a {
|
||||||
|
font-size: x-small;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media only screen and (max-width: 300px) {
|
||||||
|
#socials > div > a {
|
||||||
|
font-size: xx-small;
|
||||||
|
}
|
||||||
|
}
|
BIN
assets/favicon.ico
Normal file
After Width: | Height: | Size: 2.6 KiB |
BIN
assets/font/IBM_VGA_8x16.woff2
Normal file
BIN
assets/font/ToshibaSat_8x8.woff
Normal file
BIN
assets/graphics/50blessings.png
Normal file
After Width: | Height: | Size: 363 B |
BIN
assets/graphics/anon.png
Normal file
After Width: | Height: | Size: 3.5 KiB |
BIN
assets/graphics/boykisser.png
Normal file
After Width: | Height: | Size: 49 KiB |
BIN
assets/graphics/cutiecat.gif
Normal file
After Width: | Height: | Size: 3.0 KiB |
BIN
assets/graphics/cutiecat.png
Normal file
After Width: | Height: | Size: 2.3 KiB |
BIN
assets/graphics/duckzone.gif
Normal file
After Width: | Height: | Size: 7.8 KiB |
BIN
assets/graphics/frog.gif
Normal file
After Width: | Height: | Size: 568 B |
1
assets/graphics/github-mark.svg
Normal file
@ -0,0 +1 @@
|
|||||||
|
<svg width="98" height="96" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M48.854 0C21.839 0 0 22 0 49.217c0 21.756 13.993 40.172 33.405 46.69 2.427.49 3.316-1.059 3.316-2.362 0-1.141-.08-5.052-.08-9.127-13.59 2.934-16.42-5.867-16.42-5.867-2.184-5.704-5.42-7.17-5.42-7.17-4.448-3.015.324-3.015.324-3.015 4.934.326 7.523 5.052 7.523 5.052 4.367 7.496 11.404 5.378 14.235 4.074.404-3.178 1.699-5.378 3.074-6.6-10.839-1.141-22.243-5.378-22.243-24.283 0-5.378 1.94-9.778 5.014-13.2-.485-1.222-2.184-6.275.486-13.038 0 0 4.125-1.304 13.426 5.052a46.97 46.97 0 0 1 12.214-1.63c4.125 0 8.33.571 12.213 1.63 9.302-6.356 13.427-5.052 13.427-5.052 2.67 6.763.97 11.816.485 13.038 3.155 3.422 5.015 7.822 5.015 13.2 0 18.905-11.404 23.06-22.324 24.283 1.78 1.548 3.316 4.481 3.316 9.126 0 6.6-.08 11.897-.08 13.526 0 1.304.89 2.853 3.316 2.364 19.412-6.52 33.405-24.935 33.405-46.691C97.707 22 75.788 0 48.854 0z" fill="#24292f"/></svg>
|
After Width: | Height: | Size: 963 B |
3
assets/graphics/mastodon.svg
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
<svg width="74" height="79" viewBox="0 0 74 79" fill="black" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M73.7014 17.4323C72.5616 9.05152 65.1774 2.4469 56.424 1.1671C54.9472 0.950843 49.3518 0.163818 36.3901 0.163818H36.2933C23.3281 0.163818 20.5465 0.950843 19.0697 1.1671C10.56 2.41145 2.78877 8.34604 0.903306 16.826C-0.00357854 21.0022 -0.100361 25.6322 0.068112 29.8793C0.308275 35.9699 0.354874 42.0498 0.91406 48.1156C1.30064 52.1448 1.97502 56.1419 2.93215 60.0769C4.72441 67.3445 11.9795 73.3925 19.0876 75.86C26.6979 78.4332 34.8821 78.8603 42.724 77.0937C43.5866 76.8952 44.4398 76.6647 45.2833 76.4024C47.1867 75.8033 49.4199 75.1332 51.0616 73.9562C51.0841 73.9397 51.1026 73.9184 51.1156 73.8938C51.1286 73.8693 51.1359 73.8421 51.1368 73.8144V67.9366C51.1364 67.9107 51.1302 67.8852 51.1186 67.862C51.1069 67.8388 51.0902 67.8184 51.0695 67.8025C51.0489 67.7865 51.0249 67.7753 50.9994 67.7696C50.9738 67.764 50.9473 67.7641 50.9218 67.7699C45.8976 68.9569 40.7491 69.5519 35.5836 69.5425C26.694 69.5425 24.3031 65.3699 23.6184 63.6327C23.0681 62.1314 22.7186 60.5654 22.5789 58.9744C22.5775 58.9477 22.5825 58.921 22.5934 58.8965C22.6043 58.8721 22.621 58.8505 22.6419 58.8336C22.6629 58.8167 22.6876 58.8049 22.714 58.7992C22.7404 58.7934 22.7678 58.794 22.794 58.8007C27.7345 59.9796 32.799 60.5746 37.8813 60.5733C39.1036 60.5733 40.3223 60.5733 41.5447 60.5414C46.6562 60.3996 52.0437 60.1408 57.0728 59.1694C57.1983 59.1446 57.3237 59.1233 57.4313 59.0914C65.3638 57.5847 72.9128 52.8555 73.6799 40.8799C73.7086 40.4084 73.7803 35.9415 73.7803 35.4523C73.7839 33.7896 74.3216 23.6576 73.7014 17.4323ZM61.4925 47.3144H53.1514V27.107C53.1514 22.8528 51.3591 20.6832 47.7136 20.6832C43.7061 20.6832 41.6988 23.2499 41.6988 28.3194V39.3803H33.4078V28.3194C33.4078 23.2499 31.3969 20.6832 27.3894 20.6832C23.7654 20.6832 21.9552 22.8528 21.9516 27.107V47.3144H13.6176V26.4937C13.6176 22.2395 14.7157 18.8598 16.9118 16.3545C19.1772 13.8552 22.1488 12.5719 25.8373 12.5719C30.1064 12.5719 33.3325 14.1955 35.4832 17.4394L37.5587 20.8853L39.6377 17.4394C41.7884 14.1955 45.0145 12.5719 49.2765 12.5719C52.9614 12.5719 55.9329 13.8552 58.2055 16.3545C60.4017 18.8574 61.4997 22.2371 61.4997 26.4937L61.4925 47.3144Z" fill="inherit"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 2.2 KiB |
BIN
assets/graphics/rss_optimised.png
Normal file
After Width: | Height: | Size: 307 B |
40
assets/js/quote.js
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
const quotebank = [
|
||||||
|
"jesus don't want me for a sunbeam!",
|
||||||
|
"is the man who sold the world",
|
||||||
|
"choose life, choose a job",
|
||||||
|
"chuffing back a fat dart",
|
||||||
|
"still not goth",
|
||||||
|
"может правда все закончится вот так!",
|
||||||
|
"active cigarette lobby member",
|
||||||
|
"remembers space cake's requiem",
|
||||||
|
"yet another shit in the sandpit",
|
||||||
|
"this user is mortal",
|
||||||
|
"the internet is serious business",
|
||||||
|
"beer respects me",
|
||||||
|
"on the internet, nobody knows you're a dog",
|
||||||
|
"good grief!",
|
||||||
|
"bow to me!",
|
||||||
|
"stuffed with love fluff",
|
||||||
|
"tip your waiter",
|
||||||
|
"on a plain",
|
||||||
|
"UK DUTY PAID",
|
||||||
|
"let children breathe your smoke!",
|
||||||
|
"my back hurts!!",
|
||||||
|
"happy new year 2003!",
|
||||||
|
"meows at passing cars",
|
||||||
|
"are you okay, dude?",
|
||||||
|
"axolotl fan",
|
||||||
|
"this user enjoys smirnoff",
|
||||||
|
"this user enjoys chekhov",
|
||||||
|
"now with 50% less sugar",
|
||||||
|
"contains nicotine and tar",
|
||||||
|
"only to be sold as a multipack",
|
||||||
|
"banned in syria!",
|
||||||
|
"popular in azerbajan!",
|
||||||
|
"friends with sewerslvt!"
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
|
const len = quotebank.length
|
||||||
|
const quote = quotebank[Math.floor(Math.random() * len)]
|
||||||
|
document.getElementById("quote").innerHTML = `“${quote}”`
|
BIN
assets/lain/0x19.png
Normal file
After Width: | Height: | Size: 267 B |
BIN
assets/lain/SCIO.png
Normal file
After Width: | Height: | Size: 12 KiB |
BIN
assets/lain/a10days.png
Normal file
After Width: | Height: | Size: 13 KiB |
BIN
assets/lain/agora.gif
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
assets/lain/arcade.gif
Normal file
After Width: | Height: | Size: 51 KiB |
BIN
assets/lain/bass2nick.gif
Normal file
After Width: | Height: | Size: 115 KiB |
BIN
assets/lain/blog.shr4pnel.com.gif
Normal file
After Width: | Height: | Size: 5.8 KiB |
BIN
assets/lain/cabbagesorter.png
Normal file
After Width: | Height: | Size: 7.2 KiB |
BIN
assets/lain/crystal-tilde.gif
Normal file
After Width: | Height: | Size: 152 KiB |
BIN
assets/lain/datura-banner.png
Normal file
After Width: | Height: | Size: 30 KiB |
BIN
assets/lain/foreverliketh.is.gif
Normal file
After Width: | Height: | Size: 73 KiB |
BIN
assets/lain/gamajun.png
Normal file
After Width: | Height: | Size: 846 B |
BIN
assets/lain/gapandfriend.png
Normal file
After Width: | Height: | Size: 7.2 KiB |
BIN
assets/lain/grafo-zone.gif
Normal file
After Width: | Height: | Size: 194 KiB |
BIN
assets/lain/havinganame.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
assets/lain/lainchan.org.gif
Normal file
After Width: | Height: | Size: 109 KiB |
BIN
assets/lain/lainnet.png
Normal file
After Width: | Height: | Size: 2.6 KiB |
BIN
assets/lain/maerk.png
Normal file
After Width: | Height: | Size: 7.7 KiB |
BIN
assets/lain/nauxnam.gif
Normal file
After Width: | Height: | Size: 45 KiB |
BIN
assets/lain/navyjoecomics.gif
Normal file
After Width: | Height: | Size: 3.7 KiB |
BIN
assets/lain/nihilism-banner.png
Normal file
After Width: | Height: | Size: 26 KiB |
BIN
assets/lain/redchanit.png
Normal file
After Width: | Height: | Size: 23 KiB |
BIN
assets/lain/risingthumb.png
Normal file
After Width: | Height: | Size: 16 KiB |
BIN
assets/lain/s-config.png
Normal file
After Width: | Height: | Size: 7.3 KiB |
BIN
assets/lain/sizeofcat.gif
Normal file
After Width: | Height: | Size: 26 KiB |
BIN
assets/lain/smile.png
Normal file
After Width: | Height: | Size: 10 KiB |
BIN
assets/lain/torpus.png
Normal file
After Width: | Height: | Size: 319 B |