From 46143722a94db61925c43f23ef584ef227a36334 Mon Sep 17 00:00:00 2001 From: Tao Tien <29749622+taotien@users.noreply.github.com> Date: Thu, 8 Jan 2026 22:07:11 -0800 Subject: [PATCH] license --- Cargo.toml | 2 ++ LICENSE.pdf | Bin 0 -> 30593 bytes LICENSE.typ | 43 +++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 45 insertions(+) create mode 100644 LICENSE.pdf create mode 100644 LICENSE.typ diff --git a/Cargo.toml b/Cargo.toml index f2266ad..3335d20 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -2,6 +2,8 @@ name = "jong" version = "0.1.0" edition = "2024" +# license = "Source-First-1.1" # pending crates.io support +license-file = "LICENSE.typ" [lib] diff --git a/LICENSE.pdf b/LICENSE.pdf new file mode 100644 index 0000000000000000000000000000000000000000..fa3b54df1e2600121d863c4f4991e1f99f96c212 GIT binary patch literal 30593 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 literal 0 HcmV?d00001 diff --git a/LICENSE.typ b/LICENSE.typ new file mode 100644 index 0000000..e4ece26 --- /dev/null +++ b/LICENSE.typ @@ -0,0 +1,43 @@ += Source First License 1.1 + +== Acceptance +By using the software, you agree to all of the terms and conditions below. + +== Copyright License +Tao Tien (the “Licensor”) grants you a non-exclusive, royalty-free, worldwide, non-sublicensable, non-transferable license to use, copy, distribute, make available, and prepare derivative works of the software, in each case subject to the limitations below. + +== Limitations +You may use or modify the software only for non-commercial purposes such as personal use for research, experiment, and testing for the benefit of public knowledge, personal study, private entertainment, hobby projects, amateur pursuits, or religious observance, all without any anticipated commercial application. + +You may distribute the software or provide it to others only if you do so free of charge for non-commercial purposes. + +Notwithstanding the above, you may not remove or obscure any functionality in the software related to payment to the Licensor in any copy you distribute to others. + +You may not alter, remove, or obscure any licensing, copyright, or other notices of the Licensor in the software. Any use of the Licensor’s trademarks is subject to applicable law. + +== Patents +If you make any written claim that the software infringes or contributes to infringement of any patent, your license for the software granted under these terms ends immediately. If your company makes such a claim, your license ends immediately for work on behalf of your company. + +== Notices +You must ensure that anyone who gets a copy of any part of the software from you also gets a copy of these terms. If you modify the software, you must include in any modified copies of the software a prominent notice stating that you have modified the software, such as but not limited to, a statement in a readme file or an in-application about section. + +== Fair Use +You may have "fair use" rights for the software under the law. These terms do not limit them. + +== No Other Rights +These terms do not allow you to sublicense or transfer any of your licenses to anyone else, or prevent the Licensor from granting licenses to anyone else. These terms do not imply any other licenses. + +== Termination +If you use the software in violation of these terms, such use is not licensed, and your license will automatically terminate. If the licensor provides you with a notice of your violation, and you cease all violation of this license no later than 30 days after you receive that notice, your license will be reinstated retroactively. However, if you violate these terms after such reinstatement, any additional violation of these terms will cause your license to terminate automatically and permanently. + +== No Liability +As far as the law allows, the software comes as is, without any warranty or condition, and the Licensor will not be liable to you for any damages arising out of these terms or the use or nature of the software, under any kind of legal claim. + +== Definitions +- The “Licensor” is the entity offering these terms, Tao Tien. +- The “software” is the software the licensor makes available under these terms, including any portion of it. +- “You” refers to the individual or entity agreeing to these terms. +- “Your company” is any legal entity, sole proprietorship, or other kind of organization that you work for, plus all organizations that have control over, are under the control of, or are under common control with that organization. Control means ownership of substantially all the assets of an entity, or the power to direct its management and policies by vote, contract, or otherwise. Control can be direct or indirect. +- “Your license” is the license granted to you for the software under these terms. +- “Use” means anything you do with the software requiring your license. +- “Trademark” means trademarks, service marks, and similar rights.