Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5

EQ2Emu Quick/Easy Linux Server installer.
#1

Since I created a windows installer I decided to try and tackle a Linux version. If you find any bugs please message me on discord or leave a post here. I've tested this across all supported versions.

All that needs to be done is grab the script below or via "wget https://www.zeklabs.com/dl/eq2emu-linux-install.sh", and then "bash eq2emu-linux-install.sh" and follow the prompts


There are some caveats:

Quote:
  • Current Working Distros: Debian 10+, Ubuntu (recent), Fedora 33, Manjaro, Arch Linux, and AlmaLinux.
  • The install directory is hardcoded to /home/eq2emu.
  • The script must be run as root or with sudo.


What this script does:
  • Step 1: Downloads the needed dependencies from whatever system your distro uses (IE APT/YUM/PACMAN/whatever).
  • Step 2: Creates /home/eq2emu and downloads the source.
  • Step 3: Downloads premake5 and then builds and installs recast libs.
  • Step 4: Downloads FMT Includes and installs them in the common folder.
  • Step 5: Builds eq2world and login.
  • Step 6: USER SETS UP MYSQL USER
  • Step 7: Startup Script installs maps, Lua-related files, sets server name, installs newest DB, updates login server, and sends bug reports (/bug) to us.
  • Step 8: Script launches login and world servers in the background and your server is ready to play.

And the obvious but needs to be said stuff
Quote:
  • If something goes wrong, and it deletes your grandmother's pictures or turns your pc into a cat-killing robot, or any other negative thing I am not responsible.
  • Support will be given ONLY if you have not changed any of the default settings.

TODO:
Add interactive options to set:  Database Username, and Password.
Add update options like the windows version has (source, scripts, DB).
Add the option to upload bugs back to EQ2EMu.com.
Add a server startup script to handle many functions.
Add Linux version detection leading to multi-version installs (IE Fedora, Arch, Ubuntu in one script)
Add directory input support on 1st start (so you can select install dir).
Add insert of server name/password into DB/ini on 1st startup.


---> EQ2EMu Linux Install Script <---
Reply
Thanks given by:
#2

-- Added distribution detection.
-- Added Fedora Support.
-- Added Ubuntu Support.
-- Added Manjaro Support.
-- Added Arch Linux Support.
Reply
Thanks given by:
#3

-- Added Startup Script (Includes Code/DB/Maps/Script updates) Will download on 1st run. or can be manually downloaded from HERE. (chmod +x start_eq2emu.sh, or bash start_eq2emu.sh)
-- Added db import
-- Fixed a few script errors (Bash scripting is strange)
-- Added config (login_db.ini, LoginServer.ini, world_db.ini) edit on 1st run
Reply
Thanks given by:
#4

-- Updated script to now add the loginserver SQL. Will attempt to create database on 1st run (missing config), Will update as needed afterwords.
Reply
Thanks given by:
#5

-- Removed the usage of cmake, now using plain old make.
-- Fixed Ubuntu/Debian Missing Boost Libs.
Reply
Thanks given by:
#6

-- [start_eq2emu.sh] Added Database (for world) name selection on 1st run.
-- [start_eq2emu.sh] Added Database host selection on 1st run.
-- [start_eq2emu.sh] Corrected a bug in the LS update procedure (file name change leading to no update).
-- [start_eq2emu.sh] Added automatic setup of the EQ2Emu config files based on the info given during 1st config.
-- [start_eq2emu.sh] Corrected update of executables.


** note after update if you lack the correct data in installconfig.conf it will default to 127.0.0.1 for MySQL host and eq2emu for the database name **

The new complete config should appear as:
Code:
MYSQLHOST=127.0.0.1
MYSQLNAME=eq2emu
MYSQLPASS=eq2emu
MYSQLDB=eq2emu
Reply
Thanks given by:
#7
Exclamation 

Completed old TODO list with the following changes. Added a few more to-dos for the future.

-- [start_eq2emu.sh] Script will now check for options.sh if it doesn't exist it will download it.
-- [start_eq2emu.sh] Script will now create the initial database on 1st run.
-- Options.sh added.

Currently supports the following options
  • Full DB Backup            - This will backup the world and login DB to /home/eq2emu/backups.
  • Update World DB        - This will delete your existing DB and do a full reload.
  • Update Lua                  - This will update all Lua scripts.
  • Update Maps               - This will delete existing maps and get the current ones from git.
  • Update Startup Script - This will update the start_eq2emu.sh.
  • Fresh Compile              - This will update the source from git and compile it.
You can grab the new start_eq2emu.sh  HERE
Reply
Thanks given by:
#8

-- [start_eq2emu.sh] Fixed an issue with the login_worldservers table being empty causing the world to not connect with the loginserver... Added default (eq2emu/eq2emu) after each update, and on 1st run.
Reply
Thanks given by:
#9

-- Added support for Alma Linux (drop-in replacement for CentOS).
Reply
Thanks given by:
#10

-- [install script] Corrected some issues with fedora install. Change from CMake to make broke it =P.
-- [install script] CMake will no longer get installed.
Reply
Thanks given by:


Forum Jump:


Users browsing this thread: 2 Guest(s)