summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO10
-rw-r--r--PKGBUILD10
-rwxr-xr-xbuild_installer.sh8
-rwxr-xr-xbuild_small_installer.sh126
-rw-r--r--setup.sh.in1
-rw-r--r--setup_small.sh.in107
6 files changed, 253 insertions, 9 deletions
diff --git a/.SRCINFO b/.SRCINFO
index acaa3250cfc6..79cd070e9dcc 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = evesetup
pkgdesc = An inofficial EVE Online Launcher Setup Tool.
pkgver = 1548102
- pkgrel = 4
+ pkgrel = 5
url = https://forums.eveonline.com/t/eve-installing/71494
arch = x86_64
license = custom
@@ -40,7 +40,9 @@ pkgbase = evesetup
source = evebackup.desktop
source = evebackup
source = build_installer.sh
+ source = build_small_installer.sh
source = setup.sh.in
+ source = setup_small.sh.in
source = eve-icons.tar.gz
source = eve-icons_large.tar.gz
source = eve-transl5.11-de.tar.gz
@@ -63,8 +65,10 @@ pkgbase = evesetup
sha256sums = f438c7002eaf8e1186a838ac2e803242b7a2c98a22cf49622eb4a64cf4b202ec
sha256sums = 04c102d6db1bb8d4159c41f32ec0aa95846c0fb519841a3c1428ab20c850e9cf
sha256sums = 25c84d6823badf7c04dd316857b144b614a917943baeb8dc769b27cd029071ff
- sha256sums = 498c21e2ab8ef8e789d5d99265678a2784e6d0ddbd407a520e107412fd8bfd0d
- sha256sums = e4166acb66ced33e9e2c3e7961d9581397e7016b8ed675341ed42fb9742dffe0
+ sha256sums = 5aff377c2158ff40eb7b27f3792cc568c41a43bdbff2787178ab936fff192c8d
+ sha256sums = 7064241dd0b9876743ce89d0b638c9b2dc5e8153a327e44973a0424e31a715c1
+ sha256sums = 6f8116cbbe05808be4ecddcb782965fcbfad09645ad8153db325e8c17ef7c27b
+ sha256sums = dcb776b66f31a9f2fd545a5c6b6ef874b3f9b3c2a14881c3822ac505e1d431ce
sha256sums = 69b98d923c08c6fb035c0c6905ec5e9c73273b694f8f3497777d44597dbe63e3
sha256sums = 762db1df07dfcf526fe634b4b589a08e8affefb2f79f02cff2624c70e0820422
sha256sums = 47accd49b64d624c6a6dee42952f8627aaabdd315fad85ef037507745d393f1a
diff --git a/PKGBUILD b/PKGBUILD
index a4e94d767982..ff5d93f2e9be 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,7 +1,7 @@
#Maintainer: Gharim Turen <gharim@turen.de>
pkgname=evesetup
pkgver=1548102
-pkgrel=4
+pkgrel=5
pkgdesc="An inofficial EVE Online Launcher Setup Tool."
arch=(x86_64)
url="https://forums.eveonline.com/t/eve-installing/71494"
@@ -37,7 +37,9 @@ source=("evelauncher.desktop"
"evebackup.desktop"
"evebackup"
"build_installer.sh"
+ "build_small_installer.sh"
"setup.sh.in"
+ "setup_small.sh.in"
"eve-icons.tar.gz"
"eve-icons_large.tar.gz"
"eve-transl5.11-de.tar.gz"
@@ -114,8 +116,10 @@ sha256sums=('ce85defa2698ea72e88221d72424fb953f86836494ecc0e4006f41ec89682af4'
'f438c7002eaf8e1186a838ac2e803242b7a2c98a22cf49622eb4a64cf4b202ec'
'04c102d6db1bb8d4159c41f32ec0aa95846c0fb519841a3c1428ab20c850e9cf'
'25c84d6823badf7c04dd316857b144b614a917943baeb8dc769b27cd029071ff'
- '498c21e2ab8ef8e789d5d99265678a2784e6d0ddbd407a520e107412fd8bfd0d'
- 'e4166acb66ced33e9e2c3e7961d9581397e7016b8ed675341ed42fb9742dffe0'
+ '5aff377c2158ff40eb7b27f3792cc568c41a43bdbff2787178ab936fff192c8d'
+ '7064241dd0b9876743ce89d0b638c9b2dc5e8153a327e44973a0424e31a715c1'
+ '6f8116cbbe05808be4ecddcb782965fcbfad09645ad8153db325e8c17ef7c27b'
+ 'dcb776b66f31a9f2fd545a5c6b6ef874b3f9b3c2a14881c3822ac505e1d431ce'
'69b98d923c08c6fb035c0c6905ec5e9c73273b694f8f3497777d44597dbe63e3'
'762db1df07dfcf526fe634b4b589a08e8affefb2f79f02cff2624c70e0820422'
'47accd49b64d624c6a6dee42952f8627aaabdd315fad85ef037507745d393f1a'
diff --git a/build_installer.sh b/build_installer.sh
index 9663c145308b..9e3f9f87972d 100755
--- a/build_installer.sh
+++ b/build_installer.sh
@@ -1,10 +1,10 @@
#!/bin/sh
-# Buildscript for creating the distribution independed installer.
-# Works only in this directory because some dependencies are here located.
-
set -e
+printf "\n\n Buildscript for creating the distribution independed installer\n"
+printf " with all dependencies and optional evelauncher archive included.\n\n"
+
version=$(grep ^pkgver PKGBUILD | cut -d= -f2) || exit 1
release=$(grep ^pkgrel PKGBUILD | cut -d= -f2) || exit 1
arch=$(uname -m)
@@ -82,6 +82,8 @@ if [ -f "../evelauncher-$version.tar.gz" ] ;then
else
echo "skipped, checksum mismatch."
fi
+else
+ printf "\nEVE Launcher archive not found, will be downloaded during the setup process.\n"
fi
printf "\nBuild self-extractable archive evesetup-$version-$release-$arch.run\n\n"
diff --git a/build_small_installer.sh b/build_small_installer.sh
new file mode 100755
index 000000000000..70509f38ecaa
--- /dev/null
+++ b/build_small_installer.sh
@@ -0,0 +1,126 @@
+#!/bin/sh
+
+set -e
+
+printf "\n\n Buildscript for creating the distribution independed installer\n"
+printf " without dependencies which must be fullfilled on the target system.\n\n"
+
+version=$(grep ^pkgver PKGBUILD | cut -d= -f2) || exit 1
+release=$(grep ^pkgrel PKGBUILD | cut -d= -f2) || exit 1
+arch=$(uname -m)
+
+elcsum=""
+mscsum="ca66a6113ce98152b85c8d847949f8c90ab9ba798e106bfc225d4ed3c2e2e3e2"
+rcsum=""
+
+pshal=$(grep -n ^sha256sum PKGBUILD | cut -d: -f1)
+psrcl=$(grep -n ^source PKGBUILD | cut -d: -f1)
+pelsl=$(grep -n evelauncher-\${pkgver}.tar.gz\" PKGBUILD | cut -d: -f1)
+pofsl=$(expr $pelsl - $psrcl)
+pelcs=$(expr $pshal + $pofsl)
+
+plc=1
+while read pline ;do
+ if [ $plc -eq $pelcs ] ;then
+ elcsum=${pline#*\'}
+ elcsum=${elcsum%%\'*}
+ fi
+ plc=$(expr $plc + 1)
+done < PKGBUILD
+
+if [ ! -f "./makeself-2.4.0.run" ] ;then
+ if [ ! -x "$(which curl)" ] ;then
+ echo "Curl not found. Curl are needed for downloading makeself build tool."
+ echo " Please install curl with your Package Manager."
+ printf "\nExiting.\n\n"
+ exit 0
+ fi
+ printf "\nGet makeself...\n\n"
+ curl -L -O https://github.com/megastep/makeself/releases/download/release-2.4.0/makeself-2.4.0.run
+fi
+rcsum="$(sha256sum ./makeself-2.4.0.run | cut -d' ' -f1)"
+if [ "$rcsum" != "$mscsum" ] ;then
+ printf "\n\nError: Checksum from makeself-2.4.0.run doesn't match!"
+ printf "\nExiting.\n\n"
+ exit 0
+fi
+
+if [ ! -r "./evelauncher-$version.tar.gz" ] ;then
+ printf "\nGet evelauncher-$version.tar.gz...\n\n"
+ curl -L -O https://binaries.eveonline.com/evelauncher-$version.tar.gz
+fi
+rcsum="$(sha256sum ./evelauncher-$version.tar.gz| cut -d' ' -f1)"
+if [ "$rcsum" != "$elcsum" ] ;then
+ printf "\n\nError: Checksum from evelauncher-$version.tar.gz doesn't match!"
+ printf "\nExiting.\n\n"
+ exit 0
+fi
+printf "\nCreate clean build environment..."
+if [ -d src/ ] ;then rm -rf src/* ;else mkdir src/ ;fi
+
+chmod a+x ./makeself-2.4.0.run
+./makeself-2.4.0.run --tar x ./makeself.sh ./makeself-header.sh 2>/dev/null
+chmod a-x ./makeself-2.4.0.run
+mv ./makeself.sh ./makeself-header.sh src/
+
+cd src/
+mkdir evesetup/
+echo "done."
+
+printf "\nCopy needed files from AUR source..."
+for eia in ../eve-icons*.tar.gz ;do tar xf $eia -C evesetup/ ;done
+for cmd in evelauncher.sh everegedit evewine evewinecfg evewinetricks evebackup ;do
+ if [ -f ../$cmd ] ;then cp ../$cmd evesetup/ ;fi
+ if [ ! "$cmd" = "evewine" ] ;then cp ../${cmd%.*}.desktop evesetup/ ;fi
+done
+cp ../evesetup.shlib evesetup/evesetup.shlib
+cp ../evelauncher.sh evesetup/
+sed -i s,ELVER=\"\",ELVER=\"$version\", evesetup/evelauncher.sh
+cp ../setup_small.sh.in evesetup/setup.sh
+sed -i s,elver=\"\",elver=\"$version\", evesetup/setup.sh
+chmod a+x evesetup/setup.sh
+echo "done."
+
+printf "\nExtract evelauncher-$version.tar.gz..."
+tar xf ../evelauncher-$version.tar.gz
+echo "done."
+
+printf "\nClean up evelauncher directory..."
+cd evelauncher/
+rm -rf ./resources/ ./plugins/
+rm -f ./*.a ./*.la ./*.prl ./*[Qq]t* ./libicu* ./libpng* ./libxcb*
+cp -f ../../evelauncher.sh.real ./evelauncher.sh
+chmod 0755 ./*
+chmod 0644 ./*.qm ./errorpage/*
+echo "done."
+
+printf "\nReplace identical files with symbolic links..."
+ln -sf evelauncher.sh LogLite.sh
+ln -sf libgpr.so.6.0.0 libgpr.so
+ln -sf libgpr.so.6.0.0 libgpr.so.6
+ln -sf libgrpc++.so.1.12.0 libgrpc++.so
+ln -sf libgrpc++.so.1.12.0 libgrpc++.so.1
+ln -sf libgrpc++.so.1.12.0 libgrpc++.so.6
+ln -sf libgrpc.so.6.0.0 libgrpc.so
+ln -sf libgrpc.so.6.0.0 libgrpc.so.6
+ln -sf libprotobuf.so.16.0.0 libprotobuf.so
+ln -sf libprotobuf.so.16.0.0 libprotobuf.so.16
+echo "done."
+
+printf "\nRemove unneeded symbols from files..."
+find ./ -maxdepth 1 -type f -exec strip -s {} 2>/dev/null \;
+echo "done."
+
+printf "\nRepack evelauncher-$version.tar.gz..."
+touch ./*
+cd ../
+tar czf evesetup/evelauncher-$version.tar.gz evelauncher/
+echo "done."
+
+printf "\nBuild self-extractable archive evesetup-${version}s-$release-$arch.run\n\n"
+./makeself.sh --tar-quietly evesetup/ ../evesetup-${version}s-$release-$arch.run \
+ "EVE Online Launcher Setup ${version}s-$release" ./setup.sh
+cd ..
+printf "\nClean up build environment..."
+rm -rf src/
+echo "done."
diff --git a/setup.sh.in b/setup.sh.in
index 7ea2fb6ea8dc..67ae94ceb894 100644
--- a/setup.sh.in
+++ b/setup.sh.in
@@ -145,6 +145,7 @@ if [ -d "$destdir" ] ;then
printf "\n"
read -p 'Remove EVE Online Launcher Setup? (Y/n) ' key
[ ! "x$(echo $key | tr [:upper:] [:lower:])" = "xn" ] && \
+ printf "\nRemoving...\n\n"
bootstrap_remove
else
printf "\n"
diff --git a/setup_small.sh.in b/setup_small.sh.in
new file mode 100644
index 000000000000..568cf7f8de16
--- /dev/null
+++ b/setup_small.sh.in
@@ -0,0 +1,107 @@
+#!/bin/sh
+
+set -e
+
+bootstrap_install() {
+ install -dv "$destdir"
+ install -dv "$bindir"
+ install -dv "$libdir"
+ install -d "$prefix/bin/"
+ install -d "$prefix/share/applications/"
+ install -pm 0644 "./evesetup.shlib" "$libdir"
+ install -pm 0644 "./evelauncher-${elver}.tar.gz" "$libdir"
+ sed -i s,SETUPDIR=\"\",SETUPDIR=\"$destdir\", ./evelauncher.sh
+ for cmd in evelauncher.sh evewine evewinetricks everegedit evewinecfg evebackup ;do
+ if [ -f "./$cmd" ] ;then
+ sed -i s,./evesetup.shlib,$libdir/evesetup.shlib, ./$cmd
+ install -p "./$cmd" "$bindir/"
+ else
+ ln -sf evewine "$bindir/$cmd"
+ fi
+ [ "$bindir" != "$prefix/bin" ] && ln -s "$bindir/$cmd" "$prefix/bin/$cmd"
+ if [ ! "$cmd" = "evewine" ] ;then
+ oexec=$(grep Exec= ./${cmd%.*}.desktop)
+ sed -i s,$oexec,Exec=$prefix/bin/$cmd, ./${cmd%.*}.desktop
+ install -m 0644 "./${cmd%.*}.desktop" "$prefix/share/applications/"
+ fi
+ done
+ for icons in $(find . -type f -name '*.png') ;do
+ install -D -m 0644 "$icons" "$prefix/share/${icons#*/}"
+ done
+ if [ -x $(which gtk-update-icon-cache) ] ;then
+ if [ -f "${prefix}/share/icons/hicolor/icon-theme.cache" ] ;then
+ gtk-update-icon-cache -t -f "${prefix}/share/icons/hicolor" 2>/dev/null
+ chmod 0644 "${prefix}/share/icons/hicolor/icon-theme.cache"
+ fi
+ fi
+}
+
+bootstrap_remove() {
+ for icons in $(find . -type f -name '*.png') ;do
+ rm -f "$prefix/share/${icons#*/}"
+ done
+ for cmd in evelauncher.sh everegedit evewine evewinecfg evewinetricks evebackup ;do
+ rm -fv "$prefix/bin/$cmd"
+ if [ ! "$cmd" = "evewine" ] ;then
+ rm -f "$prefix/share/applications/${cmd%.*}.desktop"
+ fi
+ done
+ rm -rfv "$destdir"
+}
+
+check_req() {
+ if [ ! -x "$(which wine 2>/dev/null)" ] ;then
+ req="${req}wine\n"
+ fi
+ if [ ! -x "$(which winetricks 2>/dev/null)" ] ;then
+ req="${req}winetricks\n"
+ fi
+ tar xf evelauncher-$elver.tar.gz
+ cd evelauncher/
+ req="${req}$(LD_LIBRARY_PATH=$(pwd) ldd ./evelauncher | grep -i not | sed s,\\t,, | cut -d' ' -f1)"
+ cd ../
+ rm -rf evelauncher/
+ if [ "x$req" != "x" ] ;then
+ printf "\nFollowing requirements are missing:\n"
+ printf "\n$req\n"
+ printf "\nPlease install these requirements with your Package Manager.\n"
+ printf "\nExiting.\n\n"
+ exit 0
+ fi
+}
+
+prefix="/usr"
+destdir="/opt/evesetup"
+bindir="$destdir/bin"
+libdir="$destdir/lib"
+elver=""
+key=""
+
+if [ $(id -u) -ne 0 ] ;then
+ printf "\nEVE Online Launcher Setup need root permissions."
+ printf "\nExiting.\n\n"
+ exit 0
+fi
+
+if [ -d "$destdir" ] ;then
+ printf "\n"
+ read -p 'Remove EVE Online Launcher Setup? (Y/n) ' key
+ [ ! "x$(echo $key | tr [:upper:] [:lower:])" = "xn" ] && \
+ printf "\nRemoving...\n\n"
+ bootstrap_remove
+else
+ printf "\n"
+ read -p 'Install EVE Online Launcher Setup? (Y/n) ' key
+ [ ! "x$(echo $key | tr [:upper:] [:lower:])" = "xn" ] && \
+ check_req && \
+ printf "\nInstalling...\n\n"
+ bootstrap_install && \
+ printf "\nYou can now start EVE Online Launcher and his Tools:\n\n"
+ for cmd in *.desktop ;do
+ oexec=$(grep Exec= $cmd | cut -d= -f2); oexec=${oexec##*/}
+ [ ! "$oexec" = "evelauncher.sh" ] && \
+ printf " $oexec\t- $(grep Comment= $cmd | cut -d= -f2)\n"
+ done
+ printf "\n evelauncher.sh\t- EVE Online Launcher\n"
+fi
+printf "\nDone.\n\n"