Self Hosted RIPPLE (Windows Edition)
- ConEmu FOSS windows terminal emulator. (Recommended)
- Python 3.6+ (with pip, add python to path for windows)
- XAMPP
- NGINX (nginx 1.16.1)
- REDIS (For Windows)
- Visual C++ Build Tools 2015
- Ubuntu 18.04 LTS (WSL) WSL Enabled with A Ubuntu Terminal to run efl binaries i.e hanayo, api.
- Download or clone the upstream repository with
git clone https://github.com/Uniminin/Light-Ripple-Windows
. - Create and Run MySQL Database Server.
- Connect to MySQL DB and import RIPPLE SQL query.
- Go to
pep.py
,lets
&avatar-server
Folder and install the necessary python packages withpython3 -m pip install -r requirements.txt
. - Go to
lets
folder and change my directory to yours inlets/pp/rippoppai.py
andlets/pp/relaxoppai.py
. Create areplays
folder inlets/.data/replays
if there isn't any. - Edit
config.ini
and change it. (Both in pep.py & lets folder) - Go to
api
and editapi.conf
. - Go to
Frontend
and edithanayo.conf
. - You can get OSU!API Key here: OSU!API.
- Go to
nginx-1.16.1
folder and edit the content ofconf/nginx.conf
,osu/nginx.conf
andosu/old-frontend.conf
. Replace my directory with your one. - You can switch to localhost server and bancho either by LocalHost.exe Switcher or Manually by:
- Install Certificate
- Edit Hosts File in
c:\Windows\System32\Drivers\etc\hosts
. And add this lines to your hosts file.
#<domain that support in certificate> default is i-need-to.click
<127.0.0.1 or your Public IP> osu.ppy.sh
<127.0.0.1 or your Public IP> c.ppy.sh
<127.0.0.1 or your Public IP> c1.ppy.sh
<127.0.0.1 or your Public IP> c2.ppy.sh
<127.0.0.1 or your Public IP> c3.ppy.sh
<127.0.0.1 or your Public IP> c4.ppy.sh
<127.0.0.1 or your Public IP> c5.ppy.sh
<127.0.0.1 or your Public IP> c6.ppy.sh
<127.0.0.1 or your Public IP> c7.ppy.sh
<127.0.0.1 or your Public IP> ce.ppy.sh
<127.0.0.1 or your Public IP> a.ppy.sh
<127.0.0.1 or your Public IP> i.ppy.sh
<127.0.0.1 or your Public IP> <domain that support in certificate>
<127.0.0.1 or your Public IP> c.<domain that support in certificate>
<127.0.0.1 or your Public IP> i.<domain that support in certificate>
<127.0.0.1 or your Public IP> a.<domain that support in certificate>
<127.0.0.1 or your Public IP> old.<domain that support in certificate>
These domains are supported by osu!thailand certificate (You can make your by doing a new self-signed certificate)
- tatoe.pw
- i-need-to.click
- keidas.pw
- cookiezi.pw
- kawata.pw
Ripple uses Password -> MD5 -> BCrypt Hash (10 rounds) for the password to login so in users
table in password_md5
column in db.
- For Example: If you want to make your password
ExamplePassword87
, first you need to hash it as MD5. So the hash will bedf4s5fe65f456344f4re549
(You can hash your password at http://www.md5.cz/). - After hashing it, you'll still need to make it as BCrypt Hash (10 Rounds), you can use https://bcrypt-generator.com/ as BCrypt encryptor.
- Put the MD5 Hash to
String to encrypt
box, change rounds to 10 and then clickHash!
button. - You'll get the hash like
asdjslkfjlkUy89y32098y*(*@#&(*3y928hih32toij[][;gfgd
(which is our MD5 hash.ExamplePassword87
). - Put your BCrypt hash in
password_md5
in your user data (DB).
Note: The BCrypt hash will be always different because BCrypt hashes it 10 times!
- Start MySQL (MySQL Server must be started and running).
- Start Redis Server,
Redis/redis-server.exe
. - Go to
lets
folder and runpython lets.py
(cmd.exe/x-terminal-emulator.exe). - Go to
pep.py
folder and runpython pep.py
(cmd.exe/x-terminal-emulator.exe). - Go to
avatar-server
folder and runpython avatar-server.py
(cmd.exe/x-terminal-emulator.exe). - Go to
api
folder and run./API
(bash.exe/WSL). - Go to
Frontend
folder and run./frontend
(bash.exe/WSL). - Go to
nginx-1.16.1
folder and runnginx
(cmd.exe/x-terminal-emulator.exe).
Before you login you have to create an account. You can create an account either by using the/from frontend which is i-need-to.click
(default) site or manually from database.
- Use a local database software to log into local database. I recommend HeidiSQL or dbForge Studio.
- Log into local db. Then Click on RIPPLE db. Then head find
users
. And click onData
section above. - In id
1000
fill-up your desired username, notes, and email. (It will have full owner/admin access). - For Password follow that above section #manually-creating-passwording-db.
- Then you can login with your username/email and password.
- Kanaze-Chan(Aoba) for their readme!
- Aoba Suzukaze for their lots of help.
All code in this and its related repositories is licensed under the GNU AGPL 3 License. See the LICENSE
file for more information.