summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJari Vetoniemi2015-06-29 20:17:08 +0300
committerJari Vetoniemi2015-06-29 20:17:08 +0300
commit87c5bd86f2e084ffce5cde11c0512b2a0afd8a4e (patch)
tree7f091af32be513c7700efcd27d71e5e06ad5e338
downloadaur-87c5bd86f2e084ffce5cde11c0512b2a0afd8a4e.tar.gz
Initial import
-rw-r--r--.SRCINFO36
-rw-r--r--PKGBUILD66
-rw-r--r--darkstar-connect.service14
-rw-r--r--darkstar-game.service14
-rw-r--r--darkstar-search.service14
-rw-r--r--darkstar.install45
6 files changed, 189 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..bf02e3b69b41
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,36 @@
+pkgbase = darkstar-git
+ pkgdesc = Final Fantasy XI server emulator
+ pkgver = r7405.c99e7eb
+ pkgrel = 1
+ url = https://github.com/DarkstarProject/darkstar
+ install = darkstar.install
+ arch = i686
+ arch = x86_64
+ license = GPL3
+ makedepends = git
+ makedepends = automake
+ depends = luajit
+ depends = libmariadbclient
+ depends = zeromq
+ provides = darkstar
+ conflicts = darkstar
+ backup = var/lib/darkstar/conf/lan_config.conf
+ backup = var/lib/darkstar/conf/login_darkstar.conf
+ backup = var/lib/darkstar/conf/map_darkstar.conf
+ backup = var/lib/darkstar/conf/packet_darkstar_tcp.conf
+ backup = var/lib/darkstar/conf/packet_darkstar_udp.conf
+ backup = var/lib/darkstar/conf/search_server.conf
+ backup = var/lib/darkstar/conf/server_message.conf
+ backup = var/lib/darkstar/conf/server_message_fr.conf
+ backup = var/lib/darkstar/scripts/globals/settings.lua
+ source = git://github.com/DarkstarProject/darkstar.git
+ source = darkstar-connect.service
+ source = darkstar-game.service
+ source = darkstar-search.service
+ md5sums = SKIP
+ md5sums = 808becd7e0b2e1ecb9bbd4e081d08f9c
+ md5sums = 5f61d5fdc532b9b544ae2c3cb64b71e9
+ md5sums = d39193fe0d144bf9e5cfd68d2ba24ff8
+
+pkgname = darkstar-git
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..a36efd6af03d
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,66 @@
+pkgname=darkstar-git
+pkgdesc='Final Fantasy XI server emulator'
+url='https://github.com/DarkstarProject/darkstar'
+license=('GPL3')
+arch=('i686' 'x86_64')
+pkgver=r7405.c99e7eb
+pkgrel=1
+install=darkstar.install
+
+depends=('luajit' 'libmariadbclient' 'zeromq')
+makedepends=('git' 'automake')
+
+provides=('darkstar')
+conflicts=('darkstar')
+
+# Until proper overlay (default config, user config) is implemented,
+# it is probably better idea to fork darkstar and maintain your own branch with configuration,
+# instead of merging changes from PKGBUILD each time.
+# (this will replace your modified scripts etc, not listed in backup array)
+backup=('var/lib/darkstar/conf/lan_config.conf'
+ 'var/lib/darkstar/conf/login_darkstar.conf'
+ 'var/lib/darkstar/conf/map_darkstar.conf'
+ 'var/lib/darkstar/conf/packet_darkstar_tcp.conf'
+ 'var/lib/darkstar/conf/packet_darkstar_udp.conf'
+ 'var/lib/darkstar/conf/search_server.conf'
+ 'var/lib/darkstar/conf/server_message.conf'
+ 'var/lib/darkstar/conf/server_message_fr.conf'
+ 'var/lib/darkstar/scripts/globals/settings.lua')
+
+source=('git://github.com/DarkstarProject/darkstar.git'
+ 'darkstar-connect.service'
+ 'darkstar-game.service'
+ 'darkstar-search.service')
+
+pkgver() {
+ cd darkstar
+ printf 'r%s.%s' "$(git rev-list --count HEAD)" "$(git describe --always)"
+}
+
+build() {
+ cd darkstar
+ sh autogen.sh
+ ./configure --prefix=/usr
+ make
+}
+
+package() {
+ cd darkstar
+ make DESTDIR="$pkgdir" install
+
+ install -Dd "${pkgdir}"/usr/lib/systemd/system
+ install -m644 ../darkstar-{connect,game,search}.service "${pkgdir}"/usr/lib/systemd/system/
+
+ install -Dd "${pkgdir}"/var/lib/darkstar/{conf,sql,log}
+ install -m644 {compress,decompress}.dat "${pkgdir}"/var/lib/darkstar/
+ install -m644 conf/*.conf "${pkgdir}"/var/lib/darkstar/conf/
+ install -m644 sql/*.sql "${pkgdir}"/var/lib/darkstar/sql/
+ install -m644 version.info "${pkgdir}"/var/lib/darkstar/
+
+ cp -r scripts "${pkgdir}"/var/lib/darkstar/
+}
+
+md5sums=('SKIP'
+ '808becd7e0b2e1ecb9bbd4e081d08f9c'
+ '5f61d5fdc532b9b544ae2c3cb64b71e9'
+ 'd39193fe0d144bf9e5cfd68d2ba24ff8')
diff --git a/darkstar-connect.service b/darkstar-connect.service
new file mode 100644
index 000000000000..ff45107e12c0
--- /dev/null
+++ b/darkstar-connect.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=Final Fantasy XI server emulator (connect)
+After=network.target nss-lookup.target
+
+[Service]
+User=darkstar
+Group=darkstar
+PIDFile=/run/darkstar-connect.pid
+WorkingDirectory=/var/lib/darkstar
+ExecStart=/usr/bin/dsconnect
+Restart=always
+
+[Install]
+WantedBy=multi-user.target
diff --git a/darkstar-game.service b/darkstar-game.service
new file mode 100644
index 000000000000..bea3f8a93ed3
--- /dev/null
+++ b/darkstar-game.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=Final Fantasy XI server emulator (game)
+After=network.target nss-lookup.target
+
+[Service]
+User=darkstar
+Group=darkstar
+PIDFile=/run/darkstar-game.pid
+WorkingDirectory=/var/lib/darkstar
+ExecStart=/usr/bin/dsgame
+Restart=always
+
+[Install]
+WantedBy=multi-user.target
diff --git a/darkstar-search.service b/darkstar-search.service
new file mode 100644
index 000000000000..a3c9298e3751
--- /dev/null
+++ b/darkstar-search.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=Final Fantasy XI server emulator (search)
+After=network.target nss-lookup.target
+
+[Service]
+User=darkstar
+Group=darkstar
+PIDFile=/run/darkstar-search.pid
+WorkingDirectory=/var/lib/darkstar
+ExecStart=/usr/bin/dssearch
+Restart=always
+
+[Install]
+WantedBy=multi-user.target
diff --git a/darkstar.install b/darkstar.install
new file mode 100644
index 000000000000..9b70150ed227
--- /dev/null
+++ b/darkstar.install
@@ -0,0 +1,45 @@
+post_upgrade() {
+ chown -R darkstar:darkstar /var/lib/darkstar
+}
+
+post_install() {
+ getent passwd darkstar &>/dev/null || useradd -r darkstar -d /var/lib/darkstar -c 'Darkstar Server' -s /bin/false >/dev/null
+ chown -R darkstar:darkstar /var/lib/darkstar
+
+ cat << 'EOF'
+
+User and group named darkstar has been created.
+It is recommended to use the systemd services included to start darkstar.
+
+You may need to setup the database for darkstar:
+>> mysql --user=root --password=<password>
+>> CREATE USER 'darkstar'@'localhost' IDENTIFIED BY '<password>';
+>> CREATE DATABASE dspdb;
+>> USE dspdb;
+>> GRANT ALL PRIVILEGES ON dspdb.* TO 'darkstar'@'localhost';
+>> GRANT SUPER ON *.* TO 'darkstar'@'localhost';
+
+Populate the databases:
+>> for f in /var/lib/darkstar/sql/*.sql; do
+>> mysql --user=darkstar --password=<password> dspdb < "$f" && echo "Imported: $f"
+>> done
+
+After this you need to setup the ZoneIP (localhost):
+>> mysql --user=darkstar -password=<password> dspdb
+>> UPDATE zone_settings SET zoneip = '16777343';
+
+Modify mysql_login and mysql_password to match yours in /var/lib/darkstar/{search,login,map}_darkstar.conf.
+
+If you want to backup your server, then backup your mariadb database and the /var/lib/darkstar directory.
+
+For more information see:
+https://wiki.dspt.info/index.php?title=Building_the_Server
+
+EOF
+}
+
+post_remove() {
+ getent passwd darkstar &>/dev/null && userdel darkstar >/dev/null
+ getent passwd darkstar &>/dev/null && groupdel darkstar >/dev/null
+ true
+}