Updated README and add LICENSE

This commit is contained in:
itismadness
2018-02-08 06:17:00 +05:45
parent 053cae214d
commit 69d14764fc
5 changed files with 59 additions and 173 deletions

View File

24
LICENSE.md Normal file
View File

@@ -0,0 +1,24 @@
This is free and unencumbered software released into the public domain.
Anyone is free to copy, modify, publish, use, compile, sell, or
distribute this software, either in source code form or as a compiled
binary, for any purpose, commercial or non-commercial, and by any
means.
In jurisdictions that recognize copyright laws, the author or authors
of this software dedicate any and all copyright interest in the
software to the public domain. We make this dedication for the benefit
of the public at large and to the detriment of our heirs and
successors. We intend this dedication to be an overt act of
relinquishment in perpetuity of all present and future rights to this
software under copyright law.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.
For more information, please refer to <http://unlicense.org>

View File

@@ -1,9 +1,10 @@
# Gazelle # Gazelle
Gazelle is a web framework geared towards private BitTorrent trackers. Although naturally focusing on music, it can be modified for most needs. Gazelle is written in PHP, JavaScript, and MySQL. Gazelle is a web framework geared towards private BitTorrent trackers. Although naturally focusing on music, it can be
modified for most needs. Gazelle is written in PHP, JavaScript, and MySQL.
## Gazelle Runtime Dependencies ## Gazelle Runtime Dependencies
* [Nginx](http://wiki.nginx.org/Main) (recommended) * [Nginx](http://wiki.nginx.org/Main) (recommended)
* [PHP 5.4 or newer](https://www.php.net/) (required) * [PHP 7 or newer](https://www.php.net/) (required)
* [Memcached](http://memcached.org/) (required) * [Memcached](http://memcached.org/) (required)
* [Sphinx 2.0.6 or newer](http://sphinxsearch.com/) (required) * [Sphinx 2.0.6 or newer](http://sphinxsearch.com/) (required)
* [procps-ng](http://sourceforge.net/projects/procps-ng/) (recommended) * [procps-ng](http://sourceforge.net/projects/procps-ng/) (recommended)
@@ -15,46 +16,39 @@ Gazelle is a web framework geared towards private BitTorrent trackers. Although
_Note: This list may not be exhaustive._ _Note: This list may not be exhaustive._
## Change Log
You may have noticed that commits in the repository do not have descriptive messages. If you are looking for a change log of Gazelle, it can be [viewed here](https://raw.github.com/WhatCD/Gazelle/master/docs/CHANGES.txt). The change log is generated daily and includes new additions or modifications to Gazelle's source.
## Coding Standards
Gazelle's code adheres to a set of coding standards that can be found [here](https://github.com/WhatCD/Gazelle/wiki/Coding-Standards). If you plan on sending pull requests, these standards must be followed.
## Installation ## Installation
[This guide](https://github.com/WhatCD/Gazelle/wiki/Gazelle-installation) will walk you through setting up Gazelle on a machine running Gentoo Linux. Although installing Gazelle is relatively straightforward, we recommend a working knowledge of PHP if you plan to modify the source code. See the script in `.vagrant/gazelle-setup.sh` to get a gist of what needs to be done to install Gazelle on Debian
Jessie. You should be able to modify this to whatever distro you want to run it on.
## Gazelle development using Vagrant ## Logchecker
[VagrantGazelle](https://github.com/dr4g0nnn/VagrantGazelle) allows for convenient development of Gazelle, without going through the trouble of setting it all up yourself. This repository does not come with the necessary binaries to validate checksums for uploaded logs. To get them, please
follow the below steps. In all cases, you will need to place the necessary files into the `classes/logchecker/` folder.
Vagrant uses virtual machines to allow for easy development in consistent environments. The setup linked above allows for development on your local machine and the Gazelle setup to run without altering your system. ### EAC
Install a copy of [EAC](http://www.exactaudiocopy.de/) on a Windows machine or under Wine. You then need to navigate
to the installed directory and copy `CheckLog.exe` (renaming it to `eac_logchecker.exe`) and `HelperFunctions.dll` into
`classes/logchecker/`.
Once set up, the Gazelle source files will be present in `src/`, which is shared to `/var/www/` on the machine. A port forward from port 80 on the guest to 8080 on the host will also be established. ### XLD
Clone the repository https://github.com/itismadness/xld_sign and build it following the readme. Move the generated
binary (renaming it to `xld_logchecker`) to `classes/logchecker`.
SQL to run for contests: ## Gazelle Development
This repository comes pre-setup to be run through [Vagrant](https://www.vagrantup.com/) for ease of development and
without having to modify your local machine. You can look through the docs for how it works, but to start, you
just need to download Vagrant and VirtualBox (and it's recommended to get the
[vagrant-vbguest](https://github.com/dotless-de/vagrant-vbguest) plugin) and then simply run:
```
vagrant up
```
CREATE TABLE contest ( This will build a Debian Jessie on a Virtual Machine and serve this repository through `/var/www` on the machine. It
ID integer not null auto_increment, will also forward the following ports:
Name varchar(80) not null, * 8080 -> 80 (nginx)
DTBegin datetime not null, * 36000 -> 3306 (mysql)
DTEnd datetime not null, * 34000 -> 34000 (ocelot)
Primary key (ID),
Unique (Name)
);
CREATE TABLE contest_leaderboard ( You can access the site by going to `http://localhost:8080`
ContestID integer not null,
UserID integer not null,
FlacCount integer not null,
LastTorrentID integer not null,
LastTorrentName varchar(80) not null,
ArtistList varchar(80) not null,
ArtistNames varchar(200) not null,
LastUpload datetime not null,
CONSTRAINT `contest_fk` FOREIGN KEY (`ContestID`) REFERENCES `contest` (`ID`) ON DELETE CASCADE
);
CREATE INDEX flac_upload_idx ON contest_leaderboard (FlacCount DESC, LastUpload, UserID);
INSERT INTO contest (Name, DTBEgin, DTEnd) values ('Euterpe FLAC Challenge', '2017-10-01 00:00:00', '2017-10-31 00:00:00');
Feel free to join #develop on irc.apollo.rip to discuss any questions concerning Gazelle (or any of the repos used by
Apollo).

View File

@@ -1,4 +1,4 @@
CHANGE LOG CHANGE LOG (from WCD)
2016-11-01 by Bourbon 2016-11-01 by Bourbon
Remove username substring search functionality. Username searches must now be exact to return a result. Remove username substring search functionality. Username searches must now be exact to return a result.
@@ -443,7 +443,7 @@ Update OpenDyslexic font files and add OpenDyslexic Mono font
Added thread notes in forums Added thread notes in forums
2013-10-13 by Ajax 2013-10-13 by Ajax
Added "Ask the Staff" tool for users to ask staff random questions. Added "Ask the Staff" tool for users to ask staff random questions.
2013-10-10 by alderaan 2013-10-10 by alderaan
Users will receive a PM when they get promoted or demoted Users will receive a PM when they get promoted or demoted
@@ -491,7 +491,7 @@ Add an option for the styled tooltips
Comment subscriptions, quote notifications and quote linking Comment subscriptions, quote notifications and quote linking
2013-08-24 by Ajax 2013-08-24 by Ajax
Notifications Manager class and noty.js library to provide popup notifications Notifications Manager class and noty.js library to provide popup notifications
2013-08-24 by Ajax 2013-08-24 by Ajax
Redesigned user settings page Redesigned user settings page
@@ -512,7 +512,7 @@ Drag and Drop ordering on the Do Not Upload page in toolbox
Search email blacklist Search email blacklist
2013-07-30 by Y 2013-07-30 by Y
Collage API additions. Collage API additions.
2013-07-23 by draculesti 2013-07-23 by draculesti
New mod button to generate random user passwords New mod button to generate random user passwords

View File

@@ -1,132 +0,0 @@
COPYRIGHTED BY WHAT.CD INCORPORATED, DBA/AKA PROJECT GAZELLE
END-USER LICENSE AGREEMENT
The Gazelle Source Code (hereinafter referred to as the Software) is made
publicly available free of charge by Project Gazelle (sometimes a trade and
business name for the legally constituted entity known as What.CD Incorporated,
a Panamanian Corporation), copyright owner (hereinafter referred to as the
Licensor or Original Licensor) to anyone who wishes to use and/or share or
distribute and/or change or modify it (hereinafter referred to as either the
Licensee and/or End-User) FOR NONCOMMERCIAL PURPOSES ONLY under the following
terms and conditions (hereinafter referred to as the "License"):
Section 1. You may copy and distribute verbatim copies of the Software's
source code as you receive it, in any medium, provided that you conspicuously
and appropriately publish on each copy an appropriate copyright notice and
disclaimer of warranty; keep intact all the notices that refer to this License
and to the absence of any warranty; and give any other recipients of the
Software a copy of this License along with the Software.
Section 2: You may modify or change your copy or copies of the Software or
any portion of it, thus forming a work based on the Software, and copy and
distribute such modifications or work under the terms of Section 1 above,
provided that you also meet all of these conditions:
2.1: You must cause the modified files to carry prominent notices stating
that you changed the files and the date of any change.
2.2: You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Software or any part thereof,
to be licensed as a whole at no charge to all third parties under the terms of
this License.
Section 3: You may copy and distribute the Software (or a work based on it,
under the terms of Section 2) in object code or executable form under the
terms of Sections 1 and 2 above provided that you also do one of the
following:
3.1: Accompany it with the complete corresponding machine-readable source
code, which must be distributed under the terms of Sections 1 and 2 above on
a medium customarily used for software interchange; or,
3.2: Accompany it with a written offer, valid for at least one year, to
give any third party, for a charge no more than your cost of physically
performing source distribution, a complete machine-readable copy of the
corresponding source code, to be distributed under the terms of Sections 1 and
2 above on a medium customarily used for software interchange; or,
3.3: Accompany it with the information you received as to the offer to
distribute corresponding source code. (This alternative is allowed only for
noncommercial distribution and only if you received the Software in object
code or executable form with such an offer, in accord with Subsection 3.2
above.)
Section 4: You may not copy, modify, sublicense, or distribute the Software
except as expressly provided under this License. Any attempt otherwise to
copy, modify, sublicense or distribute the Software is void, and will
automatically terminate your rights under this License. Parties who have
received copies, or rights, from you under this License, however, will not
have their licenses terminated so long as such parties remain in full
compliance with the terms and conditions of this License.
Section 5: This License and nothing else grants you permission to use, modify
and/or distribute the Software or its derivative works and only in accordance
with the terms and conditions of this License. Otherwise, use, modification
and/or distribution of this Software is prohibited by international laws and
treaties as regards intellectual property. Therefore, by using, modifying
and/or distributing the Software (or any work based on the Software), you
indicate your acceptance of this License to do so, and all its terms and
conditions for copying, distributing or modifying the software or works based
on it.
Section 6: Each time you redistribute the Software (or any work based on the
Software), the recipient automatically receives a license from the Original
Licensor to copy, distribute and/or modify the Software subject to these terms
and conditions. You may not impose any further restrictions on the
recipients' exercise of the rights granted herein. You are not responsible for
enforcing compliance by third parties to this License.
Section 7: NO WARRANTY
7.1: BECAUSE THE SOFTWARE IS LICENSED FREE OF CHARGE, THERE IS NO
WARRANTY FOR THE SOFTWARE, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT
WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER
PARTIES PROVIDE THE SOFTWARE "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 SOFTWARE IS WITH YOU. SHOULD THE PROGRAM
PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR
CORRECTION.
7.2:. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
AND/OR REDISTRIBUTE THE SOFTWARE 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 SOFTWARE TO OPERATE WITH ANY OTHER
SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
Section 8: If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
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 distribute so as to satisfy
simultaneously your obligations under this License and any other pertinent
obligations, then as a consequence you may not distribute the Software at all.
For example, if a patent license would not permit royalty-free redistribution
of the Software by all those who receive copies directly or indirectly through
you, then the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Software.
Section 9: If any portion or section of this License is held invalid or
unenforceable under any particular circumstance, the balance of this License
and pertinent section is intended to apply and the section as a whole is
intended to apply in other circumstances.
Section 10: Each version of the Software is given a distinguishing version
number. If the Software specifies a version number of this License which
applies to it and "any later version", you have the option of following the
terms and conditions either of that version or of any later version. If the
Software does not specify a version number of this License, you may choose any
version ever published by the Licensor.
Section 11: This Software is distributed pursuant to the terms and conditions
of this License and is distributed free of charge FOR NONCOMMERCIAL PURPOSES
ONLY. THE USE, DISTRIBUTION AND/OR MODIFICATION OF THIS SOFTWARE FOR
COMMERCIAL PURPOSES IS EXPRESSLY PROHIBITED BY INTERNATIONAL LAWS AND TREATIES
AS REGARDS INTELLECTUAL PROPERTY.