summarylogtreecommitdiffstats
path: root/setup.sh.in
diff options
context:
space:
mode:
Diffstat (limited to 'setup.sh.in')
-rw-r--r--setup.sh.in92
1 files changed, 76 insertions, 16 deletions
diff --git a/setup.sh.in b/setup.sh.in
index 27135c548ac5..e45e6222aa4f 100644
--- a/setup.sh.in
+++ b/setup.sh.in
@@ -3,22 +3,6 @@
set -e
bootstrap_install() {
- if [ -x "$(which wine)" ] ;then
- echo "Wine version $(wine --version) found."
- else
- echo "Wine not found. Please install Wine with your Package Manager."
- echo "WineHQ or Developer Version are recommended."
- printf "\nExiting.\n\n"
- exit 0
- fi
- if [ -x "$(which winetricks)" ] ;then
- echo "Winetricks version $(winetricks --version | cut -d' ' -f1) found."
- else
- echo "Winetricks not found. Winetricks are required."
- echo " Please install Winetricks with your Package Manager."
- printf "\nExiting.\n\n"
- exit 0
- fi
install -dv "${target}/bin/"
install -d "${prefix}/bin/"
install -d "${prefix}/share/applications/"
@@ -75,11 +59,84 @@ bootstrap_remove() {
rm -rfv "${target}"
}
+build_lib() {
+ if [ ! -r "./evelauncher-$elver.tar.gz" ] ;then
+ if [ -x "$(which curl 2>/dev/null)" ] ;then
+ echo "Curl version $(curl -V | head -n1 | cut -d' ' -f2) found."
+ else
+ echo "Curl not found. Curl are needed for downloading evelauncher binaries."
+ echo " Please install curl with your Package Manager."
+ printf "\nExiting.\n\n"
+ exit 0
+ fi
+ printf "\nDownloading evelauncher-$elver.tar.gz...\n\n"
+ curl -L -O https://binaries.eveonline.com/evelauncher-$elver.tar.gz
+ fi
+ rcsum="$(sha256sum ./evelauncher-$elver.tar.gz| cut -d' ' -f1)"
+ if [ "$rcsum" != "$elcsum" ] ;then
+ printf "\n\nError: Checksum from evelauncher-$elver.tar.gz doesn't match!"
+ printf "\nExiting.\n\n"
+ exit 0
+ fi
+ printf "\nExtract evelauncher-$elver.tar.gz..."
+ tar xf evelauncher-$elver.tar.gz
+ echo "done."
+ printf "\nClean up evelauncher directory..."
+ cd evelauncher/
+ rm -f ./*.a ./*.la ./*.prl
+ chmod 0755 ./*
+ chmod 0644 ./*.qm ./*.conf
+ echo "done."
+ printf "\nReplace identical files with symbolic links..."
+ ln -sf evelauncher.sh LogLite.sh
+ libb=/dev/zero
+ for lib in $(find ./ -maxdepth 1 -type f -name 'lib*' -printf '%s-%f\n'|sort -r)
+ do
+ liba=${lib#*-}
+ if [ "$(cmp -s $liba $libb; echo $?)" = "0" ] ;then
+ ln -sf $libb $liba
+ else
+ libb=$liba
+ fi
+ done
+ echo "done."
+ printf "\nRemove unneeded symbols from files..."
+ find ./ -maxdepth 1 -type f -exec strip -s {} 2>/dev/null \;
+ echo "done."
+ printf "\nRepack evelauncher-$elver.tar.gz..."
+ cd ../
+ rm evelauncher-$elver.tar.gz
+ tar czf evelauncher-$elver.tar.gz evelauncher/
+ rm -rf evelauncher/
+ echo "done."
+}
+
+check_req() {
+ if [ -x "$(which wine 2>/dev/null)" ] ;then
+ echo "Wine version $(wine --version) found."
+ else
+ echo "Wine not found. Please install Wine with your Package Manager."
+ echo "WineHQ or Developer Version are recommended."
+ printf "\nExiting.\n\n"
+ exit 0
+ fi
+ if [ -x "$(which winetricks 2>/dev/null)" ] ;then
+ echo "Winetricks version $(winetricks --version | cut -d' ' -f1) found."
+ else
+ echo "Winetricks not found. Winetricks are required."
+ echo " Please install Winetricks with your Package Manager."
+ printf "\nExiting.\n\n"
+ exit 0
+ fi
+}
+
target="/opt/evesetup"
prefix="/usr"
key=""
qtver="5.11"
elver="1501045"
+elcsum="08b5dbb25c92ffe3c27e27a5353db7096b92a0a093c73e99e7fe08e2d4831ba0"
+rcsum=""
if [ $(id -u) -ne 0 ] ;then
printf "\nEVE Online Launcher Setup need root permissions."
@@ -100,6 +157,9 @@ else
printf "\n"
read -p 'Install EVE Online Launcher Setup? (Y/n) ' key
[ ! "x$(echo $key | tr [:upper:] [:lower:])" = "xn" ] && \
+ check_req && \
+ build_lib && \
+ printf "\nInstalling...\n\n"
bootstrap_install && \
printf "\nYou can now start EVE Online Launcher and his " && \
echo "Tools from your Application menu."