diff options
-rw-r--r-- | .SRCINFO | 17 | ||||
-rw-r--r-- | PKGBUILD | 26 | ||||
-rwxr-xr-x | build_installer.sh | 4 | ||||
-rwxr-xr-x | build_small_installer.sh | 3 | ||||
-rw-r--r-- | evebackup | 52 | ||||
-rw-r--r-- | evebackup.desktop | 2 | ||||
-rw-r--r-- | everestore.desktop | 11 | ||||
-rw-r--r-- | setup.sh.in | 19 | ||||
-rw-r--r-- | setup_small.sh.in | 15 |
9 files changed, 114 insertions, 35 deletions
@@ -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 @@ -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 |