summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO17
-rw-r--r--PKGBUILD26
-rwxr-xr-xbuild_installer.sh4
-rwxr-xr-xbuild_small_installer.sh3
-rw-r--r--evebackup52
-rw-r--r--evebackup.desktop2
-rw-r--r--everestore.desktop11
-rw-r--r--setup.sh.in19
-rw-r--r--setup_small.sh.in15
9 files changed, 114 insertions, 35 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 668ae67582ae..65435fb9bd17 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,13 +1,14 @@
pkgbase = evesetup
pkgdesc = An inofficial EVE Online Launcher Setup Tool.
pkgver = 1548102
- pkgrel = 6
+ pkgrel = 7
url = https://forums.eveonline.com/t/eve-installing/71494
arch = x86_64
license = custom
depends = icu
depends = openssl
depends = openssl-1.0
+ depends = p7zip
depends = qt5-base
depends = qt5-declarative
depends = qt5-translations
@@ -39,6 +40,7 @@ pkgbase = evesetup
source = evewinetricks
source = evebackup.desktop
source = evebackup
+ source = everestore.desktop
source = build_installer.sh
source = build_small_installer.sh
source = setup.sh.in
@@ -63,12 +65,13 @@ pkgbase = evesetup
sha256sums = 546aaf5669dc3d3f1b2fff1b9a493d8ba31c19940a04fa4b9eb080e7301df4bd
sha256sums = c83beba543663b926d28d0eda98f1035cd73327da50f718a487763d300415a24
sha256sums = f438c7002eaf8e1186a838ac2e803242b7a2c98a22cf49622eb4a64cf4b202ec
- sha256sums = 04c102d6db1bb8d4159c41f32ec0aa95846c0fb519841a3c1428ab20c850e9cf
- sha256sums = 30ce091fc5eb37be72af6bf3a63c8fa6393c5903899eb9f6630a36661e86c76e
- sha256sums = 98b312cc5c49fc8b39eaca9bcbda3986f661db078ed6490a9759579126bcd4ce
- sha256sums = 772e344deae14bfeb02f9e889abef468b308f0e287fd2ce60e121d24f41a5355
- sha256sums = 5eb4912284c43c32916c1fcd1b95eaae751be3dccbfb9cd5b569a0d99e5d92d4
- sha256sums = ba10fc5d828245213edc73d6cb58d548519bec46def84a6b2d32c18ac02b3917
+ sha256sums = 30b6440b842c19df64892cc560c274a7cc4f5de910a9f81e12dd0d76da561474
+ sha256sums = 68133ae911d8b91374c09a7ce9f7617a260e43a669af00ed9299e1b8e7b2c9ec
+ sha256sums = 261da84107168979d241c60cd7adbfee0f6675464675faaefd5f6140009d54d8
+ sha256sums = a8a3b84cbb6c7e79014b365d1c94b6c2095c7adaf83bc434c36bc3db088c50ca
+ sha256sums = f142bf1734f2516cee99656d14af529bdf4161cc798ed3f27b7f1a4a6ec0eb36
+ sha256sums = 453f194a07a84ddf55f7514f4fceebbc1fc03894815c7ca257c3d205ba681426
+ sha256sums = d8abd97506271bd8a68c8756e353ed1e02dcb9a998164531fabc97d53e1d2ae6
sha256sums = 69b98d923c08c6fb035c0c6905ec5e9c73273b694f8f3497777d44597dbe63e3
sha256sums = 762db1df07dfcf526fe634b4b589a08e8affefb2f79f02cff2624c70e0820422
sha256sums = 47accd49b64d624c6a6dee42952f8627aaabdd315fad85ef037507745d393f1a
diff --git a/PKGBUILD b/PKGBUILD
index 14c80cc77969..7a72f2e4491b 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,7 +1,7 @@
#Maintainer: Gharim Turen <gharim@turen.de>
pkgname=evesetup
pkgver=1548102
-pkgrel=6
+pkgrel=7
pkgdesc="An inofficial EVE Online Launcher Setup Tool."
arch=(x86_64)
url="https://forums.eveonline.com/t/eve-installing/71494"
@@ -10,6 +10,7 @@ license=('custom')
depends=('icu'
'openssl'
'openssl-1.0'
+ 'p7zip'
'qt5-base'
'qt5-declarative'
'qt5-translations'
@@ -36,6 +37,7 @@ source=("evelauncher.desktop"
"evewinetricks"
"evebackup.desktop"
"evebackup"
+ "everestore.desktop"
"build_installer.sh"
"build_small_installer.sh"
"setup.sh.in"
@@ -67,12 +69,17 @@ package() {
install -d "${pkgdir}/usr/share/icons"
sed -i s,ELVER=\"\",ELVER=\"${pkgver}\", "${srcdir}/evelauncher.sh"
sed -i s,SETUPDIR=\"\",SETUPDIR=\"/opt/${pkgname}\", "${srcdir}/evelauncher.sh"
- for cmd in evelauncher.sh everegedit evewine evewinecfg evewinetricks evebackup ;do
+ for cmd in backup launcher.sh regedit restore wine winecfg winetricks ;do
+ cmd=eve$cmd
if [ -f "${srcdir}/$cmd" ] ;then
sed -i s,./evesetup.shlib,/opt/${pkgname}/lib/evesetup.shlib, "${srcdir}/$cmd"
install "${srcdir}/$cmd" "${pkgdir}/opt/${pkgname}/bin"
else
- ln -s evewine "${pkgdir}/opt/${pkgname}/bin/$cmd"
+ if [ "$cmd" = "everestore" ] ;then
+ ln -s evebackup "${pkgdir}/opt/${pkgname}/bin/$cmd"
+ else
+ ln -s evewine "${pkgdir}/opt/${pkgname}/bin/$cmd"
+ fi
fi
ln -s "/opt/${pkgname}/bin/$cmd" "${pkgdir}/usr/bin/$cmd"
if [ ! "$cmd" = "evewine" ] ;then
@@ -114,12 +121,13 @@ sha256sums=('ce85defa2698ea72e88221d72424fb953f86836494ecc0e4006f41ec89682af4'
'546aaf5669dc3d3f1b2fff1b9a493d8ba31c19940a04fa4b9eb080e7301df4bd'
'c83beba543663b926d28d0eda98f1035cd73327da50f718a487763d300415a24'
'f438c7002eaf8e1186a838ac2e803242b7a2c98a22cf49622eb4a64cf4b202ec'
- '04c102d6db1bb8d4159c41f32ec0aa95846c0fb519841a3c1428ab20c850e9cf'
- '30ce091fc5eb37be72af6bf3a63c8fa6393c5903899eb9f6630a36661e86c76e'
- '98b312cc5c49fc8b39eaca9bcbda3986f661db078ed6490a9759579126bcd4ce'
- '772e344deae14bfeb02f9e889abef468b308f0e287fd2ce60e121d24f41a5355'
- '5eb4912284c43c32916c1fcd1b95eaae751be3dccbfb9cd5b569a0d99e5d92d4'
- 'ba10fc5d828245213edc73d6cb58d548519bec46def84a6b2d32c18ac02b3917'
+ '30b6440b842c19df64892cc560c274a7cc4f5de910a9f81e12dd0d76da561474'
+ '68133ae911d8b91374c09a7ce9f7617a260e43a669af00ed9299e1b8e7b2c9ec'
+ '261da84107168979d241c60cd7adbfee0f6675464675faaefd5f6140009d54d8'
+ 'a8a3b84cbb6c7e79014b365d1c94b6c2095c7adaf83bc434c36bc3db088c50ca'
+ 'f142bf1734f2516cee99656d14af529bdf4161cc798ed3f27b7f1a4a6ec0eb36'
+ '453f194a07a84ddf55f7514f4fceebbc1fc03894815c7ca257c3d205ba681426'
+ 'd8abd97506271bd8a68c8756e353ed1e02dcb9a998164531fabc97d53e1d2ae6'
'69b98d923c08c6fb035c0c6905ec5e9c73273b694f8f3497777d44597dbe63e3'
'762db1df07dfcf526fe634b4b589a08e8affefb2f79f02cff2624c70e0820422'
'47accd49b64d624c6a6dee42952f8627aaabdd315fad85ef037507745d393f1a'
diff --git a/build_installer.sh b/build_installer.sh
index 5b9f79d8f3de..f73fe07f82cd 100755
--- a/build_installer.sh
+++ b/build_installer.sh
@@ -60,7 +60,8 @@ echo "done."
printf "\nCopy needed files from AUR source..."
for eia in ../eve-icons*.tar.gz ;do tar xf $eia -C evesetup/ ;done
for eta in ../eve-transl5.11-??.tar.gz ;do cp $eta evesetup/ ;done
-for cmd in evelauncher.sh everegedit evewine evewinecfg evewinetricks evebackup ;do
+for cmd in backup launcher.sh regedit restore wine winecfg winetricks ;do
+ cmd=eve$cmd
if [ -f ../$cmd ] ;then cp ../$cmd evesetup/ ;fi
if [ ! "$cmd" = "evewine" ] ;then cp ../${cmd%.*}.desktop evesetup/ ;fi
done
@@ -85,7 +86,6 @@ if [ -f "../evelauncher-$version.tar.gz" ] ;then
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"
./makeself.sh --tar-quietly evesetup/ ../evesetup-$version-$release-$arch.run \
"EVE Online Launcher Setup $version-$release" ./setup.sh
diff --git a/build_small_installer.sh b/build_small_installer.sh
index 9347ad0d61ed..84db520a455f 100755
--- a/build_small_installer.sh
+++ b/build_small_installer.sh
@@ -69,7 +69,8 @@ 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
+for cmd in backup launcher.sh regedit restore wine winecfg winetricks ;do
+ cmd=eve$cmd
if [ -f ../$cmd ] ;then cp ../$cmd evesetup/ ;fi
if [ ! "$cmd" = "evewine" ] ;then cp ../${cmd%.*}.desktop evesetup/ ;fi
done
diff --git a/evebackup b/evebackup
index b9e45520a88d..c1db57fa0bce 100644
--- a/evebackup
+++ b/evebackup
@@ -2,18 +2,52 @@
set -e
-# WIP use at own risk
-
. ./evesetup.shlib
+backup_settings() {
+for SERVER in tranquility singularity duality thunderdome ;do
+ CLPROFILE="$(ls -d *_$SERVER 2>/dev/null || true)"
+ [ "x$CLPROFILE" = "x" ] && continue
+ if [ ! -f "$BACKUPDIR/$SERVER-settings_current.7z" ] ;then
+ MSGSTR="Preparing EVE Backup, please run $CMDSTR again."
+ else
+ mv "$BACKUPDIR/$SERVER-settings_current.7z" "$BACKUPDIR/$SERVER-settings.7z"
+ MSGSTR="User settings in $BACKUPDIR saved."
+ fi
+ cd "$CLPROFILE"
+ 7z u -t7z -xr!Browser "$BACKUPDIR/$SERVER-settings.7z" \
+ -u- -u!"$BACKUPDIR/$SERVER-settings_current.7z" "settings_*" >/dev/null
+ cd ..
+done
+}
+
+restore_settings() {
+for SERVER in thunderdome duality singularity tranquility ;do
+ if [ ! -f "$BACKUPDIR/$SERVER-settings.7z" ] ;then
+ MSGSTR="No settings in $BACKUPDIR found."
+ continue 2
+ fi
+ case $SERVER in
+ tranquility) SERVER_SHORT=tq ;;
+ singularity) SERVER_SHORT=sisi ;;
+ *) SERVER_SHORT=$SERVER ;;
+ esac
+ [ -d c_"$SERVER_SHORT"_"$SERVER" ] || mkdir c_"$SERVER_SHORT"_"$SERVER"
+ 7z x "$BACKUPDIR/$SERVER-settings.7z" -oc_"$SERVER_SHORT"_"$SERVER" -y >/dev/null
+ MSGSTR="User settings from $BACKUPDIR restored."
+done
+}
+
SHAREDIR=$(getval SharedCacheFolder)
-BCKUPDIR=$(xdg-user-dir DOCUMENTS 2>/dev/null || true)/EVE
-[ -d "$BCKUPDIR" ] || BCKUPDIR=$HOME
+BACKUPDIR=$(xdg-user-dir DOCUMENTS)/EVE
+CMDSTR=$(basename $0)
-USERCONF=wineenv/drive_c/users/$(whoami)/Local\ Settings/Application\ Data/CCP/EVE
+cd "${SHAREDIR}wineenv/drive_c/users/$(whoami)/Local Settings/Application Data/CCP/EVE"
-cd $SHAREDIR
-tar czf $BCKUPDIR/eve_userconf_$(date +%F).tar.gz \
- --exclude=cache --exclude=Browser --exclude=history.txt "$USERCONF"
+case $CMDSTR in
+ evebackup) backup_settings ;;
+ everestore) restore_settings ;;
+ *) exit 1 ;;
+esac
-desktop_msg "User configuration in $BCKUPDIR stored."
+desktop_msg "$MSGSTR"
diff --git a/evebackup.desktop b/evebackup.desktop
index 3ee5f20e348a..d4d48758d4de 100644
--- a/evebackup.desktop
+++ b/evebackup.desktop
@@ -6,6 +6,6 @@ Icon=archivemanager
Comment=Backup user settings
Exec=evebackup
NoDisplay=false
-Categories=Utility;Wine;
+Categories=Utility;
StartupNotify=false
Terminal=false
diff --git a/everestore.desktop b/everestore.desktop
new file mode 100644
index 000000000000..817aa1767dae
--- /dev/null
+++ b/everestore.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Version=1.0
+Type=Application
+Name=EVE Restore
+Icon=archivemanager
+Comment=Restore user settings
+Exec=everestore
+NoDisplay=false
+Categories=Utility;
+StartupNotify=false
+Terminal=false
diff --git a/setup.sh.in b/setup.sh.in
index bacb6c08e7b7..638cb1d436bc 100644
--- a/setup.sh.in
+++ b/setup.sh.in
@@ -15,12 +15,17 @@ bootstrap_install() {
install -m 0644 "./evelauncher-${elver}.tar.gz" "$libdir"
sed -i s,./eve-transl,$libdir/eve-transl, ./evelauncher.sh
sed -i s,SETUPDIR=\"\",SETUPDIR=\"$destdir\", ./evelauncher.sh
- for cmd in evelauncher.sh evewine evewinetricks everegedit evewinecfg evebackup ;do
+ for cmd in backup launcher.sh regedit restore wine winecfg winetricks ;do
+ cmd=eve$cmd
if [ -f "./$cmd" ] ;then
sed -i s,./evesetup.shlib,$libdir/evesetup.shlib, ./$cmd
install "./$cmd" "$bindir/"
else
- ln -sf evewine "$bindir/$cmd"
+ if [ "$cmd" = "everestore" ] ;then
+ ln -s evebackup "$bindir/$cmd"
+ else
+ ln -s evewine "$bindir/$cmd"
+ fi
fi
[ "$bindir" != "$prefix/bin" ] && ln -s "$bindir/$cmd" "$prefix/bin/$cmd"
if [ ! "$cmd" = "evewine" ] ;then
@@ -44,7 +49,8 @@ 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
+ for cmd in backup launcher.sh regedit restore wine winecfg winetricks ;do
+ cmd=eve$cmd
rm -fv "$prefix/bin/$cmd"
if [ ! "$cmd" = "evewine" ] ;then
rm -f "$prefix/share/applications/${cmd%.*}.desktop"
@@ -107,6 +113,13 @@ build_lib() {
}
check_req() {
+ if [ -x "$(which 7z 2>/dev/null)" ] ;then
+ echo "$(7z | head -n2 | cut -d: -f1 | tr -d [:cntrl:])found."
+ else
+ echo "p7zip not found. Please install p7zip with your Package Manager."
+ printf "\nLeaving.\n\n"
+ exit 0
+ fi
if [ -x "$(which wine 2>/dev/null)" ] ;then
echo "Wine version $(wine --version) found."
else
diff --git a/setup_small.sh.in b/setup_small.sh.in
index 0c7320789e14..e95a94871c5e 100644
--- a/setup_small.sh.in
+++ b/setup_small.sh.in
@@ -11,12 +11,17 @@ bootstrap_install() {
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
+ for cmd in backup launcher.sh regedit restore wine winecfg winetricks ;do
+ cmd=eve$cmd
if [ -f "./$cmd" ] ;then
sed -i s,./evesetup.shlib,$libdir/evesetup.shlib, ./$cmd
install -p "./$cmd" "$bindir/"
else
- ln -sf evewine "$bindir/$cmd"
+ if [ "$cmd" = "everestore" ] ;then
+ ln -s evebackup "$bindir/$cmd"
+ else
+ ln -s evewine "$bindir/$cmd"
+ fi
fi
[ "$bindir" != "$prefix/bin" ] && ln -s "$bindir/$cmd" "$prefix/bin/$cmd"
if [ ! "$cmd" = "evewine" ] ;then
@@ -40,7 +45,8 @@ 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
+ for cmd in backup launcher.sh regedit restore wine winecfg winetricks ;do
+ cmd=eve$cmd
rm -fv "$prefix/bin/$cmd"
if [ ! "$cmd" = "evewine" ] ;then
rm -f "$prefix/share/applications/${cmd%.*}.desktop"
@@ -50,6 +56,9 @@ bootstrap_remove() {
}
check_req() {
+ if [ ! -x "$(which 7z 2>/dev/null)" ] ;then
+ req="${req}p7zip\n"
+ fi
if [ ! -x "$(which wine 2>/dev/null)" ] ;then
req="${req}wine\n"
fi