aboutsummarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO8
-rw-r--r--PKGBUILD67
-rwxr-xr-xtws_check_update7
-rwxr-xr-xtws_get_version28
4 files changed, 54 insertions, 56 deletions
diff --git a/.SRCINFO b/.SRCINFO
index af7a17ec737e..3c22311ed4b4 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,11 +1,13 @@
pkgbase = ib-tws
pkgdesc = Electronic trading platform from discount brokerage firm Interactive Brokers
- pkgver = 952.1e
+ pkgver = 954.2a
pkgrel = 1
url = http://interactivebrokers.com/
arch = any
license = custom
makedepends = imagemagick
+ makedepends = gzip
+ makedepends = tar
depends = java-environment
depends = bash
source = LICENSE
@@ -13,13 +15,13 @@ pkgbase = ib-tws
source = ib-tws.desktop
source = ib-gw
source = ib-gw.desktop
- source = http://download2.interactivebrokers.com/download/unixmacosx_latest.jar
+ source = https://download2.interactivebrokers.com/installers/tws/latest-standalone/tws-latest-standalone-linux-x64.sh
md5sums = e1cae2de592add7133bb08123e8db1ad
md5sums = c407d22dfafdb33ec2fe97eeb5e9f0aa
md5sums = 9205b5eade96d69f8e470cc52c30db4a
md5sums = c95eeb41fec3aae6ad5e82703a39060c
md5sums = ffa9fcfb623850e5c9e796040bdbd052
- md5sums = a5e03a6fc63e7ef2eca82091ada08f46
+ md5sums = ec5f1c447b83f3530c1b727fab98e7fc
pkgname = ib-tws
diff --git a/PKGBUILD b/PKGBUILD
index a5277924c59e..7bc302525ce5 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,56 +1,63 @@
# Maintainer: Ben Alex <ben.alex@acegi.com.au>
pkgname=ib-tws
-pkgver=952.1e
+pkgver=954.2a
pkgrel=1
pkgdesc='Electronic trading platform from discount brokerage firm Interactive Brokers'
arch=('any')
url="http://interactivebrokers.com/"
license=('custom')
depends=(java-environment bash)
-makedepends=(imagemagick)
+makedepends=(imagemagick gzip tar)
source=('LICENSE'
'ib-tws'
'ib-tws.desktop'
'ib-gw'
'ib-gw.desktop'
- 'http://download2.interactivebrokers.com/download/unixmacosx_latest.jar')
-
+ 'https://download2.interactivebrokers.com/installers/tws/latest-standalone/tws-latest-standalone-linux-x64.sh')
md5sums=('e1cae2de592add7133bb08123e8db1ad'
'c407d22dfafdb33ec2fe97eeb5e9f0aa'
'9205b5eade96d69f8e470cc52c30db4a'
'c95eeb41fec3aae6ad5e82703a39060c'
'ffa9fcfb623850e5c9e796040bdbd052'
- 'a5e03a6fc63e7ef2eca82091ada08f46')
+ 'ec5f1c447b83f3530c1b727fab98e7fc')
+
build() {
- # Thanks to http://finance.groups.yahoo.com/group/TWSAPI/files/RPM%20spec%20file/
- cd ${srcdir}/IBJts
- jar xf jts.jar trader/common/images/ibapp_icon_48x48.gif
- jar xf jts.jar trader/common/images/quote_details_48x48.jpg
- convert trader/common/images/ibapp_icon_48x48.gif ${pkgname}.png
- convert trader/common/images/ibapp_icon_48x48.gif -resize 66.666% ${pkgname}-32x32.png
- convert trader/common/images/ibapp_icon_48x48.gif -resize 33.333% ${pkgname}-16x16.png
- convert trader/common/images/ibapp_icon_48x48.gif ${pkgname}-48x48.png
- convert trader/common/images/quote_details_48x48.jpg ib-gw.png
- convert trader/common/images/quote_details_48x48.jpg -resize 66.666% ib-gw-32x32.png
- convert trader/common/images/quote_details_48x48.jpg -resize 33.333% ib-gw-16x16.png
- convert trader/common/images/quote_details_48x48.jpg ib-gw-48x48.png
+ cd ${srcdir}
+ chmod +x tws-latest-standalone-linux-x64.sh
+ # Assumes no other Install4J packages are in use by user; if so, makepkg from dedicated user account
+ rm -rf $HOME/.install4j $HOME/.i4j_jres $HOME/Jts
+ ./tws-latest-standalone-linux-x64.sh -q
+ majorVer=$(echo "$pkgver" | sed "s/\([0-9]\+\)\..*/\1/")
+ mv ${HOME}/Jts/${majorVer}/jars/*.jar ${srcdir}
+ rm -rf $HOME/.install4j $HOME/.i4j_jres $HOME/Jts
+ cd ${srcdir}
+
+ # Thanks to http://finance.groups.yahoo.com/group/TWSAPI/files/RPM%20spec%20file/
+ jar xf jts.jar trader/common/images/ibapp_icon_48x48.gif
+ jar xf jts.jar trader/common/images/quote_details_48x48.jpg
+ convert trader/common/images/ibapp_icon_48x48.gif ${pkgname}.png
+ convert trader/common/images/ibapp_icon_48x48.gif -resize 66.666% ${pkgname}-32x32.png
+ convert trader/common/images/ibapp_icon_48x48.gif -resize 33.333% ${pkgname}-16x16.png
+ convert trader/common/images/ibapp_icon_48x48.gif ${pkgname}-48x48.png
+ convert trader/common/images/quote_details_48x48.jpg ib-gw.png
+ convert trader/common/images/quote_details_48x48.jpg -resize 66.666% ib-gw-32x32.png
+ convert trader/common/images/quote_details_48x48.jpg -resize 33.333% ib-gw-16x16.png
+ convert trader/common/images/quote_details_48x48.jpg ib-gw-48x48.png
}
package() {
- cd ${srcdir}
- mkdir -p ${pkgdir}/usr/share/licenses/${pkgname}
- install -Dm644 LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
- install -Dm755 ${pkgname} ${pkgdir}/usr/bin/${pkgname}
- install -Dm755 ib-gw ${pkgdir}/usr/bin/ib-gw
- install -Dm644 ${pkgname}.desktop ${pkgdir}/usr/share/applications/${pkgname}.desktop
- install -Dm644 ib-gw.desktop ${pkgdir}/usr/share/applications/ib-gw.desktop
- cd ${srcdir}/IBJts
- mkdir -p ${pkgdir}/usr/share/pixmaps/
- install -Dm644 *.png "${pkgdir}/usr/share/pixmaps/"
- mkdir -p ${pkgdir}/usr/share/java/${pkgname}
- install -Dm644 *.jar ${pkgdir}/usr/share/java/${pkgname}
- install -Dm644 *.ini ${pkgdir}/usr/share/java/${pkgname}
+ cd ${srcdir}
+ mkdir -p ${pkgdir}/usr/share/licenses/${pkgname}
+ install -Dm644 LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
+ install -Dm755 ${pkgname} ${pkgdir}/usr/bin/${pkgname}
+ install -Dm755 ib-gw ${pkgdir}/usr/bin/ib-gw
+ install -Dm644 ${pkgname}.desktop ${pkgdir}/usr/share/applications/${pkgname}.desktop
+ install -Dm644 ib-gw.desktop ${pkgdir}/usr/share/applications/ib-gw.desktop
+ mkdir -p ${pkgdir}/usr/share/pixmaps/
+ install -Dm644 *.png "${pkgdir}/usr/share/pixmaps/"
+ mkdir -p ${pkgdir}/usr/share/java/${pkgname}
+ install -Dm644 *.jar ${pkgdir}/usr/share/java/${pkgname}
}
diff --git a/tws_check_update b/tws_check_update
index 7b93105c8e20..70471603aaad 100755
--- a/tws_check_update
+++ b/tws_check_update
@@ -6,8 +6,8 @@
# 2 = Error
DOWNLOAD_DIR="$HOME/.tws_scripts"
-FILE_MIRROR="unixmacosx_latest.jar"
-URL_MIRROR="http://download2.interactivebrokers.com/download"
+FILE_MIRROR="tws-latest-standalone-linux-x64.sh"
+URL_MIRROR="https://download2.interactivebrokers.com/installers/tws/latest-standalone"
FILE_CUR="${DOWNLOAD_DIR}/${FILE_MIRROR}"
get_perm_file_name()
@@ -32,7 +32,7 @@ if test -f "${FILE_CUR}" ; then
touch -r "${FILE_CUR}" "${FILE_MIRROR}"
fi
-if wget --no-verbose -U x -N -P "${TDIR}" "${URL_MIRROR}/${FILE_MIRROR}" ;then
+if wget --no-verbose -U x -N -P "${TDIR}" "${URL_MIRROR}/${FILE_MIRROR}" ;then
if test "${FILE_MIRROR}" -nt "${FILE_CUR}" ; then
DST="$(get_perm_file_name "${FILE_MIRROR}")"
mv "${FILE_MIRROR}" "${DOWNLOAD_DIR}/${DST}"
@@ -47,4 +47,3 @@ else
echo "TWS update failed" 1>&2
exit 2
fi
-
diff --git a/tws_get_version b/tws_get_version
index 8817d43ca140..1aa333ba019f 100755
--- a/tws_get_version
+++ b/tws_get_version
@@ -7,8 +7,8 @@
TWS_TIMEOUT="15"
if ! test -e "$1"; then
- echo "Usage: $0 <jar file | TWS dir>" 1>&2
- echo "Example: $0 $HOME/.tws_scripts/unixmacosx_latest.jar" 1>&2
+ echo "Usage: $0 <sh>" 1>&2
+ echo "Example: $0 $HOME/.tws_scripts/tws-latest-standalone-linux-x64.sh" 1>&2
exit 1
fi
@@ -18,29 +18,17 @@ TDIR="$(mktemp -d -t twsdir.XXXX)" || exit 1
trap "rm -rf ${TDIR}" exit
cd "${TDIR}" || exit 1
-if test -d "${ARG1}"; then
- if test -f "${ARG1}/jts.ini" ;then
- TWS_DIR="${ARG1}"
- else
- echo "error: directory '"${ARG1}"' is not a TWS installation" 2>&1
- exit 1
- fi
-else
- if jar xf "${ARG1}" &>/dev/null && test -f IBJts/jts.jar; then
- TWS_DIR="IBJts"
- else
- echo "error: invalid jar file '"${ARG1}"'" 2>&1
- exit 1
- fi
-fi
+rm -rf $HOME/.install4j $HOME/.i4j_jres $HOME/Jts
+chmod +x ${ARG1}
+${ARG1} -q &> /dev/null
+MAJORVER=$(ls -1 $HOME/Jts)
TWS_HOME="${TDIR}/twshome"
mkdir "${TWS_HOME}" || exit 1
-cp -a "${TWS_DIR}/jts.ini" "${TWS_HOME}" || exit 1
LOG_FIFO="${TDIR}/twslogpipe"
mkfifo "${LOG_FIFO}" || exit 1
-TWS_CP="${TWS_DIR}/jts:${TWS_DIR}/*"
+TWS_CP="${HOME}/Jts/${MAJORVER}/jars/*"
java -cp "${TWS_CP}" jclient.LoginFrame "${TWS_HOME}" &>"${LOG_FIFO}" &
disown
TWS_PID="$!"
@@ -48,6 +36,8 @@ TWS_PID="$!"
VERSION_LINE="$(timeout --preserve-status "${TWS_TIMEOUT}" grep -m1 --line-buffered ": Build" "${LOG_FIFO}")"
kill -9 "${TWS_PID}" &>/dev/null
+rm -rf $HOME/.install4j $HOME/.i4j_jres $HOME/Jts
+
if test "${VERSION_LINE}" == ""; then
echo "could not grep version string" 1>&2
exit 1